iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用

學習率怎麼影響模型收斂速度?

原題 12

某智慧製造公司開發一套設備故障預測系統,利用感測器資料訓練深度神經網路(Deep Neural Network, DNN)模型,以提前偵測異常運作跡象。在訓練過程中,團隊發現模型收斂速度不穩定:有時太快導致過擬合,有時又遲遲無法達到最佳準確率。開發團隊可以藉由調整下列哪一項超參數(Hyperparameter)以改善此問題?

白話

一家智慧製造公司用感測器資料訓練深度神經網路,想提前偵測設備異常。但訓練過程不穩定:有時學得太快導致過擬合,有時又遲遲學不好。

問你:調整哪一項超參數可以解決模型收斂速度不穩定的問題?

點選你的答案。

01 總結

一句話總結

解決收斂速度不穩定(太快過擬合、太慢不收斂)的超參數是學習率(Learning Rate):它控制每次梯度下降時模型權重更新的步幅大小,學習率太大步伐太猛,太小步伐太小,調對了收斂才會穩定

02 情境

先感受問題:步伐太大跨過最低點,步伐太小永遠到不了

「振宇精密」的 AI 工程師小君在訓練一個震動感測器異常偵測模型。她發現一個奇怪的現象:

  • 實驗 1:前幾個 Epoch 訓練損失快速下降,但驗證損失卻上升——過擬合了,模型太快把訓練資料「背」起來。
  • 實驗 2:把一個設定改小之後,損失下降非常緩慢,跑了 200 個 Epoch 還沒收斂到夠好的準確率。

同樣的模型、同樣的資料,只改了一個數值,結果就從「過快」變成「過慢」。這個數值就是學習率,它決定了模型「每一步走多遠」。

03 對照

學習率沒設好的後果

  1. 學習率過大:每次更新步幅太猛,梯度下降時「跳過」損失函數的最低點,損失值震盪不下降,甚至發散(越跑越差)。
  2. 學習率過小:每次更新幅度極小,模型需要非常多個 Epoch 才能收斂,浪費計算時間,而且容易卡在局部最小值出不去。
  3. 固定學習率的問題:訓練初期應該用較大的學習率快速接近最優解附近,後期應該用較小的學習率精細調整,固定一個值兩頭都顧不到。
  4. 梯度消失或梯度爆炸加劇:學習率設定不當,和模型的梯度問題相互作用,可能讓訓練完全失控。
  5. 難以找到全域最優:不良的學習率讓優化路徑不穩定,更容易在次優的局部最小值停下來,永遠找不到最佳解。
04 解法

調整學習率怎麼解

小君把學習率從 0.1 調降到 0.001,訓練損失和驗證損失開始同步平穩下降。後來她進一步採用學習率排程(Learning Rate Scheduling):訓練前期設 0.01,後期自動衰減到 0.0001。

效果:前期快速收斂到最優解附近,後期精細調整不過衝,設備異常偵測準確率從 78% 提升到 92%。

學習率是控制「梯度下降每一步走多遠」的超參數,它是最直接影響訓練動態(收斂速度、穩定性、最終效能)的單一超參數。

這就是選項 C 講的:學習率(Learning Rate),控制模型權重更新的速度

技術版:學習率在深度學習訓練中的角色與調校策略

學習率(Learning Rate)是深度學習中最重要的超參數之一,決定了梯度下降優化器在每次反向傳播後更新模型權重的幅度:

在 AI 領域的位置:學習率屬於「優化器(Optimizer)設定」的範疇。不論是 SGD、Adam 還是 AdaGrad,都需要設定基礎學習率。它影響訓練的每一步,是調校超參數時第一個要考量的設定。

常見學習率排程策略:

  • 固定學習率:最簡單,但不夠彈性。
  • 步進式衰減(Step Decay):每隔固定 Epoch 數將學習率乘以一個衰減係數(如 0.1)。
  • 餘弦退火(Cosine Annealing):學習率按照餘弦曲線從初始值平滑下降至接近 0,訓練末期微調效果好。
  • Warmup 策略:訓練最初幾個 Epoch 用極小的學習率「預熱」,讓模型在參數空間中先穩定下來,再逐步提高學習率。大型語言模型訓練常見。
  • 自適應優化器(如 Adam):每個參數自動維護個別的學習率,減少手動調校的需要,但仍需設定基礎學習率。

為什麼出題者要考這題:學習率是「超參數 vs 參數」概念的最佳示範題,也直接關聯到模型訓練穩定性這個核心考點。能正確識別學習率是超參數(而非梯度值或權重值),反映應試者對訓練流程的基本理解。

