Was sind die Nachteile der Verwendung des Lassos zur Variablenauswahl für die Regression?

60

Nach meinem Wissen behandelt die Verwendung von Lasso für die Variablenauswahl das Problem der korrelierten Eingaben. Da es der Regression des kleinsten Winkels entspricht, ist es auch rechnerisch nicht langsam. Viele Leute (zum Beispiel Leute, von denen ich weiß, dass sie Biostatistiken machen) scheinen jedoch eine schrittweise oder stufenweise variable Auswahl zu bevorzugen. Gibt es praktische Nachteile bei der Verwendung des Lassos, die es ungünstig machen?

xuexue
quelle
9
Ich weiß nicht, wo Sie gehört haben, dass Lasso das Problem der Kollinearität behandelt, das ist absolut nicht wahr.
Makro
3
Bei der Modellauswahl ist Horseshoe Prior besser als LASSO - zumindest im spärlichen Modellfall (wo die Modellauswahl am nützlichsten ist). Eine Diskussion dieser Punkte finden Sie in diesem Link . Zwei der Autoren dieses Papiers haben auch einen ähnlichen Artikel in den Valencia-Meetings erhalten, Bayesian Statistics 9 "Shrink Global Act Local: Sparse Bayesian Regularization and Prediction". Der Artikel in Valencia geht viel detaillierter auf einen Strafrahmen ein.
Wahrscheinlichkeitslogik
9
Wenn Sie nur an Vorhersagen interessiert sind, hilft die Modellauswahl nicht und tut normalerweise weh (im Gegensatz zu einer quadratischen Strafe = L2-Norm = Kammregression ohne variable Auswahl). LASSO zahlt einen Preis für prädiktive Diskriminierung bei der Auswahl von Variablen.
Frank Harrell
3
Wenn Sie eine Münze werfen, um eine willkürliche Entscheidung zu treffen, zeigt sich oft, dass Ihnen das Ergebnis wirklich wichtig ist. Jede Methode, mit der Sie Entscheidungen über die Auswahl von Prädiktoren treffen können, macht häufig deutlich, dass Sie Vorstellungen darüber haben, welche Prädiktoren natürlicher in das Modell gehören und welche nicht ignoriert werden sollen. LASSO kann so arbeiten.
Nick Cox
5
I second @Nick: "Keine Theorie zur Modellauswahl verfügbar" ist kaum realistisch. Gesunder Menschenverstand ist Theorie.
Scortchi - Wiedereinsetzung von Monica

Antworten:

29

Es gibt KEINEN Grund, schrittweise zu selektieren. Es ist einfach falsch.

LASSO / LAR sind die besten automatischen Methoden. Aber es sind automatische Methoden. Sie lassen den Analytiker nicht nachdenken.

In vielen Analysen sollten einige Variablen UNABHÄNGIG von jeglichem Maß an Signifikanz im Modell sein. Manchmal sind sie notwendige Kontrollvariablen. In anderen Fällen kann es von wesentlicher Bedeutung sein, einen kleinen Effekt zu finden.

