Аналіз найкращих результатів
Зрештою нас насамперед цікавить найуспішніший «квадрат» у grid search. На щастя, в об'єктів Scikit Learn gridSearchCv є низка параметрів, які надають ключову інформацію лише про найкращий квадрат (або рядок у cv_results_).
Три властивості, які ви дослідите:
best_score_– оцінка (тут ROC_AUC) з найуспішнішого квадрата.best_index_– індекс рядка вcv_results_, що містить інформацію про найуспішніший квадрат.best_params_– словник параметрів, які дали найкращу оцінку, наприклад'max_depth': 10
Об'єкт grid search grid_rf_class доступний.
Датафрейм (cv_results_df) створено з cv_results_ для вас у рядку 6. Це допоможе вам індексувати результати.
Ця вправа є частиною курсу
Тюнінг гіперпараметрів у Python
Інструкції до вправи
- Витягніть і виведіть score ROC_AUC для найкращого квадрата в
grid_rf_class. - Створіть змінну з найуспішнішого рядка, проіндексувавши
cv_results_df. - Створіть змінну
best_n_estimators, діставши параметрn_estimatorsз найуспішнішого квадрата вgrid_rf_class, і виведіть її.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Print out the ROC_AUC score from the best-performing square
best_score = grid_rf_class._____
print(best_score)
# Create a variable from the row related to the best-performing square
cv_results_df = pd.DataFrame(grid_rf_class.cv_results_)
best_row = cv_results_df.loc[[grid_rf_class.____]]
print(best_row)
# Get the n_estimators parameter from the best-performing square and print
best_n_estimators = grid_rf_class.____["_____"]
print(best_n_estimators)