Thống kê cross-validation
Bạn đã dùng grid search CV để tinh chỉnh bộ phân loại random forest và giờ muốn xem lại kết quả cross-validation để đảm bảo bạn không overfit. Cụ thể, bạn muốn lấy hiệu giữa điểm kiểm định trung bình cho mỗi fold và điểm huấn luyện trung bình. Bộ dữ liệu có sẵn dưới dạng X_train và y_train, pipeline là pipe, và một số mô-đun đã được nạp sẵn bao gồm pandas là pd và GridSearchCV().
Bài tập này là một phần của khóa học
Thiết kế quy trình Machine Learning bằng Python
Hướng dẫn bài tập
- Tạo một đối tượng grid search với ba fold cross-validation và đảm bảo nó trả về cả thống kê trên tập huấn luyện lẫn tập kiểm định.
- Fit đối tượng grid search lên dữ liệu huấn luyện.
- Lưu kết quả cross-validation, có trong thuộc tính
cv_results_của đối tượng CV đã fit, vào một dataframe. - In ra hiệu giữa cột chứa điểm kiểm định trung bình và cột chứa điểm huấn luyện trung bình.
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.
# Fit your pipeline using GridSearchCV with three folds
grid_search = GridSearchCV(
pipe, params, ____=3, return_train_score=____)
# Fit the grid search
gs = grid_search.____(____, ____)
# Store the results of CV into a pandas dataframe
results = pd.____(gs.____)
# Print the difference between mean test and training scores
print(
results[____]-results['mean_train_score'])