Ist die Kreuzvalidierung nutzlos, wenn die Hypothesen nicht verschachtelt sind?

7

Wenn ich in einer Regressionseinstellung viele Zufallsmodelle (ohne Berücksichtigung der Daten) generiere, indem ich einfach zufällig Koeffizientenwerte zuweise und diese Modelle dann über den Datensatz mit einer Fehlermetrik auswerte und das beste Modell basierend auf dieser Fehlermetrik auswähle, würde ich trotzdem ausführen in Überanpassung?

Irgendwann werden wir die OLS-Lösung haben (siehe Kommentare). Wenn dies der Fall ist, wie unterscheidet sich die Kreuzvalidierung von diesem Verfahren? Zum Beispiel generiere ich in einer Ridge- oder Lasso-Regressionseinstellung immer noch eine Reihe von Modellen (indiziert durch ) und werte sie in einem unsichtbaren Datensegment aus und wähle das beste aus.λ

Es scheint mir, dass CV gut mit Standard-Regularisierungsmethoden wie Ridge und Lasso funktioniert, weil die erprobten Modelle etwas verschachtelt sind (dh Ridge wird nach Rademacher-Komplexität geordnet). Daher setzt das Prinzip der strukturellen Risikominimierung ein. Ansonsten sieht der Lebenslauf wie eine Sackgasse aus. Wenn wir die Kreuzvalidierung verwenden, um eine Reihe nicht verwandter Modelle zu vergleichen, erhalten wir das oben beschriebene Szenario der zufälligen Modellgenerierung.

Im Rahmen des Rahmens zur Minimierung des strukturellen Risikos, beispielsweise in SVM, wird der Fehler begrenzt und die Komplexität des Modells verringert. Wie erzielt CV tatsächlich den gleichen Effekt, wenn es in Verbindung mit Regularisierungsmethoden angewendet wird? Was tun, wenn verglichene Modelle nicht verschachtelt sind?

Cagdas Ozgenc
quelle
4
Das Generieren von Zufallsmodellen und das Auswählen des Modells mit dem geringsten Fehler entspricht asymptotisch (wenn Sie dies lange genug tun) der OLS-Regression, da die OLS-Lösung den quadratischen Fehler minimiert.
Amöbe
@CagdasOzgenc: Dies ist wie bei den Affen, die Shakespeare / die Bibel / den von Ihnen gewählten Text eingeben: Wenn Sie viele zufällige Modelle erstellen , ist möglicherweise die Lösung der kleinsten Quadrate unter ihnen. Eventuell sogar eine Folge von mal der kleinsten Quadrate Lösung der CV-Testfälle . Und das wird dann ausgewählt [wenn Sie den quadratischen Fehler als Leistungskriterium verwenden]. k
cbeleites unglücklich mit SX
Zufälliges Lernen von Funktionen ist ebenfalls eine Sache (siehe das Random Vector Functional-Link-Netzwerk, von dem die umstrittene Extreme Learning Machine abgeleitet ist).
Firebug
1
Die Prämisse dieser Frage ist sehr verwirrend. CV kann manchmal ineffektiv sein, aber ich sehe nicht, (1) wie seine Fehlermodi etwas mit verschachtelten oder nicht verschachtelten Hypothesen oder der Komplexität von Rademacher zu tun haben, oder (2) wie der Vergleich nicht verschachtelter Modelle etwas damit zu tun hat Vergleich zufällig generierter Modelle.
Paul
@Paul Die implizite Annahme hinter CV ist, dass die Anzahl der verglichenen Hypothesen gering ist. Wenn wir viele Modelle zum Vergleichen haben, wird es überpassen. Normalerweise haben wir in einer Ridge-Umgebung viele Lambda-Einstellungen, daher ziemlich viele Hypothesen. Der Grund, warum dies in diesem Szenario funktioniert, ist, dass die Hypothesen verschachtelt sind.
Cagdas Ozgenc

Antworten:

6

Meine Logik sagt mir, dass die Antwort ja ist.

Und wie @amoeba betonte: Ihre Logik ist richtig.

