Bootstrap và Sai số chuẩn
Hãy hình dung một Vườn quốc gia nơi các kiểm lâm đi bộ mỗi ngày để bảo trì đường mòn. Họ không phải lúc nào cũng đi cùng một lộ trình, nhưng luôn ghi lại tổng quãng đường và thời gian. Chúng ta muốn xây dựng một mô hình thống kê về biến thiên quãng đường đi bộ hằng ngày dựa trên một mẫu dữ liệu hạn chế từ một kiểm lâm.
Mục tiêu của bạn là dùng bootstrap resampling, tính một giá trị trung bình cho mỗi mẫu lặp, để tạo một phân phối các giá trị trung bình, rồi tính sai số chuẩn (standard error) như một cách định lượng “độ bất định” của thống kê mẫu khi dùng nó làm ước lượng cho thống kê tổng thể.
Hãy sử dụng mảng sample_data đã nạp sẵn gồm 500 phép đo độc lập về quãng đường đã đi. Trước mắt, chúng ta dùng dữ liệu mô phỏng để đơn giản hóa bài học này. Sau đó, bạn sẽ thấy dữ liệu thực tế hơn.

Bài tập này là một phần của khóa học
Nhập môn Mô hình tuyến tính với Python
Hướng dẫn bài tập
Gán
sample_datalàm mô hình cho tổng thể.Lặp
num_resampleslần:- Mỗi lần dùng
np.random.choice()để tạobootstrap_samplecósize=resample_sizelấy từpopulation_modelvà chỉ địnhreplace=True. - Mỗi lần hãy tính và lưu giá trị trung bình của mẫu.
- Mỗi lần dùng
Tính và in
np.mean()vànp.std()củabootstrap_means.Dùng hàm dựng sẵn
plot_data_hist()và trực quan hóa phân phốibootstrap_means.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Use the sample_data as a model for the population
population_model = ____
# Resample the population_model 100 times, computing the mean each sample
for nr in range(num_resamples):
bootstrap_sample = np.random.____(population_model, size=____, replace=____)
bootstrap_means[nr] = np.____(bootstrap_sample)
# Compute and print the mean, stdev of the resample distribution of means
distribution_mean = np.mean(____)
standard_error = np.std(____)
print('Bootstrap Distribution: center={:0.1f}, spread={:0.1f}'.format(____, ____))
# Plot the bootstrap resample distribution of means
fig = plot_data_hist(____)