Wir wissen, dass für die Lassoschätzung . (Siehe zum Beispiel den Bereich der Lasso und Ridge-Tuning-Parameter .) In einer anderen Notation drückt dies aus, dass . Beachten Sie, dassWir können dies visuell anhand der folgenden Abbildung sehen, in der der Weg der Lasso-Lösung dargestellt ist: & bgr; & lgr;=0
Beachten Sie, dass auf der weit rechten Seite des Plots, alle Koeffizienten sind Null. Dies geschieht an dem oben beschriebenen Punkt .
Von diesem Grundstück, bemerken wir auch , dass auf der weit linken Seite, die alle den Koeffizienten ungleich Null sind: Was ist der Wert von , bei dem jede Komponente von ist zunächst Null? Das heißt, was ist als Funktion von und ? Ich interessiere mich für eine geschlossene Lösung. Insbesondere bin ich nicht an einer algorithmischen Lösung interessiert, wie zum Beispiel dem Vorschlag, dass LARS den Knoten durch Berechnung finden könnte.
Trotz meiner Interessen scheint es, dass möglicherweise nicht in geschlossener Form verfügbar ist, da Lasso-Berechnungspakete dies sonst wahrscheinlich zur Ermittlung der Optimierungsparametertiefe während der Kreuzvalidierung ausnutzen würden. Vor diesem Hintergrund interessiere ich mich für alles, was theoretisch über und (noch) besonders für eine geschlossene Form.
quelle
Antworten:
Die in der Frage beschriebene Lasso-Schätzung ist das Lagrange-Multiplikator-Äquivalent des folgenden Optimierungsproblems:
Diese Optimierung hat eine geometrische Darstellung des Auffindens des Kontaktpunkts zwischen einer mehrdimensionalen Kugel und einem Polytop (aufgespannt durch die Vektoren von X). Die Oberfläche des Polytops repräsentiertg(β) . Das Quadrat des Kugelradius repräsentiert die Funktion f(β) und wird bei Kontakt der Oberflächen minimiert.
Die folgenden Bilder bieten eine grafische Erklärung. Die Bilder verwendeten das folgende einfache Problem mit Vektoren der Länge 3 (der Einfachheit halber, um eine Zeichnung machen zu können):
Die Bilder zeigen:
Wir zeigen drei Bilder:
Der Bereich vont oder λ für den wir den ersten und dritten Fall haben, kann aufgrund ihrer einfachen geometrischen Darstellung leicht berechnet werden.
Fall 1: Nur ein einzelnesβi ungleich Null
Die Nicht-Null -βi ist diejenige , für die die zugehörigen Vektor xi mit dem höchsten Absolutwert der Kovarianz hat y^ ist der Punkt des parrallelotope der am nächsten zu der OLS - Lösung). Wir können den Lagrange-Multiplikator λmax unter dem wir mindestens ein β ungleich Null haben, berechnen, indem wir die Ableitung mit ±βi (das Vorzeichen hängt davon ab, ob wir das βi in negativer oder positiver Richtung erhöhen ):
was dazu führt
das entspricht der||XTy||∞ in den Kommentaren erwähnt.
wo wir bemerken sollten, dass dies nur für den speziellen Fall gilt, in dem die Spitze des Polytops die Kugel berührt ( dies ist also keine allgemeine Lösung , obwohl die Verallgemeinerung einfach ist).
Fall 3: Alleβi sind nicht Null.
In diesem Fall berührt eine Facette des Polytops die Kugel. Dann ist die Änderungsrichtung des Lasso-Pfades normal zur Oberfläche der jeweiligen Facette.
The polytope has many facets, with positive and negative contributions of thexi . In the case of the last lasso step, when the lasso solution is close to the ols solution, then the contributions of the xi must be defined by the sign of the OLS solution. The normal of the facet can be defined by taking the gradient of the function ||β(r)||1 , the value of the sum of beta at the point r , which is:
and the equivalent change of beta for this direction is:
which after some algebraic tricks with shifting the transposes (ATBT=[BA]T ) and distribution of brackets becomes
we normalize this direction:
To find theλmin below which all coefficients are non-zero. We only have to calculate back from the OLS solution back to the point where one of the coefficients is zero,
,and at this point we evaluate the derivative (as before when we calculateλmax ). We use that for a quadratic function we have q′(x)=2q(1)x :
Images
a point of the polytope is touching the sphere, a singleβi is non-zero:
a ridge (or differen in multiple dimensions) of the polytope is touching the sphere, manyβi are non-zero:
a facet of the polytope is touching the sphere, allβi are non-zero:
Code example:
note: those last three lines are the most important
Written by StackExchangeStrike
quelle