05 陷阱

為什麼其他選項是錯的

A每個神經元的輸出結果

字面在說什麼

神經元的輸出是激活函數對輸入的計算結果,例如 ReLU 或 Sigmoid 函數的輸出值。

為什麼不對

神經元的輸出結果是模型在每次前向傳播時自動計算出來的,工程師無法直接「設定」它,也不是訓練前決定的超參數。它是訓練過程的中間計算值,調整它的不是「超參數調校」,而是改變模型架構或輸入資料。

誰會選錯

把「神經元輸出」和「控制訓練的設定值」混淆的人。神經元輸出是模型計算的結果,不是人為可調整的超參數。

B損失函數在訓練過程中的梯度變化值

字面在說什麼

梯度(Gradient)是損失函數對每個參數的偏微分,告訴優化器「往哪個方向更新權重才能讓損失下降」。

為什麼不對

梯度是訓練過程中自動計算出的數值,不是可以手動「調整」的超參數。你可以用梯度裁剪(Gradient Clipping)限制梯度的最大值來防止爆炸,但梯度本身是模型和資料共同決定的,不是訓練前設定的超參數。

誰會選錯

知道梯度影響訓練,就認為「調整梯度」可以解決收斂問題的人。梯度是計算結果,不是人設定的超參數;真正能調整的是學習率,它決定「用多少比例的梯度來更新權重」。

D模型在訓練後產生的權重值

字面在說什麼

權重值是模型透過反向傳播學習到的內部參數,例如每層神經網路中每個連結的係數。

為什麼不對

模型權重是訓練的「結果」,不是訓練前設定的「超參數」。你無法在訓練前直接設定最終的權重值,它是透過梯度下降不斷更新得到的。這個選項混淆了「參數(Parameters)」和「超參數(Hyperparameters)」的根本差異。

誰會選錯

不清楚「超參數」定義的人。超參數是訓練前人為設定的,參數是訓練後模型學到的;把兩者搞混就會選錯這題。

06 變形

同個考點下次怎麼變形

變形 1

學習率太大和太小,各自出現什麼症狀?

直覺

兩個方向的問題症狀很不一樣,考試常考「給症狀問原因」。

答案

學習率太大:損失值震盪(忽高忽低)、不收斂,甚至 NaN;模型可能在幾個 Epoch 內就過擬合。學習率太小:損失下降非常緩慢,需要很長的訓練時間;容易卡在局部最小值。

變形 2

Adam 優化器為什麼比純 SGD 對學習率設定更不敏感?

直覺

Adam 是很多人的預設選擇,它一定有什麼特別的地方。

答案

Adam 為每個參數自適應地調整學習率:頻繁更新的參數自動降低學習率,稀少更新的參數自動提高學習率。這讓 Adam 對基礎學習率的設定更寬容,通常預設值 0.001 就能有不錯的效果。但這不代表不需要調學習率,Adam 仍然有學習率這個超參數。

變形 3

Warmup 學習率排程解決什麼問題?

直覺

大型模型訓練時常看到「Warmup 階段」的說法,為什麼要從小學習率開始?

答案

訓練初期模型的參數還是隨機初始化的狀態,梯度可能非常不穩定。如果一開始就用大的學習率,容易造成參數空間的劇烈震盪,讓後期訓練更難穩定。Warmup 讓模型先用小步伐「站穩腳步」,確認梯度方向大致正確後,再提高學習率加速收斂。

變形 4

超參數和模型參數的核心差異是什麼?

直覺

這兩個詞長得像,考試常考辨別。

答案

超參數(Hyperparameter):訓練前由人設定,控制訓練過程,例如學習率、批次大小、層數。模型參數(Parameters):訓練後由資料學到的,例如神經網路的權重和偏差值。超參數決定「怎麼學」,模型參數是「學到了什麼」。

變形 5

如何系統性地找到好的學習率?

直覺

從 0.0001 到 0.1 試過一遍,這樣夠嗎?

答案

常用的方法是「學習率範圍測試」(LR Range Test,由 Leslie Smith 提出):從很小的學習率開始,每個 Batch 後指數級增大學習率,觀察損失最快速下降的區間,選這個區間的中段作為初始學習率。也可結合 Random Search 或 Bayesian Optimization 自動搜尋。

07 延伸

想再往下看,這 5 個

出處

iPAS 經濟部產業人才能力鑑定 ・ 114 年第二梯次 iPAS AI 應用規劃師 中級 科目三 機器學習技術與應用 第 12 題

查看官方原文 PDF