Estoy tratando de usar un modelo LASSO para la predicción, y necesito estimar los errores estándar. Seguramente alguien ya ha escrito un paquete para hacer esto. Pero hasta donde puedo ver, ninguno de los paquetes en CRAN que hacen predicciones usando un LASSO devolverá errores estándar para esas predicciones.
Entonces mi pregunta es: ¿Hay un paquete o algún código R disponible para calcular los errores estándar para las predicciones de LASSO?
r
standard-error
prediction
lasso
Rob Hyndman
fuente
fuente
monomvn
, vea mi respuesta a continuación.Respuestas:
Kyung y col. (2010), "Regresión penalizada, errores estándar y lazos bayesianos", Análisis Bayesiano, 5 , 2 , sugieren que podría no haber un consenso sobre un método estadísticamente válido para calcular los errores estándar para las predicciones de lazo. Tibshirani parece estar de acuerdo (diapositiva 43) en que los errores estándar siguen siendo un problema sin resolver.
fuente
En una nota relacionada, que puede ser útil, Tibshirani y sus colegas han propuesto una prueba de significación para el lazo. El documento está disponible y titulado "Una prueba de importancia para el lazo". Puede encontrar una versión gratuita del documento aquí.
fuente
La respuesta de Sandipan Karmakar te dice qué hacer, esto debería ayudarte en el "cómo":
[...]
fuente
Bayesian LASSO es la única alternativa al problema de calcular errores estándar. Los errores estándar se calculan automáticamente en Bayesian LASSO ... Puede implementar Bayesian LASSO muy fácilmente utilizando el esquema de muestreo de Gibbs ...
Bayesian LASSO necesita distribuciones previas que se asignen a los parámetros del modelo. En el modelo LASSO, tenemos la función objetivo con como el parámetro de regularización. Aquí, como tenemos -norm for , entonces se necesita un tipo especial de distribución previa para esto, LAPLACE distribuye una mezcla a escala de distribución normal con distribución exponencial como densidad de mezcla. Sobre la base de los posteriores condicionales completos de cada uno de los parámetros deben deducirse.||y−Xβ||22+λ||β||1 λ ℓ1 β
Entonces uno puede usar Gibbs Sampling para simular la cadena. Ver Park & Cassella (2008), "The Bayesian Lasso", JASA , 103 , 482 .
Hay tres inconvenientes inherentes del LASSO frecuente:
Uno tiene que elegir por validación cruzada u otros medios.λ
Los errores estándar son difíciles de calcular ya que el LARS y otros algoritmos producen estimaciones puntuales para .β
La estructura jerárquica del problema en cuestión no puede codificarse utilizando el modelo frecuentista, que es bastante fácil en el marco bayesiano.
fuente
Para agregar a las respuestas anteriores, el problema parece ser que incluso un bootstrap es probablemente insuficiente, ya que la estimación del modelo penalizado está sesgada y el bootstrapping solo hablará de la variación, ignorando el sesgo de la estimación. Esto se resume muy bien en la viñeta del paquete penalizado en la página 18 .
Sin embargo, si se usa para predicción, ¿por qué se requiere un error estándar del modelo? ¿No puede realizar una validación cruzada o un arranque adecuado y generar un error estándar en torno a una métrica relacionada con la predicción como MSE?
fuente
Existe el paquete selectivo de inferencia en R, https://cran.r-project.org/web/packages/selectiveInference/index.html , que proporciona intervalos de confianza y valores p para sus coeficientes ajustados por LASSO, según el siguiente documento :
Stephen Reid, Jerome Friedman y Rob Tibshirani (2014). Un estudio de estimación de varianza de error en regresión de lazo. arXiv: 1311.5274
PD: solo tenga en cuenta que esto produce estimaciones de error para sus parámetros, no estoy seguro del error en su predicción final, si eso es lo que está buscando ... Supongo que podría usar "intervalos de predicción de población" para eso si lo desea (por parámetros de muestreo según el ajuste siguiendo una distribución normal multivariada).
fuente