梯度消失
概述 (50-200字符)
梯度消失是深度神经网络训练中的核心问题:在反向传播过程中,梯度信号从输出层向输入层逐层传递时因连乘效应指数级衰减,导致浅层权重几乎无法更新,深层网络无法有效训练。
关键内容 (≥300字符, 用双链)
- 产生机制:反向传播计算某层梯度时,需要将上层传来的梯度与该层的局部导数相乘(链式法则)。当局部导数值小于 1 时,多层连乘后梯度趋近于 0。例如Sigmoid激活函数的导数 σ'(x) = σ(x)(1-σ(x)) 最大值仅 0.25,n 层后梯度约 0.25ⁿ → 0。
- 历史影响:梯度消失是 1986 年 Rumelhart 论文中已意识到的问题。Sigmoid 作为当时的标准激活函数,其导数特性使得超过 4-5 层的网络几乎无法训练。这限制了早期多层感知机的深度,也是深度学习在 2000 年代前发展缓慢的重要原因之一。
- 解决方案:ReLU激活函数(2012 AlexNet)是最根本的解决方案——正区间导数恒为 1,梯度不衰减。其他方法包括:Xavier/He 初始化(控制每层输出的方差)、Batch Normalization(归一化激活值)、残差连接(ResNet,提供梯度捷径)、LSTM/GRU(RNN 中的门控机制)。
- 梯度爆炸:与梯度消失相对的另一极端是梯度爆炸——当局部导数大于 1 时,多层连乘后梯度指数级增长,导致权重更新过大、训练不稳定。梯度裁剪(Gradient Clipping)是常用的缓解方法。
来源
- [Learning Representations by Back-propagating Errors] — Rumelhart, Hinton & Williams, Nature 1986
- [raw/articles/ai-papers/machine-learning/02_backpropagation_1986.md] — 源文件
相关
- Sigmoid激活函数 — caused
- ReLU激活函数 — solves
- 反向传播 — part_of
- 链式法则 — part_of
- 多层感知机 — affects