Wie unterscheidet sich die Kreuzvalidierung von diesem Verfahren? Lebenslauf an sich hat nichts mit Ihrer Überanpassung zu tun. CV ist nur ein Schema, wie unabhängige Fälle beibehalten werden, um ein Modell zu testen.

Beachten Sie, dass dieses Modellauswahlverfahren (einschließlich des Lebenslaufs) Teil Ihres Trainings ist , wenn Sie ein Modell basierend auf den Lebenslaufergebnissen auswählen .

Sie müssen eine unabhängige Validierung (statt Verifizierung) dieses endgültigen Modells durchführen (für die Sie erneut einen anderen Lebenslauf als Strategie verwenden können, um Fälle unabhängig vom Training beizubehalten - siehe verschachtelte Kreuzvalidierung), um eine zuverlässige Schätzung des Modells zu erhalten Generalisierungsleistung.

Um es noch einmal zu wiederholen: Das Problem ist nicht der Lebenslauf, das Problem ist die datengesteuerte Modelloptimierung (Auswahl).

Aus dieser Perspektive sollte die zufällige Modellgenerierung theoretisch weniger als eine bestrafte Regression übersteigen, da sich meine Bewertung auf ein größeres unsichtbares Datensegment bezieht.

Das verstehe ich nicht: Warum sollte sich die unsichtbare Datengröße unterscheiden?

Gibt es etwas im CV-Verfahren, das das Problem der mehrfachen Tests irgendwie mildert?

Nein.

Die einzige Eigenschaft von CV, die bei mehreren Tests im Vergleich zu einer einzelnen Aufteilung geringfügig hilfreich ist, besteht darin, dass CV schließlich alle verfügbaren Fälle testet und daher aufgrund der begrenzten Anzahl getesteter Fälle einer etwas geringeren Varianzunsicherheit unterliegt. Dies hilft jedoch nicht viel im Vergleich zur Einschränkung des Suchraums (dh der Einschränkung der Anzahl der Vergleiche).

cbeleites unzufrieden mit SX
quelle
Wenn nicht viele Trainingsdaten verfügbar sind, ist es sinnvoll, ein Modell allein durch Kreuzvalidierung anzupassen. Ich denke, der Kompromiss zwischen der Verwendung aller Daten zum Anpassen oder Speichern eines Teils nur zur Validierung ist unter vielen Umständen nicht so eindeutig
Nat
@Nat: Wenn nicht viele Trainingsdaten verfügbar sind, würde ich empfehlen, so viel Fachwissen wie möglich zu verwenden und zu versuchen, datengesteuertes Tuning durch Kreuzvalidierung (oder eine interne Einzelaufteilung) zu vermeiden: Nur wenige Fälle bedeuten die CV-Schätzungen sind unsicher, was die Optimierung sowieso behindern wird. Lebenslauf ist besser als eine einzelne Aufteilung, aber es kann keine Wunder wirken.
cbeleites unglücklich mit SX
Wie würde eine nicht datengesteuerte Modellauswahl aussehen? Ist das wie eine nicht datengesteuerte Entscheidungsfindung? Wenn ich MSE minimiere, ist das datengesteuert? Was ist, wenn ich MSPE minimiere?
Nat
1
@Nat: Beispiel für eine nicht datengesteuerte Modellauswahl: Festlegen der Vorverarbeitung und möglicherweise auch der Modellkomplexität durch Kenntnisse über die jeweilige Anwendung, z. B.: Die Prozesse, die die Daten und die abzurufenden Informationen generieren, andere Informationen oder Störfaktoren beteiligt. Das Minimieren von Fehlern ist datengesteuert: Sie minimieren einige Fehler, die Sie in Ihren verfügbaren Daten beobachten. Dies ist für die Anpassung von Modellparametern erforderlich, aber meiner Erfahrung nach ist es häufig möglich, die Anzahl der sogenannten Hyperparameter zu begrenzen / den Suchraum für Hyperparameter einzuschränken. (Ich normalerweise <100 Fälle)
cbeleites unglücklich mit SX
3

