Совместная настройка gamma и C с помощью GridSearchCV
В предыдущем упражнении наилучшее значение gamma равнялось 0,001 при значении C по умолчанию, равном 1. В этом упражнении вы найдёте оптимальную комбинацию C и gamma с помощью GridSearchCV.
Как и в предыдущем упражнении, набор данных цифр «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(____))