Peter Flom - Wiedereinsetzung von Monica
quelle
43
"Es gibt keinen Grund, schrittweise zu selektieren. Es ist einfach falsch." - Fast nie sind solche pauschalen Aussagen ohne Kontext und gute statistische Praxis. Wenn hier etwas "nur falsch" ist, ist es die fettgedruckte Aussage oben. Wenn Ihre Analyse keine Werte oder Parameterschätzungen (z. B. Vorhersagemodelle) hervorhebt, kann eine schrittweise Variablenauswahl sinnvoll sein und in einigen Fällen :: keuchen :: LASSO übertreffen. (Peter, ich weiß, dass wir diese Convo schon einmal hatten - dieser Kommentar richtet sich eher an einen zukünftigen Leser, der möglicherweise nur auf diesen Beitrag stößt und nicht auf den anderen). p
Makro
4
-1 aufgrund der pauschalen Kritik von stepwise. Es ist nicht "nur falsch", sondern hat einen Platz als deterministische Modellsuche. Sie haben wirklich eine Biene in der Haube über automatische Methoden.
Wahrscheinlichkeitslogik
8
@Elvis, ich bin kein Experte auf dem Gebiet oder ein Anwalt für schrittweise; Ich bezweifle nur die Unbedingtheit der Aussage. Aus Neugier habe ich einige einfache Simulationen durchgeführt und festgestellt, dass bei einer großen Anzahl von kollinearen Prädiktoren, die alle ungefähr die gleichen Auswirkungen haben, die Rückwärtsauswahl in Bezug auf die Vorhersage außerhalb der Stichprobe besser ist als LASSO. Ich habe mit ε N ( 0 , 1 ) verwendet . Die Prädiktoren sind normal mit c o r ( X
Y.ich=j=1100Xichj+εich
εN(0,1)für jedes Paar(j,k). cOr(Xichj,Xichk)=1/2(j,k)
Makro
10
Sie sollten auf jeden Fall die Kollinearität untersuchen, bevor Sie mit einer Regression beginnen. Ich würde sagen, wenn Sie eine große Anzahl von kollinearen Variablen haben, sollten Sie nicht LASSO oder Stepwise verwenden. Sie sollten entweder das Kollinearitätsproblem lösen (Variablen löschen, mehr Daten abrufen usw.) oder eine Methode anwenden, die für solche Probleme entwickelt wurde (z. B. Gratregression)
Peter Flom - Monica wieder einsetzen
5
OK, du hast recht, aber ich denke nicht, dass es wirklich relevant ist. Weder Rückwärts-NOR-Lasso (noch irgendeine variable Auswahlmethode) löst alle Probleme. Es gibt Dinge, die Sie tun müssen, bevor Sie mit dem Modellieren beginnen - und eine davon ist die Überprüfung auf Kollinearität. Es ist mir auch egal, welche Variablenauswahlmethode für andere Datensätze funktioniert, die gegen die Regeln der Regression verstoßen, auf die beide Methoden angewendet werden sollen.
Peter Flom - Reinstate Monica
22

Wenn Sie sich nur um Vorhersagefehler und nicht um Interpretierbarkeit, zufällige Inferenz, Einfachheit des Modells, Koeffiziententests usw. kümmern, warum möchten Sie dann immer noch ein lineares Regressionsmodell verwenden?

Sie können so etwas wie Boosten in Entscheidungsbäumen oder Unterstützen der Vektorregression verwenden, um eine bessere Vorhersagequalität zu erzielen und dennoch eine Überanpassung in beiden genannten Fällen zu vermeiden. Das heißt, Lasso ist möglicherweise nicht die beste Wahl, um die beste Vorhersagequalität zu erzielen.

Wenn ich das richtig verstehe, ist Lasso für Situationen gedacht, in denen Sie sich immer noch für das Modell selbst interessieren, nicht nur für Vorhersagen. Das heißt - ausgewählte Variablen und ihre Koeffizienten sehen, auf irgendeine Weise interpretieren usw. Und dafür ist Lasso in bestimmten Situationen möglicherweise nicht die beste Wahl, wie in anderen Fragen hier erörtert.

Kochede
quelle
20

LASSO empfiehlt, die Koeffizienten auf 0 zu verkleinern, dh diese Variablen aus Ihrem Modell zu entfernen. Im Gegensatz dazu neigen andere Regularisierungstechniken wie ein Grat dazu, alle Variationen beizubehalten.

Daher würde ich empfehlen, darüber nachzudenken, ob dieses Löschen für Ihre Daten sinnvoll ist. Erwägen Sie beispielsweise die Einrichtung eines klinischen Diagnosetests entweder für Gen-Microarray-Daten oder für vibrationsspektroskopische Daten.

  • Man würde erwarten, dass einige Gene relevante Informationen enthalten, aber viele andere Gene sind nur Rauschen. Ihre Bewerbung. Das Löschen dieser Variablen ist eine durchaus vernünftige Idee.

  • Im Gegensatz dazu tendieren schwingungsspektroskopische Datensätze (während sie im Vergleich zu Microarray-Daten normalerweise ähnliche Abmessungen aufweisen) dazu, die relevanten Informationen über große Teile des Spektrums "zu verschmieren" (Korrelation). In dieser Situation ist es nicht besonders sinnvoll, die Regularisierung aufzufordern, Variationen fallen zu lassen. Dies gilt umso mehr, als andere Regularisierungstechniken wie PLS besser an diese Art von Daten angepasst sind.

Die Elemente des statistischen Lernens bieten eine gute Diskussion über das LASSO und stellen es anderen Regularisierungstechniken gegenüber.

Glaube
quelle
14

Wenn zwei Prädiktoren stark korreliert sind, kann LASSO am Ende einen eher willkürlich fallen lassen. Dies ist nicht sehr gut, wenn Sie Vorhersagen für eine Population treffen möchten, bei der diese beiden Prädiktoren nicht stark korreliert sind, und möglicherweise ein Grund, unter diesen Umständen die Kammregression zu bevorzugen.

Sie könnten auch denken, dass die Standardisierung von Prädiktoren (zum Beispiel wenn Koeffizienten "groß" oder "klein" sind) eher willkürlich ist und Sie sollten (wie ich) über sinnvolle Wege nachdenken, kategoriale Prädiktoren zu standardisieren.

Scortchi - Wiedereinsetzung von Monica
quelle
1
Danke für diese Antwort. Kennen Sie Papiere, die die Probleme mit korrelierten Prädiktoren / kategorialen Prädiktoren diskutieren?
Berk U.
2
Es lohnt sich hinzuzufügen, dass es andere bestrafte Regressionsmethoden gibt, die versuchen, diese Probleme zu lindern (wie das elastische Netz).
Bdeonovic
Bei der Variablenauswahl mit hochkollinearen Variablen schneidet der iterative adaptive Grat (der sich der L0-bestraften Regression annähert und im L0ara-Paket implementiert ist) am besten ab, oder die im L0Learn-Paket implementierten L0L2-Strafen schneiden ebenfalls gut ab ...
Tom Wenseleers
9

Lasso ist nur dann nützlich, wenn Sie sich darauf beschränken, Modelle zu berücksichtigen, deren zu schätzende Parameter linear sind. Anders ausgedrückt, das Lasso bewertet nicht, ob Sie die richtige Form der Beziehung zwischen der unabhängigen und der abhängigen Variablen gewählt haben.

Es ist sehr plausibel, dass es in einem beliebigen Datensatz nichtlineare, interaktive oder polynomielle Effekte geben kann. Diese alternativen Modellspezifikationen werden jedoch nur bewertet, wenn der Benutzer diese Analyse durchführt. Das Lasso ist kein Ersatz dafür.

Betrachten Sie als einfaches Beispiel, wie dies schief gehen kann, einen Datensatz, in dem disjunkte Intervalle der unabhängigen Variablen abwechselnd hohe und niedrige Werte der abhängigen Variablen vorhersagen. Die Sortierung mit herkömmlichen linearen Modellen ist schwierig, da die für die Analyse vorhandenen Manifestvariablen keinen linearen Effekt haben (eine gewisse Transformation der Manifestvariablen kann jedoch hilfreich sein). In seiner offensichtlichen Form belassen, wird das Lasso fälschlicherweise zu dem Schluss kommen, dass dieses Merkmal irrelevant ist, und seinen Koeffizienten auf Null setzen, da es keine lineare Beziehung gibt. Auf der anderen Seite ist ein baumbasiertes Modell wie ein zufälliger Wald wahrscheinlich ziemlich gut geeignet, da die Daten achsenausgerichtete Teilungen enthalten.

Bildbeschreibung hier eingeben

Setzen Sie Monica wieder ein
quelle
5

Ein praktischer Nachteil von Lasso und anderen Regularisierungstechniken besteht darin, den optimalen Regularisierungskoeffizienten Lambda zu finden. Die Verwendung der Kreuzvalidierung zum Ermitteln dieses Werts kann genauso kostspielig sein wie schrittweise Auswahltechniken.

rm999
quelle
Was meinst du mit "teuer"?
Mark999
4
Diese Behauptung ist nicht wirklich wahr. Wenn Sie die Rastersuche "Warmstart" wie bei der Methode glmnet anwenden, können Sie das gesamte Raster sehr schnell berechnen.
Wahrscheinlichkeitslogik
1
@probabilityislogic Richtig, ich habe erst über Warmstarts gelesen, nachdem ich den obigen Kommentar abgegeben habe. Was halten Sie von diesem Papier, das darauf hinweist, dass Warmstarts langsamer und manchmal weniger effektiv sind als eine einfache Gegenvalidierung? users.cis.fiu.edu/~lzhen001/activities/KDD2011Program/docs/…
rm999
5
Für das Bayes'sche Lasso ist kein festes Lasso erforderlich λ
5

Ich bin kein LASSO-Experte, aber ein Experte für Zeitreihen. Wenn Sie Zeitreihendaten oder räumliche Daten haben, würde ich sorgfältig eine Lösung vermeiden, die auf unabhängigen Beobachtungen beruht. Darüber hinaus wäre LASSO noch weniger ein guter Hammer, wenn es unbekannte deterministische Effekte gibt, die Ihre Daten in Mitleidenschaft gezogen haben (Pegelverschiebungen / Zeittrends usw.). Zum Schluss, wenn Sie Zeitreihendaten haben, müssen Sie die Daten häufig segmentieren, wenn Sie mit sich über die Zeit ändernden Parametern oder Fehlervarianzen konfrontiert sind.

IrishStat
quelle
1
LASSO liefert möglicherweise eine gute Prognoseleistung, wenn es auf auf Regression basierende Zeitreihenmodelle angewendet wird, wie z. B. Autoregressionen (AR), Vektorautoregressionen (VAR) und Vektorfehlerkorrekturmodelle (VECM). Wenn Sie beispielsweise nach Lasso-Vektor-Autoregression suchen, finden Sie in der wissenschaftlichen Literatur viele Beispiele. Nach meiner Erfahrung bietet die Verwendung von LASSO für stationäre VAR-Modelle eine überlegene Prognoseleistung im Vergleich zu allen Subset-Auswahl- oder Ridge-Regularisierungen, während die Ridge-Regularisierung LASSO für integrierte VAR-Modelle übertrifft (aufgrund der Multikollinearität gemäß der Antwort von Scortchi).
Richard Hardy
Das Versagen von LASSO hängt also nicht mit den Zeitreihen der Daten zusammen.
Richard Hardy
2

Dies ist bereits eine ziemlich alte Frage, aber ich bin der Meinung, dass die meisten Antworten in der Zwischenzeit ziemlich veraltet sind (und die, die als die richtige Antwort überprüft wurde, ist einfach falsch, imho).

Erstens ist es im Hinblick auf eine gute Prognoseleistung nicht allgemein gültig, dass LASSO immer besser als schrittweise ist. Das Papier "Erweiterte Vergleiche der besten Teilmengenauswahl, schrittweisen Vorwärtsauswahl und des Lassos" von Hastie et al. (2017) bietet einen umfassenden Vergleich von schrittweisen Vorwärts-, LASSO- und einigen LASSO-Varianten wie dem entspannten LASSO sowie der besten Teilmenge und diesen zeigen, dass schrittweise manchmal besser ist als LASSO. Eine Variante von LASSO - Relaxed LASSO - war jedoch diejenige, die unter den verschiedensten Umständen die höchste Modellvorhersagegenauigkeit erzielte. Die Entscheidung, welche Variable die beste ist, hängt jedoch stark davon ab, was Sie für die beste halten, z.

Es gibt jedoch einen ganzen Zoo spärlicher Lernmethoden, von denen die meisten besser sind als LASSO. Zum Beispiel gibt es Meinhausens entspannte LASSO , adaptive LASSO- und SCAD- und MCP-bestrafte Regression, wie im ncvregPaket implementiert , die alle weniger voreingenommen sind als Standard-LASSO und daher bevorzugt werden. Wenn Sie außerdem an der absolut dünnsten Lösung mit der besten Vorhersage-Performance interessiert sind, wird die Regression mit L0 bestraft (auch als beste Teilmenge bezeichnet, dh basierend auf der Bestrafung des nr von Koeffizienten ungleich Null im Gegensatz zur Summe des Absolutwerts der Koeffizienten in LASSO). ist besser als LASSO, siehe z. B. das l0araPaket, das mit einem iterativen adaptiven Ridge-Verfahren bestrafte L0-GLMs approximiert, und das im Gegensatz zu LASSO auch sehr gut mit hochkollinearen Variablen funktioniert, und das L0LearnPaket Koordinatenabstieg anpassen kann , möglicherweise in Kombination mit einer L2-Strafe, um die Kollinearität zu regulieren., die mit L0 bestraften Regressionsmodellen passen

Kommen wir also zu Ihrer ursprünglichen Frage zurück: Warum nicht LASSO für die Variablenauswahl verwenden? :

(1) weil die Koeffizienten stark verzerrt sind, was bei einer entspannten, bestraften LASSO-, MCP- und SCAD-Regression verbessert und bei einer bestraften L0-Regression (die eine vollständige Orakeleigenschaft aufweist, dh, sie kann sowohl die kausalen Variablen als auch die Wiederholung herausfinden unverzerrte Koeffizienten, auch für p> n Fälle)

(2) weil es dazu neigt, viel mehr falsch-positive Ergebnisse zu produzieren als die bestrafte L0-Regression (in meinen Tests ist dies l0aradie beste Leistung, dh iterativer adaptiver Kamm, gefolgt vonL0Learn )

(3) weil es nicht gut mit kollinearen Variablen umgehen kann (es würde im Wesentlichen nur zufällig eine der kollinearen Variablen auswählen) - iterativer adapativer Kamm / l0araund die L0L2-Strafen L0Learnsind viel besser darin, damit umzugehen.

Natürlich müssen Sie im Allgemeinen immer noch die Kreuzvalidierung verwenden, um Ihre Regularisierungsparameter zu optimieren, um eine optimale Vorhersageleistung zu erzielen, aber das ist kein Problem. Sie können sogar hochdimensionale Inferenzen für Ihre Parameter durchführen und 95% -Konfidenzintervalle für Ihre Koeffizienten berechnen, wenn Sie dies über nichtparametrisches Bootstrapping möchten (auch unter Berücksichtigung der Unsicherheit bei der Auswahl der optimalen Regularisierung, wenn Sie Ihre Kreuzvalidierung auch für jeden Bootstrap-Datensatz durchführen) , obwohl das dann ziemlich langsam wird).

