`KFold()` của scikit-learn
Bạn vừa chạy xong đoạn mã của một đồng nghiệp tạo mô hình random forest và tính độ chính xác ngoài mẫu. Bạn nhận thấy mã của đồng nghiệp không đặt random state, và các lỗi bạn tìm thấy hoàn toàn khác với những gì đồng nghiệp báo cáo.
Để có ước lượng tốt hơn về độ chính xác của mô hình random forest này trên dữ liệu mới, bạn quyết định tạo một số chỉ số để dùng cho KFold cross-validation.
Bài tập này là một phần của khóa học
Xác thực Mô hình trong Python
Hướng dẫn bài tập
- Gọi phương thức
KFold()để chia dữ liệu với năm lần chia (five splits), bật xáo trộn (shuffle) vàrandom_state= 1111. - Dùng phương thức
split()củaKFoldtrênX. - In số lượng chỉ số trong cả danh sách chỉ số train và chỉ số validation.
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.
from sklearn.model_selection import KFold
# Use KFold
kf = KFold(____, ____, ____)
# Create splits
splits = kf.____(____)
# Print the number of indices
for train_index, val_index in splits:
print("Number of training indices: %s" % len(____))
print("Number of validation indices: %s" % len(____))