Die K-fache Kreuzvalidierung ist eine Technik zur Bewertung der Leistung eines Modells. Sie ist besonders hilfreich, um abzuschätzen, wie gut ein Modell auf neue, ungesehene Daten verallgemeinert werden kann. Bei diesem Verfahren wird der Datensatz in “k” Teilmengen oder Foldings von ungefähr gleicher Größe unterteilt. Hier ist eine Aufschlüsselung der Schritte:
-
Aufteilung des Datensatzes: Der Datensatz wird in “k” gleich große Teilmengen oder Foldings unterteilt. Wenn Sie z. B. 1.000 Stichproben haben und “k” als 5 wählen, enthält jeder Fold 200 Stichproben.
-
Iteratives Training und Auswertung: Das Modell wird ‘k’ Mal trainiert. Bei jeder Iteration wird ein anderer Fold als Validierungssatz verwendet, und die übrigen Folds werden für das Training verwendet. Zum Beispiel:
- Iteration 1: Fold 1 als Validierung, Folds 2 bis k für das Training
- Iteration 2: Fold 2 als Validierung, Folds 1 und 3 bis k für das Training
- Iteration 3: Falte 3 als Validierung, Falte 1 und 2 und 4 zu k für das Training
- … und so weiter, bis alle Faltungen als Validierungssatz verwendet wurden.
-
Bewertung der Leistung: Nach jeder Iteration wird die Leistung des Modells anhand einer ausgewählten Metrik (z. B. Genauigkeit, Präzision, Wiedererkennung usw.) auf der Validierungsmenge bewertet. Die Leistungsmetriken aus jeder Iteration werden gemittelt oder kombiniert, um eine Gesamteinschätzung der Leistung des Modells zu erhalten.
-
Aggregation der Metriken: Die Leistungsmetriken (z. B. Genauigkeitswerte) aus jeder Iteration werden gemittelt oder kombiniert, um eine Gesamtbeurteilung der Leistung des Modells zu erhalten. Diese aggregierte Metrik repräsentiert die erwartete Leistung des Modells bei ungesehenen Daten.
Vorteile der K-fachen Kreuzvalidierung gegenüber einer einfachen Zug/Test-Aufteilung
-
Bessere Nutzung der Daten: Bei der K-fachen Kreuzvalidierung werden die verfügbaren Daten besser genutzt, da jede Stichprobe sowohl zum Training als auch zur Validierung verwendet wird.
-
Geringere Streuung bei der Leistungsabschätzung: Sie liefert eine zuverlässigere Schätzung der Modellleistung, indem sie die mit einer einzigen Trainings-/Testaufteilung verbundene Varianz reduziert.
-
Verallgemeinerung: Es hilft zu verstehen, wie das Modell bei verschiedenen Untergruppen der Daten abschneidet, und somit seine Generalisierungsfähigkeit zu beurteilen.
Auswahl des Wertes von ‘k’
Höhere ‘k’-Werte: Die Verwendung eines höheren ‘k’-Werts (z. B. 10 oder mehr) führt zu kleineren Validierungssätzen, was zu einer geringeren Verzerrung der Leistungsschätzung, aber zu höheren Rechenkosten führen kann. Niedrigere ‘k’-Werte: Die Verwendung eines niedrigeren ‘k’-Werts (z. B. 3 oder 5) verringert den Rechenaufwand, kann aber aufgrund kleinerer Validierungssätze zu einer größeren Verzerrung der Leistungsschätzung führen.
In praktischen Szenarien
-
Bei großen Datensätzen können höhere ‘k’-Werte rechenintensiv sein.
-
Wenn der Datensatz klein ist, liefert ein höherer ‘k’-Wert möglicherweise nicht genügend Daten in jeder Falte für ein robustes Modelltraining.
-
Im Allgemeinen werden Werte wie 5 oder 10 verwendet, da sie ein Gleichgewicht zwischen Recheneffizienz und zuverlässiger Leistungsschätzung herstellen.