Régression avec caractéristiques catégorielles
Maintenant que vous avez créé music_dummies
, contenant des caractéristiques binaires pour le genre de chaque chanson, il est temps de construire un modèle de régression de crête pour prédire la popularité de la chanson.
music_dummies
a été préchargé pour vous, ainsi que Ridge
, cross_val_score
, numpy
en tant que np
, et un objet KFold
stocké en tant que kf
.
Le modèle sera évalué en calculant le RMSE moyen, mais vous devrez d’abord convertir les scores de chaque bloc en valeurs positives et prendre leur racine carrée. Cette métrique indique l’erreur moyenne des prédictions de notre modèle et peut donc être comparée à l’écart-type de la valeur cible "popularity"
.
Cet exercice fait partie du cours
Apprentissage supervisé avec scikit-learn
Instructions
- Créez
X
, qui contient toutes les caractéristiques demusic_dummies
, ety
, qui se compose de la colonne"popularity"
, respectivement. - Instanciez un modèle de régression de crête, en fixant
alpha
à 0,2. - Effectuez une validation croisée sur
X
ety
à l’aide du modèle de crête, en définissantcv
surkf
et en utilisant l’erreur quadratique moyenne négative comme métrique de score. - Affichez les valeurs du RMSE en convertissant les
scores
négatifs en valeurs positives et en prenant leur racine carrée.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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)))