Centrage et mise à l’échelle pour la classification
Vous allez maintenant réunir la mise à l’échelle et la construction de modèles dans un pipeline de validation croisée.
Votre tâche consiste à créer un pipeline pour mettre à l’échelle les caractéristiques de l’ensemble de données music_df et à effectuer une validation croisée par recherche de grille à l’aide d’un modèle de régression logistique avec différentes valeurs pour l’hyperparamètre C. La variable cible est ici "genre", qui contient une valeur binaire : 1 pour le rock et 0 pour tout autre genre.
StandardScaler, LogisticRegression et GridSearchCV ont été importés pour vous.
Cet exercice fait partie du cours
Apprentissage supervisé avec scikit-learn
Instructions
- Construisez les étapes du pipeline : un objet
StandardScaler()nommé"scaler"et un modèle de régression logistique nommé"logreg". - Créez le fichier
parameters, en recherchant 20 valeurs flottantes équidistantes allant de0.001à1.0pour l’hyperparamètreCdu modèle de régression logistique dans le pipeline. - Instanciez l’objet de recherche de grille.
- Ajustez l’objet de recherche de grille aux données d’apprentissage.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Build the steps
steps = [("____", ____()),
("____", ____())]
pipeline = Pipeline(steps)
# Create the parameter space
parameters = {"____": np.____(____, ____, 20)}
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2,
random_state=21)
# Instantiate the grid search object
cv = ____(____, param_grid=____)
# Fit to the training data
cv.____(____, ____)
print(cv.best_score_, "\n", cv.best_params_)