Thứ Sáu, 23 tháng 3, 2018

Tính Toán Xác Suất Bằng Cách Sử Dụng R(Phần 1)

1. Hoán Vị(permutation)
Chúng ta biết 3! = 3.2.1 = 6 và 0!=1. Nói chung, công thức tính số hoán vị cho n là:n! n n -1 n -2 n -3 ... 1. Trong R cách tính này rất đơn giản với lệnh prod() như sau:

Tìm 3! > prod(3:1) 
[1] 6 

Tìm 10! > prod(10:1) 
[1] 3628800

Tìm 10.9.8.7.6.5.4 
> prod(10:4) 
[1] 604800 

Tìm (10.9.8.7.6.5.4) / (40.39.38.37.36) 
> prod(10:4) / prod(40:36) 
[1] 0.007659481

2. Tổ hợp (combination)
upload_2018-3-12_10-22-42.png ​
Tổ hợp tính bằng hàm choose(n,k) Ví dụ choose(5,2) = 10

3. Biến ngẩu nhiên và biến phân Phối
Khi nói đến “phân phối” (hay distribution) là đề cập đến các giá trị mà biến có thể có. Các hàm phân phối (distribution function) là hàm mô tả các biến đó một cách hệ thống. “Có hệ thống” ở đây có nghĩa là theo một mô hình toán học cụ thể với những thông số cho trước. Trong xác suất thống kê có khá nhiều hàm phân phối, chúng ta sẽ em xét qua một số hàm quan trọng nhất và thông dụng nhất: đó là phân phối nhị phân, phân phối Poisson, và phân phối chuẩn. Trong mỗi luật phân phối, có 4 loại hàm quan trọng mà chúng ta cần biết: 
- hàm mật độ xác suất (probability density distribution);
- hàm phân phối tích lũy (cumulative probability distribution);
- hàm định bậc (quantile); và hàm mô phỏng (simulation). 

R có những hàm đinh sẵn có thể ứng dụng cho tính toán xác suất. Tên mỗi hàm được gọi bằng một tiếp đầu ngữ để chỉ loại hàm phân phối, và viết tắt tên của hàm đó. Các tiếp đầu ngữ là d (chỉ distribution hay xác suất), p (chỉ cumulative probability, xác suất tích lũy), R NDH 19 q (chỉ định bậc hay quantile), và r (chỉ random hay số ngẫu nhiên). Các tên viết tắt là norm (normal, phân phối chuẩn), binom (binomial , phân phối nhị phân), pois (Poisson, phân phối Poisson), v.v… Bảng sau đây tóm tắt các hàm và thông số cho từng hàm:
upload_2018-3-12_10-25-53.png
Chú thích: Trong bảng trên, df = degrees of freedome (bậc tự do);prob = probability (xác suất); n = sample size (số lượng mẫu). Các thông số khác có thể tham khảo thêm cho từng luật phân phối. Riêng các luật phân phối F, t, Chi-squared còn có một thông số khác nữa là non-centrality parameter (ncp) được cho số 0. Tuy nhiên người sử dụng có thể cho một thông số khác thích hợp, nếu cần.

a. Hàm phân phối nhị phân
Như tên gọi, hàm phân phối nhị phân có 2 giá trị: Nam/ Nữ, có/ không,v.v... Hàm nhị phân được phát biểu bằng định lí sau: Nếu một thử nghiêm được thực hành n lần, mổi lần cho ra kết quả(thành công hoặc thất bại), và xác suất thành công được biết trước là p, thì xác suất có k lần thử nghiệm thành công là:
P(k | n, p) = C(n,k)p^k(1-p)^n-k, trong đó k=0, 1,2,3,..., n. Trong R ta có hàm dbinom(k, n, p) có thể giúp ta tính nhanh một cách nhanh chóng.
Ví dụ:
> dbinom(2, 3, 0.60)
[1] 0.432

b. Hàm phân phối Poisson (Poisson distribution) 
Hàm phân phối Poisson, nói chung, rất giống với hàm nhị phân, ngoại trừ thông số p thường rất nhỏ và n thường rất lớn. Vì thế, hàm Poisson thường được sử dụng để mô tả các biến số rất hiếm xảy ra (như số người mắc ung thư trong một dân số chẳng hạn). Hàm Poisson còn được ứng dụng khá nhiều và thành công trong các nghiên cứu kĩ thuật và thị trường như số lượng khách hàng đến một nhà hàng mỗi giờ.

Ví dụ 4: Hàm mật độ Poisson (Poisson density probability function). Qua theo dõi nhiều tháng, người ta biết được tỉ lệ đánh sai chính tả của một thư kí đánh máy. Tính trung bình cứ khoảng 2.000 chữ thì thư kí đánh sai 1 chữ. Hỏi xác suất mà thư kí đánh sai chính tả 2 chữ, hơn 2 chữ là bao nhiêu? Vì tần số khá thấp, chúng ta có thể giả định rằng biến số “sai chính tả” (tạm đặt tên là biến số X) là một hàm ngẫu nhiên theo luật phân phối Poisson. Ở đây, chúng ta có tỉ lệ sai chính tả trung bình là 1 λ = 1). Luật phân phối Poisson phát biểu rằng xác suất mà X = k, với điều kiện tỉ lệ trung bình λ p(X = k) = e -λ λ k /k!

Do đó, đáp số cho câu hỏi trên là: e ^-1 /2! = 0,1839 tính bằng R một cách nhanh chóng hơn bằng hàm dpois như sau: > dpois(2, 1) [1] 0.1839397

Chúng ta cũng có thể tính xác suất sai 1 chữ, và xác suất không sai chữ nào: 
> dpois(1, 1) 
[1] 0.3678794 
> dpois(0, 1) 
[1] 0.3678794 
> dpois(2,1)

