Ist die Fehlerrate eine konvexe Funktion des Regularisierungsparameters Lambda?

11

Bei der Auswahl des Regularisierungsparameters Lambda in Ridge oder Lasso wird empfohlen, verschiedene Lambda-Werte auszuprobieren, den Fehler im Validierungssatz zu messen und schließlich den Lambda-Wert auszuwählen, der den niedrigsten Fehler zurückgibt.

Es ist mir kein Problem, wenn die Funktion f (Lambda) = Fehler konvex ist. Könnte es so sein? Dh könnte diese Kurve mehr als ein lokales Minimum haben (was bedeuten würde, dass das Finden eines Minimums des Fehlers in einer Region von Lambda nicht die Möglichkeit ausschließt, dass in einer anderen Region ein Lambda einen noch kleineren Fehler zurückgibt)

Geben Sie hier die Bildbeschreibung ein

Ihr Rat wird geschätzt.

rf7
quelle

Antworten:

11

In der ursprünglichen Frage wurde gefragt, ob die Fehlerfunktion konvex sein muss. Nein, tut es nicht. Die unten dargestellte Analyse soll einen Einblick und eine Intuition in diese und die modifizierte Frage geben, in der gefragt wird, ob die Fehlerfunktion mehrere lokale Minima haben könnte.

Intuitiv muss es keine mathematisch notwendige Beziehung zwischen den Daten und dem Trainingssatz geben. Wir sollten in der Lage sein, Trainingsdaten zu finden, für die das Modell anfangs schlecht ist, mit einer gewissen Regularisierung besser wird und dann wieder schlechter wird. Die Fehlerkurve kann in diesem Fall nicht konvex sein - zumindest nicht, wenn der Regularisierungsparameter von bis variiert .0

Beachten Sie, dass konvex nicht gleichbedeutend mit einem eindeutigen Minimum ist! Ähnliche Ideen deuten jedoch darauf hin, dass mehrere lokale Minima möglich sind: Während der Regularisierung wird das angepasste Modell möglicherweise für einige Trainingsdaten besser, während es sich für andere Trainingsdaten nicht nennenswert ändert, und später wird es für andere Trainingsdaten usw. besser. Ein geeignetes Eine Mischung solcher Trainingsdaten sollte mehrere lokale Minima erzeugen. Um die Analyse einfach zu halten, werde ich nicht versuchen, das zu zeigen.

Bearbeiten (um auf die geänderte Frage zu antworten)

Ich war von der unten dargestellten Analyse und der dahinter stehenden Intuition so überzeugt, dass ich mich daran machte, ein Beispiel auf die gröbste Art und Weise zu finden: Ich habe kleine zufällige Datensätze generiert, ein Lasso darauf ausgeführt und den quadratischen Gesamtfehler für einen kleinen Trainingssatz berechnet. und zeichnete seine Fehlerkurve. Einige Versuche ergaben einen mit zwei Minima, die ich beschreiben werde. Die Vektoren haben die Form für die Merkmale und und die Antwort .x 1 x 2 y(x1,x2,y)x1x2y

Trainingsdaten

(1,1,0.1), (2,1,0.8), (1,2,1.2), (2,2,0.9)

Testdaten

(1,1,0.2), (1,2,0.4)

Das Lasso wurde mit glmnet::glmmetin ausgeführt R, wobei alle Argumente auf ihren Standardeinstellungen belassen wurden. Die Werte von auf der x-Achse sind die Kehrwerte der von dieser Software gemeldeten Werte (da sie ihre Strafe mit parametrisiert ).1 / λλ1/.λ

Eine Fehlerkurve mit mehreren lokalen Minima

Zahl


Analyse

Betrachten wir eine Regularisierungsmethode zum Anpassen der Parameter an die Daten und die entsprechenden Antworten , die diese Eigenschaften aufweisen, die Ridge Regression und Lasso gemeinsam haben:x i y iβ=(β1,,βp)xiyi

  1. (Parametrisierung) Die Methode wird durch reelle Zahlen parametrisiert , wobei das unregelmäßige Modell .λ = 0λ[0,)λ=0

  2. (Kontinuität) Die Parameterschätzung hängt kontinuierlich von und die vorhergesagten Werte für alle Features variieren kontinuierlich mit . & lgr; & bgr;β^λβ^

  3. (Schrumpfung) Als , .& bgr;0λβ^0

  4. (Endlichkeit) Für jeden Merkmalsvektor als ist die Vorhersage .β0 y ( x ) = f ( x , β ) 0xβ^0y^(x)=f(x,β^)0

  5. (Monotoner Fehler) Die Fehlerfunktion, die einen beliebigen Wert mit einem vorhergesagten Wert , , nimmt mit der Diskrepanzso dass wir es mit etwas Missbrauch der Notation als ausdrücken können .y L ( y , y ) | Y - y | L ( | y - y | )yy^L(y,y^)|y^y|L(|y^y|)

