Die Bedeutung des bedingten Testfehlers gegenüber dem erwarteten Testfehler bei der Kreuzvalidierung

8

Mein Lehrbuch zur Kreuzvalidierung ist The Elements of Statistical Learning von Hastie et al. (2. Aufl.). In den Abschnitten 7.10.1 und 7.12, sie über den Unterschied zwischen bedingte Testfehler sprechen

E.(X.,Y.)[L.(Y.,f^(X.))|τ]]
und erwarteter Testfehler Hier ist der Trainingsdatensatz, ist die Verlustfunktion, ist das auf trainierte Modell .τ L f τ E
E.τ[E.(X.,Y.)[L.(Y.,f^(X.))|τ]]]].
τL.f^τE. ist die Erwartung.

Sie erklärten, dass CV nur den erwarteten Testfehler gut schätzt.

Meine Frage ist, gibt es einen Grund, warum wir uns um den bedingten Testfehler kümmern würden?

Der einzige Grund, an den ich denken könnte, ist, dass wir die Frage beantworten möchten: "Wenn Gott Datensätze auf den Tisch legt , aber nur 1 mit nach Hause nehmen kann, um zu unserem Modell zu passen, welchen sollten wir wählen?"n

Qoheleth
quelle

Antworten:

5

Ich denke, Sie können bedingte Testfehler falsch verstehen. Dies kann daran liegen, dass Hastie, Friedman und Tibshirani (HFT) in ihrer Terminologie nicht konsistent sind und manchmal denselben Begriff "Testfehler", "Generalisierungsfehler", "Vorhersagefehler bei einem unabhängigen Testsatz", "wahrer bedingter Fehler" nennen. oder "tatsächlicher Testfehler".

Unabhängig vom Namen ist es der durchschnittliche Fehler, den das Modell, das Sie an einen bestimmten Trainingssatz angepasst haben, auftreten würde, wenn es auf Beispiele angewendet wird, die aus der Verteilung von (X, Y) -Paaren gezogen wurden. Wenn Sie jedes Mal Geld verlieren, wenn das angepasste Modell einen Fehler macht (oder proportional zum Fehler, wenn Sie über Regression sprechen), ist dies der durchschnittliche Geldbetrag, den Sie jedes Mal verlieren, wenn Sie den Klassifikator verwenden. Es ist wohl die natürlichste Sache, sich um ein Modell zu kümmern, das Sie an ein bestimmtes Trainingsset angepasst haben.τ

Sobald dies eintritt, ist die eigentliche Frage, warum man sich um den erwarteten Testfehler kümmern sollte! (HFT nennt dies auch "erwarteter Vorhersagefehler".) Schließlich ist es ein Durchschnitt über alle Arten von Trainingssätzen, die Sie normalerweise nie verwenden werden. (Es scheint übrigens, dass HFT bei der Definition des erwarteten Testfehlers einen Durchschnitt über Trainingssätze einer bestimmten Größe beabsichtigt, aber sie sagen dies nie explizit.)

Der Grund dafür ist, dass der erwartete Testfehler ein grundlegenderes Merkmal eines Lernalgorithmus ist, da er über die Unwägbarkeiten mittelt, ob Sie mit Ihrem speziellen Trainingssatz Glück hatten oder nicht.

Wie Sie bereits erwähnt haben, zeigt HFT, dass der CV den erwarteten Testfehler besser schätzt als den bedingten Testfehler. Dies ist ein Glücksfall, wenn Sie Algorithmen für maschinelles Lernen vergleichen, aber ein Glücksfall, wenn Sie wissen möchten, wie gut das bestimmte Modell, das Sie zu einem bestimmten Trainingssatz passen, funktioniert.

DavidDLewis
quelle
τ
1
Intuitiv macht es für mich Sinn, dass der Lebenslauf für bedingte Testfehler nicht so gut ist, da das gesamte Verfahren auf der Änderung Ihrer Trainingsdaten basiert. (Für die bestmögliche Schätzung des bedingten Testfehlers benötigen Sie einen separaten Testsatz.) Es ist jedoch fair zu fragen, warum die winzigen Änderungen am Trainingssatz, die insbesondere an LOOCV beteiligt sind, hierfür ausreichen.
Kodiologe
@amoeba du hast etwas gesagt, das meine Aufmerksamkeit erregt hat. LOOCV scheint ein direkterer Weg zu sein, um den bedingten Fehler abzuschätzen, verglichen mit einem 10-fachen CV. Tatsächlich zeigt Seite 255 des HTF-Buches aus der Simulationsübung, dass ein 10-facher Lebenslauf ein besserer Weg ist, um den bedingten Fehler abzuschätzen. Ich denke, das macht mir auch noch Sorgen
Chamberlain Foncha
0

