4 votos

¿Pueden los valores alfa y lambda de la salida de un objeto glmnet determinar si se trata de una cresta o de un lazo?

Dado un objeto glmnet usando train() donde el método trControl es "cv" y el número de iteraciones es 5, he obtenido que los valores bestTune alpha y lambda son alpha=0.1 y lambda= 0.007688342. Al ejecutar el objeto glmnet, observo que los valores de alfa parten de 0,1. ¿Puede inferirse aquí que el método utilizado es Lasso y no ridge debido al valor no negativo de alfa?

En general, ¿los valores de alfa, lambda pueden indicar qué modelo se está utilizando?

4voto

AdamSane Puntos 1825

Según tengo entendido glmnet , $\alpha=0$ sería en realidad una pena de cresta, y $\alpha=1$ sería una penalización de Lasso (y no al revés) y en cuanto a glmnet se trata de que puedas encajar esas maletas finales.

La pena con $\alpha=0.1$ sería bastante similar a la penalización de la cresta, pero no es la penalización de la cresta; si no está considerando $\alpha$ debajo de $0.1$ no se puede inferir necesariamente mucho más que eso sólo por el hecho de tener ese punto final. Si sabes que un $\alpha$ valor que era sólo ligeramente más grande era peor, entonces sería probable que una gama más grande podría haber elegido un menor $\alpha$ pero no sugiere que hubiera sido $0$ pero espero que no sea así. Si la cuadrícula de valores es gruesa bien puede ser que un valor mayor que $0.1$ sería mejor.

[Es posible que desee comprobar si había alguna otra razón por la que $\alpha$ podría haber estado en un punto final; por ejemplo, creo recordar que $\lambda$ se fijó en un punto final en la previsión si los coeficientes de lambdaOpt no se salvaron].

4voto

Ped Puntos 6

Por supuesto. El $\alpha$ puede ajustarse para que se ajuste a una regresión Lasso o Ridge (o algo intermedio). Recordemos que la función de pérdida que minimiza Elastic Net es $$\frac{1}{2N}\sum^N_{i=1}(y_i-\beta_0-x_i^t\beta)^2+\lambda\sum_{j=1}^p(\frac{1}{2}(1-\alpha)\beta_j^2+\alpha|\beta_j|).$$ Concéntrese en la segunda gran suma (la que se multiplica por $\lambda$ ). Si dejas que $\alpha=1$ el primer término de esta suma se convierte en $0$ y la función completa se convierte exactamente en la función que minimiza Lasso (o la función de pérdida de Lasso). Si se deja que $\alpha=0$ el segundo término se convierte en $0$ y te quedas con Ridge.

Puede comprobar la pérdida de Ridge y Lasso en este libro (An Introduction to statistical learning with applications in R de James, Witten, Hastie y Tibshirani) y para la red elástica en este documento (Caminos de regularización para modelos lineales generalizados mediante el descenso de coordenadas de Friedman, Hastie y Tibshirani).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X