mediumDeep Learning & Neural NetworksReviewed Jul 24, 2026

What is batch normalization and why does it help training?

Batch normalization normalizes a layer's inputs within each mini-batch to have roughly zero mean and unit variance, then rescales with two learnable parameters (gamma and beta) so the layer can recover any needed distribution. It helps by stabilizing the distribution of activations across layers as weights change during training, which lets you use higher learning rates and makes optimization smoother and faster to converge. It also adds mild regularization because each example's normalization depends on the random batch it lands in, injecting noise. At inference time it uses running averages of mean and variance collected during training rather than batch statistics. A caveat: it behaves poorly with very small batch sizes, where layer normalization or group normalization is often preferred, and it interacts subtly with dropout, so ordering matters.

batch-normalizationtrainingregularization

More Deep Learning & Neural Networks questions

See all Deep Learning & Neural Networks questions →