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

Grid search

Bạn có thể thực hiện hyperparameter tuning bằng sklearn thông qua việc cung cấp nhiều tham số đầu vào, mỗi tham số có thể được mã hóa bằng các hàm khác nhau từ numpy. Một phương pháp tuning duyệt cạn tất cả tổ hợp của các siêu tham số được chỉ định qua param_grid là grid search. Trong bài tập này, bạn sẽ dùng grid search để duyệt qua các siêu tham số cho một mô hình random forest classifier mẫu với hàm chấm điểm là AUC của đường cong ROC.

X_train, y_train, X_test, y_test đã có sẵn trong môi trường làm việc của bạn. pandaspd, numpynp, và sklearn cũng đã sẵn sàng. Ngoài ra, GridSearchCV() từ sklearn.model_selection cũng 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 danh sách giá trị cho từng siêu tham số trong n_estimatorsmax_depth.
  • Tạo một random forest classifier.
  • Thiết lập grid search để lặp qua tất cả các tổ hợp siêu tham số.
  • In ra AUC tốt nhất bằng .best_score_, và mô hình tốt nhất dẫn đến điểm số này bằng .best_estimator_.

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 list of hyperparameters 
n_estimators = [10, 50]
max_depth = [5, 20]
param_grid = {'n_estimators': ____, 'max_depth': ____}

# Use Grid search CV to find best parameters 
print("starting RF grid search.. ")
rf = ____()
clf = ____(estimator = rf, param_grid = ____, scoring = 'roc_auc')
clf.fit(X_train, y_train)
print("Best Score: ")
print(clf.____)
print("Best Estimator: ")
print(clf.____)
Chỉnh sửa và Chạy Mã