LoslegenKostenlos loslegen

Regression mit kategorialen Merkmalen

Nachdem du eben mithilfe von music_dummies das Genre aller Songs binär codiert hast, erstellst du in dieser Übung ein Modell für die Ridge-Regression, um die Popularität der Songs vorherzusagen.

music_dummies wurde bereits geladen, ebenso wie Ridge, cross_val_score, numpy als np sowie ein als kf gespeichertes KFold-Objekt.

Das Modell wird durch die Berechnung des durchschnittlichen RMSE-Wertes evaluiert. Dazu musst du zuerst die Werte für alle Teilmengen in positive Zahlen umwandeln und dann jeweils die Wurzel ziehen. Die so berechnete Kennzahl gibt den durchschnittlichen Fehler der Vorhersagen des Modells an und kann 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 anhand aller Merkmale in music_dummies sowie y anhand der Spalte "popularity".
  • Instanziiere ein Modell für die Ridge-Regression und setze alpha auf 0.2.
  • Führe eine Kreuzvalidierung für X und y durch. Verwende dabei das Ridge-Modell, setze cv gleich kf und nutze den negativen mittleren quadratischen Fehler zur Bewertung.
  • Gib die RMSE-Werte aus, indem du zunächst negative scores-Werte in positive Werte umwandelst und dann die Quadratwurzel ziehst.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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)))
Code bearbeiten und ausführen