詳細解釋
梯度消失(Gradient Vanishing)是深度神經網絡訓練中梯度變得極小的現象,導致淺層參數幾乎不更新,模型無法學習。
發生原因:
- 激活函數導數小:Sigmoid、Tanh在飽和區導數接近0
- 梯度連乘:反向傳播時梯度連乘,值指數衰減
- 深層網絡:層數越多,淺層梯度越小
- 參數初始化:不當初始化導致梯度消失
症狀:
- 淺層梯度接近0
- 深層有梯度但淺層幾乎無更新
- 損失停滯不降
- 模型表現如同淺層網絡
與梯度爆炸的對比:
- 梯度消失:梯度太小,淺層學不到
- 梯度爆炸:梯度太大,訓練崩潰
- 兩者都是深層網絡的挑戰
解決方案:
- 更好的激活函數:
- ReLU:導數為0或1,避免衰減
- Leaky ReLU、ELU、GELU:改進ReLU
- 避免Sigmoid、Tanh的飽和問題
- 架構改進:
- 殘差連接:跳過連接保留梯度
- 層正規化:穩定每層分布
- 門控機制:LSTM、GRU的遺忘門和輸入門
- 初始化:
- Xavier初始化:考慮輸入輸出維度
- He初始化:專為ReLU設計
- 預訓練:
- 逐層預訓練(歷史方法)
- 現代預訓練+微調
診斷方法:
- 梯度監測:檢查各層梯度范數
- 激活分布:檢查是否進入飽和區
- 權重分布:初始化後的權重分布
梯度消失是深度網絡訓練的根本挑戰,現代架構已較好解決。
亦稱「Vanishing Gradient」。