(Null in kann durch eine beliebige Konstante ersetzt werden.)(4)

Angenommen, die Daten sind so, dass die anfängliche (unregelmäßige) Parameterschätzung nicht Null ist. Lassen Sie uns einen Trainingsdatensatz konstruieren , der aus einer Beobachtung für die . (Wenn es nicht möglich ist, ein solches zu finden , ist das ursprüngliche Modell nicht sehr interessant!) Setzen Sie . (x0,y0)f(x0, β (0))0x0y0=f(x0, β (0))/2β^(0)(x0,y0)f(x0,β^(0))0x0y0=f(x0,β^(0))/2

Die Annahmen implizieren, dass die Fehlerkurve Eigenschaften hat:e:λL(y0,f(x0,β^(λ))

  1. y 0e(0)=L(y0,f(x0,β^(0))=L(y0,2y0)=L(|y0|) (wegen die Wahl von ).y0

  2. λ & bgr; ( λ ) 0 y ( x 0 ) 0limλe(λ)=L(y0,0)=L(|y0|) (weil als , , woher ).λβ^(λ)0y^(x0)0

Somit verbindet sein Graph kontinuierlich zwei gleich hohe (und endliche) Endpunkte.

Abbildung zeigt einen möglichen Graphen von $ e $.

Qualitativ gibt es drei Möglichkeiten:

  • Die Vorhersage für das Trainingsset ändert sich nie. Dies ist unwahrscheinlich - fast jedes Beispiel, das Sie auswählen, verfügt nicht über diese Eigenschaft.

  • Einige Zwischenvorhersagen für sind schlechter als zu Beginn oder im Grenzwert . Diese Funktion kann nicht konvex sein.λ = 0 λ 0<λ<λ=0λ

  • Alle Zwischenvorhersagen liegen zwischen und . Die Kontinuität impliziert, dass es mindestens ein Minimum von , in dessen Nähe konvex sein muss. Da sich asymptotisch einer endlichen Konstante nähert , kann es für groß genug nicht konvex sein .2 y 0 e e e ( λ ) λ02y0eee(λ)λ

Die vertikale gestrichelte Linie in der Abbildung zeigt, wo sich das Diagramm von konvex (links) zu nicht konvex (rechts) ändert. ( In dieser Abbildung gibt es auch einen Bereich der Nichtkonvexität in der Nähe von dies ist jedoch im Allgemeinen nicht unbedingt der Fall.)λ0

whuber
quelle
Vielen Dank für Ihre ausführliche Antwort. Wenn möglich, überprüfen Sie die Frage, während ich Ihre Antwort bearbeitet und aktualisiert habe.
RF7
Tolle Antwort (+1). In der Praxis gibt es meiner Meinung nach oft nicht so wenige Trainings- und Testdatenpunkte. Ändert sich die Schlussfolgerung dieser Antwort, wenn genügend Trainings- und Testdatenpunkte aus derselben (festen und ausreichend regelmäßigen) Verteilung stammen? Gibt es in diesem Szenario insbesondere ein eindeutiges lokales Minimum mit hoher Wahrscheinlichkeit?
user795305
@Ben Es kommt nicht auf die Anzahl der Testpunkte an: Dieses Ergebnis hängt vollständig von der Verteilung der Testpunkte im Verhältnis zur Verteilung der Trainingspunkte ab. Daher wird das Problem "mit hoher Wahrscheinlichkeit" nicht beantwortet werden können, ohne einige spezifische Annahmen über die multivariate Verteilung der Regressorvariablen zu treffen. Mit vielen Variablen im Spiel wird dieses Phänomen mehrerer lokaler Minima viel wahrscheinlicher sein. Ich vermute , dass die zufällige Auswahl eines großen Test - Sets (mit oft wie viele Beobachtungen als Variablen) könnten oft eine einzigartige globale min haben.
whuber
1
@whuber Danke! Ich stimme zu: Die (wahre) Verteilung zwischen den Trainings- und Testpunkten sollte gleich sein, und es müssen genügend Stichproben vorhanden sein, damit die empirischen Verteilungen des Trainings- und Testsatzes übereinstimmen. (Es scheint, dass ich das in meinem früheren Kommentar schlecht formuliert habe.) Wenn zum Beispiel eine gemeinsame Normalverteilung hat (mit nicht entarteter Kovarianz), vermute ich, dass die Wahrscheinlichkeit, dass die Fehlerkurve eine eindeutige lokale min aufweist, konvergiert 1 (wenn zum Beispiel Proben im Trainings- und Test-Set mit wobei fest ist (oder sogar langsam gegenübern n p n(x,y)nnpn
zunimmt
0

Diese Antwort betrifft speziell das Lasso (und gilt nicht für die Gratregression).

Installieren

Angenommen, wir haben Kovariaten, mit denen wir eine Antwort modellieren. Angenommen, wir haben Trainingsdatenpunkte und Validierungsdatenpunkte.n mpnm

Die Trainingseingabe sei und die Antwort sei . Wir werden das Lasso für diese Trainingsdaten verwenden. Das heißt, setzen Sie eine Familie von Koeffizienten, die aus den Trainingsdaten geschätzt werden. Wir werden basierend auf seinem Fehler in einem Validierungssatz mit Eingabe und Antwort auswählen, welches als Schätzer verwendet werden soll . Mit y ( 1 )R n β λ = arg min β R py ( 1 ) - X ( 1 ) β 2 2 + λ β 1 , β λ X ( 2 )R m × p y (X(1)Rn×py(1)Rn

(1)β^λ=argminβRpy(1)X(1)β22+λβ1,
β^λX(2)Rm×py(2)Rm
(2)λ^=argminλR+y(2)X(2)β^λ22,
Wir sind daran interessiert, die Fehlerfunktion zu untersuchen, aus der unser datengesteuerter Schätzer .e(λ)=y(2)X(2)β^λ22β^λ^

Berechnung

Jetzt werden wir die zweite Ableitung des Objektives in Gleichung berechnen , ohne dass irgendwelche Verteilungsannahmen auf dem ‚s oder ‘ s. Unter Verwendung von Differenzierung und einer gewissen Reorganisation berechnen wir (formal), dass (2)Xy

2λ2y(2)X(2)β^λ22=λ{2y(2)TX(2)λβ^λ+2β^λTX(2)TX(2)λβ^λ}=2y(2)TX(2)2λ2β^λ+2(β^λ)TX(2)TX(2)2λ2β^λ+2λβ^λTX(2)TX(2)Tλβ^λ=2{(y(2)X(2)β^λ)T2λ2β^λX(2)λβ^λ22}.
Da für stückweise linear ist (wobei die endliche Menge von Knoten im Lasso-Lösungspfad ist), ist die Ableitung stückweise konstant und ist für alle Null . Daher ist eine nicht negative Funktion von .β^λλKKλβ^λ2λ2β^λλK
2λ2y(2)X(2)β^λ22=2X(2)λβ^λ22,
λ

Fazit

Wenn wir weiter annehmen, dass aus einer kontinuierlichen Verteilung unabhängig von , ist der Vektor fast sicher für . Daher hat die Fehlerfunktion eine zweite Ableitung von die (fast sicher) streng positiv ist. wir jedoch wissen, dass stetig ist, wissen wir, dass der Validierungsfehler stetig ist.X(2){X(1),y(1)}X(2)λβ^λ0λ<λmaxe(λ)RKβ^λe(λ)

Schließlich wissen wir aus dem Lasso Dual, dass monoton abnimmt, wenn zunimmt. Wenn wir feststellen können, dass ebenfalls monoton ist, folgt die starke Konvexität von . Dies gilt jedoch mit einer Wahrscheinlichkeit, die sich einer nähert, wenn . (Ich werde hier bald Details eintragen.)X(1)β^λ22λX(2)β^λ22e(λ)L(X(1))=L(X(2))

user795305
quelle
1
Sie verlassen sich nur darauf, dass eine kontinuierliche stückweise lineare Funktion von zu folgern, dass streng konvex ist. Mal sehen, ob dieser Abzug allgemein gültig ist. Eine solche Funktion ist(wobei das Runden auf die nächste ganze Zahl bedeutet). Angenommen, und , so dass . Diese Fehlerfunktion hat unendlich viele lokale Minima. Es ist nicht konvex - es ist nur überall konvex, außer an isolierten Stellen! Das lässt mich glauben, dass Sie zusätzliche unausgesprochene Annahmen treffen. β^λe^β^(λ)=|λ[λ]|[]y(2)=0X(2)=1e^(λ)=β^(λ)2
whuber
@whuber Guter Punkt! Vielen Dank! Ich werde diesen Beitrag bald weiter bearbeiten.
user795305