Utiliser SGDClassifier
Dans ce dernier exercice de programmation, vous effectuerez une recherche d'hyperparamètres sur l'intensité de la régularisation et sur la fonction de perte (régression logistique vs SVM linéaire) à l'aide de SGDClassifier().
Cette activité fait partie du cours
Classificateurs linéaires en Python
Instructions de l’exercice
- Instanciez un
SGDClassifieravecrandom_state=0. - Cherchez sur l'intensité de la régularisation et comparez les pertes
hingeetlog_loss.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# We set random_state=0 for reproducibility
linear_classifier = ____(random_state=0)
# Instantiate the GridSearchCV object and run the search
parameters = {'alpha':[0.00001, 0.0001, 0.001, 0.01, 0.1, 1],
'loss':[____]}
searcher = GridSearchCV(linear_classifier, parameters, cv=10)
searcher.fit(X_train, y_train)
# Report the best parameters and the corresponding score
print("Best CV params", searcher.best_params_)
print("Best CV accuracy", searcher.best_score_)
print("Test accuracy of best grid search hypers:", searcher.score(X_test, y_test))