0

Khoảng tin cậy Wilson

Hàm wilsonScoreLowerBound() tính giá trị biên dưới của khoảng tin cậy Wilson cho một tỷ lệ thành công trong thống kê, thường được dùng để đánh giá xếp hạng hoặc xác suất với độ tin cậy cao mà không bị nhiễu bởi kích thước mẫu nhỏ.


Mục đích:

  • Tính một ước lượng thấp nhất đáng tin cậy cho tỷ lệ thành công p=snp = \frac{s}{n} với mức tin cậy (ví dụ 95%).
  • Dùng trong: đánh giá sản phẩm, tỷ lệ bán hàng, xếp hạng (ranking), A/B testing, v.v.

📐 Giải thích toán học

1. Định nghĩa biến

  • ss: số lần thành công (successes)
  • nn: tổng số thử nghiệm (total trials)
  • p=snp = \frac{s}{n}: tỷ lệ thành công quan sát được
  • zz: giá trị Z tương ứng với mức độ tin cậy (95% → 1.96, 90% → 1.645)

image.png


2. Công thức toán học đầy đủ của Wilson Score Interval:

Đây là công thức khoảng tin cậy Wilson:

CI=p+z22n±zp(1p)+z24nn1+z2n\text{CI} = \frac{p + \frac{z^2}{2n} \pm z \sqrt{ \frac{p(1-p) + \frac{z^2}{4n}}{n} }}{1 + \frac{z^2}{n}}

  • ±\pm: cho phép tính cả biên dướibiên trên
  • Trong hàm này, ta chỉ tính biên dưới (lower bound)

3. Diễn giải từng phần:

Thành phần Diễn giải
pp Tỷ lệ thành công quan sát
zz Z-score cho mức tin cậy
z2/(2n)z^2/(2n) Điều chỉnh trung tâm (center correction)
z...z \sqrt{...} Biên sai số (margin of error)
Mẫu số 1+z2/n1 + z^2/n Chuẩn hóa khoảng giá trị

4. Mã PHP tương ứng:

$p = $s / $n;                  // Tỷ lệ quan sát
$z2 = $z * $z;                 // z^2
$denominator = 1 + ($z2 / $n); // Mẫu số

$center = $p + $z2 / (2 * $n); // Tâm hiệu chỉnh
$margin = $z * sqrt(($p * (1 - $p) + $z2 / (4 * $n)) / $n); // Sai số

$score = ($center - $margin) / $denominator; // Biên dưới

📊 Ví dụ minh họa

Giả sử:

  • s=5s = 5, n=10n = 10
  • p=0.5p = 0.5
  • z=1.96z = 1.96 (95%)

Tính:

Bieˆn dưới0.5+1.962201.960.5(10.5)+1.96240101+1.962100.236\text{Biên dưới} ≈ \frac{0.5 + \frac{1.96^2}{20} - 1.96 \cdot \sqrt{ \frac{0.5(1 - 0.5) + \frac{1.96^2}{40} }{10} }}{1 + \frac{1.96^2}{10}} \approx 0.236

→ Dù bạn thấy tỉ lệ là 50%, Wilson chỉ ước lượng thấp hơn (23.6%) để phòng trường hợp bị overfitting (mẫu nhỏ quá).


📌 So sánh với các cách khác

Phương pháp Mô tả Nhược điểm
p=snp = \frac{s}{n} Tỷ lệ thông thường Quá nhạy cảm nếu mẫu nhỏ
Laplace smoothing s+1n+2\frac{s+1}{n+2} Không điều chỉnh theo độ tin cậy
Wilson Score Làm mượt theo xác suất thống kê Phức tạp hơn

Khi nào dùng Wilson Score?

  • Khi bạn muốn:

    • Đánh giá tỷ lệ thành công với mức tin cậy cao.
    • So sánh ranking công bằng giữa các nhóm có mẫu nhỏ/lớn khác nhau.
    • Tránh bias do “ít dữ liệu mà tỷ lệ cao”.

Ví dụ:

  • Sản phẩm A: bán được 1/1 → 100% (nhưng mẫu nhỏ)
  • Sản phẩm B: bán được 20/40 → 50% → Wilson sẽ "phạt" sản phẩm A do độ tin cậy thấp.

All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí