深度學習 · 優化器

Adam 優化器

動量給它衝過小丘的慣性,自適應學習率給每個參數自己的步伐——收斂又快又穩,是深度學習的預設優化器。

動量 + RMSProp自適應學習率收斂快β1、β2AdamW

💡一句話定義

Adam(Adaptive Moment Estimation)= 把動量(平滑梯度方向)和 RMSProp(自適應各參數學習率)合而為一的優化器。它為每個參數、依歷史梯度自動調整步伐,收斂快、好調,多數情況用預設值就很好用。

純梯度下降只會「照當下坡度走」;Adam 多了「記憶」——記住過去梯度的方向與大小,讓更新更聰明、更穩。

🏂用「重球下山」來想

普通 SGD 像一顆沒有慣性的球:滾到小坑底、坡度變 0 就停住,卡在局部最小。加了動量後像一顆有重量的球:從高處衝下來累積動能,遇到小山丘還能靠慣性硬衝過去,滑進更深的全局最小。Adam 再加上「每個方向自己的步伐」(自適應學習率),陡的方向踩小步、平的方向踩大步。

🎮互動:SGD 卡死 vs 動量衝破

按第一個按鈕看無動量的 SGD滾進左邊淺坑就停;按第二個看滿血動量如何靠慣性衝過中間山丘、抵達右邊更深的全局最小。

優化演算法:動能與位能的對決
參數調好,沒有衝不過去的山丘!來看看滿血版動量的威力
陷阱:局部最小值 目標:全局最小值 (最佳解)
請點擊上方的按鈕,開始物理模擬動畫!

🧩Adam = 動量 + RMSProp

Adam 同時追蹤梯度的兩個「動量」(moment),這也是名字的由來:

➡️一階動量(動量法)
梯度的指數移動平均,平滑更新方向,過濾抖動、帶著慣性前進。
📏二階動量(RMSProp)
梯度平方的移動平均,自適應每個參數的學習率:常震盪的方向踩小步、平穩的方向踩大步。
合起來:方向由一階動量決定、步長由二階動量縮放,再加偏差校正——這就是 Adam 又快又穩、幾乎不用細調的原因。

📈優化器演進對照表

優化器核心想法特點
SGD沿當下梯度走簡單;易震盪、易卡局部最小
SGD + Momentum加入慣性平滑方向、衝過小起伏,收斂更快
RMSProp自適應各參數學習率依梯度大小縮放步長,適合非平穩目標
Adam動量 + RMSProp快、好調、預設就好用,最常用
AdamWAdam + 分離權重衰減正則化更正確,大模型/Transformer 首選

🎛️超參數與取捨

超參數:學習率(最關鍵)、兩個衰減率 β1≈0.9(一階)、β2≈0.999(二階),以及防除零的 ε。多數情況用預設即可,主要調學習率。
Adam 一定比 SGD 好嗎?不一定。Adam 收斂快、好調,但在某些任務(如影像分類)SGD + Momentum 的泛化反而更好。訓練大模型時,AdamW 通常優於原始 Adam。實務常兩者都試。

自我檢測

Q1. Adam 結合了哪兩個想法?
動量(梯度的指數移動平均,平滑方向)+ RMSProp(梯度平方的移動平均,自適應每個參數的學習率)。名字 Adaptive Moment Estimation 就是指這兩個「動量」。
Q2. 動量為什麼能衝過局部最小?
動量讓更新累積過去梯度的慣性,像有重量的球從高處衝下來儲存動能,遇到小山丘時能靠慣性衝過去,不會一到坡度 0 就停住。
Q3. Adam 的主要超參數有哪些?平常要調什麼?
學習率、β1(≈0.9)、β2(≈0.999)、ε。多數情況 β 與 ε 用預設即可,最需要調的是學習率。
Q4. Adam 和 AdamW 差在哪?
AdamW 把權重衰減(L2 正則化)從梯度更新中分離出來,正則化行為更正確。訓練 Transformer 等大模型時常優於原始 Adam。

🎯重點整理

📝 iPAS 考點提醒

Adam 是深度學習最常用的優化器,iPAS 訓練機制考點(中級科目三)。重點:結合動量(平滑梯度方向)與 RMSProp(自適應各參數學習率),收斂快、好調,多數情況用預設即可。易混點:Adam 收斂快但某些任務(如影像分類)SGD 加動量泛化更好;AdamW 把權重衰減分離、正則化更正確,訓練大模型常優於原始 Adam。情境:學習率仍是最關鍵的超參數。

想練情境題與詳解 → AI 學習與考證地圖

❓ 常見問題

Adam 優化器是什麼?

結合動量與自適應學習率的優化演算法;為每個參數依歷史梯度自動調整步長,收斂快、好調,是深度學習最常用的優化器之一。

Adam 結合了哪些想法?

動量(用梯度的指數移動平均平滑方向)與 RMSProp(用梯度平方的移動平均自適應各參數學習率),兩者合一。

Adam 的主要超參數?

學習率(最關鍵)、兩個衰減率 beta1 與 beta2(常用 0.9 與 0.999),以及防除零的 epsilon;多數情況用預設即可。

Adam 一定比 SGD 好嗎?

不一定;Adam 收斂快、好調,但 SGD 加動量在某些任務(如影像分類)泛化更好。實務常兩者都試。

什麼是 AdamW?

把權重衰減從梯度中分離出來的改良版,正則化更正確;訓練 Transformer 等大模型時常優於原始 Adam。

🧭 相關主題

← 返回 AI 學習與考證地圖