Ist es "fair", einen Samen in eine zufällige Waldregression zu setzen, um die höchste Genauigkeit zu erzielen?

10

Ich habe eine zufällige Waldregression, die mit skl erstellt wurde, und ich stelle fest, dass ich unterschiedliche Ergebnisse erhalte, wenn ich den zufälligen Startwert auf unterschiedliche Werte setze.

Wenn ich LOOCV verwende, um festzustellen, welches Seed am besten funktioniert, ist dies eine gültige Methode?

user2723494
quelle
1
Das machen die Leute in Wettbewerben. Für die Wissenschaft wäre das allerdings schwer zu rechtfertigen.
Firebug
2
Stellen Sie sich ein Extremszenario vor: Wir spielen ein Spiel: Wir würfeln zwei und derjenige von uns, der die höhere Summe erhält, gewinnt. Aber eigentlich darf ich zweimal würfeln. Bist du fair? Lassen Sie mich darauf hinweisen, dass das Setzen der zufälligen Samen ein wesentlicher Bestandteil der reproduzierbaren Forschung ist und immer durchgeführt werden sollte. Das bedeutet jedoch nicht, dass wir viele verschiedene Samen probieren sollten, bis wir einen "günstigen Samen" finden.
usεr11852 sagt Reinstate Monic
@ usεr11852 Was halten Sie von meinem Kommentar zur aktuell akzeptierten Antwort? Ich bin mir nicht sicher, ob dies anders ist als zufällige Neustarts wie bei kmeans. Niemand ist der Meinung, dass wir gezwungen sein sollten, den ersten Durchlauf zu akzeptieren, bis zu dem Punkt, dass zufällige Neustarts in die Standardfunktion in R integriert sind. Es sei denn, Sie betrachten das Modell als 100-maliges Ausführen von kmeans anstelle des Modells als nur das beste Clustering
jld
Nein - es scheint genau die Definition einer Überanpassung an die tatsächliche Zufälligkeit zu sein.
Mark White
@Chaconne: Ich unterstütze voll und ganz Ihren Standpunkt bezüglich der Notwendigkeit einer ordnungsgemäßen Validierung. Ich denke jedoch, dass es einen Kernunterschied zwischen den beiden Anwendungsfällen gibt: Im Fall von k-means (oder der stochastischen Optimierung im Allgemeinen) suchen wir nach einem "optimalen Satz" von Parametern, während wir für CV nach einem "repräsentativen Satz" suchen ". Im frühen Fall bemühen wir uns zu zeigen, "wie gut wir sein können", während wir im späteren Fall "wie gut wir sein werden".
usεr11852 sagt Reinstate Monic

Antworten:

10

Die Antwort ist nein .

Ihr Modell liefert für jeden Samen, den Sie verwenden, ein anderes Ergebnis. Dies ist ein Ergebnis der nicht deterministischen Natur des Modells. Wenn Sie einen bestimmten Startwert auswählen, der die Leistung des Validierungssatzes maximiert, wählen Sie die "Anordnung" aus, die am besten zu diesem Satz passt. Dies garantiert jedoch nicht, dass das Modell mit diesem Startwert bei einem separaten Testsatz eine bessere Leistung erzielt . Dies bedeutet einfach, dass Sie das Modell im Validierungssatz überpasst haben .

Dieser Effekt ist der Grund, warum Sie viele Leute sehen, die in Wettbewerben (z. B. Kaggle) auf dem öffentlichen Test-Set einen hohen Rang haben und auf dem versteckten Test-Set weit davon abfallen. Dieser Ansatz ist nicht als der richtige Ansatz angesehen.

Djib2011
quelle
4
Ja, aus diesem Grund ist die Kreuzvalidierung eine so starke Technik und auch, warum Menschen sowohl eine Validierung als auch einen Testsatz verwenden (eine, auf der die Modellauswahl basiert, und eine, um eine unvoreingenommene Bewertung zu erhalten).
Djib2011
1
Ich bin nicht überzeugt. Bei der nicht konvexen Optimierung ist es Routine, zufällige Neustarts durchzuführen, da unterschiedliche Startwerte zu sehr unterschiedlichen Modellparameterschätzungen führen können und nur durch Pech eine schlechte Konvergenz erzielt werden kann. ZB bei kmeans ist dies bekannt. Mit dem zufälligen Wald macht Ihr Modell möglicherweise zu viele unterdurchschnittliche Teilungen. Ich denke nicht, dass es angemessen ist zu erkennen, dass unterschiedliche Läufe zu unterschiedlichen Modellparameterschätzungen führen und einige möglicherweise besser verallgemeinern als andere. Dies alles hängt natürlich davon ab, ob die Leistung der Stichprobe richtig beurteilt wird.
Jld
5
@ user2723494 Es gilt für Hyperparameter in der Hoffnung, die Leistung ohne die Kosten der Verallgemeinerung zu steigern. Eine wiederholte Feinabstimmung der Parameter am Validierungssatz würde jedoch den gleichen Effekt erzielen, den ich beschrieben habe (Überanpassung des Validierungssatzes). Da zufälliges Seeding von Natur aus stochastisch ist, ist es weitaus wahrscheinlicher, dass die Leistung aufgrund von Überanpassung verbessert wird, als dass tatsächlich ein besseres Modell hergestellt wurde.
Djib2011
4
@Chaconne Ich habe nicht gesagt, dass das unmöglich ist. Durch dieses Verfahren ist es jedoch weitaus wahrscheinlicher, einen Samen auszuwählen, der überpasst, als einen, der tatsächlich ein besseres Modell hervorbringt ...
Djib2011
4
Um ehrlich zu sein, habe ich es nie für eine gute Praxis gehalten, ML-Algorithmen zu verwenden (und sie ihrer stochastischen Natur zu berauben). Das OP hat eine neue Frage erstellt , die genau dies stellt. Ich würde gerne Ihre Antwort lesen!
Djib2011