[Eine ähnliche Frage wurde hier ohne Antworten gestellt]
Ich habe ein logistisches Regressionsmodell mit L1-Regularisierung (Lasso-logistische Regression) angepasst und möchte die angepassten Koeffizienten auf Signifikanz testen und ihre p-Werte erhalten. Ich weiß, dass Walds Tests (zum Beispiel) eine Option sind, um die Signifikanz einzelner Koeffizienten in vollständiger Regression ohne Regularisierung zu testen, aber mit Lasso denke ich, dass weitere Probleme auftreten, die es nicht erlauben, die üblichen Wald-Formeln anzuwenden. Beispielsweise folgen die für den Test erforderlichen Varianzschätzungen nicht den üblichen Ausdrücken. Das Original Lasso Papier
http://statweb.stanford.edu/~tibs/lasso/lasso.pdf
schlägt ein Bootstrap-basiertes Verfahren zur Schätzung der Koeffizientenvarianz vor, das (wieder denke ich) für die Tests erforderlich sein kann (Abschnitt 2.5, letzter Absatz von Seite 272 und Anfang von 273):
Ein Ansatz ist über den Bootstrap: Entweder kann repariert werden oder wir können über für jedes Bootstrap-Beispiel optimieren . Das Fixieren von ist analog zum Auswählen der besten Teilmenge ( von Merkmalen ) und anschließenden Verwenden des Standardfehlers der kleinsten Quadrate für diese Teilmenget t
Was ich verstehe, ist: Passen Sie eine Lasso-Regression wiederholt an den gesamten Datensatz an, bis wir den optimalen Wert für den Regularisierungsparameter gefunden haben (dies ist nicht Teil des Bootstraps), und verwenden Sie dann nur die vom Lasso ausgewählten Funktionen, um OLS-Regressionen an Unterproben anzupassen der Daten und wenden die üblichen Formeln an, um die Abweichungen von jeder dieser Regressionen zu berechnen. (Und was soll ich dann mit all diesen Varianzen jedes Koeffizienten tun, um die endgültige Varianzschätzung für jeden Koeffizienten zu erhalten?)
Ist es außerdem richtig, die üblichen Signifikanztests (zum Beispiel Walds Test, bei dem die geschätzten Betas und Varianzen verwendet werden) mit den Lasso-Schätzungen der Koeffizienten und den vom Bootstrap geschätzten Varianzen zu verwenden? Ich bin mir ziemlich sicher, dass dies nicht der Fall ist, aber jede Hilfe (einen anderen Test verwenden, einen einfacheren Ansatz verwenden, was auch immer ...) ist mehr als willkommen.
Nach den Antworten hier vermute ich, dass Inferenz und p-Werte einfach nicht erhalten werden können. In meinem Fall sind p-Werte eine externe Anforderung (obwohl die Verwendung der L1-Regularisierung meine Wahl war).
Vielen Dank
BEARBEITEN Was ist, wenn ich eine logistische OLS-Regression nur mit den Variablen anpasse, die durch einen vorherigen Lauf der logistischen Lasso-Regression ausgewählt wurden? Anscheinend (siehe hier ),
Es ist nicht erforderlich, das Modell nach der Kreuzvalidierung erneut auszuführen (Sie erhalten nur die Koeffizienten aus der Ausgabe von cv.glmnet). Wenn Sie das neue logistische Regressionsmodell ohne Bestrafung anpassen, verlieren Sie den Verwendungszweck Lasso
Aber was ist, wenn ich dies nur mit dem Ziel mache, p-Werte zu berechnen und gleichzeitig die Anzahl der Variablen niedrig zu halten? Ist es ein sehr schmutziger Ansatz? :-)
Antworten:
Das Problem bei der Verwendung der üblichen Signifikanztests besteht darin, dass sie die Null annehmen, dh es gibt Zufallsvariablen ohne Beziehung zu den Ergebnisvariablen. Was Sie jedoch mit Lasso haben, sind eine Reihe von Zufallsvariablen, aus denen Sie die besten mit dem Lasso auswählen. Auch die Betas sind geschrumpft. Sie können es also nicht verwenden, da die Ergebnisse verzerrt sind.
Soweit ich weiß, wird der Bootstrap nicht verwendet, um die Varianzschätzung zu erhalten, sondern um die Wahrscheinlichkeiten einer ausgewählten Variablen zu ermitteln. Und das sind deine p-Werte. Lesen Sie das kostenlose Buch von Hasie, Statistisches Lernen mit Sparsity, Kapitel 6, in dem es um dasselbe geht. http://web.stanford.edu/~hastie/StatLearnSparsity/
In diesem Dokument finden Sie auch einige andere Möglichkeiten, um p-Werte von Lasso zu erhalten. Https://arxiv.org/pdf/1408.4026.pdf Es gibt wahrscheinlich noch mehr
quelle
Das Problem bei der Durchführung von Inferenzen nach der Modellauswahl besteht darin, dass Sie die prädiktivsten Variablen auswählen und dann die Inferenz durchführen, als ob sie unabhängig von den Daten ausgewählt worden wären. Es kann gezeigt werden, dass die Anpassung des Regressionsmodells nach der Modellauswahl mit dem Lasso (oder einer anderen Modellauswahlmethode!) Zu -voreingenommenen Schätzungen führen kann (was ein Grund ist, warum eine einfache Gaußsche Näherung häufig fehlschlägt für Konfidenzintervalle)n−−√
Glücklicherweise wurden in den letzten Jahren große Fortschritte bei der Entwicklung von Inferenzmethoden erzielt, die die Nachauswahl berücksichtigen. Einige relevante Referenzen für Ihren Fall sind: http://projecteuclid.org/euclid.aos/1460381681 und https://arxiv.org/pdf/1602.07358.pdf . Die in diesen Referenzen beschriebenen Techniken sind im R-Paket SelectiveInference- https://cran.r-project.org/web/packages/selectiveInference/index.html implementiert . Das selektiveInferenzpaket sollte die gültigen Konfidenzintervalle erzeugen, die Sie benötigen.
quelle