El documento oficial
tiene una comprensión detallada de la capa BN:
Problemas que pueden ocurrir en el uso de la capa BatchNorm de Pytorch
class torch.nn.BatchNorm2d(num_features, eps=1e-05, momentum=0.1, affine=True)[source]
Operación de normalización de lotes en entrada 4d compuesta de datos 3d de mini lotes
En cada minilote de datos, calcule la media y la desviación estándar de cada dimensión de entrada. gamma y beta son vectores de parámetros aprendibles de tamaño C (C es el tamaño de entrada)
Durante el entrenamiento, esta capa calcula la media y la varianza de cada entrada y realiza una media móvil. El valor de impulso predeterminado para la media móvil es 0,1.
En el momento de la validación, la media/varianza de entrenamiento se utiliza para normalizar los datos de validación.
parámetro:
- num_features: el número de características de la entrada esperada de tamaño 'batch_size x num_features x height
- x ancho' eps: Para asegurar la estabilidad numérica (el denominador no puede aproximarse o tomar 0), el valor se suma al denominador. El valor predeterminado es 1e-5. impulso:
El impulso utilizado para la media dinámica y la varianza dinámica. El valor predeterminado es 0.1. - afín: un valor booleano, cuando se establece en verdadero, agrega parámetros de transformación afín que se pueden aprender a esta capa. Forma:
- Entrada: (N, C, H, W) - Salida: (N, C, H, W) (igual para entrada y salida)