Aan de slagGa gratis aan de slag

Leave-one-out-cross-validation

Stel, je favoriete snoepje staat niet in de candy-gegevensset en je bent benieuwd naar de populariteit ervan. Met 5-voudige cross-validatie train je telkens op maar 80% van de data. De candy-gegevensset heeft echter maar 85 rijen, en 20% weglaten kan ons model benadelen. Met leave-one-out-cross-validation haal je het meeste uit onze beperkte gegevensset en krijg je de beste schatting voor de populariteit van je favoriete snoepje!

In deze oefening gebruik je cross_val_score() om LOOCV uit te voeren.

Deze oefening maakt deel uit van de cursus

Modelvalidatie in Python

Cursus bekijken

Oefeninstructies

  • Maak een scorer met mean_absolute_error voor gebruik in cross_val_score().
  • Vul cross_val_score() in zodat het model rfr, de zojuist gedefinieerde mae_scorer en LOOCV worden gebruikt.
  • Print het gemiddelde en de standaarddeviatie van scores met numpy (geladen als np).

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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 bewerken en uitvoeren