26 votos

Por qué Lasso o ElasticNet funcionan mejor que Ridge cuando las características están correlacionadas

Tengo un conjunto de 150 características, y muchas de ellas están muy correlacionadas entre sí. Mi objetivo es predecir el valor de una variable discreta, cuyo rango es 1-8 . El tamaño de mi muestra es 550 y estoy usando 10 veces más validación cruzada.

AFAIK, entre los métodos de regularización (Lasso, ElasticNet y Ridge), Ridge es más riguroso con la correlación entre las características. Por eso esperaba que con Ridge debería obtener una predicción más precisa. Sin embargo, mis resultados muestran que el error absoluto medio de Lasso o Elastic está en torno a 0.61 mientras que esta puntuación es 0.97 para la regresión de cresta. Me pregunto cuál sería la explicación de esto. ¿Esto se debe a que tengo muchas características, y Lasso funciona mejor porque hace una especie de selección de características, deshaciéndose de las características redundantes?

1 votos

¿por qué cree que ridge debería tener mejores resultados? ¿cuál es el tamaño de su muestra?

1 votos

¿Qué significa "más riguroso a la regresión"?

1 votos

34voto

kjetil b halvorsen Puntos 7012

Suponga que tiene dos variables predictoras altamente correlacionadas $x,z$ y supongamos que ambos están centrados y escalados (con media cero y varianza uno). Entonces la pena de cresta en el vector de parámetros es $\beta_1^2 + \beta_2^2$ mientras que el término de penalización del lazo es $ \mid \beta_1 \mid + \mid \beta_2 \mid$ . Ahora bien, como el modelo se supone altamente colineal, por lo que $x$ y $z$ más o menos pueden sustituirse entre sí en la predicción $Y$ , por lo que muchas combinaciones lineales de $x, z$ donde simplemente sustituimos en parte $x$ para $z$ funcionarán de forma muy similar como predictores, por ejemplo $0.2 x + 0.8 z, 0.3 x + 0.7 z$ o $0.5 x + 0.5 z$ serán igual de buenos como predictores. Ahora mire estos tres ejemplos, la penalización del lazo en los tres casos es igual, es 1, mientras que la penalización de la cresta difiere, es respectivamente 0,68, 0,58, 0,5, por lo que la penalización de la cresta preferirá una ponderación igual de las variables colineales mientras que la penalización del lazo no podrá elegir. Esta es una de las razones por las que la cresta (o, más generalmente, la red elástica, que es una combinación lineal de las penalizaciones del lazo y de la cresta) funcionará mejor con los predictores colineales: Cuando los datos dan pocas razones para elegir entre diferentes combinaciones lineales de predictores colineales, el lazo se limitará a "vagar", mientras que la cresta tiende a elegir una ponderación igual. Esto último podría ser una mejor suposición para su uso con datos futuros. Y, si es así con los datos actuales, podría aparecer en la validación cruzada como mejores resultados con ridge.

Podemos ver esto de forma bayesiana: La cresta y el lazo implican información previa diferente, y la información previa implicada por la cresta tiende a ser más razonable en tales situaciones. (Esta explicación la aprendí, más o menos, del libro "Statistical Learning with Sparsity The Lasso and Generalizations" de Trevor Hastie, Robert Tibshirani y Martin Wainwright, pero en este momento no he podido encontrar una cita directa).


Pero el OP parece tener un problema diferente:

Sin embargo, mis resultados muestran que el error absoluto medio de Lasso o Elastic es de alrededor de 0.61 mientras que esta puntuación es 0.97 para la regresión de cresta

Ahora, el lazo también está haciendo efectivamente la selección de variables, puede establecer algunos coeficientes exactamente a cero. Ridge no puede hacer eso (excepto con probabilidad cero.) Así que podría ser que con los datos de OP, entre las variables colineales, algunas son efectivas y otras no actúan en absoluto (y el grado de colinealidad lo suficientemente bajo como para que esto pueda ser detectado.) Ver ¿Cuándo debo utilizar el lazo frente a la cresta? donde se discute esto. Un análisis detallado necesitaría más información de la que se da en la pregunta.

4 votos

Buen punto sobre la posibilidad de que la cresta funcione mejor en los datos futuros. La distinción entre el error en la validación cruzada en los datos actuales y la utilidad en los nuevos datos se pasa por alto con demasiada frecuencia. Para obtener una estimación de esto último, la OP podría repetir todo el proceso de construcción del modelo LASSO, de la red elástica y de la cresta en múltiples muestras bootstrap de los datos, y luego examinar los errores cuando se apliquen al conjunto de datos completo. Eso al menos pone a prueba el proceso de construcción del modelo.

0 votos

No me resulta evidente por qué sería ventajoso elegir ponderaciones iguales para los datos colineales. ¿Puede alguien explicar este punto?

3 votos

@RamonMartinez Creo que la idea es que puede ser mejor mantener todas las características con un mismo peso que elegir un subconjunto aleatorio (lo que hará el lasso). Como el subconjunto es aleatorio, no hay garantía de que sea el subconjunto correcto fuera de la muestra. Promediar todas las características no es tan bueno como conocer el verdadero subconjunto, pero puede estar más cerca que un subconjunto aleatorio sin suerte. Dicho esto, si las características son todas realmente colineales, yo esperaría que siguieran siendo colineales OOS, en cuyo caso la mayoría de los subconjuntos aleatorios están probablemente bien si sólo te importa la predicción.

5voto

carlo Puntos 31

La diferencia más importante entre el lasso y la cresta es que el lasso hace naturalmente una selección, especialmente cuando las covariables están muy correlacionadas. es imposible estar realmente seguro sin ver los coeficientes ajustados, pero es fácil pensar que entre esas características correlacionadas, muchas eran simplemente inútiles.

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