Wenn Sie eine Kreuzvalidierung für die Modellauswahl (wie z. B. die Optimierung von Hyperparametern) verwenden und die Leistung des besten Modells bewerten, sollten Sie eine verschachtelte Kreuzvalidierung verwenden . Die äußere Schleife dient zur Bewertung der Leistung des Modells, und die innere Schleife dient zur Auswahl des besten Modells. Das Modell wird an jedem äußeren Trainingssatz (unter Verwendung der inneren CV-Schleife) ausgewählt und seine Leistung wird an dem entsprechenden äußeren Testsatz gemessen.
Dies wurde in vielen Threads diskutiert und erklärt (wie z. B. hier Training mit dem vollständigen Datensatz nach Kreuzvalidierung ? , siehe die Antwort von @DikranMarsupial) und ist mir völlig klar. Wenn Sie sowohl für die Modellauswahl als auch für die Leistungsschätzung nur eine einfache (nicht verschachtelte) Kreuzvalidierung durchführen, kann dies zu einer positiv verzerrten Leistungsschätzung führen. @DikranMarsupial hat einen Artikel aus dem Jahr 2010 zu genau diesem Thema ( Überanpassung bei der Modellauswahl und anschließende Auswahlverzerrung bei der Leistungsbewertung ) mit der Überschrift " Ist Überanpassung bei der Modellauswahl wirklich ein echtes Problem in der Praxis?" - und das Papier zeigt, dass die Antwort ja ist.
Abgesehen davon arbeite ich jetzt mit multivariater Multi-Ridge-Regression und sehe keinen Unterschied zwischen einfachem und verschachteltem Lebenslauf. In diesem speziellen Fall scheint ein verschachtelter Lebenslauf eine unnötige Rechenlast zu sein. Meine Frage ist: Unter welchen Bedingungen wird ein einfacher Lebenslauf zu einer spürbaren Verzerrung führen, die mit einem verschachtelten Lebenslauf vermieden wird? Wann spielt der verschachtelte Lebenslauf in der Praxis eine Rolle und wann spielt er keine Rolle? Gibt es Faustregeln?
Hier ist eine Illustration mit meinem aktuellen Datensatz. Die horizontale Achse ist für die Gratregression. Die vertikale Achse ist ein Kreuzvalidierungsfehler. Die blaue Linie entspricht der einfachen (nicht verschachtelten) Kreuzvalidierung mit 50 zufälligen 90:10 Trainings- / Testaufteilungen. Die rote Linie entspricht der verschachtelten Kreuzvalidierung mit 50 zufälligen 90:10 Trainings- / Testaufteilungen, wobei λ mit einer inneren Kreuzvalidierungsschleife ausgewählt wird (ebenfalls 50 zufällige 90:10 Aufteilungen). Linien sind Mittelwerte über 50 zufällige Teilungen, Schattierungen zeigen ± 1 Standardabweichung.
Aktualisieren
Es ist tatsächlich so :-) Es ist nur so, dass der Unterschied winzig ist. Hier ist die Vergrößerung:
(Ich habe die ganze Prozedur ein paar Mal ausgeführt, und es passiert jedes Mal.)
Meine Frage ist, unter welchen Bedingungen können wir erwarten, dass diese Tendenz winzig ist, und unter welchen Bedingungen sollten wir das nicht tun?
quelle
Antworten:
Ich würde vorschlagen, dass die Abweichung von der Varianz des Modellauswahlkriteriums abhängt. Je höher die Abweichung, desto größer ist wahrscheinlich die Abweichung. Die Varianz des Modellauswahlkriteriums hat zwei Hauptursachen: die Größe des Datensatzes, auf dem es ausgewertet wird (wenn Sie also einen kleinen Datensatz haben, ist die Verzerrung wahrscheinlich größer) und die Stabilität des statistischen Modells (wenn Die Modellparameter werden durch die verfügbaren Trainingsdaten gut geschätzt. Das Modell ist weniger flexibel, um das Modellauswahlkriterium durch Optimieren der Hyperparameter zu übertreffen. Der andere relevante Faktor ist die Anzahl der zu treffenden Modellauswahl und / oder der zu stimmenden Hyperparameter.
In meiner Studie beschäftige ich mich mit leistungsfähigen nichtlinearen Modellen und relativ kleinen Datensätzen (häufig in maschinellen Lernstudien verwendet). Beide Faktoren bedeuten, dass eine verschachtelte Kreuzvalidierung unbedingt erforderlich ist. Wenn Sie die Anzahl der Parameter erhöhen (möglicherweise einen Kernel mit einem Skalierungsparameter für jedes Attribut), kann die Überanpassung "katastrophal" sein. Wenn Sie lineare Modelle mit nur einem einzigen Regularisierungsparameter und einer relativ großen Anzahl von Fällen (im Verhältnis zur Anzahl der Parameter) verwenden, ist der Unterschied wahrscheinlich viel geringer.
Ich sollte hinzufügen, dass ich empfehlen würde, immer geschachtelte Kreuzvalidierung zu verwenden, sofern dies rechnerisch machbar ist, da hierdurch eine mögliche Verzerrungsquelle beseitigt wird, sodass wir (und die Peer-Reviewer; o) uns nicht darum kümmern müssen, ob dies der Fall ist vernachlässigbar oder nicht.
quelle