Wenn ich versuche, zwischen verschiedenen Modellen oder der Anzahl von Merkmalen zu wählen, für die eine Vorhersage erforderlich ist, kann ich mir zwei Ansätze vorstellen.
- Teilen Sie die Daten in Trainings- und Testsätze auf. Besser noch, verwenden Sie Bootstrapping oder k-fach Kreuzvalidierung. Trainieren Sie jedes Mal am Trainingssatz und berechnen Sie den Fehler über den Testsatz. Plottestfehler gegen Anzahl der Parameter. Normalerweise erhalten Sie so etwas:
- Berechnen Sie die Wahrscheinlichkeit des Modells, indem Sie die Werte der Parameter überlagern. dh compute , und dies gegen die Anzahl von Parametern aufgetragen ist . Wir bekommen dann so etwas:
Meine Fragen sind also:
- Sind diese Ansätze zur Lösung dieses Problems geeignet (Entscheiden, wie viele Parameter in Ihr Modell aufgenommen werden sollen, oder Auswählen aus einer Reihe von Modellen)?
- Sind sie gleichwertig? Wahrscheinlich nicht. Geben sie unter bestimmten Voraussetzungen oder in der Praxis dasselbe optimale Modell an?
- Welche Vor- und Nachteile hat jeder Ansatz, abgesehen von dem üblichen philosophischen Unterschied, Vorkenntnisse in Bayes'schen Modellen usw. anzugeben? Welches würdest du wählen?
Update: Ich habe auch die entsprechende Frage zum Vergleich von AIC und BIC gefunden. Es scheint, dass meine Methode 1 der AIC asymptotisch äquivalent ist und Methode 2 der BIC asymptotisch verwandt ist. Aber ich habe dort auch gelesen, dass BIC dem Leave-One-Out CV entspricht. Dies würde bedeuten, dass das Trainingsfehlerminimum und das Bayes'sche Wahrscheinlichkeitsmaximum äquivalent sind, wobei der LOO-Lebenslauf dem K-fachen Lebenslauf entspricht. Ein vielleicht sehr interessantes Papier " Eine asymptotische Theorie zur linearen Modellauswahl " von Jun Shao befasst sich mit diesen Fragen.
quelle
Antworten:
Entweder könnte man sein, ja. Wenn Sie ein Modell erhalten möchten, das aus der Liste der von Ihnen in Betracht gezogenen Modelle die besten Vorhersagen macht, kann der Splitting / Cross-Validation-Ansatz dies gut. Wenn Sie wissen möchten, welches der Modelle (in Ihrer Liste der mutmaßlichen Modelle) tatsächlich Ihre Daten generiert, ist der zweite Ansatz (Bewertung der posterioren Wahrscheinlichkeit der Modelle) der gewünschte.
Nein, sie sind im Allgemeinen nicht gleichwertig. Zum Beispiel entspricht die Verwendung von AIC (An Information Criterion, von Akaike) zur Auswahl des 'besten' Modells in etwa einer Kreuzvalidierung. Die Verwendung von BIC (Bayesian Information Criterion) entspricht der Verwendung der hinteren Wahrscheinlichkeiten, wiederum ungefähr. Dies ist nicht dasselbe Kriterium, daher sollte erwartet werden, dass sie im Allgemeinen zu unterschiedlichen Entscheidungen führen. Sie können die gleichen Antworten geben - wann immer das Modell, das das Beste vorhersagt, auch die Wahrheit ist -, aber in vielen Situationen ist das Modell, das am besten passt, tatsächlich ein Modell, das überpasst, was zu Meinungsverschiedenheiten zwischen den Ansätzen führt.
Stimmen sie in der Praxis überein? Es hängt davon ab, was Ihre "Praxis" beinhaltet. Probieren Sie es in beide Richtungen und finden Sie es heraus.
quelle
Optimierung ist die Wurzel allen Übels in der Statistik! ;O)
Jedes Mal, wenn Sie versuchen, ein Modell basierend auf einem Kriterium auszuwählen, das anhand einer endlichen Stichprobe von Daten bewertet wird, besteht das Risiko, dass das Modellauswahlkriterium übererfüllt wird, und Sie erhalten ein schlechteres Modell als das, mit dem Sie begonnen haben. Sowohl die Kreuzvalidierung als auch die marginale Wahrscheinlichkeit sind sinnvolle Kriterien für die Modellauswahl, hängen jedoch beide von einer begrenzten Datenmenge ab (wie auch AIC und BIC - der Komplexitätsnachteil kann helfen, löst dieses Problem jedoch nicht). Ich habe festgestellt, dass dies ein wesentliches Problem beim maschinellen Lernen ist
Aus Bayes-Sicht ist es besser, alle Modellauswahlmöglichkeiten und -parameter zu integrieren. Wenn Sie nichts optimieren oder auswählen, ist eine Überanpassung schwieriger. Der Nachteil ist, dass Sie am Ende schwierige Integrale haben, die oft mit MCMC gelöst werden müssen. Wenn Sie die bestmögliche Prognoseleistung wünschen, würde ich einen vollständig bayesianischen Ansatz vorschlagen. Wenn Sie die Daten verstehen möchten, ist die Auswahl eines besten Modells oft hilfreich. Wenn Sie jedoch die Daten erneut abtasten und jedes Mal ein anderes Modell erhalten, ist das Anpassungsverfahren instabil und keines der Modelle ist für das Verständnis der Daten zuverlässig.
Beachten Sie, dass ein wichtiger Unterschied zwischen Kreuzvalidierung und Evidenz darin besteht, dass der Wert der Grenzwahrscheinlichkeit davon ausgeht, dass das Modell nicht falsch spezifiziert ist (im Wesentlichen ist die Grundform des Modells angemessen) und irreführende Ergebnisse liefern kann, wenn dies der Fall ist. Kreuzvalidierung macht keine solche Annahme, was bedeutet, dass es ein wenig robuster sein kann.
quelle