LoslegenKostenlos starten

Leave-one-out-Cross-Validation

Angenommen, dein Lieblingssüßigkeit ist nicht im Candy-Datensatz enthalten und du willst wissen, wie beliebt sie ist. Bei 5-facher Kreuzvalidierung wird jedes Mal nur auf 80 % der Daten trainiert. Der Candy-Datensatz hat jedoch nur 85 Zeilen, und 20 % der Daten wegzulassen könnte unser Modell schwächen. Mit Leave-one-out-Cross-Validation holen wir aus dem begrenzten Datensatz das Maximum heraus und erhalten die beste Schätzung für die Beliebtheit deiner Lieblingssüßigkeit!

In dieser Übung verwendest du cross_val_score(), um LOOCV durchzuführen.

Diese Übung ist Teil des Kurses

<Kurs>Modellvalidierung in Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Erstelle einen Scorer mit mean_absolute_error, den cross_val_score() verwenden soll.
  • Ergänze cross_val_score() so, dass das Modell rfr, der neu definierte mae_scorer und LOOCV verwendet werden.
  • Gib den Mittelwert und die Standardabweichung von scores mit numpy (als np geladen) aus.

Interaktive praktische Übung

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

from sklearn.metrics import mean_absolute_error, make_scorer

# Create scorer
mae_scorer = ____(____)

rfr = RandomForestRegressor(n_estimators=15, random_state=1111)

# Implement LOOCV
scores = cross_val_score(____, X=X, y=y, cv=____, scoring=____)

# Print the mean and standard deviation
print("The mean of the errors is: %s." % np.____(____))
print("The standard deviation of the errors is: %s." % np.____(____))
Code bearbeiten und ausführen