Der Train-Test-Split ist die Trennung eines Datenbestands in Teile zum Trainieren, zum Einstellen und zum Prüfen eines KI-Modells. Er ist der erste Arbeitsschritt eines Projekts und nicht der letzte: Wer erst trainiert und dann trennt, hat sich den Maßstab schon verdorben.
- Train-Test-Split (Aufteilung der Daten)
Die Trennung eines Datenbestands in Teile zum Trainieren, zum Einstellen und zum Prüfen.
Beispiel: „Der Train-Test-Split nahm 70 Prozent für das Training, 15 für die Einstellung und 15 für die Abnahme.“Drei Teile, drei Aufgaben: Mit dem Trainingsteil lernt das Modell. An den Validierungsdaten werden Einstellungen verglichen. Der Testteil wird einmal benutzt, am Ende, für die Zahl, die im Bericht steht.
Bei wenigen Daten tritt die Cross-Validation an die Stelle des festen Validierungsteils.
Warum der Testteil nur einmal zählt
Weil er mit jeder Benutzung an Wert verliert. Wer Einstellungen danach auswählt, welche im Testteil besser abschneiden, hat ihn in einen Validierungsteil verwandelt und die Zahl am Ende geschönt. In der Praxis genügt dafür schon der dritte Blick, und bemerkt wird es nie, weil die Zahl gut aussieht.
Wann die Zufallsteilung falsch ist
Bei allem mit Zeit oder Zusammenhang. Daten mit Verlauf werden nach Datum getrennt, damit nicht aus der Zukunft gelernt wird. Daten mit mehreren Zeilen je Person, Kunde oder Dokument werden nach dieser Einheit getrennt, damit nicht dieselbe Person in beiden Teilen liegt. Beides ist der häufigste Weg, sich ein zu gutes Ergebnis zu bauen.
Welche Anteile wir nehmen
Bei einigen tausend Beispielen 70 zu 15 zu 15, bei Hunderttausenden eher 90 zu 5 zu 5, weil fünf Prozent dann groß genug für eine verlässliche Zahl sind. Wichtiger als die Anteile ist, dass die Teile festgehalten werden: Eine Datei mit den Kennungen je Teil gehört ins Projekt, sonst ist das Ergebnis beim nächsten Lauf nicht reproduzierbar.
Was in die Projektablage gehört
Die Aufteilung selbst, nicht nur die Anteile. Eine Datei mit den Kennungen je Teil und der verwendete Zufallsstartwert machen das Ergebnis nachprüfbar; ohne sie liefert derselbe Code beim nächsten Lauf andere Zahlen, und niemand kann sagen, ob eine Änderung gewirkt hat oder der Zufall anders gefallen ist.