Bengxy
Little steps lead to great distances.

标签:Paper

How Does Batch Normalization Help Optimization

2018年NIPS的这篇文章[1]主要讲Batch Normalization(BN)为什么能在提升算法效果。

众所周知,在各类场景下BN都能显著提升算法效果,这也是如今BN大行其道的原因。尽管如此,学术界对于BN为什么能提效还未有深刻的探讨。目前流行的观点认为,BN通过控制各个神经网络层的输入分布,从而降低Internal Covariate Shift(ICS)。

而这篇文章证明,让各层输入的分布稳定和BN提效并没有很大的关联。真正让BN起作用的是BN让优化的landscape更加平滑,从而带来了稳定的梯度,允许模型更快收敛。

ICS表示由上一层神经网络带来的输入数据分布的改变。传统上,我们认为ICS降低了模型精度,而BN通过降低ICS来提升training的performance。

关于Optimization Landscape如下图,右侧是更加平滑的梯度曲面,这篇文章[2] 是讲Skip-Connection的,其中的图可以描述光滑曲面的特点。

optimize-landsapce