1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Phân tích Nhân sự (HR Analytics): Dự đoán nghỉ việc bằng Python

Connected

Bài tập

Cross-validation với sklearn

Như đã giải thích ở Chương 2, overfitting dữ liệu là vấn đề phổ biến trong phân tích. Điều này xảy ra khi mô hình học quá sát dữ liệu: nó đạt hiệu năng rất tốt trên tập dữ liệu được huấn luyện, nhưng không tổng quát hóa tốt ra ngoài.

Mặc dù kỹ thuật chia train/test bạn học ở Chương 2 giúp đảm bảo mô hình không overfit lên tập huấn luyện, việc tinh chỉnh siêu tham số (hyperparameter tuning) có thể dẫn đến overfitting phần test, vì bản chất là tinh chỉnh mô hình để đạt kết quả dự đoán tốt nhất trên tập test. Do đó, khuyến nghị là xác thực mô hình trên nhiều tập kiểm tra khác nhau. K-fold cross-validation cho phép chúng ta làm điều này:

  • chia tập dữ liệu thành tập huấn luyện và tập kiểm tra
  • huấn luyện mô hình, dự đoán và tính điểm (bạn có thể chỉ định dùng accuracy, precision, recall…)
  • lặp lại quy trình tổng cộng k lần
  • xuất ra điểm trung bình của 10 lần

Trong bài tập này, bạn sẽ dùng Cross Validation trên tập dữ liệu của chúng ta và đánh giá kết quả với hàm cross_val_score.

Hướng dẫn

100 XP
  • Import hàm thực hiện cross-validation, cross_val_score(), từ module sklearn.model_selection.
  • In ra điểm cross-validation cho mô hình của bạn, chỉ định 10 folds với siêu tham số cv.