Rechnerisch ist LASSO übrigens nicht langsamer als schrittweise Ansätze, sicherlich nicht, wenn man hochoptimierten Code verwendet, der Warmstarts verwendet, um die LASSO-Regularisierung zu optimieren (Sie können sich selbst mit dem fsBefehl für schrittweise Weiterleitung und lassofür LASSO im bestsubsetPaket vergleichen). Die Tatsache, dass schrittweise Ansätze immer noch populär sind, hat wahrscheinlich mit der falschen Überzeugung vieler zu tun, dass man dann einfach das endgültige Modell behalten und die zugehörigen p-Werte angeben könnte - was in der Tat nicht richtig ist, da dies nicht der Fall ist Berücksichtigen Sie die Unsicherheit, die durch Ihre Modellauswahl entsteht und zu optimistischen p-Werten führt.

Hoffe das hilft?

Tom Wenseleers
quelle
0

Ein großes Problem ist die Schwierigkeit, Hypothesentests durchzuführen. Sie können mit Lasso nicht leicht herausfinden, welche Variablen statistisch signifikant sind. Mit schrittweiser Regression können Sie Hypothesentests bis zu einem gewissen Grad durchführen, wenn Sie bei der Behandlung von Mehrfachtests vorsichtig sind.

dsimcha
quelle
8
Ich würde sagen, das ist ein Vorteil, kein Nachteil. Es hindert Sie daran, etwas zu tun, was Sie wahrscheinlich nicht tun sollten.
Peter Flom - Reinstate Monica
@ Peter: Warum? Ich gehe davon aus, dass Sie mehrere Tests usw. richtig korrigieren würden, sodass die erhaltenen P-Werte gültig wären.
DSIMCHA
10
Es gibt wirklich keine Möglichkeit, mehrere Tests schrittweise richtig zu korrigieren. Siehe z. B. Harrell-Regressionsmodellierungsstrategien. Es gibt keine Möglichkeit, die richtige Korrektur zu finden
Peter Flom - Reinstate Monica
4
Es ist richtig, dass die Schwierigkeit, Hypothesentests durchzuführen, ein potenzieller Nachteil von LASSO ist. Es ist nicht wahr, dass dies ein Nachteil gegenüber einer schrittweisen Regression ist.
gung - Wiedereinsetzung von Monica
2
Nun, es gibt das selektive Inferenz-Framework (implementiert im selectiveInference-Paket), um Inferenzen für das LASSO durchzuführen (nach der Auswahl). ..
Tom Wenseleers