Nous savons que pour , l'estimation au lasso . (Voir, par exemple, la portée du paramètre de réglage Lasso et Ridge .) Dans une autre notation, cela exprime que . Notez que Nous pouvons voir cela visuellement avec l'image suivante affichant le chemin de la solution de lasso:
Notez qu'à l' extrême droite du graphique, tous les coefficients sont nuls. Cela se produit au point décrit ci-dessus.
À partir de ce graphique, nous remarquons également qu'à l' extrême gauche, tous les coefficients sont différents de zéro: quelle est la valeur de à laquelle tout composant de est initialement nul? Autrement dit, quelle est égal, en fonction de et ? Je suis intéressé par une solution de formulaire fermé. En particulier, je ne suis pas intéressé par une solution algorithmique, comme, par exemple, suggérant que LARS pourrait trouver le nœud grâce au calcul.
Malgré mes intérêts, il semble que ne soit pas disponible sous forme fermée, car sinon, les packages de calcul au lasso en profiteraient probablement lors de la détermination de la profondeur du paramètre de réglage lors de la validation croisée. À la lumière de cela, je suis intéressé par tout ce qui peut être théoriquement montré sur et (encore) particulièrement intéressé par une forme fermée.
la source
Réponses:
L'estimation au lasso décrite dans la question est l'équivalent multiplicateur de lagrange du problème d'optimisation suivant:
Cette optimisation a une représentation géométrique de la recherche du point de contact entre une sphère multidimensionnelle et un polytope (enjambé par les vecteurs de X). La surface du polytope représenteg(β) . Le carré du rayon de la sphère représente la fonction f(β) et est minimisé lorsque les surfaces entrent en contact.
Les images ci-dessous fournissent une explication graphique. Les images ont utilisé le problème simple suivant avec des vecteurs de longueur 3 (pour plus de simplicité afin de pouvoir faire un dessin):
Les images montrent:
Nous montrons trois images:
La plage det ou λ pour laquelle nous avons les premier et troisième cas peut être facilement calculée en raison de leur représentation géométrique simple.
Cas 1: Un seulβi non nul
Le non nulβi est celle pour laquelle le vecteur associé xi a la plus grande valeur absolue de la covariance avec y^ (ce qui est le point de la parrallelotope qui le plus proche de la solution de SLO). On peut calculer le multiplicateur de Lagrange λmax dessous duquel on a au moins un β non nul en prenant la dérivée avec ±βi (le signe selon qu'on augmente le βi en sens négatif ou positif):
qui conduit à
ce qui équivaut à||XTy||∞ mentionné dans les commentaires.
où nous devons remarquer que cela n'est vrai que pour le cas spécial où la pointe du polytope touche la sphère ( ce n'est donc pas une solution générale , bien que la généralisation soit simple).
Cas 3: Tous lesβi sont non nuls.
Dans ce cas, une facette du polytope touche la sphère. Ensuite, la direction de changement de la trajectoire du lasso est normale à la surface de la facette particulière.
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
Écrit par StackExchangeStrike
la source