¿Por qué la normalización media ayuda en el descenso del gradiente?

Geoffrey Hinton dio una buena respuesta a esto en la clase 6-2 de su clase de Redes Neurales en Coursera. Esta respuesta se dirigirá principalmente a cómo la escala de entrada afecta a una red neuronal o modelo de regresión logística.

Esencialmente, escalar las entradas (a través de la normalización media, o puntaje z) le da a la superficie de error una forma más esférica, donde de lo contrario sería una elipse de curvatura muy alta. Dado que el descenso del gradiente ignora la curvatura, tener una superficie de error con alta curvatura significará que tomamos muchos pasos que no necesariamente están en la dirección óptima. Cuando escalamos las entradas, reducimos la curvatura, lo que hace que los métodos que ignoran la curvatura (como el descenso de gradiente) funcionen mucho mejor. Cuando la superficie de error es circular (esférica), el gradiente apunta al mínimo, por lo que el aprendizaje es fácil.

El problema es cuando tiene características con diferentes escalas. Una técnica de optimización de uso común, como el descenso de gradiente, utiliza el producto de la tasa de aprendizaje multiplicado por el gradiente de la función de costo como el tamaño del paso. Como resultado, cuando las características tienen escalas diferentes, el tamaño del paso puede ser diferente para cada característica. Cuando pruebe diferentes tasas de aprendizaje, encontrará que 1) la tasa de aprendizaje es demasiado pequeña y tomará mucho tiempo converger, o 2) la tasa de aprendizaje es demasiado grande para una o más características, y nunca converge.

Una alternativa es normalizar las características restando la media y dividiendo por su desviación estándar. En este caso, el tamaño del paso es equivalente para todas las funciones, lo que permite alcanzar la solución óptima más rápido. La normalización cambia la forma de la función de costo, permitiendo un camino directo hacia su mínimo. También podrá utilizar una mayor tasa de aprendizaje para alcanzar su convergencia; por lo tanto, reduciendo el número de pasos requeridos.

Aquí hay dos publicaciones de blog que muestran con más detalle los efectos de normalizar versus no normalizar las características de entrada. Específicamente, mire la Figura 4 de la Parte 2.

https://www.robertoreif.com/blog

https://www.robertoreif.com/blog

Cuando las diferentes características están en diferentes escalas, ciertos pesos pueden actualizarse más rápido que otros, ya que las características mismas influyen en la actualización de los pesos. El uso de la normalización media lleva todas las características a la misma escala y esto a veces puede mejorar la convergencia.

En el descenso de gradiente, estamos mirando la dirección que lleva a la solución óptima. Qué efectos de normalización es el tamaño del paso. Los datos teóricamente normalizados no garantizan una convergencia más rápida, pero en la práctica para ciertas funciones de costo, la normalización es efectiva

More Interesting

¿Cómo entrenamos redes neuronales en imágenes en lugar de datos numéricos?

Inferencia bayesiana: si tuviera que trazar un millar de correos electrónicos basados ​​en "spaminess" utilizando un algoritmo simple de Naive Bayes para establecer la probabilidad de "spaminess" para el eje x, ¿cuál debería ser mi eje y?

¿Cuál es una buena manera de entender la pérdida de Minkowski con una configuración diferente?

¿Cómo es tomar 9.520 (teoría de aprendizaje estadístico) en el MIT?

¿Cuál es la diferencia entre una cadena de Markov recurrente y una cadena de Markov absorbente?

¿Es posible engañar a un automóvil autónomo para interpretar una señal de alto (como lo percibe el ojo humano) como una señal de velocidad?

¿Cuál es el propósito de usar más de una capa convolucional en una red neuronal convolucional?

¿Qué trabajo puede hacer un ingeniero de aprendizaje automático para ayudar a las personas?

¿Qué pasos de procesamiento previo recomendaría para un aprendizaje automático exitoso en un conjunto de datos MNIST?

¿Se pueden usar las redes neuronales para resolver problemas de aprendizaje no supervisados?

¿Cómo se hace la inferencia en una red neuronal con capas de normalización por lotes?

Cómo comprender mejor las funciones de activación en el aprendizaje automático, especialmente las matemáticas detrás de ellas

Quiero pasar el tiempo dado para el proyecto del último año para aprender ML. ¿Cómo empiezo?

Cómo elegir un algoritmo de aprendizaje automático

¿Es posible realizar el aprendizaje en conjunto mediante el apilamiento si solo tengo dos modelos?