核心要点

  • 能解释深层连乘导致梯度指数衰减

  • 知道 Sigmoid/Tanh 饱和是诱因之一

  • 掌握 ReLU、ResNet、LSTM、BN 等缓解手段

  • 能区分梯度消失与梯度爆炸

简要回答

梯度消失指反向传播中梯度随层数连乘趋近于零,浅层几乎不更新;可通过 ReLU、残差连接、BatchNorm、合适初始化、LSTM 门控、梯度裁剪等方法缓解。

标准回答

一、梯度消失

深层网络 反向传播 时,梯度经多层连乘 ∂σ/∂z · W^T,若因子 < 1 则指数衰减,靠前层参数几乎得不到更新,训练停滞。

二、成因

  • 饱和激活(Sigmoid/Tanh 两端梯度≈0)
  • 权重初始化不当(过大→爆炸,过小→消失)
  • 网络过深 且无跳跃路径

三、缓解策略

方法 机制
ReLU 族 正区间梯度为 1
残差连接 ResNet 梯度直达短路
Batch Normalization 稳定激活分布
LSTM/GRU 门控线性传递
Xavier/He 初始化 保持方差稳定
梯度裁剪 防爆炸(clip norm)
预训练+微调 分层解冻
梯度爆炸(梯度→∞)相对,后者用裁剪、较小 lr 处理。现代 Transformer 还用 Pre-LN、残差、AdamW 保持稳定。详见 反向传播原理

回答思路

  • 【定义】用一句话说清「什么是梯度消失问题?如何避免」

  • 【原理】讲清关键机制或步骤(2~3 点)

  • 【例子】举一个真实项目、论文或产品中的例子

  • 【对比】与易混淆概念或替代方案比较(如有)

  • 【收尾】总结适用场景 + 一个局限或风险

延伸学习

常见误区

⚠️ 常见踩坑

误区一:容易答偏的地方:把所有训练失败都归因于梯度消失;在已用 ReLU+ResNet 的架构仍背 Sigmoid 饱和答案;混淆消失与欠拟合/学习率过小。

追问

追问 1ResNet 的跳跃连接如何帮助梯度?

y = F(x) + x 使反向时梯度至少有一条恒等路径 ∂y/∂x 含 +1 项,缓解连乘衰减;同时解决深层「退化」(更深反而更差)问题。

追问 2如何诊断训练中是否梯度消失?

记录各层 grad norm 或权重更新幅度;若靠前层长期近零而 loss 不降,可能消失。可视化工具如 TensorBoard histogram;可尝试更小网络验证。

追问 3BatchNorm 为何能缓解?

归一化使每层输入分布稳定,减少落入饱和区概率;同时允许更大学习率,间接改善梯度流动。注意小 batch 时 BN 统计噪声大。

🔗 相似问题

同一考点的不同问法,换着练更稳

延伸学习

按主题分类的相关资源,便于系统复习