Ajustarea simultană a gamma și C cu GridSearchCV
În exercițiul anterior, cea mai bună valoare a lui gamma a fost 0,001, folosind valoarea implicită a lui C, adică 1. În acest exercițiu vei căuta cea mai bună combinație de C și gamma folosind GridSearchCV.
Ca și în exercițiul anterior, setul de date cu cifrele 2-vs-nu-2 este deja încărcat, dar de această dată este împărțit în variabilele X_train, y_train, X_test și y_test. Chiar dacă validarea încrucișată împarte deja setul de antrenament în părți, este adesea o idee bună să păstrezi un set de testare separat, pentru a te asigura că rezultatele validării încrucișate sunt corecte.
Acest exercițiu face parte din cursul
Clasificatori liniari în Python
Instrucțiuni pentru exercițiu
- Rulează
GridSearchCVpentru a găsi cei mai buni hiperparametri folosind setul de antrenament. - Afișează cele mai bune valori ale parametrilor.
- Afișează acuratețea pe setul de testare, care nu a fost folosit în cadrul procedurii de validare încrucișată.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____))