Centratura e scalatura per la classificazione
Ora riunirai la scalatura e la costruzione del modello in una pipeline per la convalida incrociata.
Il tuo compito è costruire una pipeline per scalare le caratteristiche nel dataset music_df ed eseguire una convalida incrociata con ricerca a griglia utilizzando un modello di regressione logistica con diversi valori dell'iperparametro C. La variabile target è "genre", che contiene valori binari per il rock come 1 e per qualsiasi altro genere come 0.
StandardScaler, LogisticRegression e GridSearchCV sono stati importati per te.
Questo esercizio fa parte del corso
Apprendimento supervisionato con scikit-learn
Istruzioni dell'esercizio
- Costruisci le fasi della pipeline: un oggetto
StandardScaler()chiamato"scaler"e un modello di regressione logistica chiamato"logreg". - Crea
parameters, cercando 20 valori fluttuanti equidistanti che vanno da0.001a1.0per l'iperparametroCdel modello di regressione logistica all'interno della pipeline. - Istanzia l'oggetto di ricerca della griglia.
- Adatta l'oggetto di ricerca della griglia ai dati di formazione.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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_)