L23103 數值優化技術與方法
2最佳化問題的基本結構
5 構成要素 — 目標函數 / 決策變數 / 可行域 / 函數性質 / ML 應用
2.1五大構成要素總覽
| 要素/英文 | 定義 |
|---|---|
| ① 目標函數 Objective Function | 衡量模型輸出與實際答案的偏差程度;又稱「損失函數」或「成本函數」 |
| ② 決策變數 Decision Variables | 模型中可調整的數值參數,學習過程中需被「優化」的對象 |
| ③ 可行域 Feasible Region | 又稱「參數空間」— 決策變數的合法範圍,「哪些解是允許的」 |
| ④ 函數性質 Convexity & Differentiability | 凸性與可導性 — 決定最佳化問題的難易度 |
| ⑤ ML 應用 — | 線性模型 / 深度學習模型 / 生成模型與策略學習三類訓練 |
2.2目標函數 — 三任務對應
| 任務 | 目標函數 | 運作原理 |
|---|---|---|
| 迴歸任務 | 均方誤差 Mean Squared Error, MSE | 懲罰預測值與實際值的平方差,讓模型輸出更接近真實的連續數值 |
| 分類任務 | 交叉熵損失 Cross-Entropy Loss | 衡量預測機率分佈與實際標籤分佈之間的差距,提升不同類別的信心與準確率 |
| 排序與排名 | 對比損失 Contrastive Loss 排序損失 Ranking Loss | 學習資料之間相對次序的準確性 |
2.3決策變數 — 三類模型形式
| 模型類型 | 決策變數形式 | 規模 / 備註 |
|---|---|---|
| 線性模型 | 權重係數(如迴歸係數)+ 偏差項 | 少量參數,可解析求解 |
| 神經網路 | 每一層神經元之間的權重與偏差數值 | 數萬至數千萬個參數 |
| 機率模型 | 貝氏模型的條件機率表 / 生成模型的潛在變數 | — |
2.4可行域 — 四種常見限制
| 限制類型 | 說明 / 場景 |
|---|---|
| 非負條件 | 如非負矩陣分解(NMF)中,所有參數須為正數 |
| 上限/下限限制 | 防止模型權重過大或過小,穩定訓練行為 |
| 總和約束 | 某些模型中參數總和需為 1,例如機率分佈 |
| 稀疏性限制 | 透過限制多數參數為 0(如 L1 正則化),促進模型簡化與可解釋性 |
2.5函數性質:凸性 vs 可導性
| 性質 | 定義 | 意義 / 範例 |
|---|---|---|
| 凸性 Convexity | 凸函數從任一初始點開始,只要持續往下降方向走,最終一定能找到全域最佳解 | 具可預期、穩定的求解特性;線性迴歸、邏輯迴歸皆屬凸問題 |
| 可導性 Differentiability | 能進行微分 → 計算「梯度」獲得下降方向 | 大多數優化器(如梯度下降法)正常運作的前提;不可導區段易造成訓練不穩或收斂困難 |
| 非凸問題 | 存在多個局部最小值與鞍點 | 如神經網路的損失函數;搭配適當初始化、動量機制與調整策略,依然能取得效果良好的解 |
2.6機器學習脈絡的三類應用
| 類型 | 問題性質 | 代表工具 / 方法 |
|---|---|---|
| 線性模型訓練 | 問題結構簡單、可解析求解 | 訓練速度快且具有理論保證 |
| 深度學習模型 | 大規模非凸問題,需依賴數值演算法逼近式學習 | 常見工具:SGD、Adam、RMSprop |
| 生成模型與策略學習 | 如生成對抗網路(GAN)、強化式學習 | 對抗損失、期望值最大化等複雜結構;搭配啟發式搜尋或抽樣估計 |
3損失函數與學習目標
設計意義 + 9 種損失函數 × 3 任務 + 對學習行為影響
3.1損失函數的設計意義(三決策)
| 設計決策 | 內容 |
|---|---|
| ① 如何看待不同型態的錯誤 | 例如假陽性與假陰性的權重差異 |
| ② 哪些誤差該被放大懲罰、哪些可容忍 | 對嚴重錯誤放大懲罰,對少量誤差寬容 |
| ③ 參數調整的方向與幅度 | 影響整體的收斂行為與學習效率 |
3.29 種損失函數 × 3 任務對應表
| 任務類型 | 損失函數 | 特性 / 應用場景 |
|---|---|---|
| 迴歸任務 預測連續數值 | 均方誤差 MSE | 放大較大誤差的懲罰,適合誤差分佈穩定的情況 |
| 平均絕對誤差 MAE | 對極端值較不敏感,適用於含有異常值的資料 | |
| Huber 損失 | 結合 MSE 與 MAE 優點,在穩定性與抗雜訊之間取得平衡 | |
| 分類任務 預測類別標籤 | 交叉熵損失 Cross-Entropy Loss | 衡量預測機率與實際標籤的距離,為多數分類模型的標準選擇 |
| 對比損失 Contrastive Loss | 學習樣本對之間的相似度關係;常用於人臉辨識、語意匹配 | |
| Focal Loss | 強化對難分類樣本的學習,特別適合處理資料不平衡問題 | |
| 排序與重建任務 | 排序損失 Ranking Loss | 關注資料間的相對順序;常見於搜尋引擎與推薦系統 |
| 重建損失 | 計算輸入與輸出間的相似程度;廣泛應用於自編碼器與生成模型 |
3.3損失函數對學習行為的影響
| 選擇 | 行為特性 |
|---|---|
| 使用 MSE | 模型會試圖壓低大誤差,有時會過度受到極端值影響 |
| 使用 MAE | 對所有樣本誤差給予均等權重,較穩健但學習速度可能較慢 |
| 不當選擇 | 例如分類問題使用迴歸損失 → 將導致訓練無效,甚至完全無法收斂 |
4常見優化演算法與比較
基礎 3 方法 + 進階 4 方法 — 移動方向 × 移動多遠
4.1基礎方法:梯度下降三變形
| 方法 | 概念(資料量) | 特點 | 適用情境 |
|---|---|---|---|
| 梯度下降法 Gradient Descent, GD | 使用整個訓練資料集計算損失函數的梯度,沿梯度方向更新參數 | 更新穩定、能準確反映全體資料的平均方向,但計算成本高、訓練速度慢 | 小型資料集、高精度需求、可並行化計算的環境 |
| 隨機梯度下降 Stochastic Gradient Descent, SGD | 每次使用一筆樣本估算梯度並更新參數 | 更新速度快、記憶體需求低,但梯度波動大、收斂不穩定 | 大型資料集、線上學習與即時訓練場景 |
| 小批次梯度下降 Mini-batch SGD | 將資料分成小批,每次用一批資料計算梯度 | 在更新穩定性與效率之間取得平衡,是深度學習中最常見的選擇 | 中大型模型訓練,能與 GPU 加速高度結合 |
4.2進階方法解決的三大挑戰
| 挑戰 | 說明 |
|---|---|
| ① 梯度方向不穩定 | 如震盪或鞍點,傳統 GD 容易卡住 |
| ② 參數更新速度不一致 | 某些參數變動大、某些幾乎不變 |
| ③ 固定學習率難以應對不同訓練階段 | 訓練初期需大步、後期需細調 |
4.3進階四方法 — 學習率調整與收斂加速
| 方法 | 概念 | 優點 / 限制 | 應用場景 |
|---|---|---|---|
| 動量法 Momentum | 模仿物理動量,將前幾次梯度的方向累積,幫助模型克服局部震盪 | 加速收斂並穩定學習過程,特別適合高曲率或非平滑空間 | 深層神經網路訓練、收斂速度要求高的任務 |
| Adagrad | 根據每個參數的歷史梯度大小,自動調整學習率 | 適合處理稀疏特徵或不均衡參數更新;限制:學習率會隨時間過度衰減,可能導致收斂停止 | 稀疏特徵的場景 |
| RMSprop | 引入滑動平均,修正 Adagrad 學習率過快下降的問題 | 能穩定訓練過程,特別適合處理非穩定梯度(如 RNN 訓練) | 語音處理、序列建模等非凸問題 |
| Adam Adaptive Moment Estimation | 結合動量與 RMSprop,追蹤梯度的一階與二階動量,自動調整各參數的學習率 | 訓練快速、收斂穩定,可廣泛應用於大多數模型 | 目前最常用的深度學習優化器之一,適用於圖像、語言、強化式學習等各類任務 |
5收斂判準與訓練穩定性
4 收斂判準 + 4 不穩定因素 + 4 穩定訓練策略
5.1四種常見收斂判準
| 判準 | 說明 / 觸發條件 | 備註 |
|---|---|---|
| ① 損失函數變化趨緩 | 訓練損失在連續多次迭代中變化幅度極小(如變化量低於設定的 ε),表示模型學習已進入平緩階段 | 最基本且直觀的判準方式 |
| ② 驗證集效能不再提升 | 模型在驗證集上的準確率、F1 分數等指標持續持平甚至下降,代表模型可能已達到泛化能力上限 | 此時再繼續訓練反而可能導致過擬合 |
| ③ 梯度趨近零 | 模型參數的梯度值持續逼近零,表示損失函數已位於平坦區域,參數更新幅度極小 | 亦為常見的收斂跡象 |
| ④ 訓練步數或時間達上限 | 運算資源有限或訓練週期需受控時,可設計固定的迭代輪數(epoch)或最大訓練時間作為結束條件 | 須與其他指標搭配使用,避免模型尚未收斂即中止 |
5.2訓練穩定 vs 不穩定
| 狀態 | 表現 |
|---|---|
| 穩定的訓練 | 模型學習曲線平順、預測逐步改善 |
| 不穩定的訓練 | 出現劇烈震盪、發散或梯度爆炸等現象 → 可能導致模型學習失敗 |
5.3四種導致不穩定的因素
| 不穩定因素 | 後果 |
|---|---|
| ① 學習率過高 | 更新步伐過大,導致參數在最小值附近來回震盪或完全發散 |
| ② 初始權重設置不當 | 可能陷入極端值、鞍點,導致學習無法啟動或卡在局部解 |
| ③ 損失函數或資料分佈不連續 | 使梯度訊號不穩定,進而影響收斂路徑 |
| ④ 批次大小過小 | 梯度估計變異過大,造成更新方向不穩定 |
5.4四種常用穩定訓練策略
| 策略 | 做什麼 | 解決什麼 |
|---|---|---|
| ① 學習率調整 Learning Rate Scheduling | 隨著訓練進行,自動調降學習率(如 Step Decay、Cosine Annealing、ReduceLROnPlateau) | 避免後期更新過大導致震盪,提升精細收斂能力 |
| ② 提早停止 Early Stopping | 當驗證集效能在一段時間內未改善(如連續 5~10 次 epoch),即可中止訓練 | 防止模型在無實質提升下持續學習而產生過擬合 |
| ③ 梯度裁剪 Gradient Clipping | 限制梯度的最大值,避免發散或數值不穩定 | 特別針對 RNN 或深層模型的梯度爆炸 |
| ④ 批次正規化 Batch Normalization | 在每一層中標準化中間輸出,使輸入分佈穩定 | 提升收斂速度與模型穩定性 |
AIONDAILY × 咖啡 AI 學 · iPAS AI 應用規劃師中級 · L23103 數值優化技術與方法 · v1.0(2026-05 表格化精簡版)