MLE · Phone ML Fundamentals

Pinterest 梯度消失:全连接网络哪一端更严重

MLE 电面明确比较靠近输入端和输出端的梯度;从链式法则解释早层梯度衰减、例外条件和诊断方式。

题目重点:MLE 电面明确比较靠近输入端和输出端的梯度;从链式法则解释早层梯度衰减、例外条件和诊断方式。

题意与假设

这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。

  • 讨论普通前馈全连接网络、损失位于输出端、反向传播中的参数梯度;若存在跳连、归一化或特定初始化,结论会变化。
  • 梯度消失是多个小于 1 的局部 Jacobian 连乘导致早层梯度范数随深度衰减;并非输入层天生没有梯度。

解题路线

  1. 写出第 l 层误差 δ_l=(W_{l+1}ᵀδ_{l+1})⊙φ′(z_l)。越靠近输入端,需要经过越多权重与激活导数相乘。
  2. 在 tanh/sigmoid 饱和区 φ′ 很小,深层连乘更易使早层 δ 接近 0,因此典型答案是靠近输入端更容易消失。
  3. 用每层梯度范数、激活分布、权重谱和更新比定位;若前几层梯度近零而后层正常,吻合该机制。
  4. 可用残差连接、合适初始化、ReLU 类非饱和激活、归一化等改善,但要分别说明它们改变了什么传播路径。

手动走一遍

假设从输出到第一层要穿过 10 个局部导数且各约 0.2,乘积为 0.2^10≈1.0×10^-7;靠近输出只穿过 1 个约 0.2。这个数字只是示意,真实梯度还乘权重 Jacobian。

规模与取舍

对 L 层宽度近似 d 的稠密网络,一次前向与反向大致 O(Ld²),记录每层梯度范数额外 O(L) 标量;观察时间应跨多个 batch,避免单批误判。

易错点与追问

容易失分的边界

  • 只说‘输出端梯度小’却不沿链式法则数乘积。
  • 认为所有网络都必然靠近输入端消失,忽略残差和特殊结构。
  • 把梯度爆炸与梯度消失混为同一种学习率问题。
  • 仅凭训练 loss 不降就断言梯度消失。

继续深挖

  • 为什么残差连接给反向传播增加近似恒等路径?
  • ReLU 能否完全消除梯度消失,死 ReLU 又是什么?
  • 如何区分初始化不佳与激活饱和?
✓已复制微信号!