In 2014, training a deep neural network was a delicate art. Choose the learning rate too high and the network explodes; too low and it crawls. Stack more than a dozen layers and activations either vanish toward zero or blow up toward infinity. Practitioners spent days tuning, and even then results could be fragile.
Then in 2015, Sergey Ioffe and Christian Szegedy published a single idea that changed the field overnight: batch normalization (BatchNorm). The concept is almost embarrassingly simple — before passing activations to the next layer, normalize them to have zero mean and unit variance across the current mini-batch. Add two learned parameters (scale and shift ) so the network can undo the normalization if needed, and you're done.
The effects were startling. Networks trained 10 to 14 times faster. Learning rates could be set much higher without divergence. The painful sensitivity to weight initialization largely disappeared. And as a bonus, the networks generalized better — BatchNorm acts as a regularizer, often letting you reduce or remove dropout entirely.
Understanding why BatchNorm works so well touches on a surprising tension: a technique invented for practical engineering reasons turned out to reshape the loss landscape in ways that make optimization fundamentally easier.
Comments
Loading comments...