¿Por qué los pesos más pequeños resultan en modelos más simples en la regularización?

27

Completé el curso de Aprendizaje automático de Andrew Ng hace aproximadamente un año, y ahora estoy escribiendo mi exploración de matemáticas en la escuela secundaria sobre el funcionamiento de la regresión logística y las técnicas para optimizar el rendimiento. Una de estas técnicas es, por supuesto, la regularización.

El objetivo de la regularización es evitar el sobreajuste al extender la función de costos para incluir el objetivo de la simplicidad del modelo. Podemos lograr esto penalizando el tamaño de los pesos agregando a la función de costo cada uno de los pesos al cuadrado, multiplicado por algún parámetro de regularización.

Ahora, el algoritmo de Machine Learning tendrá como objetivo reducir el tamaño de los pesos mientras se mantiene la precisión en el conjunto de entrenamiento. La idea es que llegaremos a algún punto en el medio donde podamos producir un modelo que generalice los datos y no intente incluir todo el ruido estocástico al ser menos complejo.

Mi confusión es ¿por qué penalizamos el tamaño de las pesas? ¿Por qué los pesos más grandes crean modelos más complejos y los pesos más pequeños crean modelos más simples / más suaves? Andrew Ng afirma en su conferencia que la explicación es difícil de enseñar, pero supongo que estoy buscando esta explicación ahora.

De hecho, el profesor Ng dio un ejemplo de cómo la nueva función de costo puede causar que los pesos de las características (es decir, x ^ 3 y x ^ 4) tiendan hacia cero para que se reduzca el grado del modelo, pero esto no crea un completo explicación.

Mi intuición es que los pesos más pequeños tenderán a ser más "aceptables" en entidades con exponentes mayores que aquellas con exponentes más pequeños (porque las entidades con pesos pequeños son como la base de la función). Los pesos más pequeños implican "contribuciones" más pequeñas a las características de alto orden. Pero esta intuición no es muy concreta.

MCKapur
fuente
2
esto suena como una pregunta que necesita una respuesta "para que mi abuela lo entienda".
EngrStudent - Reinstale a Monica el
2
@EngrStudent Porque así es exactamente como necesito presentarlo en mi IA de Matemáticas para que lo lea mi maestro de matemáticas de la escuela secundaria y los examinadores de matemáticas de la escuela secundaria.
MCKapur

Respuestas:

4

Si utiliza la regularización que está no sólo minimizar el en-muestra de error pero OutOfSampleErrorInSamplmimirror+METROoremildoometropagslmiXyotyPAGSminorteunalty.

Más precisamente, para una hipótesishH, dondeλes algún parámetro, generalmenteλ(0,1),mes el número de ejemplos en su conjunto de datos yΩes alguna penalización que depende de los pesosw,Ω=wTw. Esto se conoce como elerror aumentado. Ahora, solo puede minimizar la función anterior si los pesos son bastante pequeños.Junatusol(h(X),y,λ,Ω)=J(h(X),y)+λ2metroΩhHλλ(0 0,1)metroΩwΩ=wTw

Aquí hay un código R para jugar

w <- c(0.1,0.2,0.3)
out <- t(w) %*% w
print(out)

Entonces, en lugar de penalizar todo el espacio de hipótesis , penalizamos cada hipótesis h individualmente. A veces nos referimos a la hipótesis h por su vector de peso w .Hhhw

En cuanto a por qué los pesos pequeños van junto con la baja complejidad del modelo, veamos la siguiente hipótesis: . En total tenemos tres parámetros de peso activo w 1 , ... , w 3 . Ahora, establezcamos w 3 en un valor muy muy pequeño, w 3 = 0 . Esto reduce la complejidad del modelo a: hh1(X)=X1×w1+X2×w2+X3×w3w1,...,w3w3w3=0 0 . En lugar de tres parámetros de peso activo, solo tenemos dos restantes.h1(X)=X1×w1+X2×w2

JimBoy
fuente
1
Obviamente, si un peso se reduce a cero, la complejidad del modelo se reduce ya que puede eliminar un término y, por lo tanto, una operación computacional. Pero esto no ayuda a explicar por qué la complejidad del modelo se reduce a medida que el valor del peso se acerca a cero. ¿Alguien puede explicar eso con palabras, no con fórmulas?
greg7gkb
6

