Спільне налаштування gamma та C за допомогою GridSearchCV
У попередній вправі найкраще значення gamma дорівнювало 0.001 за замовчуваного значення C, тобто 1. У цій вправі ви шукатимете найкращу комбінацію C і gamma, використовуючи GridSearchCV.
Як і в попередній вправі, набір даних рукописних цифр для задачі 2-проти-не-2 уже завантажено, але цього разу його поділено на змінні X_train, y_train, X_test і y_test. Хоч перехресна перевірка вже ділить тренувальну вибірку на частини, часто корисно відкласти окрему тестову вибірку, щоб переконатися, що результати перехресної перевірки мають сенс.
Ця вправа є частиною курсу
Лінійні класифікатори в Python
Інструкції до вправи
- Запустіть
GridSearchCV, щоб знайти найкращі гіперпараметри на тренувальній вибірці. - Виведіть найкращі значення параметрів.
- Виведіть точність на тестовій вибірці, яку не використовували під час перехресної перевірки.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Instantiate an RBF SVM
svm = SVC()
# Instantiate the GridSearchCV object and run the search
parameters = {'C':[0.1, 1, 10], 'gamma':[0.00001, 0.0001, 0.001, 0.01, 0.1]}
searcher = GridSearchCV(svm, ____)
____.fit(____)
# Report the best parameters and the corresponding score
print("Best CV params", searcher.best_params_)
print("Best CV accuracy", searcher.best_score_)
# Report the test accuracy using these best parameters
print("Test accuracy of best grid search hypers:", searcher.score(____))