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

Leave-one-out-cross-validation

Giả sử loại kẹo bạn thích không có trong bộ dữ liệu candy, và bạn muốn biết mức độ phổ biến của nó. Dùng cross-validation 5-fold sẽ chỉ huấn luyện trên 80% dữ liệu mỗi lần. Tuy nhiên, bộ dữ liệu candy chỉ có 85 hàng, và bỏ ra 20% dữ liệu có thể làm giảm chất lượng mô hình. Với leave-one-out-cross-validation, bạn có thể tận dụng tối đa bộ dữ liệu hạn chế và có được ước lượng tốt nhất về độ phổ biến của loại kẹo yêu thích!

Trong bài tập này, bạn sẽ dùng cross_val_score() để thực hiện LOOCV.

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

Xem khóa học

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

  • Tạo một scorer dùng mean_absolute_error để cross_val_score() sử dụng.
  • Hoàn thiện lời gọi cross_val_score() để dùng mô hình rfr, mae_scorer vừa định nghĩa, và LOOCV.
  • In trung bình và độ lệch chuẩn của scores bằng numpy (đã nạp là np).

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.metrics import mean_absolute_error, make_scorer

# Create scorer
mae_scorer = ____(____)

rfr = RandomForestRegressor(n_estimators=15, random_state=1111)

# Implement LOOCV
scores = cross_val_score(____, X=X, y=y, cv=____, scoring=____)

# Print the mean and standard deviation
print("The mean of the errors is: %s." % np.____(____))
print("The standard deviation of the errors is: %s." % np.____(____))
Chỉnh sửa và Chạy Mã