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

Kurs anzeigen

Anleitung zur Übung

  • Erstelle X mit allen Merkmalen in music_dummies sowie y bestehend aus der Spalte "popularity".
  • Instanziiere ein Ridge-Regressionsmodell und setze alpha auf 0.2.
  • Führe eine Kreuzvalidierung für X und y durch, indem du das Ridge-Modell verwendest, cv gleich kf 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)))