¿Cuál es más precisa glm o glmnet?

10

R glm y glmnet usan diferentes algoritmos.

Noto diferencias no triviales entre los coeficientes estimados cuando uso ambos.

Me interesa saber cuándo uno es más preciso que otro, y el momento de resolver / precisión se compensa.

Específicamente me refiero al caso en el que uno establece lambda = 0 en glmnet st, está estimando lo mismo que glm.

Will Beauchamp
fuente
1
Estás preguntando sobre las diferencias de rendimiento y precisión cuando lambda = 0, donde los dos deberían ser idénticos en teoría. Creo que deberías agregar eso a tu pregunta.
smci

Respuestas:

14

Glmnet es para regresión neta elástica. Esto penaliza el tamaño de los coeficientes estimados (a través de una combinación de penalizaciones L1 y L2). Intenta explicar tanta variación en los datos a través del modelo como sea posible, manteniendo los coeficientes del modelo pequeños. Encontré estas diapositivas útiles para entenderlo.

Glm no usa un término de penalización.

El efecto, según tengo entendido, es que con una red elástica puede estar aceptando algún sesgo a cambio de una reducción en la varianza del estimador. Entonces, cuál es el mejor debe depender de cómo defina 'mejor' en términos de sesgo y varianza. (Por ejemplo, sé que glmnet tiene ventajas cuando tiene muchas características en comparación con las observaciones)

conjeturas
fuente
el enlace parece estar roto
ndoogan 05 de
el enlace funciona ahora
smci
Bueno, solo está explicando lo que hace glmnet, pero el OP se refería a la situación cuando configuró lambda = 0 en glmnet, en cuyo caso el resultado debería, en principio, devolver lo mismo que un glm (no normalizado) (salvo algunos pequeños números numéricos) diferencias vinculadas con el método de ajuste de descenso de coordenadas cíclico que se utiliza en glmnet).
Tom Wenseleers