Best Practices zum Messen und Vermeiden von Überanpassungen?

9

Ich entwickle automatisierte Handelssysteme für die Börse. Die große Herausforderung war die Überanpassung. Können Sie einige Ressourcen empfehlen, die Methoden zur Messung und Vermeidung von Überanpassungen beschreiben?

Ich habe mit Trainings- / Validierungssätzen begonnen, aber der Validierungssatz wird immer verschmutzt.

Außerdem ändern sich die Zeitreihendaten ständig, da sich der Markt ständig ändert. Wie messen Sie dies und bestimmen die Wahrscheinlichkeit konsistenter Ergebnisse für unsichtbare Daten?

Vielen Dank.

B Sieben
quelle
3
B Sieben, Ihre Frage ist viel zu hoch und nicht sehr spezifisch. Grundsätzlich lässt sich der gesamte Bereich des maschinellen Lernens auf die Frage reduzieren, wie eine Überanpassung vermieden werden kann. Es gibt verschiedene Strategien wie Kreuzvalidierung, Regularisierung oder Verwendung eines geeigneten Prior. Jedes gute Buch zum maschinellen Lernen kann Ihnen dabei helfen (z. B. das Duda / Hart / Storch oder das von Bishop). Es ist auch nicht klar, was Sie unter einem "verdorbenen Validierungssatz" verstehen. Wenn Ihr Modell mit sich ändernden Zeitreihendaten nicht umgehen kann, ist dies wahrscheinlich zu einfach. Komplexere Modelle müssen jedoch noch stärker reguliert werden.
Fabee
@ B Seven - Wenn Ihr Validierungssatz verschmutzt ist (ich nehme an, dass Modelle daran angepasst werden), ist es möglicherweise besser, Ihre Daten in einen Trainings-, Test- und Validierungssatz aufzuteilen.
Richiemorrisroe
OK, das macht Sinn. Also unterschiedliche Ansätze, um eine Überanpassung der Arbeit in verschiedenen Bereichen zu vermeiden.
B Sieben

Antworten:

5

Für eine Überanpassung bei der Modellauswahl ist dann ein lesenswertes Papier

C. Ambroise und GJ McLachlan, "Selection Bias in der Genextraktion auf der Basis von Microarray-Genexpressionsdaten", PNAS, vol. 99 nr. 10 6562-6566, Mai 2002. http://dx.doi.org/10.1073/pnas.102102699

Eine Diskussion der gleichen Art von Problem, die bei der Modellauswahl auftritt, finden Sie unter

GC Cawley, NLC Talbot, "Über Überanpassung bei der Modellauswahl und anschließende Auswahlverzerrung bei der Leistungsbewertung", Journal of Machine Learning Research, 11 (Jul): 2079-2107, 2010. http://jmlr.csail.mit. edu / papers / v11 / cawley10a.html

Die Möglichkeit, das Problem zu lösen, dass der Validierungssatz verunreinigt wird, besteht in der Verwendung einer verschachtelten Kreuzvalidierung. Daher wird die Methode zur Auswahl des Modells in jeder Falte der für die Leistungsschätzung verwendeten Kreuzvalidierung unabhängig durchgeführt. Im Wesentlichen muss die Leistungsschätzung die Leistung des gesamten Modellanpassungsverfahrens (Anpassen des Modells, Merkmalsauswahl, Modellauswahl, alles) schätzen.

Der andere Ansatz ist, ein Bayesianer zu sein. Das Risiko einer Überanpassung wird immer dann eingeführt, wenn Sie ein Kriterium basierend auf einer endlichen Stichprobe von Daten optimieren. Wenn Sie also eher marginalisieren (integrieren) als optimieren, ist eine klassische Überanpassung unmöglich. Sie haben jedoch das Problem, die Prioritäten anzugeben.

Dikran Beuteltier
quelle
Ich habe die Kreuzvalidierung implementiert und eine Kreuzvalidierung ausgelassen, aber nicht ganz herausgefunden, wie Überanpassung gemessen und gemindert werden kann. Ich habe mir diese Papiere angesehen, aber sie sind über meinem Kopf. Können Sie weitere Einführungsressourcen empfehlen?
B Sieben
2
Um die Überanpassung zu messen, müssen Sie nur die Kreuzvalidierung verschachteln. Die äußere Kreuzvalidierung wird für die Leistungsbewertung verwendet, und mit jeder Falte der äußeren Kreuzvalidierung wird eine "innere" Kreuzvalidierung für die Merkmalsauswahl und Modellauswahl usw. verwendet. Dadurch erhalten Sie eine unvoreingenommene Leistungsschätzung.
Dikran Marsupial