BN的性能是否源于控制ICS问题?
- 论文认为,BatchNorm 通过稳定每一层输入分布的均值和方差来提升训练性能。
- How Does Batch Normalization Help Optimization?质疑这一观点,并设计实验验证
- 实验设计
- 在 BatchNorm 层后添加随机噪声,噪声的均值和方差在每个时间步都变化。
- 这种噪声会引入严重的 协变量偏移(covariate shift),导致每一层的输入分布极其不稳定。
- 性能表现
- 带有 BatchNorm 的模型和带有“噪声”BatchNorm 的模型性能几乎相同,且都显著优于标准网络。
- 分布稳定性
- 在 BatchNorm 层后添加噪声会引入严重的分布不稳定性,即每一层的输入分布在每个时间步都发生显著变化。但即使如此,“噪声”BatchNorm 网络仍然能够训练并表现良好。
- 然而在标准网络上添加相同噪声会导致网络完全无法训练。
- 结论
- BatchNorm 的性能提升 不依赖于输入分布的稳定性,因为即使在分布极不稳定的情况下,BatchNorm 仍然表现良好。

进一步扩展ICS的定义
内部协变量偏移(Internal Covariate Shift, ICS) 与训练性能并不直接相关,至少如果我们将 ICS 与输入分布的均值和方差的稳定性联系起来的话。然而,人们可能会想:是否存在一种更广泛的内部协变量偏移概念,与训练性能有直接联系?如果存在,BatchNorm 是否确实减少了这种偏移?
全新的ICS定义
新的 ICS 定义不再局限于输入分布的统计特性,而是 通过梯度的变化来量化跨层依赖对训练的影响。具体定义如下:
- $L$ 为损失函数。
- $W_1^{(t)}, \ldots, W_k^{(t)}$ 为时间步 $t$ 时每一层的参数。
- $(x^{(t)}, y^{(t)})$ 为时间步 $t$ 时用于训练网络的输入-标签对批次。
定义 第 $i$ 层的 ICS 为:
$$\text{ICS}_{t,i} = ||G_{t,i} - G’_{t,i}||_{2}$$
其中: $$G_{t,i} = \nabla_{W_i^{(t)}} L(W_1^{(t)}, \ldots, W_k^{(t)}; x^{(t)}, y^{(t)})$$ $$G’_{t,i} = \nabla_{W_i^{(t)}} L(W_1^{(t+1)}, \ldots, W_{i-1}^{(t+1)}, W_i^{(t)}, W_{i+1}^{(t)}, \ldots, W_k^{(t)}; x^{(t)}, y^{(t)})$$
$G_{t,i}$ 的含义
$G_{t,i}$ 是 在第 $i$ 层参数 $W_i^{(t)}$ 处的梯度,计算方式是 所有层的参数同时保持当前值(即 $W_1^{(t)}, \ldots, W_k^{(t)}$)。它表示在当前状态下,第 $i$ 层的参数如何更新以最小化损失。
$G’_{t,i}$ 的含义
$G’{t,i}$ 是 在第 $i$ 层参数 $W_i^{(t)}$ 处的梯度,但计算方式是 所有前一层参数已经更新为新的值(即 $W_1^{(t+1)}, \ldots, W{i-1}^{(t+1)}$),而后面的层参数仍保持当前值(即 $W_i^{(t)}, W_{i+1}^{(t)}, \ldots, W_k^{(t)}$)。它表示在前一层参数更新后,第 $i$ 层的参数如何更新以最小化损失。
ICS 的物理意义
- $||G_{t,i} - G’_{t,i}||_2$ 量化了跨层依赖的影响:它反映了由于前一层参数更新,第 $i$ 层的优化任务发生了多大变化。
- 如果 $G_{t,i}$ 和 $G’_{t,i}$ 差异很大,说明前一层参数更新对第 $i$ 层的优化任务产生了显著影响,即 跨层依赖较强。
- 如果 $G_{t,i}$ 和 $G’_{t,i}$ 差异很小,说明前一层参数更新对第 $i$ 层的优化任务影响较小,即 跨层依赖较弱。
与传统 ICS 的区别
- 传统 ICS:
- 关注的是 输入分布的均值和方差的变化。
- 认为分布的不稳定性会影响训练性能。
- 新的 ICS:
- 关注的是 优化任务的变化,特别是梯度的变化。
- 通过梯度的差异量化跨层依赖的影响,直接反映了优化过程的稳定性。
为什么新的 ICS 更有意义?
- 更直接反映优化过程:
- 训练的核心是优化,梯度的变化直接反映了优化的稳定性。
- 新的 ICS 从优化角度捕捉了跨层依赖的影响,比传统 ICS 更贴近训练的本质。
- 更广泛的应用性:
- 传统的 ICS 依赖于输入分布的统计特性,可能无法解释一些现象(如 BatchNorm 的成功)。
- 新的 ICS 通过梯度变化定义了 ICS,适用于更广泛的场景。
- 更深入的机制分析:
- 新的 ICS 揭示了跨层依赖对优化任务的影响,为理解深度网络的优化机制提供了新的视角。
新定义下,BN也并未减少ICS
- 在新的 ICS 定义中,ICS 被量化为梯度在参数更新前后的差异,经过实验发现
- BN 并未减少 ICS:
- 通过实验发现,带有 BN 的网络通常表现出更高的 ICS,即 𝐺𝑡,𝑖和 𝐺𝑡,𝑖′ 的差异更大。
- 这表明,BN 并未减少跨层依赖对优化任务的影响,甚至可能增加这种影响。
- BN 仍显著提升性能:
- 尽管 ICS 增加,但 BN 网络在训练性能(如损失下降速度、最终精度)上仍显著优于标准网络。
- 这说明 BN 的成功 并非通过减少 ICS 实现,而是通过其他机制。
BN的功效可能来自于平滑了损失平面
论文中的结论是BN的作用是平滑了损失平面(loss landscape),损失平面长这样

实验显示作者认为BN和残差网络对损失平面平滑的效果类似
