Daten aufteilen

Wie das Beispiel für einen Nachrichtenbeitrag zeigt, ist eine reine zufällige Aufteilung nicht immer der richtige Ansatz.

Eine häufig verwendete Technik für Onlinesysteme besteht darin, die Daten nach Zeit aufzuteilen, sodass Sie Folgendes tun:

  • Daten für 30 Tage erfassen
  • Mit Daten aus den Tagen 1–29 trainieren.
  • Analysieren Sie die Daten ab Tag 30.

Bei Onlinesystemen sind die Trainingsdaten älter als die Bereitstellungsdaten, sodass diese Technik sicherstellt, dass Ihr Validierungs-Dataset die Verzögerung zwischen Training und Bereitstellung widerspiegelt. Zeitbasierte Aufteilungen eignen sich jedoch am besten für sehr große Datasets, z. B. mit Millionen von Beispielen. In Projekten mit weniger Daten unterscheiden sich die Distributionen ziemlich stark zwischen Training, Validierung und Tests.

Erinnern Sie sich auch an die Datenpannen des Literaturprojekts für maschinelles Lernen, das im Crashkurs für maschinelles Lernen beschrieben wird. Die Daten wurden von einem der drei Autoren verfasst und waren daher in drei Hauptgruppen unterteilt. Da das Team eine zufällige Aufteilung vornimmt, waren die Daten aus jeder Gruppe in den Trainings-, Bewertungs- und Test-Datasets enthalten, d. h., das Modell lernte aus Informationen, die zum Zeitpunkt der Vorhersage nicht unbedingt vorhanden waren. Dieses Problem kann auftreten, wenn Ihre Daten gruppiert werden, ob als Zeitachsendaten oder nach anderen Kriterien geclustert. Domaininformationen können Ihnen bei der Aufteilung Ihrer Daten helfen.

Weitere Informationen finden Sie in diesen Modulen des Crashkurses für maschinelles Lernen: