Wann funktioniert die L1-Regularisierung besser als die L2-Regularisierung und umgekehrt?

30

Hinweis: Ich weiß, dass L1 die Eigenschaft zur Featureauswahl hat. Ich versuche zu verstehen, welche ich wählen soll, wenn die Funktionsauswahl völlig irrelevant ist.

  1. Wie kann man entscheiden, welche Regularisierung (L1 oder L2) verwendet werden soll?
  2. Was sind die Vor- und Nachteile jeder L1 / L2-Regularisierung?
  3. Wird empfohlen, zuerst die Featureauswahl mit L1 durchzuführen und dann L2 auf diese ausgewählten Variablen anzuwenden?
GeorgeOfTheRF
quelle
2
Beachten Sie, dass "L1-Merkmalsauswahl" eher als Regularisierung des Merkmalsraums bezeichnet werden sollte. es gibt viele Wege , bessere Methoden Feature Auswahl zu tun , verstanden als Informationen zu bekommen , was zu dem modellierten Problem relevant ist.
@mbq: Ich bin gespannt, welche "viel besseren Methoden" meinten Sie hier?
Amöbe sagt Reinstate Monica
1
Wie die hier aufgezählten .

Antworten:

31

Wie kann man entscheiden, welche Regularisierung (L1 oder L2) verwendet werden soll?

Was ist dein Ziel? Beide können die Modellverallgemeinerung verbessern, indem Koeffizienten benachteiligt werden, da Merkmale mit entgegengesetzter Beziehung zum Ergebnis sich gegenseitig "versetzen" können (ein großer positiver Wert wird durch einen großen negativen Wert ausgeglichen). Dies kann bei kollinearen Merkmalen auftreten. Kleine Änderungen in den Daten können zu dramatisch unterschiedlichen Parameterschätzungen führen (Schätzungen mit hoher Varianz). Eine Bestrafung kann dazu führen, dass beide Koeffizienten kleiner sind. (Hastie et al., Elements of Statistical Learning , 2. Auflage, S. 63)

Was sind die Vor- und Nachteile jeder L1 / L2-Regularisierung?

Die L1-Regularisierung kann das Multikollinearitätsproblem lösen, indem die Koeffizientennorm eingeschränkt und einige Koeffizientenwerte auf 0 festgelegt werden. Die Lasso-Regression (Regression mit einer L1-Strafe) ist ein quadratisches Programm, für dessen Lösung einige spezielle Werkzeuge erforderlich sind. Wenn Sie mehr Merkmale als Beobachtungen , behält Lasso höchstens Nicht-Null-Koeffizienten beiNN . Je nach Kontext ist dies möglicherweise nicht das, was Sie möchten.

Die L1-Regularisierung wird manchmal als Merkmalsauswahlmethode verwendet. Angenommen, Sie haben eine feste Grenze für die Anzahl der Features, die Sie verwenden können (da die Datenerfassung für alle Features teuer ist oder Sie strenge technische Einschränkungen hinsichtlich der Anzahl der zu speichernden Werte usw. haben). Sie können versuchen, die L1-Strafe so einzustellen, dass die gewünschte Anzahl von Nicht-Null-Features erreicht wird.

Die L2-Regularisierung kann das Multikollinearitätsproblem lösen, indem sie die Koeffizientennorm einschränkt und alle Variablen beibehält. Es ist unwahrscheinlich, dass ein Koeffizient auf genau 0 geschätzt wird. Dies ist nicht unbedingt ein Nachteil, es sei denn, ein spärlicher Koeffizientenvektor ist aus irgendeinem Grund wichtig.

In der Regressionseinstellung ist dies die "klassische" Lösung für das Problem der Schätzung einer Regression mit mehr Merkmalen als Beobachtungen. Die L2-Regularisierung kann einen Koeffizienten für jedes Merkmal schätzen, selbst wenn es mehr Merkmale als Beobachtungen gibt (dies war tatsächlich die ursprüngliche Motivation für die "Gratregression").

Das elastische Netz ermöglicht alternativ die Regulierung von L1 und L2 als Sonderfälle. Ein typischer Anwendungsfall für einen Data Scientist in der Industrie ist, dass Sie nur das beste Modell auswählen möchten, sich aber nicht unbedingt darum kümmern müssen, ob es mit L1, L2 oder beidem bestraft wird. Elastisches Netz ist in solchen Situationen gut.

Wird empfohlen, zuerst die Featureauswahl mit L1 durchzuführen und dann L2 auf diese ausgewählten Variablen anzuwenden?

Ich kenne keine Publikation, die eine L1-dann-L2-Pipeline vorschlägt, aber dies ist wahrscheinlich nur Unwissenheit meinerseits. Daran scheint nichts auszusetzen. Ich würde eine Literaturrecherche durchführen.

Es gibt einige Beispiele für ähnliche "phasengesteuerte" Pipelines. Eines ist das "entspannte Lasso", bei dem die Lasso-Regression zweimal angewendet wird , einmal, um aus einer großen Gruppe eine kleine Gruppe von Merkmalen auszuwählen, und zum anderen, um Koeffizienten für die Verwendung in einem Modell abzuschätzen. Dies verwendet eine Kreuzvalidierung bei jedem Schritt, um die Stärke der Strafe zu bestimmen. Die Überlegung ist, dass Sie im ersten Schritt eine Kreuzvalidierung durchführen und wahrscheinlich eine große Strafe wählen, um irrelevante Prädiktoren auszusortieren. Im zweiten Schritt führen Sie eine Kreuzvalidierung durch und wählen wahrscheinlich eine kleinere Strafe (und damit größere Koeffizienten) aus. Dies wird in Elements of Statistical Learning mit einem Zitat an Nicolai Meinshausen ("Relaxed Lasso") kurz erwähnt. Computational Statistics & Data Analysis Band 52, Ausgabe 1, 15. September 2007, S. 374-393).

Benutzer @amoeba schlägt auch eine L1-dann-OLS-Pipeline vor. Das ist vielleicht nett, weil es nur einen Hyperparameter für die Größe der L1-Strafe gibt, sodass weniger Fummelei erforderlich wäre.

Ein Problem, das bei jeder "phasengesteuerten" Analyse-Pipeline auftreten kann, die einige Schritte und dann einige andere Schritte separat ausführt, ist, dass zwischen diesen verschiedenen Algorithmen keine "Sichtbarkeit" besteht. Daher erbt ein Prozess alle Daten-Snooping-Vorgänge, die in den vorherigen Schritten durchgeführt wurden. Dieser Effekt ist nicht zu vernachlässigen. Eine schlecht durchdachte Modellierung kann zu Müllmodellen führen.

Eine Möglichkeit, sich gegen Daten-Snooping-Nebenwirkungen abzusichern, besteht darin, alle Ihre Entscheidungen zu überprüfen. Die erhöhten Rechenkosten können sich jedoch als unerschwinglich erweisen.

Sycorax sagt Reinstate Monica
quelle
Es tut mir leid, dass ich der Antwort auf meinen dritten Punkt nicht gefolgt bin. Können Sie erklären?
GeorgeOfTheRF
1
Es geht darum, Optimismus richtig zu berücksichtigen. Aus dem gleichen Grund, aus dem wir die Leistung an Daten außerhalb der Stichprobe messen, müssen alle Filter- / Vorverarbeitungsschritte so ausgeführt werden, dass kein Informationsverlust zwischen den Schritten möglich ist. Wenn Sie eine Feature-Auswahl für Ihren gesamten Datensatz durchführen und dann eine Analyse durchführen, werden Sie ein Signal im Rauschen finden.
Sycorax sagt Reinstate Monica
Okay. Was ist dann der empfohlene Ansatz für die Featureauswahl, bevor ein ML-Modell ausgeführt wird?
GeorgeOfTheRF
3
Meine Empfehlung lautet "nicht". Ein Beispiel dafür, wie dies schief gehen kann, finden Sie hier: stats.stackexchange.com/questions/164048/… Dies unterscheidet sich jedoch ausreichend von Ihrer ursprünglichen Frage, sodass Sie einfach eine neue Frage stellen sollten. (Dies ist zu Ihrem Vorteil, da Sie zusätzliche Mitarbeiter für die neue Frage gewinnen können.)
Sycorax sagt Reinstate Monica
3
(+1) Ich habe in der Literatur nicht gesehen, dass L1 gefolgt von L2 diskutiert wird, aber es macht für mich Sinn. Es gibt L1-gefolgt von OLS (auch bekannt als "LARS-OLS-Hybrid") und L1-gefolgt von L1 (entspanntes Lasso), man kann also auch L1-gefolgt von L2 in Betracht ziehen. Solange beide Hyperparameter gegenseitig validiert sind, sollte dies eine praktikable Regularisierungsstrategie sein.
Amöbe sagt Reinstate Monica
19

Wenn Sie eine optimale Vorhersage wünschen, verwenden Sie im Allgemeinen L2. Wenn Sie Sparsamkeit bei einem Opfer der prädiktiven Diskriminierung wünschen, verwenden Sie L1. Beachten Sie jedoch, dass die Sparsamkeit illusorisch sein kann. Wenn Sie beispielsweise den Lasso- Vorgang mit dem Bootstrap wiederholen, wird häufig eine erhebliche Instabilität in der Liste der "ausgewählten" Merkmale festgestellt, insbesondere wenn die Prädiktoren miteinander korreliert sind.

Frank Harrell
quelle
"Optimale Vorhersage" - Sie meinen, dass L2 im Allgemeinen eine bessere Genauigkeit für unsichtbare Daten bietet?
GeorgeOfTheRF
3
Ja, insbesondere im Hinblick auf vorhersehbare Diskriminierung.
Frank Harrell
1
+1 zu diesem Kommentar (und der Antwort). Ich bin auf dieses Phänomen dass normalerweise besser in Bezug auf prädiktive Diskriminierung (dh Klassifizierungsaufgaben) ist als und es ärgert mich immer irgendwie. Ich schnalle mich nur intensiv, damit mein elastisches Netz einen nahen oder vollständigen Grat vorschlägt Lösung. :)L 1L2L1
usεr11852 sagt Reinstate Monic
2
Prädiktive Diskriminierung ist ein viel allgemeinerer Begriff als die Klassifizierung. Aber Ihrer ist normalerweise besser als da keine Informationen versuchen, sparsam zu sein. Es lassen sich viele kleine Effekte addieren. L 1L2L1
Frank Harrell
Cool, danke für die Klarstellung. Es ist sinnvoll. (Ja, Sie haben Recht. Ich verbinde PD mit Maßnahmen, die sich auf die Wahrscheinlichkeit einer korrekten Klassifizierung und / oder Reihenfolge der Probanden in Bezug auf das Risiko beziehen, sodass ich schnell "Klassifizierungsaufgaben" sagte. Meine schlechte, ich sollte vorsichtiger sein.)
usεr11852 sagt Reinstate Monic