Hướng dẫn bootstrapping confidence intervals python - bootstrapping khoảng tin cậy python

Nội phân chính

  • Hướng dẫn tiện dụng về cách tính khoảng tin cậy trong Python
  • Khoảng tin cậy là gì?
  • Công thức khoảng tin cậy
  • Sử dụng bootstrap
  • Máy tính khoảng tin cậy trong Python
  • Kết luận

Hướng dẫn tiện dụng về cách tính khoảng tin cậy trong Python

Khoảng tin cậy là gì?

Công thức khoảng tin cậy

Khoảng tin cậy là gì?

Công thức khoảng tin cậy

Sử dụng bootstrap

Máy tính khoảng tin cậy trong Python

  • Kết luận
  • Ảnh của Edge2Edge Media trên unplash

Khi chúng ta đo lường một cái gì đó, chúng ta luôn phải tính toán độ không đảm bảo của kết quả. Khoảng tin cậy là một công cụ rất hữu ích để tính toán một phạm vi mà chúng ta có thể tìm thấy giá trị thực của người quan sát được với một sự tự tin nhất định.

Công thức khoảng tin cậy

Sử dụng bootstrap

Máy tính khoảng tin cậy trong Python

Kết luận

Ảnh của Edge2Edge Media trên unplash

Khi chúng ta đo lường một cái gì đó, chúng ta luôn phải tính toán độ không đảm bảo của kết quả. Khoảng tin cậy là một công cụ rất hữu ích để tính toán một phạm vi mà chúng ta có thể tìm thấy giá trị thực của người quan sát được với một sự tự tin nhất định.

Hãy tưởng tượng bạn hỏi tôi chiều cao của tôi. Tôi có thể nói rằng tôi cao 1,93 m, nhưng tôi không cung cấp cho bạn bất kỳ thông tin nào về sự không chắc chắn của biện pháp này. Khoảng tin cậy là các khoảng trong đó chúng ta có một sự tự tin nhất định để tìm ra giá trị thực của chúng ta có thể quan sát được. Các nhà khoa học thường tìm kiếm khoảng tin cậy 95%, nhưng nó rất phổ biến để sử dụng 90% hoặc thậm chí 99%. Vì vậy, khi bạn hỏi tôi về chiều cao của tôi, tôi nên trả lời bạn với ước tính lỗi hoặc với khoảng tin cậy, như là với độ tin cậy 95%, tôi đã từ 1,92 m đến 1,93 m.

Đó là những gì mà công cụ này cung cấp cho chúng ta: một khoảng cách tìm thấy giá trị thực của người có thể quan sát được.

Sử dụng bootstrap

Máy tính khoảng tin cậy trong Python

Kết luận

  1. Ảnh của Edge2Edge Media trên unplash
  2. Khi chúng ta đo lường một cái gì đó, chúng ta luôn phải tính toán độ không đảm bảo của kết quả. Khoảng tin cậy là một công cụ rất hữu ích để tính toán một phạm vi mà chúng ta có thể tìm thấy giá trị thực của người quan sát được với một sự tự tin nhất định.
  3. Hãy tưởng tượng bạn hỏi tôi chiều cao của tôi. Tôi có thể nói rằng tôi cao 1,93 m, nhưng tôi không cung cấp cho bạn bất kỳ thông tin nào về sự không chắc chắn của biện pháp này. Khoảng tin cậy là các khoảng trong đó chúng ta có một sự tự tin nhất định để tìm ra giá trị thực của chúng ta có thể quan sát được. Các nhà khoa học thường tìm kiếm khoảng tin cậy 95%, nhưng nó rất phổ biến để sử dụng 90% hoặc thậm chí 99%. Vì vậy, khi bạn hỏi tôi về chiều cao của tôi, tôi nên trả lời bạn với ước tính lỗi hoặc với khoảng tin cậy, như là với độ tin cậy 95%, tôi đã từ 1,92 m đến 1,93 m.
  4. Đó là những gì mà công cụ này cung cấp cho chúng ta: một khoảng cách tìm thấy giá trị thực của người có thể quan sát được.

Một số thuộc tính hữu ích của khoảng tin cậy là:

Máy tính khoảng tin cậy trong Python

Kết luận

Ảnh của Edge2Edge Media trên unplash

import numpy as np 
from scipy.stats import t

Khi chúng ta đo lường một cái gì đó, chúng ta luôn phải tính toán độ không đảm bảo của kết quả. Khoảng tin cậy là một công cụ rất hữu ích để tính toán một phạm vi mà chúng ta có thể tìm thấy giá trị thực của người quan sát được với một sự tự tin nhất định.

x = np.random.normal(size=100)

Hãy để chúng tôi thấy chúng tôi muốn tính toán khoảng tin cậy 95% của giá trị trung bình. Hãy để tính toán tất cả các số chúng ta cần theo công thức của khoảng tin cậy.

m = x.mean() 
s = x.std()
dof = len(x)-1
confidence = 0.95

Bây giờ chúng ta cần giá trị của t. Hàm tính toán phân phối tích lũy nghịch đảo là PPF. Chúng ta cần áp dụng giá trị tuyệt đối vì phân phối tích lũy hoạt động với đuôi trái, vì vậy kết quả sẽ âm.

t_crit = np.abs(t.ppf((1-confidence)/2,dof))

Bây giờ, chúng ta có thể áp dụng công thức ban đầu để tính khoảng tin cậy 95%.

(m-s*t_crit/np.sqrt(len(x)), m+s*t_crit/np.sqrt(len(x))) # (-0.14017768797464097, 0.259793719043611)

Chúng tôi biết điều đó đúng vì phân phối bình thường có nghĩa 0, nhưng nếu chúng tôi không biết gì về dân số, chúng tôi có thể nói rằng, với độ tin cậy 95%, giá trị dự kiến ​​của dân số nằm trong khoảng -0,14 đến 0,26.

Chúng ta có thể đã đạt được kết quả tương tự bằng cách sử dụng bootstrap, không thiên vị. Trong ví dụ này, tôi tạo 1000 respample của bộ dữ liệu của chúng tôi (với sự thay thế).

values = [np.random.choice(x,size=len(x),replace=True).mean() for i in range(1000)] np.percentile(values,[100*(1-confidence)/2,100*(1-(1-confidence)/2)]) # array([-0.13559955, 0.26480175])

Như chúng ta có thể thấy, kết quả gần như bằng với kết quả chúng ta đã đạt được với công thức đóng.

Kết luận

Khoảng tin cậy rất dễ tính toán và có thể cung cấp một cái nhìn sâu sắc rất hữu ích cho các nhà phân tích dữ liệu và nhà khoa học. Họ đưa ra ước tính lỗi rất mạnh và, nếu được sử dụng chính xác, thực sự có thể giúp chúng tôi trích xuất càng nhiều thông tin càng tốt từ dữ liệu của chúng tôi.

Gianluca Malato là một nhà khoa học dữ liệu, người dạy học máy và khoa học dữ liệu trên www.yourdatateacher.com.