Comparación de LN y BN

Documento de LN: https://arxiv.org/pdf/1607.06450.pdf

Se utilizan dos métodos de normalización diferentes en las arquitecturas cnn y transformer Comprender la diferencia entre los dos nos ayudará a profundizar nuestra comprensión del modelo de aprendizaje profundo.

1. La diferencia entre los dos diagramas

LN : Normalización de capa, LN es "horizontal" y se normaliza entre diferentes neuronas para una muestra.

BN : Normalización de lotes, BN es "vertical", y cada dimensión está normalizada, por lo que tiene una relación con el tamaño del lote.

El propósito de ambos es acelerar la convergencia del modelo y reducir el tiempo de entrenamiento.

2. BN resuelve el problema de desplazamiento convariable en la red

Batch Normalization (Bactch Normalization, BN) nació para superar la dificultad del entrenamiento debido a la profundización de la red neuronal. A medida que la profundidad de la red neuronal se profundiza, se vuelve cada vez más difícil de entrenar y la velocidad de convergencia es muy lenta. , que a menudo conduce a problemas de dispersión de gradiente (problema de gradiente de fuga).

Existe una suposición clásica en el aprendizaje automático estadístico : la distribución de datos del Dominio de origen y el Dominio de destino son consistentes. Es decir, los datos de entrenamiento y los datos de prueba satisfacen la misma distribución. Esta es una garantía básica de que el modelo obtenido a través de los datos de entrenamiento puede lograr buenos resultados en el conjunto de prueba.
Cambio convariable significa que cuando los datos de muestra del conjunto de entrenamiento y la distribución del conjunto de muestra de destino son inconsistentes, el modelo entrenado no se puede generalizar bien. Es un problema de rama bajo el supuesto de una distribución inconsistente, es decir, las probabilidades condicionales del Dominio Sorce y el Dominio Target son consistentes, pero sus probabilidades marginales son diferentes. De hecho, para la salida de cada capa de la red neuronal, después de la operación intracapa, la distribución de salida de cada capa será diferente de la distribución de la señal de entrada correspondiente, y la diferencia aumentará a medida que aumente la profundidad de la red, pero cada capa La etiqueta señalada permanece sin cambios.

Solución : Generalmente, se hace una corrección a las muestras de entrenamiento de acuerdo con la relación entre las muestras de entrenamiento y las muestras de destino. Por lo tanto, al introducir Bactch Normalization para estandarizar la entrada de algunas capas o todas las capas, se fijan la media y la varianza de la información de entrada de cada capa.

Método: La Normalización Bactch se usa generalmente antes del mapeo no lineal (función de activación) para estandarizar x=Wu+b, de modo que el valor medio del resultado (cada dimensión de la señal de salida) sea 0 y la varianza sea 1. Dejar que la entrada de cada capa tenga una distribución estable facilitará el entrenamiento de la red.

Ventajas: Bactch Normalization permite distribuir la función de activación en un intervalo lineal a través de la estandarización, como resultado se aumenta el gradiente y el modelo es más audaz para realizar descenso de gradiente, tiene las siguientes ventajas:

  • Aumente el tamaño del paso de búsqueda para acelerar la velocidad de convergencia;
  • Más fácil de saltar fuera de los mínimos locales;
  • Destruye la distribución de datos original, alivia el sobreajuste hasta cierto punto

Por lo tanto, puede intentar usar Bactch Normalization para resolver la situación en la que la velocidad de convergencia de la red neuronal es muy lenta o la explosión de gradiente (Gradient Explore) no se puede entrenar.

3. Defectos de BN

1. BN está estandarizado en cada dimensión de la muestra del tamaño del lote, por lo que cuanto mayor sea el tamaño, se pueden obtener μ y σ más razonables para la normalización, por lo que BN depende más del tamaño del tamaño.
2. Durante el entrenamiento, el modelo se llena por lotes, pero al predecir, si solo hay una muestra o una pequeña cantidad de muestras para la inferencia, obviamente es muy sesgado usar BN en este momento, como escenarios de aprendizaje en línea.
3. RNN es una red dinámica, es decir, los cambios de tamaño, que pueden ser grandes o pequeños, dan como resultado que las dimensiones de múltiples muestras no se puedan alinear, por lo que no es adecuado usar BN.

4. Ventajas aportadas por LN:

1. La normalización de capas es la estandarización interna de cada muestra, que no tiene nada que ver con el tamaño y no se ve afectada por él.
2. El LN en la RNN no se ve afectado y la estandarización interna se hace sola, por lo que la aplicación del LN es más amplia.

Supongo que te gusta

Origin blog.csdn.net/m0_53675977/article/details/129894259
Recomendado
Clasificación