P1 · 應會
機器學習
梯度裁剪 (Gradient Clipping)
是什麼
梯度裁剪(Gradient Clipping)是在更新權重前,若梯度的範數(或數值)超過設定上限,就把它縮放或截斷到上限以內,例如 PyTorch 的 clip_grad_norm_。
解決什麼問題
防止梯度爆炸讓單次更新幅度過大、損失突然變成 NaN,常用於 RNN、LSTM 與大型模型訓練。
考場 Trigger
- 損失突然變 NaN
- 梯度爆炸
- clip_grad_norm_
- 限制梯度範數上限
容易搞混
梯度消失與梯度爆炸學習率批次正規化
中級深度
能把裁剪放在 loss.backward() 之後、optimizer.step() 之前,並說明放錯位置為何無效。