Ich denke über dieselbe Passage nach und frage mich auch, wann ich jemals an dem bedingten Testfehler interessiert sein würde. Soweit ich verstehen kann, sollten sie außerdem asymptotisch gleich sein: Bei sehr großen Trainings- und Testsätzen sollte die genaue Aufteilung von Training und Testsatz nicht mehr zu unterschiedlichen bedingten Testfehlerschätzungen führen. Wie Sie in Hastie et al. Buchen Sie ihre Beispiele für bedingte - erwartete Unterschiede basieren immer auf einer relativ geringen Anzahl von Beobachtungen. Wenn ich das richtig verstehe, ist dies der Grund, warum bedingte und erwartete Testfehler in den Diagrammen unterschiedlich aussehen.

Das Buch erwähnt, dass der erwartete Testfehler über die Zufälligkeit im Trainingssatz gemittelt wird, während der (bedingte) Testfehler dies nicht tut. Wann möchte ich die Unsicherheit berücksichtigen, die mit der von mir erstellten Trainings- / Testsatzpartition verbunden ist? Meine Antwort wäre, dass ich normalerweise nie daran interessiert bin, diese Art von Unsicherheit zu berücksichtigen, da dies nicht das ist, woran ich interessiert bin, wenn ich eine Modellbewertung durchführe: Bei der Bewertung der Vorhersagequalität eines Modells möchte ich wissen, wie es ist Nehmen wir an, wir sagen morgen das Wetter voraus. Das Wetter von morgen hängt ziemlich genau mit meinen Gesamtdaten zusammen, wie meine Testdaten mit meinen Trainingsdaten. Daher berechne ich einen bedingten Testfehler, um mein Modell zu bewerten. Jedoch, Das Wetter von morgen hängt mit meinen Gesamtdaten zusammen, nicht wie ein bestimmter Testsatz mit dem entsprechenden spezifischen Trainingssatz, sondern wie der durchschnittliche Testsatz mit dem durchschnittlichen Trainingssatz zusammenhängt. Ich erhalte also die nächste Trainings- / Testsatzpartition und erhalte einen weiteren bedingten Testfehler. Ich mache das oft (wie z. B. bei der K-fachen Kreuzvalidierung) - die Variation der einzelnen bedingten Testfehler ist durchschnittlich - und ich habe den erwarteten Testfehler. Das ist alles, was ich mir vorstellen kann. in K-facher Kreuzvalidierung) - die Variation der einzelnen bedingten Testfehler ist durchschnittlich - und ich habe den erwarteten Testfehler übrig; Das ist alles, was ich mir vorstellen kann. in K-facher Kreuzvalidierung) - die Variation der einzelnen bedingten Testfehler ist durchschnittlich - und ich habe den erwarteten Testfehler übrig; Das ist alles, was ich mir vorstellen kann.

Anders ausgedrückt, in den Testfehler- / erwarteten Testfehlergraphen von Hastie et al. Erhalten wir eine Vorstellung von der Effizienz des Modellschätzers: Wenn die bedingten Testfehler weit über den erwarteten Testfehler verteilt sind, ist dies ein Hinweis auf den Schätzer ineffizient zu sein, während eine geringere Variation der bedingten Testfehler angesichts der Anzahl der Beobachtungen einen effizienteren Schätzer anzeigen würde.

Fazit: Ich könnte mich hier irren, und ich würde mich freuen, wenn ich dies korrigieren könnte, aber aus meiner Sicht ist das Konzept des bedingten Testfehlers ein zweifelhafter Versuch, die Gültigkeit des externen Modells zu bewerten, indem man sich nur ein Training erlaubt / test-partitioning shot. Bei großen Proben sollte dieser Einzelschuss äquitoinalen Testfehlern entsprechen, die über viele Trainings- / Testpartitionierungsschüsse gemittelt werden, dh dem erwarteten Testfehler. Für kleine Proben, bei denen ein Unterschied auftritt, scheint mir das tatsächliche interessierende Maß der erwartete und nicht der bedingte Testfehler zu sein.

user52821
quelle