LoslegenKostenlos loslegen

5 x 5-fache Kreuzvalidierung

Du kannst mehr als nur eine Iteration der Kreuzvalidierung durchführen. Wiederholte Kreuzvalidierung liefert dir eine bessere Schätzung des Test-Fehlers. Du kannst auch die gesamte Kreuzvalidierungsprozedur wiederholen. Das dauert länger, gibt dir aber deutlich mehr Out-of-Sample-Datensätze und viel genauere Einschätzungen dazu, wie gut das Modell performt.

Einer der großen Vorteile der Funktion train() in caret ist, wie einfach sich sehr unterschiedliche Modelle oder Kreuzvalidierungsverfahren ausführen lassen, indem du nur ein paar Argumente im Funktionsaufruf anpasst. Zum Beispiel könntest du deine gesamte Kreuzvalidierungsprozedur 5-mal wiederholen, um mehr Vertrauen in die Schätzung der Out-of-Sample-Genauigkeit deines Modells zu gewinnen, z. B.:

trControl = trainControl(
  method = "repeatedcv", 
  number = 5,
  repeats = 5, 
  verboseIter = TRUE
)

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit caret in R

Kurs anzeigen

Anleitung zur Übung

  • Fitte das lineare Regressionsmodell erneut auf den Boston-Housing-Datensatz.
  • Verwende 5 Wiederholungen von 5-facher Kreuzvalidierung.
  • Gib das Modell in der Konsole aus.

Interaktive Übung

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

# Fit lm model using 5 x 5-fold CV: model
model <- train(
  medv ~ ., 
  Boston,
  method = "lm",
  trControl = trainControl(
    method = "repeatedcv", 
    number = ___,
    repeats = ___, 
    verboseIter = TRUE
  )
)

# Print model to console
Code bearbeiten und ausführen