Wie funktioniert die ausschließliche Quervalidierung? Wie wähle ich das endgültige Modell aus verschiedenen Modellen aus?

25

Ich habe einige Daten und möchte aus diesen Daten ein Modell (z. B. ein lineares Regressionsmodell) erstellen. In einem nächsten Schritt möchte ich die Leave-One-Out Cross-Validation (LOOCV) auf das Modell anwenden, um zu sehen, wie gut es funktioniert.

Wenn ich LOOCV richtig verstanden habe, erstelle ich für jede meiner Stichproben (den Testsatz) ein neues Modell, wobei ich jede Stichprobe mit Ausnahme dieser Stichprobe (den Trainingssatz) verwende. Dann benutze ich das Modell, um den Testsatz vorherzusagen und die Fehler zu berechnen .(vorhergesagt-tatsächlich)

In einem nächsten Schritt aggregiere ich alle mit einer gewählten Funktion erzeugten Fehler, zum Beispiel den mittleren quadratischen Fehler. Anhand dieser Werte kann ich die Qualität (oder die Passgenauigkeit) des Modells beurteilen.

Frage: Für welches Modell gelten diese Qualitätswerte? Für welches Modell sollte ich mich entscheiden, wenn ich die aus LOOCV generierten Metriken für meinen Fall als geeignet erachte? LOOCV untersuchte verschiedene Modelle (wobei die Stichprobengröße ist); Welches Modell soll ich wählen?nn

  • Verwendet das Modell alle Stichproben? Dieses Modell wurde während des LOOCV-Prozesses nie berechnet!
  • Ist es das Modell mit dem geringsten Fehler?
Theomega
quelle
Siehe auch : stats.stackexchange.com/questions/11602 .
Amöbe sagt Reinstate Monica

Antworten:

24

Es empfiehlt sich, die Kreuzvalidierung als eine Methode zur Schätzung der Generalisierungsleistung von Modellen zu betrachten, die durch eine bestimmte Prozedur generiert wurden, und nicht als Modell selbst. Die ausschließliche Kreuzvalidierung ist im Wesentlichen eine Schätzung der Generalisierungsleistung eines Modells, das an Datenstichproben trainiert wurde. ist im Allgemeinen eine leicht pessimistische Schätzung der Leistung eines Modells, das an Stichproben trainiert wurde .n-1n

Anstatt ein Modell auszuwählen, müssen Sie das Modell an alle Daten anpassen und mithilfe von LOO-CV eine leicht konservative Schätzung der Leistung dieses Modells vornehmen.

Beachten Sie jedoch, dass LOOCV eine hohe Varianz aufweist (der Wert, den Sie erhalten, variiert stark, wenn Sie eine andere zufällige Stichprobe von Daten verwenden), was es häufig zu einer schlechten Wahl für den Schätzer für die Leistungsbewertung macht, obwohl es ungefähr unvoreingenommen ist. Ich benutze es die ganze Zeit für die Modellauswahl, aber eigentlich nur, weil es billig ist (fast kostenlos für die Kernelmodelle, an denen ich arbeite).

Dikran Beuteltier
quelle
Danke für die Antwort. Ist der Satz nicht "Verwenden Sie LOO-CV, um eine leicht konservative Schätzung der Leistung dieses Modells zu liefern." Falsch ist der allgemeine Fall? Das Modell könnte sich verschlechtern, wenn ich einen weiteren Punkt hinzufüge. In diesem Fall könnte der LOO-CV ein sein. optimistische Schätzung
Theomega
1
Je mehr Daten Sie zum Erstellen des Modells verwenden, desto besser ist in der Regel das Modell. Während der zusätzliche Punkt das Modell ein wenig schlechter machen kann, ist es wahrscheinlicher, dass das Modell ein wenig besser wird. Loocv hat also im Allgemeinen eine leichte pessimistische Tendenz, aber es ist nur sehr gering, wobei die Varianz des LOOCV-Schätzers normalerweise eine weitaus größere Rolle spielt.
Dikran Beuteltier
Was sollten Sie dann für die Leistungsbewertung verwenden? (Vorausgesetzt, die Datenerfassung ist teuer, möchten Sie alle verfügbaren Daten für das Modell verwenden.)
Sideshow Bob
Bootstrap wahrscheinlich. Die meisten Modelle, die ich verwende, haben Regularisierungsparameter usw., die optimiert werden müssen. Daher verwende ich oft LOOCV zum Optimieren der Modelle und des Bootstraps oder zum wiederholten Halten für die Leistungsbewertung.
Dikran Marsupial
@DikranMarsupial Sind Sie sich sicher, dass Leave-One-Out CV eine pessimistische Tendenz aufweist? Soweit ich weiß, liefert es normalerweise eine niedrigere Fehlerabschätzung als beispielsweise K-Fold. Hat LOOCV keine Varianz von 0? Sie können LOOCV nur einmal ausführen und dann "Ihnen geht die Probe aus". Die einzige Varianz, die ich mir vorstellen kann, ist die, die durch die Trainingsalgorithmen erzeugt wird, die zum Anpassen des Modells verwendet werden. Dies sollte jedoch mit der Varianz der optimalen Parameter und nicht mit dem Modellfehler selbst in Verbindung gebracht werden. Vielen Dank.
D1X