← 返回题目列表

残差连接为什么能帮助训练深层网络?

中等 第 16 / 25 题 更新于 2026/09/19
深度学习机器学习面试题模型训练

简化版

残差连接把子层输出写成 y=x+F(x),为信息和梯度提供恒等捷径,使深层网络更容易学习接近恒等的变换。相加要求形状一致;通道或分辨率改变时需投影,且归一化位置决定梯度主路径。

详细版

  • 残差学习的是相对输入的修正,而非从头重建完整映射。

  • 反向梯度包含一条系数为 1 的直接路径,可缓解深层退化。

  • 捷径不是保证梯度永不消失,F 分支和非线性仍可能不稳定。

  • shape 不同可用 1×1 stride 投影,但这条捷径不再是纯恒等。

  • Transformer Pre-LN 与 Post-LN 的训练稳定性差异来自主路径结构。

完整版教学

一、恒等路径让深度成为可选择的修正

若新增层没有帮助,残差块只需把 F 学到接近 0,输出即可接近 x;普通堆叠层要直接拟合恒等映射更困难。

梯度 dy/dx = I + dF/dx,即便残差分支局部导数较小,仍有 I 传回。

但连续缩放、归一化与数值误差仍会影响长链。

二、底层机制与公式

y = x + F(x;theta)
dL/dx = dL/dy * (I + dF/dx)
projection: y = W_s x + F(x)

三、带数字的推演

若残差分支输出 [0.1,-0.2]、输入 [2,3],输出为 [2.1,2.8]

当 F 初始接近 0,100 个块也可近似传递输入,而非每层重新编码。

四、方案对比

方案/对象核心特点代价或边界
恒等捷径无额外参数、梯度直接要求形状一致
投影捷径对齐通道/步幅增加参数且非纯恒等
Dense 连接拼接历史特征通道和显存增长

五、执行流程

输入 x -> 主分支 F(x) -----------------+
      -> 恒等/投影 shortcut -----------+ -> 相加 -> 激活/下一块

六、边界条件与工程代价

相加前两支的空间尺寸、通道和 dtype 必须完全兼容。

广播虽然可能让代码运行,却会悄悄改变语义,应显式断言 shape。

极深网络常用残差缩放、合适初始化或 Pre-LN 控制 F 分支幅度。

捷径存在不代表可以忽略学习率和归一化。

记忆钩子:残差块的核心不是“多加一次 x”,而是让网络学习修正 F,并给梯度保留 I。

七、常见误区与追问

  • 误区:残差连接让梯度绝对不会消失。 它提供直接项,但整体训练仍受其他算子和数值影响。

  • 追问:为什么 F 学 0 比普通层学恒等容易? 残差参数接近零即可保持输入。

  • 误区:shape 不同也能直接相加。 必须投影或调整采样使各维一致。

  • 追问:1×1 投影做什么? 同时对齐通道数,并可用 stride 对齐空间尺寸。

  • 追问:Pre-LN 有何关系? 归一化放在残差分支内,使主捷径更接近无阻恒等路径。

八、加强记忆

残差块的核心不是“多加一次 x”,而是让网络学习修正 F,并给梯度保留 I。

回答时一定检查形状对齐、投影代价和归一化位置。