Bắt đầu ngayBắt đầu miễn phí

Cross validation

Cross validation là một kỹ thuật nhằm kiểm tra hiệu năng holdout của mô hình. Mục tiêu là đảm bảo kết quả kiểm thử không bị ảnh hưởng bởi cách chia dữ liệu cụ thể. Trong bài tập này, bạn sẽ dùng các hàm từ sklearn để chạy K-fold cross validation bằng KFold() nhằm đánh giá precision và recall cho một decision tree.

X_train, y_train, X_test, y_test đã có trong workspace của bạn. pandaspd, numpynp, và sklearn cũng đã sẵn sàng. KFold()cross_val_score() từ sklearn.model_selection cũng đều có sẵn.

Bài tập này là một phần của khóa học

Dự đoán CTR với Machine Learning trong Python

Xem khóa học

Hướng dẫn bài tập

  • Tạo một bộ phân loại decision tree.
  • Thiết lập K-Fold cross validation với bốn lần chia và gán vào k-fold.
  • Dùng k_fold để chạy cross validation với cross_val_score() nhằm đánh giá precision và recall của mô hình (không dùng recall_score() hay precision_score()!).

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.

# Create model 
clf = ____

# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)

# Evaluate precision and recall for each fold
precision = ____(
  clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
  clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision)) 
print("Recall scores: %s" %(recall))
Chỉnh sửa và Chạy Mã