[Gist embed code [this it for embedding directly into the website if that’s preferred: ]def bootstrapped_conf_interval[data, metric, num_runs=1000, conf=.95]:
""" mục đích. Tính khoảng tin cậy cho hiệu suất mô hình [số liệu]
Thông số
—————-
dữ liệu. danh sách các điểm dữ liệu ở định dạng được get_metric chấp nhận
Hệ mét. các tùy chọn bao gồm 'độ chính xác', 'độ chính xác', 'thu hồi' và 'điểm f1'
conf. mức độ chắc chắn mà bạn muốn về phạm vi giá trị có thể có của số liệu đo lường của bạn
num_run. int chỉ định số lượng mẫu dữ liệu được khởi động mà bạn muốn
trả lại
———-
Bộ tin cậy với số float dưới dạng các mục cũ. [. 2,. 3]
“””
kết quả = []
# lấy num _runs các mẫu khởi động của dữ liệu chưa được gắn nhãn và được gắn nhãn
cho tôi trong phạm vi [num_runs]
bootstrapped_data = np. ngẫu nhiên. lựa chọn [dữ liệu, len [dữ liệu]]
kết quả. nối thêm [get_metric [bootstrapped_data, số liệu]]
kết quả. loại[]
bootstrapped_mean = tổng [kết quả] / float [len [kết quả]]
x_bar = get_metric[dữ liệu, số liệu]
# bạn muốn cắt bỏ bao nhiêu chỉ số đo được ở một trong hai đầu
left_index = int[num_runs * [1 – conf] / 2]
# sai lệch so với phương tiện bootstrapped
delta_interval = [kết quả[left_index] – bootstrapped_mean,
kết quả[-left_index] – bootstrapped_mean]
# độ lệch so với giá trị trung bình so với mẫu thực tế, không phải mẫu khởi động
khoảng thời gian = [delta_interval[0] + x_bar, delta_interval[1] + x_bar]
khoảng thời gian trở lại
Phương pháp lấy mẫu Bootstrap là một khái niệm rất đơn giản và là khối xây dựng cho một số thuật toán học máy nâng cao hơn như AdaBoost và XGBoost. Tuy nhiên, khi tôi bắt đầu hành trình khoa học dữ liệu của mình, tôi không thể hiểu rõ ý nghĩa của nó. Vì vậy, mục tiêu của tôi là giải thích phương pháp bootstrap là gì và tại sao điều quan trọng là phải biết
Phương pháp lấy mẫu Bootstrap là gì?Về mặt kỹ thuật, phương pháp lấy mẫu bootstrap là phương pháp lấy mẫu lại sử dụng lấy mẫu ngẫu nhiên có thay thế
Đừng lo lắng nếu điều đó nghe có vẻ khó hiểu, hãy để tôi giải thích nó bằng sơ đồ
Giả sử bạn có một mẫu ban đầu với 3 quan sát. Sử dụng phương pháp lấy mẫu bootstrap, bạn cũng sẽ tạo một mẫu mới với 3 quan sát. Mỗi quan sát đều có cơ hội được chọn như nhau [1/3]. Trong trường hợp này, quan sát thứ hai được chọn ngẫu nhiên và sẽ là quan sát đầu tiên trong mẫu mới của chúng tôi
Sau khi chọn ngẫu nhiên một quan sát khác, bạn đã chọn quan sát màu xanh lục
Cuối cùng, quan sát màu vàng được chọn lại một cách ngẫu nhiên. Hãy nhớ rằng lấy mẫu bootstrap sử dụng lấy mẫu ngẫu nhiên có thay thế. Điều này có nghĩa là rất có thể một quan sát đã chọn sẽ được chọn lại
Và đây là bản chất của lấy mẫu bootstrap
Tầm quan trọng của việc lấy mẫu BootstrapTuyệt vời, bây giờ bạn đã hiểu bootstrap sampling là gì và bạn biết khái niệm này đơn giản như thế nào, nhưng bây giờ có lẽ bạn đang tự hỏi điều gì làm cho nó hữu ích đến vậy
1. Nó là khối xây dựng cho nhiều thuật toán học máy hiện đại
Khi bạn tìm hiểu thêm về học máy, gần như chắc chắn bạn sẽ bắt gặp thuật ngữ “bootstrap aggregating”, còn được gọi là “bagging”. Đóng bao là một kỹ thuật được sử dụng trong nhiều thuật toán máy học tập hợp như rừng ngẫu nhiên, AdaBoost, tăng cường độ dốc và XGBoost
Kiểm tra bài viết của tôi về học tập, đóng gói và thúc đẩy
2. Nó có thể được sử dụng để ước tính các tham số của dân số
Đôi khi khi ước lượng các tham số của quần thể [i. e. nghĩa là sai số chuẩn], bạn có thể có một mẫu không đủ lớn để giả định rằng phân phối lấy mẫu là phân phối chuẩn. Ngoài ra, trong một số trường hợp, có thể khó tìm ra sai số chuẩn của ước tính. Trong cả hai trường hợp, lấy mẫu bootstrap có thể được sử dụng để khắc phục những sự cố này
Về bản chất, với giả định rằng mẫu đại diện cho dân số, việc lấy mẫu bootstrap được tiến hành để đưa ra ước tính về phân phối lấy mẫu của thống kê mẫu được đề cập
Điểm này mang tính thống kê hơn một chút nên nếu không hiểu cũng đừng lo. Tất cả những gì bạn phải hiểu là việc lấy mẫu bootstrap đóng vai trò là cơ sở cho việc “đóng gói”, đây là một kỹ thuật mà nhiều mô hình máy học sử dụng
Cảm ơn vì đã đọcNếu bạn muốn tìm hiểu thêm các nguyên tắc cơ bản về máy học và cập nhật nội dung của tôi, bạn có thể làm như vậy tại đây
Nếu bạn muốn tiếp tục việc học của mình, hãy xem bài viết của tôi về học tập đồng bộ, đóng gói và thúc đẩy tại đây