¿Por qué la norma L1 para modelos dispersos?


97

Estoy leyendo los libros sobre regresión lineal. Hay algunas oraciones sobre la norma L1 y L2. Los conozco, simplemente no entiendo por qué la norma L1 para modelos dispersos. ¿Puede alguien usar dar una explicación simple?


44
Básicamente, la escasez es inducida por bordes afilados que se encuentran en el eje de una isosuperficie. La mejor explicación gráfica que he encontrado hasta ahora está en este video: youtube.com/watch?v=sO4ZirJh9ds
felipeduque

1
Hay un artículo de blog sobre el mismo chioka.in/…
prashanth

Consulta la siguiente publicación de Medium. Podría ayudar a medium.com/@vamsi149/…
solver149

Respuestas:


111

Considere el vector donde ε > 0 es pequeño. Las normas l 1 y l 2 de x , respectivamente, están dadas porx=(1,ε)R2ε>0l1l2x

||x||1=1+ε,  ||x||22=1+ε2

Ahora digamos que, como parte de algún procedimiento de regularización, vamos a reducir la magnitud de uno de los elementos de en δ ε . Si cambiamos x 1 a 1 - δ , las normas resultantes sonxδεx11δ

||x(δ,0)||1=1δ+ε,  ||x(δ,0)||22=12δ+δ2+ε2

Por otro lado, reducir en δ da normasx2δ

||x(0,δ)||1=1δ+ε,  ||x(0,δ)||22=12εδ+δ2+ε2

Lo que hay que notar aquí es que, para una penalización de , regularizar el término más grande x 1 da como resultado una reducción mucho mayor en la norma que hacerlo al término más pequeño x 20 . Para el l 1 pena, sin embargo, la reducción es el mismo. Por lo tanto, cuando se penaliza un modelo que utiliza la norma l 2 , es muy poco probable que algo se establezca en cero, ya que la reducción en la norma l 2 que va de ε a 0 es casi inexistente cuando ε es pequeño. Por otro lado, la reducción en l 1l2x1x20l1l2l2ε0εl1la norma siempre es igual a , independientemente de la cantidad penalizada.δ

Otra forma de pensar de la misma: no es tanto que sanciones animan escasez, pero que l 2 sanciones en algún sentido desalentar escasez cediendo rendimientos decrecientes como elementos se mueven más cerca de cero.l1l2


3
¡Gracias por tu respuesta! Sin embargo, no estoy convencido por el último punto. Si ejecuta una regresión lineal no penalizada, casi nunca obtendrá soluciones dispersas (mientras que agregar una penalización L1 a menudo le dará escasez). Por lo tanto, las penalizaciones L1 de hecho fomentan la escasez al enviar coeficientes que comienzan cerca de cero a cero exactamente.
Stefan Wager

2
@StefanWager tal vez sea un poco exagerado, pero creo que es cierto que no hay nada especial sobre la penalización aquí: una penalización l α para cualquier α 1 también inducirá escasez, pero los ves con menos frecuencia en la práctica ( probablemente porque no son convexos). Si realmente solo quiere escasez, entonces una penalización de l 0 (proporcional al número de entradas que no son cero) es el camino a seguir, simplemente sucede que es un poco una pesadilla trabajar con él. l1lαα1l0
bnaul

1
Si eso es correcto. Hay muchas normas que conducen a la escasez (por ejemplo, como mencionó, cualquier norma Lp con p <= 1). En general, cualquier norma con una esquina afilada en cero induce escasez. Entonces, volviendo a la pregunta original: la norma L1 induce la escasez al tener un gradiente discontinuo en cero (y cualquier otra penalización con esta propiedad también lo hará).
Stefan Wager

3
En caso de que alguien quiera leer más, hay una literatura activa sobre funciones de penalización no convexas que son alternativas a la norma L1 (por ejemplo, recientemente, papers.nips.cc/paper/… ).
Stefan Wager

1
gran respuesta, me he estado preguntando por un tiempo hasta que encontré esto.
Hady Elsahar

73

Con un modelo disperso, pensamos en un modelo donde muchos de los pesos son 0. Por lo tanto, razonemos acerca de cómo la regularización L1 es más probable que cree pesos 0.

Considere un modelo que consta de los pesos .(w1,w2,,wm)

Con la regularización L1, penaliza el modelo con una función de pérdida = Σ i | w i | .L1(w)Σi|wi|

Con la regularización L2, penaliza el modelo con una función de pérdida = 1L2(w)12Σiwi2

Si usa el descenso de gradiente, hará que los pesos cambien de forma iterativa en la dirección opuesta del gradiente con un tamaño de paso multiplicado por el gradiente. Esto significa que un gradiente más empinado nos hará dar un paso más grande, mientras que un gradiente más plano nos hará dar un paso más pequeño. Veamos los gradientes (subgradiente en el caso de L1):η

