Regresión con características categóricas
Ahora que has creado music_dummies
, que contiene características binarias para el género de cada canción, es hora de construir un modelo de regresión de cresta para predecir la popularidad de las canciones.
music_dummies
ha sido precargado para ti, junto con Ridge
, cross_val_score
, numpy
como np
, y un objeto KFold
almacenado como kf
.
El modelo se evaluará calculando la media RMSE, pero antes tendrás que convertir las puntuaciones de cada pliegue en valores positivos y sacar su raíz cuadrada. Esta métrica muestra el error medio de las predicciones de nuestro modelo, por lo que puede compararse con la desviación típica del valor objetivo-"popularity"
.
Este ejercicio forma parte del curso
Aprendizaje supervisado con scikit-learn
Instrucciones de ejercicio
- Crea
X
, que contiene todas las características demusic_dummies
, yy
, que consiste en la columna"popularity"
, respectivamente. - Instanciar un modelo de regresión de cresta, estableciendo
alpha
igual a 0,2. - Realiza una validación cruzada en
X
yy
utilizando el modelo de cresta, estableciendocv
igual akf
, y utilizando el error cuadrático medio negativo como métrica de puntuación. - Imprime los valores de RMSE convirtiendo los valores negativos de
scores
en positivos y sacando la raíz cuadrada.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Create X and y
X = ____
y = ____
# Instantiate a ridge model
ridge = ____
# Perform cross-validation
scores = ____(____, ____, ____, cv=____, scoring="____")
# Calculate RMSE
rmse = np.____(____)
print("Average RMSE: {}".format(np.mean(rmse)))
print("Standard Deviation of the target array: {}".format(np.std(y)))