BEARBEITEN: Das Optimieren oder Auswählen eines Modells basierend auf einer Kreuzvalidierung versucht im Wesentlichen, den Vorhersagefehler (z. B. einen mittleren quadratischen Vorhersagefehler) zu minimieren. Sie wählen ein Modell aus, das von einer Teilmenge der Eingabedaten abhängig ist, und sagen die Ausgabe an den ausgelassenen Stellen voraus. Intuitiv handelt es sich um eine Vorhersage, da Sie das Modell an Orten außerhalb der Stichprobe bewerten. Ihre Frage ist, was passiert, wenn Ihre Kandidatenmodelle unabhängig von den Eingabedaten sind (dh Sie verwenden keine Daten, wenn Sie zufällig Modelle generieren).

Diese Annahme unterscheidet sich nicht wesentlich von anderen Modellanpassungsverfahren. Wenn ich zum Beispiel mit einem parametrisierten Modell beginne und die Parameter eine beliebige reelle Zahl sein können, habe ich auch eine unendliche Menge von Kandidatenmodellen. Wir müssen beide noch das beste Modell aus dem Satz möglicher Modelle auswählen, indem wir einige Fehlermetriken minimieren. Daher sind unsere beiden Modelloptionen von einigen Trainingsdaten abhängig (möglicherweise eine Teilmenge aller Trainingsdaten, wenn eine Kreuzvalidierung verwendet wird). Sie geben keine Fehlermetrik an. Nehmen wir also an, es handelt sich um einen mittleren quadratischen Fehler (MSE). Ich wähle Modellparameter und damit mein Modell unter Verwendung eines Black-Box-Verfahrens aus, wobei eine von Trainingsdaten abhängige MSE-Metrik angenommen wird. Sie wählen Ihr Modell aus einer Reihe von Zufallsmodellen aus, wobei eine MSE-Metrik unter der Bedingung von Trainingsdaten angenommen wird.

Wählen wir das gleiche Modell? Dies hängt davon ab, ob Sie mit verschiedenen Gruppen von Kandidatenmodellen begonnen haben.

Überpassen wir die Daten? Dies hängt von den Kandidatenmodellen ab, mit denen wir begonnen haben, und von den Trainingsdaten.

Wissen wir, dass wir die Daten überanpassen? Wenn wir eine Kreuzvalidierung durchführen, können wir den Vorhersagefehler überprüfen.

URSPRÜNGLICHE ANTWORT: Im weitesten Sinne enthalten die Daten ein Signal und ein gewisses Rauschen. Wenn wir überanpassen, passen wir im Wesentlichen das Geräusch an.

Bei der Kreuzvalidierung lassen wir Teile der Daten beim Anpassen weg und bewerten den Fehler bei der Vorhersage der ausgelassenen Punkte. Es ist ähnlich wie bei Trainings- und Testdaten, dass wir einen Fehler außerhalb der Stichprobe messen. Das Modell muss gut verallgemeinern, unabhängig davon, welche Punkte weggelassen werden. Wenn wir das Rauschen anpassen, lässt sich das Modell nicht gut verallgemeinern. Der Satz von Modellen, den wir wahrscheinlich vergleichen, enthält nicht diejenigen, die versuchen, einen Datenpunkt zu interpolieren, wenn er in den Trainingsdaten weggelassen wird. Wenn sich das Modell so verhält (z. B. zufälliges Verhalten zur Verbesserung der Anpassung), haben wir wahrscheinlich kein vernünftiges allgemeines Modellanpassungsverfahren, und eine Kreuzvalidierung kann uns nicht helfen.

Wenn Sie eine unendliche Menge von Modellen und eine unendliche Zeit haben, dann könnten Sie theoretisch ein Modell generieren, das genauso gut oder besser ist als jedes Modell, das durch ein anderes Verfahren generiert wurde. Woher wissen Sie, um welches Modell es sich bei Ihrem unendlichen Satz handelt? Wenn es das Modell ist, das die Trainingsdaten interpoliert, wird es ja überanpassen, wenn die Trainingsdaten verrauscht sind.

Nat
quelle