Visualizzazione delle prestazioni del modello di regressione
Ora che hai visto come valutare più modelli, costruirai tre modelli di regressione per prevedere i livelli di "energy" di una canzone.
Al dataset music_df sono state aggiunte le variabili dummy per "genre". Inoltre, sono stati creati degli array di caratteristiche e di obiettivi, suddivisi in X_train, X_test, y_train e y_test.
Sono stati importati per te i seguenti siti: LinearRegression, Ridge, Lasso, cross_val_score, e KFold.
Questo esercizio fa parte del corso
Apprendimento supervisionato con scikit-learn
Istruzioni dell'esercizio
- Scrivi un ciclo for utilizzando
modelcome iteratore emodel.values()come iterabile. - Esegui una convalida incrociata sulle caratteristiche di addestramento e sull'array di target di addestramento utilizzando il modello, impostando
cvcome l'oggettoKFold. - Aggiungi i punteggi della convalida incrociata del modello all'elenco dei risultati.
- Crea un box plot che mostri i risultati, con le etichette dell'asse x come nomi dei modelli.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
models = {"Linear Regression": LinearRegression(), "Ridge": Ridge(alpha=0.1), "Lasso": Lasso(alpha=0.1)}
results = []
# Loop through the models' values
for ____ in models.values():
kf = KFold(n_splits=6, random_state=42, shuffle=True)
# Perform cross-validation
cv_scores = ____(____, ____, ____, cv=____)
# Append the results
____.____(____)
# Create a box plot of the results
plt.____(____, labels=____.____())
plt.show()