權重衰減(Weight Decay)是什麼?

「權重衰減」是深度學習正則化技術,透過懲罰過大權重,防止模型過度擬合,提升泛化能力。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Weight Decay
主題標籤
深度學習、模型訓練、最佳化
考點定位
非 iPAS 核心術語
最後更新
2026/06/22
權重衰減(Weight Decay)是什麼? 深度學習模型訓練
術語快查

搜尋意圖: 如果你在找「權重衰減 是什麼」或「權重衰減 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 「權重衰減」是深度學習正則化技術,透過懲罰過大權重,防止模型過度擬合,提升泛化能力。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

「權重衰減」是深度學習正則化技術,透過懲罰過大權重,防止模型過度擬合,提升泛化能力。

核心概念

權重衰減(Weight Decay)是深度學習領域中一種廣泛使用的正則化(Regularization)技術,其主要目的是為了防止模型在訓練過程中出現過度擬合(Overfitting)現象。當模型過度擬合時,它會過於精確地學習訓練資料中的噪聲和特徵,導致在面對新的、未見過的資料時表現不佳,泛化能力(Generalization Ability)下降。權重衰減的核心思想是透過對模型中的權重參數施加懲罰,限制其數值的大小,從而降低模型的複雜度。這種懲罰通常以損失函數中額外添加一個與權重L2範數(L2-norm)成比例的項來實現。L2範數是權重向量中所有元素平方和的平方根,因此,最小化這個懲罰項會促使模型學習到較小的權重值。較小的權重值意味著模型對輸入資料的微小變化不那麼敏感,有助於平滑決策邊界,提高模型的穩定性和泛化能力。

運作原理

權重衰減的運作原理直接體現在修改後的損失函數(Loss Function)上。在標準的深度學習訓練中,我們通常最小化一個基於訓練資料的損失函數,例如交叉熵損失(Cross-entropy Loss)或均方誤差(Mean Squared Error)。引入權重衰減後,新的損失函數 L' 會變成原始損失函數 L 與一個正則化項的總和: L' = L(θ) + λ * Σ(w_i^2) 其中,L(θ) 是原始的損失函數,θ 代表模型的所有參數(包括權重 w 和偏置 b),但權重衰減通常只針對權重 w 進行。λ(lambda)是一個超參數,稱為正則化係數或權重衰減率,它控制著正則化項對總損失的影響程度。Σ(w_i^2) 表示所有權重 w_i 的平方和,即L2範數的平方。 在梯度下降(Gradient Descent)優化過程中,模型參數會根據損失函數的梯度進行更新。對於權重 w_i,其更新規則會變成: w_i_new = w_i_old - η * (∂L/∂w_i + 2λw_i_old) 其中 η 是學習率(Learning Rate)。從這個更新公式可以看出,除了原始損失函數的梯度項外,還多了一個 2λw_i_old 的項。這個額外的項會在每次迭代時,將權重 w_i 往零的方向「衰減」或「拉回」一小部分,其衰減的幅度與權重本身的大小以及 λ 值成正比。這就是「權重衰減」名稱的由來。透過不斷地將權重推向較小的值,權重衰減有效地限制了模型學習過於複雜的函數,從而減少了過度擬合的風險。值得注意的是,偏置項(bias terms)通常不應用權重衰減,因為它們對模型的複雜度影響較小,且對其施加懲罰可能會導致欠擬合。

實際應用

