Einfach erklärt
K‑Fold ist eine Cross‑Validation‑Variante. Du teilst deine Daten in K gleich große Teile (Falten). Dann machst du K Durchläufe: Jedes Mal wird auf K−1 Teilen trainiert und auf dem übrigen Teil getestet. Am Ende mittelst du die K Testergebnisse. So bekommst du eine stabilere und fairere Schätzung der Modellleistung als mit nur einem Train/Test‑Split.
Kurz: K‑mal trainieren & testen, jede Falte einmal Test → Mittelwert als Leistung.
Ganz einfache Beispiele (mit Alltagsbildern)
• Vokabel‑Stapel: Du hast 5 Stapel. Vier nutzt du zum Lernen, den fünften zum Abfragen. Danach wechselst du den Abfragestapel, bis jeder einmal dran war. Die durchschnittliche Note zeigt, wie gut du insgesamt bist.
• Backrezept‑Check: Du bäckst 5 Mal denselben Kuchen, aber jedes Mal probiert eine andere Gruppe. Der Durchschnitt der Bewertungen ist fairer als nur eine Meinung.
• Fußball‑Tryouts: Aus 5 Gruppen spielt jede einmal gegen die Trainer (Test), während die anderen trainieren. So sieht man besser, wer wirklich überzeugt – unabhängig von der Gruppenzusammensetzung.
Professionelle Definition (verständlich)
- Teile den Datensatz in K annähernd gleich große Falten.
- Für j = 1 … K: Trainiere das Modell auf allen Falten außer j und evaluiere auf Falte j.
- Berichte den Mittelwert (und gern Standardabweichung) einer Metrik (z. B. F1, Accuracy, RMSE) über alle K Durchläufe.
Praktische Varianten:
- Stratified K‑Fold (Klassifikation): Erhält den Klassenanteil pro Falte (wichtig bei unausgewogenen Klassen).
- Group K‑Fold: Ganze Gruppen bleiben zusammen (z. B. alle Einträge pro Kunde/Patient), damit keine Datenleckage entsteht.
- Repeated K‑Fold: Mehrfaches Wiederholen mit neuem Shuffle für stabilere Schätzungen.
- Time‑Series Split: Für Zeitreihen nur in die Zukunft testen (rollend/expandierend) – niemals mischen.
Praxis‑Tipps
- K wählen: Häufig K = 5 oder 10; mehr Falten = teurer, nicht immer besser.
- Pipelines nutzen: Skalierung, Imputation, Feature‑Auswahl immer innerhalb der Trainingsfalte fitten und erst dann auf die Testfalte anwenden (sonst Leakage).
- Klassenungleichgewicht: Stratify verwenden.
- Kleine Datensätze: Lieber Repeated K‑Fold statt LOOCV (Leave‑One‑Out ist sehr teuer und oft lauter).
- Hyperparameter‑Tuning: Innerhalb einer verschachtelten CV (Nested CV) durchführen; die äußere CV bleibt unberührt für die faire Leistungsschätzung.
- Berichten: Mittel ± Standardabweichung, ggf. Boxplot der Folds.
Quellen
- Kohavi (1995) – A Study of Cross‑Validation and Bootstrap for Accuracy Estimation
https://dl.acm.org/doi/10.1145/1643031.1643047 - Hastie, Tibshirani, Friedman – The Elements of Statistical Learning (Kapitel: Model Assessment)
https://web.stanford.edu/~hastie/ElemStatLearn/ - Arlot & Celisse (2010) – A Survey of Cross‑Validation Procedures for Model Selection
https://hal.science/hal-00626028/document - Varma & Simon (2006) – Bias in Error Estimation when using Cross‑Validation for Model Selection
https://link.springer.com/article/10.1007/s10994-006-6224-1 - scikit‑learn – Cross‑validation: evaluating estimator performance
https://scikit-learn.org/stable/modules/cross_validation.html