NIPS 2018 | MIT新研究参透批归一化原理
选自arXiv,机器之心编译,作者:Shibani Santurkar 等,参与:李诗萌、路。
批归一化(BatchNorm)是一种广泛采用的技术,用于更快速、更稳定地训练深度神经网路(DNN)。尽管应用广泛,但我们并不了解 BatchNorm 有效的确切原因。很多人认为 BatchNorm 的成功与内部协方差偏移有关,但 MIT 的这项研究发现二者并无关系。研究者证明 BatchNorm 以一种基础的方式影响著网路的训练:它使相关优化问题的解空间更平滑了。这确保梯度更具预测性,从而允许使用更大范围的学习率,实现更快的网路收敛。该研究提供这些发现的经验性证明和理论依据。该论文已被 NIPS 2018 接收。
引言
在过去十年间,深度学习在计算机视觉、语音识别、机器翻译以及游戏等诸多困难任务中取得了令人瞩目的进展。这些进展依赖于硬体、数据集以及演算法和架构技术等方面的重大突破。这些突破中最突出的例子是批归一化(BatchNorm)[10]。
BatchNorm 是一种通过稳定层输入的分布来改善神经网路训练的方法。它是通过引入额外的网路层来实现的,引入的层控制这些分布的前两个 moment(平均值和方差)。
BatchNorm 在实际应用中取得的成功无可争议。目前无论是研究领域(超过 6000 次引用)还是在现实世界的设置中,大多数深度学习模型都默认使用 BatchNorm。令人震惊的是,尽管它很突出,但我们对 BatchNorm 的原理仍然知之甚少。事实上,现在有一些工作提供了 BatchNorm 的替代方案 [1, 3, 13, 31],但它们都没能让我们更多地理解这个问题。(最近 [22] 也提出了类似观点。)
目前,对 BatchNorm 的成功和原始动机最为人所接受的解释与内部协方差偏移(ICS)相关。通俗而言,ICS 指之前层的更新对层输入分布造成的改变。据推测,这样的连续变化会对训练产生消极影响。BatchNorm 的目标是减少 ICS,从而弥补该负面影响。
虽然这种解释被广泛接受,但似乎也没什么具体的证据可以支持这一论断。尤其是,我们尚不了解 ICS 和训练性能之间的联系。本文的主要目标是解决所有这些不足之处,该研究也带来了一些惊人的发现。
本文的贡献。该研究的出发点是证明 BatchNorm 的性能增益和内部协方差偏移的减少之间没有任何联系,或者说这种联系非常脆弱。事实上,研究发现在某种意义上,BatchNorm 甚至可能不会减少内部协方差偏移。
之后研究者将注意力转向确定 BatchNorm 成功的原因上。具体而言,研究者证明 BatchNorm 以一种基础的方式影响著网路的训练:它使相关优化问题的解空间更平滑了。这确保梯度更具预测性,从而允许使用更大范围的学习率,实现更快的网路收敛。该研究提供这些发现的经验性证明和理论依据。该研究证明了,在自然条件下,有 BatchNorm 的模型改善了损失和梯度的 Lipschitzness(也称为 β 平滑)。
最后我们发现,这种平滑效果并不与 BatchNorm 唯一相关。其他一些自然归一化技术都有相似的效果(有时甚至更强)。即这些方法都提供了类似的训练性能提升。
我们认为,理解 BatchNorm 这样的基本技术的原理可以使我们更好地理解神经网路训练的潜在复杂性,并进一步促进演算法的进步。
批归一化和内部协方差偏移
尽管 BatchNorm 在深度学习中具有基础性和广泛性,但我们对 BatchNorm 成功的原因还知之甚少 [22]。本研究的目的是解决这一问题。为此,我们先研究了 ICS 和 BatchNorm 之间的联系。具体而言,我们先在 CIFAR-10 [15] 上分别训练了带 BatchNorm 和不带 BatchNorm 的标准 VGG 架构。如我们所料,图 1(a)和(b)表明用 BatchNorm 训练的网路在优化和泛化性能上都取得了显著的改善。但图 1(c)则呈现出了令人惊讶的发现。在这张图中,我们通过绘制训练中随机输入的分布(按批次)可视化了 BatchNorm 可以在多大程度上稳定层输入的分布。令人惊讶的是,有和没有 BatchNorm 的网路的分布稳定性之间的差异(均值和方差的变化)微乎其微。这就提出了以下问题:
(1)BatchNorm 的效果是否和内部协方差偏移相关?
(2)BatchNorm 的层输入分布的稳定性是否可以有效减少 ICS?