Intro:
Ich habe einen Datensatz mit einem klassischen "großen p, kleinen n-Problem". Die Anzahl der verfügbaren Stichproben n = 150, während die Anzahl der möglichen Prädiktoren p = 400 ist. Das Ergebnis ist eine kontinuierliche Variable.
Ich möchte die "wichtigsten" Deskriptoren finden, dh diejenigen, die die besten Kandidaten für die Erklärung des Ergebnisses und die Erstellung einer Theorie sind.
Nach Recherchen zu diesem Thema fand ich heraus, dass LASSO und Elastic Net üblicherweise für den Fall von großen p, kleinen n verwendet werden. Einige meiner Prädiktoren sind stark korreliert und ich möchte ihre Gruppierungen bei der Bewertung der Wichtigkeit beibehalten. Deshalb habe ich mich für Elastic Net entschieden . Ich nehme an, dass ich Absolutwerte von Regressionskoeffizienten als Maß für die Wichtigkeit verwenden kann (bitte korrigieren Sie mich, wenn ich mich irre; mein Datensatz ist standardisiert).
Problem:
Wie kann ich ein stabiles Modell erhalten, da ich nur eine geringe Anzahl von Proben habe?
Mein aktueller Ansatz ist es, die besten Abstimmungsparameter (Lambda und Alpha) in einer Rastersuche in 90% des Datensatzes mit einer 10-fachen Kreuzvalidierung zu finden, wobei der MSE-Score gemittelt wird. Dann trainiere ich das Modell mit den besten Abstimmungsparametern für die gesamten 90% des Datensatzes. Ich bin in der Lage, mein Modell mit dem Quadrat R auf dem Holdout 10% des Datensatzes zu bewerten (was nur 15 Stichproben entspricht).
Wenn ich dieses Verfahren wiederholt durchführe, stelle ich eine große Varianz bei den R-Quadrat-Bewertungen fest. Ebenso variiert die Anzahl von Prädiktoren ungleich Null sowie deren Koeffizienten.
Wie kann ich eine stabilere Einschätzung der Bedeutung von Prädiktoren und eine stabilere Einschätzung der endgültigen Modellleistung erhalten?
Kann ich meine Prozedur wiederholt ausführen, um eine Reihe von Modellen und dann durchschnittliche Regressionskoeffizienten zu erstellen? Oder sollte ich die Anzahl der Vorkommen eines Prädiktors in den Modellen als Wichtigkeitsfaktor verwenden?
Gegenwärtig erhalte ich ungefähr 40-50 Prädiktoren ungleich Null. Sollte ich die Anzahl der Prädiktoren für eine bessere Stabilität härter bestrafen?
Antworten:
" Sparse Algorithmen sind nicht stabil: Ein No-Free-Lunch-Theorem "
Ich denke, der Titel sagt viel aus, wie Sie betont haben.
Schauen Sie sich das randomisierte Lasso und den Vortrag von Peter Buhlmann an .
Aktualisieren:
Ich fand es einfacher, diesem Artikel zu folgen, als dem von Meinshausen und Buhlmann mit dem Titel "Stabilitätsauswahl".
Die Hauptidee für das zufällige Lasso, das beide Nachteile des Lassos bewältigen kann, ist die folgende
Bootstrap-Beispiele werden erstellt, um mehrere Datensätze zu simulieren. Die endgültigen Koeffizienten werden durch Mitteln über die Ergebnisse jeder Bootstrap-Stichprobe erhalten.
Es wäre großartig, wenn jemand diesen Algorithmus in den Antworten näher erläutern könnte.
quelle
Wie stabil sind die Stimmparameter?
Sehen Sie große Unterschiede zwischen der Anpassungsgüte (z. B. MSE der Kreuzvalidierung des optimalen Parameters) und der 10% igen unabhängigen Testleistung?
Das wäre ein Symptom für Überanpassung:
Es gibt verschiedene Möglichkeiten, solche aggregierten Modelle zu erstellen:
Suchbegriffe wären "aggregierte Modelle", "Bootstrap-Aggregation", "Absacken".
Nebengedanke: Einige Datentypen haben erwartete und interpretierbare Kollinearität, die dazu führen kann, dass Variable Selectio zwischen mehr oder weniger gleichen Lösungen "springt".
quelle
Es gibt keinen Ausweg. Wie einige sagten, sind Modelle von Natur aus instabil (andernfalls wären keine Statistiken erforderlich).
Aber die Instabilität selbst bringt Informationen. Anstatt es loszuwerden, versuchte ich es zu analysieren.
Ich führe viele Male Kreuzvalidierungssimulationen durch und erhalte dann die Koeffizienten für die am besten ausgewählten Parameter in jedem Lauf und setze sie zusammen.
Dann extrahiere ich die Regressionskoeffizienten für jedes Parameterpaar und dies gibt mir eine Werteverteilung für jeden Parameter. Auf diese Weise kann ich den Mittelwert / Medianwert verwenden, um die Stärke des Prädiktors und seine Standardabweichung / IQR zu beschreiben, um seine Variabilität, dh seine Stabilität, zu beschreiben.
Ein sehr stabiler Prädiktor bedeutet, dass Sie erwarten können, dass sein Effekt auch bei neuen Daten ähnlich ist. Ein Prädiktor, der selbst in Ihren Daten instabil ist, wäre wahrscheinlich selbst mit neuen Daten sehr instabil.
quelle