權重衰減幾乎是所有深度學習模型訓練的標準配置之一,其應用範圍極為廣泛。

  1. 卷積神經網路(CNN):在圖像識別、物體檢測等電腦視覺任務中,CNN 模型通常包含大量的參數。權重衰減是防止這些模型過度擬合圖像訓練資料的關鍵技術,確保模型能夠泛化到新的圖像。
  2. 循環神經網路(RNN)及其變體(LSTM, GRU):在自然語言處理(NLP)、語音識別等序列資料處理任務中,RNN 模型也容易過度擬合。權重衰減有助於穩定訓練,提高模型在文本生成、機器翻譯等任務上的表現。
  3. Transformer 模型:作為當前NLP領域的主流架構,Transformer 模型擁有龐大的參數量。在訓練大型Transformer模型時,權重衰減與其他正則化技術(如Dropout)結合使用,對於防止過度擬合、提升模型性能至關重要。
  4. 遷移學習(Transfer Learning)和微調(Fine-tuning):當使用預訓練模型進行微調時,權重衰減可以幫助模型在新的下游任務資料上進行適應性學習,同時避免過度偏離預訓練學到的通用特徵。這對於保持模型泛化能力非常重要。
  5. 推薦系統:在基於深度學習的推薦系統中,權重衰減可以幫助模型學習到更穩健的用戶偏好和物品特徵表示,減少對稀疏資料的過度依賴,提升推薦的準確性和多樣性。
  6. 強化學習:雖然不如監督學習中常見,但在某些強化學習場景下,特別是當策略網路或價值網路的參數量較大時,權重衰減也可以作為一種正則化手段,幫助穩定訓練過程。 總之,無論是哪種深度學習任務或模型架構,只要存在過度擬合的風險,權重衰減都是一個值得嘗試且通常有效的正則化策略。

常見誤區

儘管權重衰減是一種強大的正則化工具,但在實際應用中仍存在一些常見的誤區:

  1. 誤解為僅僅是L2正則化:雖然權重衰減在數學形式上與L2正則化(L2 Regularization)非常相似,特別是在標準的隨機梯度下降(SGD)優化器中,兩者在效果上幾乎等價。然而,在某些自適應學習率優化器(如Adam、RMSprop)中,權重衰減的實現方式與傳統的L2正則化有所不同。傳統L2正則化是直接在損失函數中添加L2範數項,其梯度會影響學習率的自適應調整。而現代的權重衰減(如AdamW中的Weight Decay)則是在參數更新步驟中,將權重直接乘以一個小於1的因子,獨立於梯度計算,這可以避免L2正則化與自適應學習率機制之間的衝突,提供更好的正則化效果。因此,將權重衰減簡單等同於L2正則化可能導致在選擇優化器時的混淆。
  2. 權重衰減率 λ 的選擇不當:λ 是一個關鍵的超參數,其值過小可能導致正則化效果不足,模型仍然過度擬合;值過大則可能導致模型欠擬合(Underfitting),訓練損失難以收斂,模型性能不佳。選擇合適的 λ 值通常需要透過網格搜索(Grid Search)、隨機搜索(Random Search)或貝葉斯優化(Bayesian Optimization)等超參數調優技術來確定。
  3. 與 Batch Normalization 的交互:當模型同時使用權重衰減和批次歸一化(Batch Normalization, BN)時,可能會出現一些複雜的交互作用。BN 層會對輸入進行歸一化,這在一定程度上會削弱權重衰減對權重的約束效果。有研究表明,在某些情況下,過高的權重衰減率可能會與BN產生衝突,導致訓練不穩定或性能下降。因此,在使用BN的模型中,可能需要調整權重衰減率,或考慮使用專門為BN設計的正則化策略。
  4. 對所有參數應用權重衰減:通常情況下,權重衰減只應用於模型的權重參數(weights),而不應用於偏置參數(biases)或批次歸一化層的縮放和平移參數。這是因為偏置參數的數量相對較少,對模型複雜度的影響有限,且對其施加懲罰可能會導致欠擬合。在某些情況下,對所有參數應用權重衰減可能會導致次優結果。

與相關技術的比較

