Esta ya es una pregunta bastante antigua, pero creo que, mientras tanto, la mayoría de las respuestas aquí están bastante desactualizadas (y la que está marcada como la respuesta correcta es, en mi opinión, errónea).
Primero, en términos de obtener un buen rendimiento de predicción, no es universalmente cierto que LASSO siempre es mejor que paso a paso. El documento "Comparaciones extendidas de la mejor selección de subconjuntos, la selección progresiva hacia adelante y el lazo" de Hastie et al (2017) proporciona una comparación exhaustiva de las variantes hacia adelante paso a paso, LASSO y algunas de LASSO, como el LASSO relajado y el mejor subconjunto, y Demuestre que paso a paso es a veces mejor que LASSO. Sin embargo, una variante de LASSO, LASSO relajada, fue la que produjo la mayor precisión de predicción del modelo en la más amplia gama de circunstancias. Sin embargo, la conclusión acerca de cuál es la mejor depende mucho de lo que considere mejor, por ejemplo, si esto sería la mayor precisión de predicción o la selección de la menor cantidad de variables positivas falsas.
Sin embargo, hay un zoológico completo de métodos de aprendizaje dispersos, la mayoría de los cuales son mejores que LASSO. Por ejemplo, no es del Meinhausen LASSO relajado , LASSO adaptativo y SCAD y MCP penalizado regresión como se aplica en el ncvreg
paquete, todos los cuales tienen menos sesgo que LASSO estándar y también lo son preferible. Además, si está interesado en la solución más escasa absoluta con el mejor rendimiento de predicción, L0 penaliza la regresión (también conocido como el mejor subconjunto, es decir, basado en la penalización del nr de coeficientes distintos de cero en lugar de la suma del valor absoluto de los coeficientes en LASSO) es mejor que LASSO, consulte, por ejemplo, el l0ara
paquete que se aproxima a GLM penalizados L0 utilizando un procedimiento de cresta adaptativo iterativo, y que, a diferencia de LASSO, también funciona muy bien con variables altamente colineales, y el L0Learn
paquete , que puede ajustarse a los modelos de regresión penalizados L0 utilizando el descenso de coordenadas , potencialmente en combinación con una penalización L2 para regularizar la colinealidad.
Entonces, para volver a su pregunta original: ¿por qué no usar LASSO para la selección de variables? :
(1) porque los coeficientes estarán muy sesgados, lo que se mejora en la regresión penalizada por LASSO, MCP y SCAD relajada, y se resuelve completamente en la regresión penalizada L0 (que tiene una propiedad de oráculo completo, es decir, puede seleccionar tanto las variables causales como la repetición coeficientes insesgados, también para casos p> n)
(2) porque tiende a producir muchos más falsos positivos que la regresión penalizada L0 (en mis pruebas l0ara
funciona mejor entonces, es decir, la cresta adaptativa iterativa, seguida de L0Learn
)
(3) porque no puede ocuparse bien de las variables colineales (esencialmente solo seleccionaría al azar una de las variables colineales): la cresta adaptativa iterativa / l0ara
y las penalizaciones L0L2 L0Learn
son mucho mejores para tratar eso.
Por supuesto, en general, aún tendrá que usar la validación cruzada para ajustar sus parámetros de regularización para obtener un rendimiento de predicción óptimo, pero eso no es un problema. E incluso puede hacer una inferencia de alta dimensión en sus parámetros y calcular intervalos de confianza del 95% en sus coeficientes si lo desea a través de bootstrapping no paramétrico (incluso teniendo en cuenta la incertidumbre sobre la selección de la regularización óptima si realiza su validación cruzada también en cada conjunto de datos bootstrapped) , aunque eso se vuelve bastante lento entonces).
Desde el punto de vista computacional, LASSO no es más lento que los pasos paso a paso por cierto, ciertamente no si uno usa un código altamente optimizado que usa arranques en caliente para optimizar su regularización LASSO (puede compararse usando el fs
comando para avanzar paso a paso y lasso
para LASSO en el bestsubset
paquete). El hecho de que los enfoques escalonados sigan siendo populares probablemente tenga que ver con la creencia errónea de muchos de que uno podría mantener su modelo final e informar sus valores p asociados, lo que de hecho no es lo correcto, ya que esto no tenga en cuenta la incertidumbre introducida por su selección de modelo, lo que resulta en valores p demasiado optimistas.
¿Espero que esto ayude?