No estoy seguro de saber realmente de qué estoy hablando, pero lo intentaré. No es tanto tener pesos pequeños lo que evita el sobreajuste (creo), es más el hecho de que regularizar reduce más el espacio del modelo. De hecho, puede regularizar alrededor de 10000000 si lo desea tomando la norma L2 de sus valores X menos un vector de 10000000. Esto también reduciría el sobreajuste (por supuesto, también debería tener alguna razón para hacerlo (es decir, tal vez sus valores Y sean 10000000 veces más grandes que la suma de sus valores X, pero nadie realmente lo hace porque solo puede cambiar la escala de los datos).

El sesgo y la varianza son una función de la complejidad del modelo. Esto está relacionado con la teoría de CV así que fíjate en eso Cuanto mayor sea el espacio de modelos posibles (es decir, valores que todos sus parámetros pueden tomar básicamente), es más probable que el modelo se sobreajuste. Si su modelo puede hacer todo, desde ser una línea recta hasta moverse en todas las direcciones, como una onda sinusoidal que también puede subir y bajar, es mucho más probable que detecte y modele perturbaciones aleatorias en sus datos que no son el resultado del señal subyacente, pero el resultado de la casualidad en ese conjunto de datos (esta es la razón por la cual obtener más datos ayuda a sobreajustar, pero no a adaptar)

Cuando regularizas, básicamente estás reduciendo el espacio del modelo. Esto no significa necesariamente que las funciones más suaves / planas tengan un mayor sesgo y menos varianza. Piense en un modelo lineal que se superpone con una onda sinusoidal que está restringida a tener oscilaciones de amplitud realmente pequeñas que básicamente no hace nada (es básicamente una línea difusa). Esta función es súper ondulada en cierto sentido, pero solo se adapta un poco más que una regresión lineal. La razón por la cual las funciones más suaves / planas tienden a tener un mayor sesgo y menos varianza es porque nosotros, como científicos de datos, suponemos que si tenemos un espacio de muestra reducido, preferiríamos que la maquinilla de afeitar de occam mantenga los modelos más suaves y simples y desechemos los modelos que son ondulantes y oscilantes por todo el lugar. Tiene sentido tirar primero modelos ondulados,

La regularización, como la regresión de crestas, reduce el espacio del modelo porque hace que sea más costoso estar más lejos de cero (o cualquier número). Por lo tanto, cuando el modelo se enfrenta a la opción de tener en cuenta una pequeña perturbación en sus datos, es más probable que se equivoque del lado de no, porque eso (en general) aumentará el valor de su parámetro. Si esa perturbación se debe a una posibilidad aleatoria (es decir, una de sus variables x tuvo una ligera correlación aleatoria con sus variables y), el modelo no tendrá eso en cuenta frente a una regresión no regularizada porque la regresión no regularizada no tiene ningún costo asociado con Aumento de los tamaños beta. Sin embargo, si esa perturbación se debe a una señal real, es más probable que su regresión regularizada la pierda, por lo que tiene un mayor sesgo (y por qué hay una compensación de sesgo de varianza).

www3
fuente
¡Gracias por su atenta respuesta! Entonces sí, en el cuarto párrafo usted dice "Así, cuando el modelo se enfrenta a la opción de tener en cuenta una pequeña perturbación en sus datos, es más probable que se equivoque del lado de no, porque eso (generalmente) aumentará su parámetro valor.". Esto es lo que pregunto en concreto por qué este es el caso. ¡Gracias!
MCKapur
Al agregar un factor de penalización, es menos probable que el modelo tenga betas más altas, por lo tanto, el espacio de su modelo es más pequeño. La otra cosa para recordar es que si su modelo es todo ruido, es probable que tenga una pendiente cero ya que no hay correlación (esto fue algo en lo que no pensé al hacer mi argumento ondulado / plano, pero creo que el argumento sigue siendo generalmente verdad). Por lo tanto, si hay una relación / perturbación, es probable que aumente la beta. Por lo tanto, la regularización penaliza este hecho y evita que la regresión se ajuste a esas perturbaciones, ya sea señal o ruido.
www3
@ ww3 lo entiendo. Pero, ¿por qué las betas más grandes resultan en un espacio modelo más alto?
MCKapur
No estoy seguro si necesitas esto más, pero pensé que respondería. No son las grandes versiones beta las que importan. Por ejemplo, puede realizar una regresión con Y o 1000 * Y cada uno tendrá la misma complejidad, pero las versiones beta serán 1000 más altas en el segundo caso. La regularización típica hace que sea más difícil lograr ciertas combinaciones beta, como que un coeficiente sea 1000 y otro -1000, y otros que sean más planos / simples como todos los 0s más fáciles. Esto significa que si su modelo tiene ciertas peculiaridades ruidosas de los datos, es menos probable que el modelo regularizado lo recoja.
www3
Para continuar, el modelo no ignorará todas las peculiaridades ruidosas, solo ignorará las peculiaridades que aumentan los valores absolutos de las versiones beta. Esto significa que las peculiaridades que reducen los valores de las versiones beta serán más enfatizadas. Sin embargo, esto está bien porque hay muchas más líneas onduladas que puedes dibujar que líneas rectas (es decir, compara una ecuación cuadrática con una ecuación lineal o constante). Por lo tanto, si hay peculiaridades ruidosas que afectan los datos, es mucho más probable que hagan que un modelo se ajuste a un modelo más ondulado (y, por lo tanto, más complejo) que un modelo más plano / más recto.
www3
3

Historia:
mi abuela camina, pero no sube. Algunas abuelas lo hacen. Una abuela era famosa por escalar el Kilimanjaro .

Ese volcán inactivo es grande. Está a 16,000 pies sobre su base. (No odies mis unidades imperiales). También tiene glaciares en la parte superior, a veces.

Si subes en un año donde no hay glaciar y llegas a la cima, ¿es la misma cima que si hubiera un glaciar? La altitud es diferente. El camino que debes tomar es diferente. ¿Qué pasa si vas a la cima cuando el grosor del glaciar es mayor? ¿Eso lo hace más un logro? Alrededor de 35,000 personas intentan escalarlo cada año, pero solo 16,000 lo logran.

Aplicación:
Entonces explicaría el control de los pesos (también conocido como minimizar la complejidad del modelo) a mi abuela, de la siguiente manera:

Abuela, tu cerebro es un pensador increíble, lo sepas o no. Si te pregunto cuántos de los 16,000 que piensan que llegaron a la cima realmente lo hicieron, dirías "todos".

Si pongo sensores en los zapatos de todos los 30,000 escaladores, y mido la altura sobre el nivel del mar, entonces algunas de esas personas no llegaron tan alto como otros, y podrían no calificar. Cuando hago eso, voy a un modelo constante: digo que si la altura no es igual a un percentil de las alturas máximas medidas, entonces no es la parte superior. Algunas personas saltan a la cima. Algunas personas simplemente cruzan la línea y se sientan.

Podría agregar latitud y longitud al sensor, y ajustar algunas ecuaciones de orden superior y tal vez podría obtener un mejor ajuste, y tener más gente, tal vez incluso exactamente el 45% del total de personas que lo intentan.

Entonces, digamos que el próximo año es un año de "gran glaciar" o "no glaciar" porque algún volcán realmente transforma el albedo de la tierra. Si tomo mi modelo complejo y exigente de este año y lo aplico a las personas que escalen el próximo año, el modelo tendrá resultados extraños. Tal vez todos "pasen" o incluso estén demasiado altos para pasar. Tal vez nadie pasará, y pensará que nadie realmente completó la escalada. Especialmente cuando el modelo es complejo, tenderá a no generalizarse bien. Puede ajustarse exactamente a los datos de "capacitación" de este año, pero cuando llegan nuevos datos se comporta mal.

Discusión:
cuando limita la complejidad del modelo, generalmente puede tener una mejor generalización sin un ajuste excesivo. El uso de modelos más simples, los que están más construidos para adaptarse a la variación del mundo real, tiende a dar mejores resultados, todo lo demás es igual.

Ahora tiene una topología de red fija, por lo que dice "mi recuento de parámetros es fijo": no puedo tener variaciones en la complejidad del modelo. Disparates. Mide la entropía en los pesos. Cuando la entropía es mayor, significa que algunos coeficientes conllevan sustancialmente más "informatividad" que otros. Si tiene una entropía muy baja, significa que, en general, los coeficientes tienen niveles similares de "informatividad". La información no es necesariamente algo bueno. En una democracia, se quiere que todas las personas sean iguales, y cosas como George Orwell "más iguales que otras" es una medida de fallas del sistema. Si no tiene una buena razón para ello, desea que los pesos sean bastante similares entre sí.

En una nota personal: en lugar de usar vudú o heurística, prefiero cosas como "criterios de información" porque me permiten obtener resultados confiables y consistentes. AIC , AICc y BIC son algunos puntos de partida comunes y útiles. Repetir el análisis para determinar la estabilidad de la solución o el rango de resultados de criterios de información es un enfoque común. Uno podría considerar poner un techo a la entropía en los pesos.

EngrStudent - Restablece a Monica
fuente
2
Interesantemente diferente. El rincón de Pedant: escribiste "Orson Wells". La ortografía es Welles. Sospecho que siempre quisiste decir George Orwell ( Animal Farm ).
Nick Cox
@ NickCox - He estado muy enfermo. Mi cerebro no funciona tan bien como deseaba. Orwell lo fue.
EngrStudent - Restablece a Mónica el
Quiero entender por qué la complejidad del modelo puede variar con un número fijo de parámetros (la idea de su penúltimo párrafo), y no tengo suerte buscando en Google "entropía de parámetros" o "entropía de parámetros ols". ¿Usó el concepto de entropía porque se ajusta bien o es el nombre real y ampliamente conocido de una propiedad de los parámetros del modelo? Gracias por adelantado.
Alvaro Fuentes
1
@AlvaroFuentes - La entropía, en este sentido, proviene de la teoría de la información. Aquí está el artículo de wikipedia. Piense en los pesos como una lista, y puede calcular la entropía del sistema de todos los pesos, utilizando un método de núcleo para aproximar la densidad de probabilidad. Podrías observar la entropía media por neurona para comparar entre neuronas a una escala más alta.
EngrStudent - Restablece a Monica el
0

Una intuición simple es la siguiente. Recuerde que para la regularización, las características deben estandarizarse para tener aprox. La misma escala.

Digamos que la función de minimización es solo la suma de los errores al cuadrado:

SSmi

SSmiSSmi

Ahora considere la regularización, LASSO en este caso. Las funciones a minimizar son entonces

SSmi+λΣEl |βEl |

Agregar una función adicional ahora resulta en una penalización adicional: ¡la suma de los coeficientes absolutos se hace más grande! La reducción en SSE debería superar la penalización adicional agregada. Ya no es posible agregar funciones adicionales sin costo.

La combinación de la estandarización de características y la penalización de la suma de los coeficientes absolutos restringe el espacio de búsqueda, lo que conduce a un menor ajuste.

Ahora LASSO:

SSmi+λΣEl |βEl |

tiende a poner los coeficientes a cero, mientras que la regresión de cresta:

SSmi+λΣβ2

tiende a reducir los coeficientes proporcionalmente. Esto puede verse como un efecto secundario del tipo de función de penalización. La siguiente imagen ayuda con esto:

ingrese la descripción de la imagen aquí

La función de penalización de regularización en la práctica proporciona un 'presupuesto' para los parámetros, como se muestra arriba en el área cian.

SSmi

Foto tomada de https://onlinecourses.science.psu.edu/stat857/node/158

Resumiendo: la regularización penaliza la adición de parámetros adicionales, y dependiendo del tipo de regularización reducirá todos los coeficientes (cresta), o establecerá un número de coeficientes a 0 mientras mantiene los otros coeficientes hasta donde el presupuesto lo permita (lazo)

spdrnl
fuente
1
Simplemente está explicando la diferencia entre el lazo y la regresión de cresta, pero la pregunta es acerca de la razón por la cual la regularización conduce a una menor complejidad.
Sobi
Lea esta sección: "Agregar una función adicional ahora da como resultado una penalización adicional: ¡la suma de los coeficientes absolutos aumenta! La reducción en SSE debería superar la penalización adicional. Ya no es posible agregar funciones adicionales sin costo".
spdrnl
L1λλL2
La esencia es que el tipo de penalización por agregar parámetros va a afectar los parámetros de diferentes maneras. En la práctica, obtienes un modelo con parámetros que se ajustan a los datos de entrenamiento menos precisos: ese era el objetivo.
spdrnl
0

Al agregar ruido guasiano a la entrada, el modelo de aprendizaje se comportará como un regularizador de penalización L2.

Para ver por qué, considere una regresión lineal donde se agregue ruido iid a las características. La pérdida ahora será una función de los errores + contribución de la norma de pesos.

ver derivación: https://www.youtube.com/watch?v=qw4vtBYhLp0

Hanan Shteingart
fuente
0

Recuerdo que en una clase universitaria, mi maestro dijo que penalizar parámetros grandes puede reducir el sobreajuste porque evita que el modelo ponga demasiado peso en las características específicas de los datos, lo que provoca un sobreajuste ya que el modelo solo recuerda algunas características específicas de los datos y lo relaciona con la etiqueta en lugar de tratar de aprender reglas generales.

rongzzz
fuente