D'après ce que je sais, utiliser un lasso pour la sélection de variables résout le problème des entrées corrélées. De plus, étant donné qu’elle est équivalente à la régression par le plus petit angle, elle n’est pas lente en calcul. Cependant, beaucoup de personnes (par exemple des personnes que je connais en bio-statistique) semblent toujours favoriser la sélection variable par étapes ou par étapes. Y at-il des inconvénients pratiques à l’utilisation du lasso qui le rendent défavorable?
60
Réponses:
Il n'y a AUCUNE raison de faire une sélection par étapes. C'est juste faux.
LASSO / LAR sont les meilleures méthodes automatiques. Mais ce sont des méthodes automatiques. Ils ont laissé l'analyste ne pas penser.
Dans de nombreuses analyses, certaines variables doivent figurer dans le modèle, quelle que soit la mesure de leur importance. Parfois, ce sont des variables de contrôle nécessaires. D'autres fois, il peut être très important de trouver un effet mineur.
la source
Si vous vous souciez uniquement des erreurs de prédiction et des interprétations, des inférences fortuites, de la simplicité des modèles, des tests de coefficients, etc., pourquoi voulez-vous toujours utiliser un modèle de régression linéaire?
Vous pouvez utiliser quelque chose comme dynamiser les arbres de décision ou soutenir la régression de vecteur pour obtenir une meilleure qualité de prédiction tout en évitant les surajustements dans les deux cas mentionnés. C'est pourquoi Lasso n'est peut-être pas le meilleur choix pour obtenir la meilleure qualité de prédiction.
Si ma compréhension est correcte, Lasso est destiné aux situations dans lesquelles vous êtes toujours intéressé par le modèle lui-même, pas seulement aux prévisions. C’est-à-dire - voir les variables sélectionnées et leurs coefficients, interpréter d’une manière quelconque, etc. Et pour cela - Lasso peut ne pas être le meilleur choix dans certaines situations, comme indiqué dans les autres questions ici.
la source
LASSO encourage la réduction des coefficients à 0, c'est-à-dire l'élimination de ces variables de votre modèle. Au contraire, d’autres techniques de régularisation, telles que l’arête, ont tendance à garder toutes les variantes.
Je vous recommande donc de vous demander si cette suppression a un sens pour vos données. Par exemple, envisagez de mettre en place un test de diagnostic clinique soit sur des données de microréseau de gènes, soit sur des données de spectroscopie vibrationnelle.
Vous vous attendriez à ce que certains gènes contiennent des informations pertinentes, mais beaucoup d'autres gènes ne sont que du bruit. ton application. Laisser tomber ces variables est une idée parfaitement sensée.
En revanche, les ensembles de données spectroscopiques vibrationnelles (bien que leurs dimensions soient généralement similaires à celles des micropuces) ont tendance à avoir les informations pertinentes «étalées» sur une grande partie du spectre (corrélation). Dans cette situation, demander à la régularisation d’abandonner des variables n’est pas une approche particulièrement judicieuse. D'autant plus que d'autres techniques de régularisation telles que la PLS sont plus adaptées à ce type de données.
Les éléments de l’apprentissage statistique donnent une bonne discussion sur le LASSO et le comparent à d’autres techniques de régularisation.
la source
Si deux prédicteurs sont fortement corrélés, LASSO peut en tomber un de manière plutôt arbitraire. Ce n'est pas très bien quand vous voulez faire des prédictions pour une population où ces deux prédicteurs ne sont pas fortement corrélés, et peut-être une raison pour préférer la régression de crête dans ces circonstances.
Vous pourriez aussi penser que la normalisation des prédicteurs (pour dire quand les coefficients sont "grands" ou "petits") plutôt arbitraires et être perplexe (comme moi) sur les moyens raisonnables de normaliser les prédicteurs catégoriels.
la source
Lasso n'est utile que si vous vous limitez à considérer des modèles linéaires dans les paramètres à estimer. En d'autres termes, le lasso n'évalue pas si vous avez choisi la forme correcte de la relation entre la ou les variables indépendantes et dépendantes.
Il est très plausible qu'il puisse y avoir des effets non linéaires, interactifs ou polynomiaux dans un ensemble de données arbitraire. Cependant, ces spécifications de modèle alternatives ne seront évaluées que si l'utilisateur effectue cette analyse; le lasso ne se substitue pas à cela.
Pour obtenir un exemple simple de la façon dont cela peut mal tourner, considérons un ensemble de données dans lequel des intervalles disjoints de la variable indépendante prédiront une alternance de valeurs hautes et basses de la variable dépendante. Il sera difficile de résoudre ce problème à l’aide de modèles linéaires classiques, car il n’existe pas d’effet linéaire dans les variables manifestes présentes à l’analyse (mais une certaine transformation des variables manifestes peut être utile). Resté dans sa forme manifeste, le lasso conclura à tort que cette caractéristique est étrangère et met à zéro son coefficient car il n'y a pas de relation linéaire . D'autre part, comme il existe des divisions dans les données alignées sur les axes, un modèle basé sur une arborescence, comme une forêt aléatoire, réussira probablement très bien.
la source
Un inconvénient pratique du lasso et d'autres techniques de régularisation consiste à trouver le coefficient de régularisation optimal, lambda. L'utilisation de la validation croisée pour trouver cette valeur peut être tout aussi coûteuse que les techniques de sélection par étapes.
la source
Je ne suis pas un expert de LASSO, mais je suis un expert des séries chronologiques. Si vous avez des données chronologiques ou des données spatiales, j'éviterais soigneusement une solution basée sur des observations indépendantes. En outre, si des effets déterministes inconnus ont bouleversé vos données (changements de niveau / tendances temporelles, etc.), LASSO serait encore moins efficace. En terminant, lorsque vous disposez de données chronologiques, vous devez souvent les segmenter lorsque vous rencontrez des paramètres ou une variance d'erreur qui évolue dans le temps.
la source
C'est déjà une question assez ancienne, mais j'estime qu'entre-temps, la plupart des réponses ici sont plutôt dépassées (et celle qui est cochée comme bonne réponse est tout simplement fausse à mon humble avis).
Premièrement, pour obtenir de bonnes performances de prévision, il n’est pas universellement vrai que LASSO est toujours meilleur que par étapes. Le document "Comparaisons étendues de la meilleure sélection de sous-ensembles, de la sélection progressive pas à pas et du lasso" de Hastie et al (2017) fournit une comparaison détaillée des variantes avancées de LASSO et de LASSO avancées telles que le LASSO décontracté et le meilleur sous-ensemble, et montrer que stepwise est parfois meilleur que LASSO. Une variante de LASSO - LASSO assouplie - était celle qui produisait la précision de prédiction du modèle la plus élevée dans le plus grand nombre de circonstances. La conclusion à propos de ce qui est le meilleur dépend beaucoup de ce que vous considérez le mieux, par exemple, s’il s’agit de l’exactitude de prédiction la plus élevée ou de la sélection du moins de variables fausses positives.
Il existe tout un zoo de méthodes d'apprentissage clairsemées, dont la plupart sont meilleures que LASSO. Par exemple , la régression pénalisée LASSO , adaptative LASSO et SCAD et MCP de Meinhausen, telle que mise en œuvre dans le
ncvreg
package, est moins biaisée que la norme LASSO et est donc préférable. De plus, si vous êtes intéressé par la solution la plus éparpillée absolue offrant les meilleures performances de prévision, réglez L0 en régression pénalisée (ou meilleur sous-ensemble, c’est-à-dire basé sur la pénalisation du nombre de coefficients non nuls par opposition à la somme de la valeur absolue des coefficients dans LASSO) est meilleur que LASSO, voir par exemple lel0ara
package qui se rapproche des GLM pénalisés L0 en utilisant une procédure de crête adaptative itérativeet qui, contrairement à LASSO, fonctionne également très bien avec des variables hautement colinéaires et leL0Learn
package , qui peut s’adapter aux modèles de régression pénalisés L0 en utilisant la descente en coordonnées , éventuellement en combinaison avec une pénalité L2 pour régulariser la colinéarité.Revenons donc à votre question initiale: pourquoi ne pas utiliser LASSO pour la sélection de variables? :
(1) parce que les coefficients seront fortement biaisés, ce qui s’améliorera dans la régression pénalisée assouplie de LASSO, MCP et SCAD, et sera complètement résolu en régression pénalisée de L0 (qui a une propriété complète d’oracle, c’est-à-dire qu’il coefficients non biaisés, également pour p> n cas)
(2) parce qu'il a tendance à produire beaucoup plus de faux positifs que la régression pénalisée L0 (dans mes tests
l0ara
donne les meilleurs résultats, c.-à-d. Une crête adaptative itérative, suivie deL0Learn
)(3) parce qu’il ne peut pas gérer correctement les variables colinéaires (il ne sélectionnerait qu’une seule des variables colinéaires de manière aléatoire) - les pénalités adaptatives itératives /
l0ara
et la pénalité L0L2L0Learn
sont beaucoup mieux adaptées à cette situation.Bien sûr, en général, vous devrez toujours utiliser la validation croisée pour ajuster vos paramètres de régularisation afin d'obtenir des performances de prévision optimales, mais ce n'est pas un problème. Et vous pouvez même faire une inférence dimensionnelle élevée sur vos paramètres et calculer des intervalles de confiance de 95% sur vos coefficients si vous le souhaitez via un bootstrapping non paramétrique (même en tenant compte de l'incertitude sur le choix de la régularisation optimale si vous effectuez votre validation croisée également sur chaque jeu de données bootstrapped , bien que cela devienne assez lent alors).
Sur le plan du calcul, LASSO n’est pas plus lent à s’adapter que les approches pas à pas, surtout si vous utilisez un code hautement optimisé qui utilise des démarrages à chaud pour optimiser votre régularisation LASSO (vous pouvez vous comparer à l’aide de la
fs
commande forward etlasso
du LASSO dans lebestsubset
package). Le fait que les approches par étapes soient toujours populaires est probablement dû à la croyance erronée de nombreuses personnes que vous pouvez simplement conserver votre modèle final et signaler les valeurs p associées, ce qui n'est en fait pas une bonne chose à faire, Tenez compte de l’incertitude introduite par votre sélection de modèle, ce qui conduit à des valeurs p trop optimistes.J'espère que cela t'aides?
la source
Un gros problème est la difficulté de faire des tests d'hypothèses. Vous ne pouvez pas facilement déterminer quelles variables sont statistiquement significatives avec Lasso. Avec la régression pas à pas, vous pouvez effectuer des tests d’hypothèses dans une certaine mesure, si vous faites très attention à votre traitement de plusieurs tests.
la source