Tìm kiếm theo lưới cho MLP
Bạn có thể tinh chỉnh siêu tham số bằng sklearn bằng cách 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 tinh chỉnh duyệt toàn bộ mọi tổ hợp siêu tham số được chỉ định qua param_grid là grid search. Trong bài này, bạn sẽ dùng grid search để duyệt siêu tham số cho bộ phân loại MLP.
X_train, y_train, X_test, y_test đã có sẵn trong không gian làm việc của bạn, và các đặc trưng đã được chuẩn hóa. pandas dưới tên pd, numpy dưới tên np cũng đã sẵn sàng.
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
Hướng dẫn bài tập
- Tạo danh sách giá trị
[10, 20]chomax_iter, và danh sách giá trị[(8, ), (16, )]chohidden_layer_sizes. - Thiết lập grid search với 4 tiến trình bằng
n_jobsđể lặp qua tất cả các tổ hợp siêu tham số. - In ra AUC tốt nhất và bộ ước lượng tốt nhất dẫn đến điểm số này.
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
max_iter = [____, ____]
hidden_layer_sizes = [____, ____]
param_grid = {'max_iter': max_iter, 'hidden_layer_sizes': hidden_layer_sizes}
# Use Grid search CV to find best parameters using 4 jobs
mlp = ____
clf = ____(estimator = mlp, param_grid = ____,
scoring = 'roc_auc', ____ = 4)
clf.fit(X_train, y_train)
print("Best Score: ")
print(clf.____)
print("Best Estimator: ")
print(clf.____)