dL1(w)dw=sign(w)sign(w)=(w1|w1|,w2|w2|,,wm|wm|)

dL2(w)dw=w

Si trazamos la función de pérdida y es derivada para un modelo que consta de un solo parámetro, se verá así para L1:

ingrese la descripción de la imagen aquí

Y así para L2:

ingrese la descripción de la imagen aquí

L1w1=0L2

w1=5η=12w1:=w1ηdL1(w)dw=w1121w1=0

ingrese la descripción de la imagen aquí

η=12w1w1:=w1ηdL2(w)dw=w112w1

ingrese la descripción de la imagen aquí

η


3
η=0.5
wfirst step=0.10.5(+1)=>w=0.4
wsecondstep=0.40.5(1)=0.1.

55
@AlexYashin es correcto: si solo actualizamos los pesos basados ​​en la regularización L1, podríamos terminar teniendo pesos que oscilan cerca de 0. Pero nunca usamos la regularización solo para ajustar los pesos. Usamos la regularización en combinación con la optimización de una función de pérdida. De esa manera, la regularización empuja los pesos hacia cero mientras que al mismo tiempo tratamos de llevar los pesos a un valor que optimice las predicciones. Un segundo aspecto es la tasa de aprendizaje. Con una tasa de aprendizaje menor, podemos acercarnos tanto al valor que puede oscilar la regularización que podemos descuidarlo
Kent Munthe Caspersen

1
¿Por qué dL2(w)/dwes 'módulo' y no solo lineal?
mrgloom

1
@mrgloom dL2(w)/dwpuede leerse como el cambio L2(w)por cambio de peso. Dado que la regularización L2 cuadra los pesos, L2(w)cambiará mucho más por el mismo cambio de pesos cuando tengamos pesos más altos. Es por eso que la función es convexa cuando la traza. Sin embargo, para L1, el cambio L1(w)por cambio de peso es el mismo independientemente de cuáles sean sus pesos, esto lleva a una función lineal.
Kent Munthe Caspersen

1
@KentMuntheCaspersen ¡Explicación increíble! ¡Gracias por los gráficos y el esfuerzo que invirtió para hacer esto intuitivo!
Layer

15

La figura 3.11 de Elementos de aprendizaje estadístico de Hastie, Tibshirani y Friedman es muy ilustrativa:ingrese la descripción de la imagen aquí

β^β1β2β^L1L2) regresión respectivamente. Heurísticamente, para cada método, buscamos la intersección de las elipses rojas y la región azul ya que el objetivo es minimizar la función de error mientras se mantiene la viabilidad.

L1


16
La ilustración no es muy convincente sin información adicional. Por ejemplo, ¿por qué deberían ubicarse los contornos del error donde están en la figura?
wabbit

@HrishikeshGanu Eventualmente tuve tiempo para editar la publicación.
Zhanxiong

Todos los contornos tendrán la misma forma ...
kjetil b halvorsen

1
β^β1β2β1=β2

13

β^β^1(β^)<t2(β^)<t

11{x:1(x)1}

En términos más generales, este libro es una buena referencia sobre este tema: tanto explicaciones rigurosas como bien ilustradas, excelentes.


3
Creo que su segundo párrafo es una clave ... al menos para mi intuición: una "bola" l1 es más como un diamante que tiene púas a lo largo de los ejes, lo que significa que un hiperplano obligado a golpear es más probable que tenga un cero en Los ejes.
Wayne

2
β^1212β^

3
El libro es bueno, pero nunca explica de dónde vino y las matemáticas detrás de él.
user13985

2

Una respuesta simple no matemática sería:

Para L2: el término de penalización es cuadrado , por lo que elevar al cuadrado un valor pequeño lo reducirá. No tenemos que ponerlo a cero para lograr nuestro objetivo de obtener un error mínimo cuadrado, lo conseguiremos antes.

Por L1: término de penalización es absoluta , nos podríamos necesitamos ir a cero , ya que hay ningún catalizador para hacer más pequeña pequeña .

Este es mi punto de vista.


No muy convincente para mí.
Tyler 十三 将士 归 玉门

2

Norma L1 vs Norma L2

La imagen muestra las formas del área ocupada por las Normas L1 y L2. La segunda imagen consiste en varios contornos de Pendiente de Gradiente para varios problemas de regresión. En todas las gráficas de contorno, observe el círculo rojo que se cruza con la Norma Ridge o L2. La intersección no está en los ejes. El círculo negro en todos los contornos representa el que interesa la Norma L1 o Lazo. Se cruza relativamente cerca de los ejes. Esto da como resultado que los coeficientes sean 0 y, por lo tanto, la selección de características. Por lo tanto, la norma L1 hace que el modelo sea escaso.

Explicación más detallada en el siguiente enlace: Haga clic en Publicar en Towards Data Science


2β1=1β1=0L1
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.