💡一句話定義
學習率(Learning Rate, η)= 梯度下降時每次參數更新跨多大步。它是深度學習最重要的超參數之一,直接決定模型能不能收斂、收斂得多快。
公式 w ← w − η·梯度 裡的那個 η 就是學習率。梯度告訴你方向,學習率決定步伐——步伐挑得好不好,往往比模型架構更影響成敗。
🚶用「下樓梯」來想
🎮互動:太小 / 剛好 / 太大
三顆球都從左上高處出發,只有學習率不同。看「過小」龜速爬、「適中」漂亮收斂到谷底、「過大」直接暴走飛出畫面。
機器學習核心:學習率 (Learning Rate)
看懂模型訓練時的「步伐大小」如何決定成敗
請點擊上方的按鈕,開始觀察模型的訓練過程!
📊三種學習率一次看懂
| 學習率 | 現象 | 後果 |
|---|---|---|
| 太小 | 每步移動極少 | 收斂很慢、浪費資源,易卡在不好的點 |
| 適中 | 遠時大步、近時小步 | 快速且穩定收斂(理想) |
| 太大 | 跨過谷底來回跳 | 震盪;再大則發散、誤差爆表 |
起手式:用 Adam 時常從 1e-3(0.001)起步,再依損失曲線微調。
📉學習率排程(Schedule)
不必整場用固定學習率,可以讓它隨訓練動態變化,通常更穩更快:
🪜逐步衰減
每隔幾個 epoch 把學習率乘上係數變小,後期更精細。
每隔幾個 epoch 把學習率乘上係數變小,後期更精細。
🌊餘弦退火
依餘弦曲線平滑地從大降到小,收尾更漂亮。
依餘弦曲線平滑地從大降到小,收尾更漂亮。
🔥Warmup
初期先用小學習率暖身,避免一開始梯度不穩就發散。
初期先用小學習率暖身,避免一開始梯度不穩就發散。
🔎LR range test
從小到大掃描學習率、看損失變化,找到合適範圍。
從小到大掃描學習率、看損失變化,找到合適範圍。
🔥為什麼大模型要 warmup?
訓練初期參數是隨機的、梯度很不穩,若一開始就用大學習率,很容易直接發散。Warmup 先用很小的學習率「暖身」幾百步,等模型進入狀況後再拉到正常值、之後再衰減。這在大模型、大批次(如 Transformer)訓練中幾乎是標配。
✅自我檢測
Q1. 學習率在梯度下降公式裡是哪一個?
w ← w − η·梯度 裡的 η。梯度決定「往哪走」,學習率 η 決定「一步跨多大」。
Q2. 學習率太大、太小分別會怎樣?
太小:收斂很慢、浪費資源、易卡住。太大:跨過谷底來回震盪;再大會發散、誤差爆表。要找剛剛好的範圍或用排程。
Q3. 什麼是學習率排程?舉幾個例子。
訓練中動態調整學習率,例如逐步衰減、餘弦退火、warmup(先小後正常再衰減)。通常能更穩更快收斂、提升表現。
Q4. 為什麼大模型訓練常先 warmup?
初期參數隨機、梯度不穩,直接用大學習率容易發散。先用小學習率暖身,穩定後再提高,在大批次/大模型訓練尤其常見。
🎯重點整理
- 是什麼:每次參數更新的步伐大小,最重要的超參數之一。
- 太小:收斂慢、易卡;太大:震盪甚至發散。
- 起手:Adam 常從 1e-3 起,依損失曲線調。
- 排程:衰減、餘弦退火、warmup、LR range test。
- warmup:大模型初期暖身,避免一開始就發散。