Regression mit kategorialen Merkmalen
Nachdem du music_dummies
mit binären Merkmalen für das Genre jedes Songs erstellt hast, ist es an der Zeit, ein Ridge-Regressionsmodell zu erstellen, um die Popularität der Lieder vorherzusagen.
music_dummies
wurde für dich vorgeladen, zusammen mit Ridge
, cross_val_score
, numpy
als np
und einem KFold
-Objekt, das als kf
gespeichert ist.
Das Modell wird durch die Berechnung des durchschnittlichen RMSE bewertet, aber zuerst musst du die Punktzahlen für jede Teilmenge in positive Werte umwandeln und ihre Quadratwurzel ziehen. Diese Kennzahl zeigt den durchschnittlichen Fehler der Vorhersagen unseres Modells und kann daher mit der Standardabweichung des Zielwerts ("popularity"
) verglichen werden.
Diese Übung ist Teil des Kurses
Überwachtes Lernen mit scikit-learn
Anleitung zur Übung
- Erstelle
X
mit allen Merkmalen inmusic_dummies
sowiey
bestehend aus der Spalte"popularity"
. - Instanziiere ein Ridge-Regressionsmodell und setze
alpha
auf 0.2. - Führe eine Kreuzvalidierung für
X
undy
durch, indem du das Ridge-Modell verwendest,cv
gleichkf
setzt und den negativen mittleren quadratischen Fehler als Bewertungsmaßstab verwendest. - Drucke die RMSE-Werte, indem du negative
scores
-Werte in positive umwandelst und die Quadratwurzel ziehst.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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)))