Nachdem Sie Ihre Daten erfasst und gegebenenfalls Stichproben erhoben haben, teilen Sie die Daten im nächsten Schritt in Trainings-Datasets, Validierungs-Datasets und Test-Datasets auf.
Die zufällige Aufteilung ist der beste Ansatz
Die zufällige Aufteilung ist zwar die beste Methode für viele ML-Probleme, aber nicht immer die richtige Lösung. Beispiel: Betrachten Sie Datensätze, in denen die Beispiele ganz normal in ähnlichen Beispielen geclustert sind.
Angenommen, Sie möchten, dass Ihr Modell das Thema aus dem Text eines Nachrichtenartikels klassifiziert. Warum wäre eine zufällige Aufteilung problematisch?
Abbildung 1. Nachrichten-Cluster sind geclustert.
Nachrichten erscheinen in Clustern: Mehrere Meldungen zum selben Thema werden gleichzeitig veröffentlicht. Wenn wir die Daten nach dem Zufallsprinzip aufteilen, enthalten das Test-Dataset und das Trainings-Dataset wahrscheinlich dieselben Geschichten. Tatsächlich würde es so nicht funktionieren, da alle Geschichten gleichzeitig eintreffen. Eine solche Trennung würde zu Verzerrungen führen.
Abbildung 2. Ein Cluster wird nach dem Zufallsprinzip aufgeteilt und führt zu Verzerrungen.
Ein einfacher Ansatz zur Behebung dieses Problems besteht darin, unsere Daten danach zu teilen, wann die Story veröffentlicht wurde, vielleicht nach dem Tag, an dem sie veröffentlicht wurde. Das führt dazu, dass am selben Tag Meldungen in derselben Aufteilung erscheinen.
Abbildung 3. Wenn die Zeit aufgeteilt wird, befinden sich die Cluster am Ende im selben Satz.
Bei Zehntausenden oder mehr Nachrichten kann ein Prozentsatz auf die Tage aufgeteilt werden. Das ist allerdings in Ordnung. In Wirklichkeit wurden diese Meldungen jedoch auf zwei Tage im Nachrichtenzyklus aufgeteilt. Alternativ können Sie auch Daten innerhalb eines bestimmten Zeitraums für den Stichtag verwerfen, um Überschneidungen zu vermeiden. Sie können beispielsweise für den Monat April mit Stories trainieren und dann die zweite Maiwoche als Test-Dataset verwenden, wobei sich durch die Wochenlücke Überschneidungen vermeiden lassen.