Tự động hóa lựa chọn Hyperparameter
Tìm ra hyperparameter tốt nhất mà không phải viết hàng trăm dòng mã cho hàng trăm mô hình là một bước cải thiện hiệu suất quan trọng, giúp ích rất nhiều cho việc xây dựng mô hình Machine Learning sau này của bạn.
Một hyperparameter quan trọng của thuật toán GBM là learning rate. Nhưng learning rate nào là tốt nhất cho bài toán này? Bằng cách viết một vòng lặp để thử qua nhiều khả năng, tổng hợp và xem kết quả, bạn có thể tìm ra lựa chọn tốt nhất.
Những learning rate có thể thử gồm 0.001, 0.01, 0.05, 0.1, 0.2 và 0.5
Bạn có sẵn các tập dữ liệu X_train, X_test, y_train & y_test, và GradientBoostingClassifier đã được import sẵn cho bạn.
Bài tập này là một phần của khóa học
Tinh chỉnh siêu tham số trong Python
Hướng dẫn bài tập
- Tạo một danh sách
learning_ratescho các learning rate, và mộtresults_listđể lưu điểm accuracy của dự đoán. - Viết một vòng lặp để tạo mô hình GBM cho từng learning rate đã nêu và tạo dự đoán cho mỗi mô hình.
- Lưu learning rate và điểm accuracy vào
results_list. - Chuyển results_list thành một DataFrame và in ra.
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.
# Set the learning rates & results storage
learning_rates = ____
results_list = ____
# Create the for loop to evaluate model predictions for each learning rate
for learning_rate in ____:
model = ____(learning_rate=____)
predictions = ____.fit(____, ____).predict(____)
# Save the learning rate and accuracy score
results_list.append([____, accuracy_score(y_test, ____)])
# Gather everything into a DataFrame
results_df = pd.DataFrame(____, columns=['learning_rate', 'accuracy'])
print(results_df)