權重衰減是眾多正則化技術中的一種,與其他技術各有側重,常結合使用以達到最佳效果。

  1. 與 L1 正則化(Lasso Regularization)
    • 數學形式:L1 正則化在損失函數中添加的是權重絕對值的和(L1 範數),即 λ * Σ|w_i|。
    • 效果:L1 正則化傾向於產生稀疏解,即將一些權重精確地推向零,從而實現特徵選擇(Feature Selection)。這意味著它會有效地「關閉」一些不重要的特徵。
    • 與權重衰減(L2)的區別:L2 正則化(權重衰減)會將權重推向接近零但不完全為零的值,它更傾向於減小所有權重的大小,而不是將它們歸零。L2 範數在幾何上是圓形的約束區域,其梯度在任何非零點都存在且不變;L1 範數是菱形的約束區域,其「角點」處的梯度會導致權重歸零。
    • 應用:L1 適用於需要特徵選擇的場景,而 L2 更適用於普遍減小權重以防止過擬合。在深度學習中,L2(權重衰減)更為常用。
  2. 與 Dropout
    • 原理:Dropout 在訓練過程中隨機地將一部分神經元的輸出設置為零,使其暫時「失活」。這迫使模型學習更魯棒的特徵,因為它不能依賴於任何單一神經元的存在。
    • 效果:Dropout 可以被視為訓練了大量共享權重的稀疏模型集合,並在推斷時對它們進行平均。它有效地減少了神經元之間的共適應(co-adaptation)。
    • 與權重衰減的區別:權重衰減是透過懲罰權重大小來限制模型複雜度,是一種參數空間的正則化。Dropout 則是透過隨機失活神經元來引入噪聲,是一種結構上的正則化。兩者通常可以結合使用,以獲得更好的正則化效果。
  3. 與 Early Stopping
    • 原理:Early Stopping 監控模型在驗證集(Validation Set)上的性能,當驗證損失在連續多個週期內不再下降時,就停止訓練。
    • 效果:它防止模型在訓練集上訓練過久而開始過度擬合。
    • 與權重衰減的區別:Early Stopping 是一種基於時間或迭代次數的正則化策略,它不直接修改損失函數或權重更新規則。權重衰減則是在每個訓練步驟中持續對權重施加約束。兩者可以互補,Early Stopping 確保模型不會訓練過頭,而權重衰減則在整個訓練過程中限制權重大小。
  4. 與 Batch Normalization(BN)
    • 原理:BN 在每個小批量(mini-batch)上對神經網路的輸入進行歸一化,使其具有零均值和單位方差。
    • 效果:BN 有助於加速訓練、提高模型的穩定性,並在一定程度上具有正則化效果,因為它引入了小批量統計量的隨機性。
    • 與權重衰減的區別:BN 主要解決內部協變位移(Internal Covariate Shift)問題,其正則化效果是附帶的。權重衰減是專門針對過度擬合而設計的。如前所述,兩者結合使用時需要注意其交互作用。

常見問題

權重衰減與L2正則化有何不同?

權重衰減在標準SGD優化器中與L2正則化在數學上等價,都是在損失函數中加入權重L2範數項。然而,在Adam等自適應優化器中,現代的權重衰減(如AdamW)是直接在參數更新步驟中衰減權重,獨立於梯度計算。這避免了L2正則化與自適應學習率的衝突,能提供更穩定的正則化效果,因此它們在實現細節和與優化器的交互上有所區別。

如何選擇合適的權重衰減率(λ)?

選擇合適的權重衰減率 λ 是一個超參數調優的過程。通常需要透過實驗來確定,常見方法包括網格搜索、隨機搜索或貝葉斯優化。建議從一個較小的非零值(如0.0001或0.001)開始嘗試,並觀察模型在驗證集上的性能。如果模型仍然過度擬合,可以適當增加 λ;如果模型欠擬合或訓練不穩定,則應減小 λ。交叉驗證是評估不同 λ 值效果的有效手段。

權重衰減是否應該應用於偏置項(bias)?

通常情況下,權重衰減不建議應用於偏置項(bias)。這是因為偏置項的數量相對較少,對模型的整體複雜度影響有限。對偏置項施加懲罰可能會導致模型欠擬合,使其難以學習到資料中的基本偏移或截距。大多數深度學習框架和庫在實現權重衰減時,預設只對權重參數進行衰減,而忽略偏置項。