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.
Se ha precargado music_dummies
, junto con Ridge
, cross_val_score
, numpy
como np
y un objeto KFold
almacenado como kf
.
El modelo se evaluará calculando el error cuadrático medio (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 del ejercicio
- Crea
X
, que contiene todas las características demusic_dummies
ey
, que consiste en la columna"popularity"
, respectivamente. - Instancia 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
scores
negativos en positivos y sacando la raíz cuadrada.
Ejercicio interactivo práctico
Prueba este ejercicio completando el 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)))