Visualizar el rendimiento del modelo de regresión

Ahora que ya has visto cómo evaluar varios modelos, construirás tres modelos de regresión para predecir los niveles de "energy" de una canción.

Al conjunto de datos music_df se le han añadido variables ficticias para "genre". También se han creado matrices de características y objetivos, que se han dividido en X_train, X_test, y_train, y y_test.

Se han importado para ti los siguientes: LinearRegression, Ridge, Lasso, cross_val_score, y KFold.

Este ejercicio forma parte del curso

Aprendizaje supervisado con scikit-learn

Ver curso

Instrucciones de ejercicio

  • Escribe un bucle for utilizando model como iterador, y model.values() como iterable.
  • Realiza una validación cruzada sobre las características de entrenamiento y la matriz objetivo de entrenamiento utilizando el modelo, estableciendo cv igual al objeto KFold.
  • Añade las puntuaciones de validación cruzada del modelo a la lista de resultados.
  • Crea un diagrama de cajas que muestre los resultados, con las etiquetas del eje x como los nombres de los modelos.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

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()