Wie entscheiden Sie, wie hoch Ihre Zug-, Validierungs- und Testprozentsätze sind?

10

Bei der Aufteilung meiner beschrifteten Daten in Trainings-, Validierungs- und Testsätze habe ich alles vom 25.05.25 bis zum 05.05.10 gehört. Ich bin sicher, dass dies davon abhängt, wie Sie Ihr Modell verwenden und wie anfällig es ist, Ihren Lernalgorithmus zu überanpassen. Gibt es eine Möglichkeit zu entscheiden oder ist alles per Faustregel? Sogar ELSII scheint zu diesem Thema vage zu sein.

Ed Fine
quelle
Diese Fragen und Antworten zu Stackoverflow enthalten zwei gute Antworten zu diesem Thema mit jeweils> 30 Upvotes. stackoverflow.com/questions/13610074/…
Luke Singham

Antworten:

13

Die geteilte Stichprobenvalidierung ohne Resampling (Kreuzvalidierung oder besser: Bootstrapping) ist unzuverlässig, es sei denn, Sie haben eine enorme Stichprobe (z. B. ). Eine strenge interne Validierung mit dem Bootstrap wird normalerweise bevorzugt, vorausgesetzt, Sie programmieren alle Modellauswahlschritte so, dass sie in jeder Bootstrap-Schleife wiederholt werden können. Und eines der Probleme bei Split-Sample-Ansätzen ist neben der Volatilität die Schwierigkeit bei der Auswahl der Split-Fraktionen.N>20000

Frank Harrell
quelle
Und was ist, wenn Sie mit größeren Datenmengen (aber nicht großen Datenmengen) von 10000 <N <1000000 arbeiten? An diesem Punkt erscheint eine Aufteilung vernünftig. Dies passt zu vielen, aber nicht allen Situationen, denen ich begegne.
Ed Fine
Es könnte durchaus vernünftig sein.
Frank Harrell
Ich habe N = 95.000.000 (halten Sie einen Satz von 9.500.000 aus). Wo ist eine Referenz, die mir sagt, dass ich mein Experiment nicht 10x wiederholen muss?
Dranxo
2
Führen Sie es einfach zweimal aus (2 Teilungen) und Sie werden feststellen, wie stark die Ergebnisse variieren. Sie variieren wahrscheinlich so wenig, dass Sie nur einen Split benötigen. Stellen Sie sich die Breite eines Konfidenzintervalls für einen Anteil mit einer so großen Stichprobengröße vor.
Frank Harrell
3

Natürlich müssen Sie auch die Aufteilungsverhältnisse für (Doppel-) Resampling festlegen ...

Resampling funktioniert jedoch normalerweise für eine ganze Reihe von Aufteilungsverhältnissen, wenn Sie dies berücksichtigen

  • kein Auslassen zu machen, wenn dies die Anzahl möglicher unterschiedlicher Läufe verringern würde
  • Lassen Sie genügend Trainingsfälle im innersten Trainingssatz, damit der Traing-Algorithmus eine gute Chance hat, ein nützliches Modell zu erstellen.
  • Je unabhängiger Ihre Fälle sind, desto weniger wichtig sind diese Überlegungen.

Und was ist, wenn Sie mit größeren Datenmengen (aber nicht großen Datenmengen) von 10000 <N <1000000 arbeiten?

Was Sie tun können, wenn Sie nicht sicher sind, ob ein Resampling erforderlich ist, ist: einige Male ein Resample durchführen. Genug, damit Sie messen können, ob das Resampling erforderlich war.

  • Überprüfen Sie die Stabilität Ihrer Vorhersagen
  • Überprüfen Sie die Stabilität Ihrer Modellparameter

Mit diesen Ergebnissen können Sie entscheiden, ob Sie weitere Resampling-Iterationen hinzufügen möchten oder ob die Dinge in Ordnung sind.

cbeleites unzufrieden mit SX
quelle
2

Hierfür gibt es keine feste Regel. Die empirische Analyse hat jedoch gezeigt, dass Ihre Genauigkeit umso besser ist, je mehr Trainingsdaten Sie haben. Aber was auch immer Sie tun, vergessen Sie nicht, alle Ihre Trainings- / Validierungs- / Testdaten zusammenzufassen und einen 10-fachen Lebenslauf zu erstellen, wenn Sie fertig sind. Dies gibt einen sehr guten Einblick in das Problem der Über- / Unteranpassung während Ihres Experiments.

Rushdi Shams
quelle
1

Ich denke, es kommt darauf an, welche Fragen Sie beantworten möchten. Interessieren Sie sich für eine genaue Ansicht des Leistungsunterschieds zwischen mehreren Algorithmen? Dann benötigen Sie einen ziemlich großen Validierungssatz. Interessieren Sie sich dafür, wie gut ein Algorithmus für N = 10000 Samples funktioniert? Dann sollten Sie mindestens 10000 Proben in das Zugset legen.

Ein größerer Validierungssatz gibt Ihnen mehr statistische Sicherheit über Ihre Ergebnisse, aber die Sicherheit bezieht sich auf die Leistung eines Algorithmus, der mit weniger Stichproben trainiert wurde, was möglicherweise nicht das ist, wonach Sie am Ende suchen.

MLS
quelle