LoslegenKostenlos loslegen

Kreuzvalidierung

Kreuzvalidierung ist eine Technik, mit der die Holdout-Performance eines Modells überprüft wird. So stellst du sicher, dass die Testleistung nicht auf Besonderheiten bei der Datenaufteilung zurückzuführen ist. In dieser Übung nutzt du Implementierungen aus sklearn, um mit dem Modul KFold() eine K-Fold-Kreuzvalidierung auszuführen und die Precision und Recall eines Entscheidungsbaums zu beurteilen.

X_train, y_train, X_test, y_test sind in deinem Workspace verfügbar. pandas als pd, numpy als np und sklearn stehen dir ebenfalls zur Verfügung. KFold() und cross_val_score() aus sklearn.model_selection sind ebenfalls verfügbar.

Diese Übung ist Teil des Kurses

CTR-Vorhersage mit Machine Learning in Python

Kurs anzeigen

Anleitung zur Übung

  • Erstelle einen Decision-Tree-Klassifikator.
  • Richte eine K-Fold-Kreuzvalidierung mit vier Splits ein und weise sie k-fold zu.
  • Verwende k_fold, um mit cross_val_score() die Kreuzvalidierung auszuführen und Precision und Recall deines Modells zu evaluieren (und dabei nicht recall_score() oder precision_score() zu verwenden!).

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Create model 
clf = ____

# Set up k-fold
k_fold = ____(n_splits = 4, random_state = 0, shuffle = True)

# Evaluate precision and recall for each fold
precision = ____(
  clf, X_train, ____, cv = ____, scoring = 'precision_weighted')
recall = ____(
  clf, X_train, ____, cv = ____, scoring = 'recall_weighted')
print("Precision scores: %s" %(precision)) 
print("Recall scores: %s" %(recall))
Code bearbeiten und ausführen