Chú ý trong hàm trên, chúng ta chỉ đơn giản cung cấp thông số k = 2 và λ = 1. Trên đây là xác suất mà thư kí đánh sai chính tả đúng 2 chữ. Nhưng xác suất mà thư kí đánh sai chính tả hơn 2 chữ (tức 3, 4, 5, … chữ) có thể ước tính bằng:
P X 2 P X 3 P X 4 P(X 5) ... = 1 X ≤ 2 = 1 – 0.3678 – 0.3678 – 0.1839 = 0.08
Bằng R, chúng ta có thể tính như sau: 
# P(X ≤ 2) > ppois(2, 1) 
[1] 0.9196986 
# 1-P(X ≤ 2) > 1-ppois(2, 1) 
[1] 0.0803014

c. Hàm phân phối chuẩn (Normal distribution)
Hai luật phân phối mà chúng ta vừa xem xét trên đây thuộc vào nhóm phân phối áp dụng cho các biến số phi liên tục (discrete distributions), mà trong đó biến số có những giá trị theo bậc thứ hay thể loại. Đối với các biến số liên tục, có vài luật phân phối thích hợp khác, mà quan trọng nhất là phân phối chuẩn. Phân phối chuẩn là nền tảng quan trọng nhất của phân tích thống kê. Có thể nói hầu hết lí thuyết thống kê được xây dựng trên nền tảng của phân phối chuẩn.
Hàm mật độ phân phối chuẩn có dạng:

upload_2018-3-12_10-52-47.png ​
Ví dụ 5: Hàm mật độ phân phối chuẩn (Normal density probability function). Chiều cao trung bình hiện nay ở phụ nữ Việt Nam là 156 cm, với độ lệch chuẩn là 4.6 cm

upload_2018-3-12_10-53-33.png ​

upload_2018-3-12_10-54-38.png 

Hàm xác suất chuẩn tích lũy (cumulative normal probability function). 
Vì hiều cao là một biến số liên tục, trong thực tế chúng ta ít khi nào muốn tìm xác suất cho một giá trị cụ thể x, mà thường tìm xác suất cho một khoảng giá trị a đến b. Chẳng hạn như chúng ta muốn biết xác suất chiều cao từ 150 đến 160 cm (tức là P(150 ≤ X ≤ 160), hay xác suất chiều cao thấp hơn 145 cm, tức P(X < 145). Để tìm đáp số các câu hỏi như thế, chúng ta cần đến hàm xác suất chuẩn tích lũy, được định nghĩa như sau:
upload_2018-3-12_10-56-16.png ​
d. Hàm phân phối chuẩn chuẩn hóa (Standardized Normal distribution)
upload_2018-3-12_10-57-31.png 
upload_2018-3-12_10-58-4.png 
Với phân phối chuẩn chuẩn hoá, chúng ta có một tiện lợi là có thể dùng nó để mô tả và so sánh mật độ phân phối của bất cứ biến nào, vì tất cả đều được chuyển sang chỉ số z. 

Trong biểu đồ trên, trục tung là xác suất z và trục hoành là biến số z. Chúng ta có thể tính toán xác suất z nhỏ hơn một hằng số (constant) nào đó dê dàng bằng R. Ví dụ, chúng ta muốn tìm P(z ≤ -1.96) = ? cho một phân phối mà trung bình là 0 và độ lệch chuẩn là 1.

> pnorm(-1.96, mean=0, sd=1) 
[1] 0.02499790 Hay P(z ≤ 1.96) = ? 
> pnorm(1.96, mean=0, sd=1) 
[1] 0.9750021 Do đó, P(-1.96 < z < 1.96) chính là: 
> pnorm(1.96) - pnorm(-1.96) [1] 0.9500042

Nói cách khác, xác suất 95% là z nằm giữa -1.96 và 1.96. (Chú ý trong lệnh trên không cung cấp mean=0, sd=1, bởi vì trong thực tế, pnorm giá trị mặc định (default value) của thông số mean là 0 và sd là 1).

Ví dụ 5 (tiếp tục). Xin nhắc lại để tiện việc theo dõi, chiều cao trung bình ở phụ nữ Việt Nam là 156 cm và độ lệch chuẩn là 4.6 cm. Do đó, một phụ nữ có chiều cao 170 cm cũng có nghĩa là z = (170 – 156) / 4.6 = 3.04 độ lệch chuẩn, và ti lệ các phụ nữ Việt Nam có chiều cao cao hơn 170 cm là rất thấp, chỉ khoảng 0.1%.
> 1-pnorm(3.04) 
[1] 0.001182891

Tìm định lượng (quantile) của một phân phối chuẩn. Đôi khi chúng ta cần làm một tính toán đảo ngược. Chẳng hạn như chúng ta muốn biết: nếu xác suất Z nhỏ hơn một hằng số z nào đó cho trước bằng p, thì z là bao nhiêu? Diễn tả theo kí hiệu xác suất, chúng ta muốn tìm z trong nếu: 
P(Z < z) = p 
Để trả lời câu hỏi này, chúng ta sử dụng hàm qnorm(p, mean=, sd=). 
Ví dụ: Biết rằng Z ~ N(0, 1) và nếu P(Z < z) = 0.95, chúng ta muốn tìm z. > qnorm(0.95, mean=0, sd=1) [1] 1.644854 Hay P(Z < z) = 0.975 cho phân phối chuẩn với trung bình 0 và độ lệch chuẩn 1: > qnorm(0.975, mean=0, sd=1) [1] 1.959964
Previous Post
Next Post

post written by:

0 nhận xét: