L2 正規化是一種常見的正規化指標,使用以下公式:
舉例來說,下表顯示 L2 正規化項目的計算方式,適用於具有六個權重的模型:
值 | 平方值 | |
---|---|---|
w1 | 0.2 | 0.04 |
w2 | -0.5 | 0.25 |
w3 | 5.0 | 25.0 |
w4 | -1.2 | 1.44 |
w5 | 0.3 | 0.09 |
w6 | -0.1 | 0.01 |
26.83 = 總價 |
請注意,接近零的權重不會太大影響 L2 正規化,但權重過大可能會造成重大影響。例如,在上述計算中:
- 單一權重 (w3) 約占總複雜度的 93%。
- 其他五個權重加起來只佔總複雜度的 7%。
L2 正則化會讓權重「趨近」 0,但不會讓權重完全歸零。
練習:測試您的理解程度
正規化率 (lambda)
如前所述,訓練會盡量減少損失和複雜度的組合:
模型開發人員會將複雜度值乘以稱為正則化率的標量,藉此調整複雜度對模型訓練的整體影響。希臘字母 λ 通常代表正規化率。
也就是說,模型開發人員的目標是:
正規化率偏高:
- 強化正則化影響力,進而降低過度擬合機率。
- 傾向產生具有下列特徵的模型權重直方圖:
- 常態分佈
- 平均權重為 0。
正規化率偏低:
- 降低正規化的影響,進而提高過度擬合機率。
- 傾向產生平坦分布的模型權重直方圖。
舉例來說,高規則化率的模型權重直方圖可能會如下圖 18 所示。
相反地,規則化率偏低時,直方圖的曲線通常會比較平坦,如圖 19 所示。
選擇正規化率
理想的正則化率可產生可針對先前未見的新資料進行一般化的模型。不過,理想值會依資料而定,因此您必須手動或自動進行 調音。
提早停止:取代以複雜度為依據的正規化
提早停止是一種規則化方法,不涉及複雜度的計算。而是在模型完全收斂之前結束訓練。舉例來說,當驗證集的損失曲線開始增加 (斜率變為正值),您就會結束訓練。
雖然提早停止通常會增加訓練損失,但可以降低測試損失。
提早停止是一種快速但不太理想的正規化方式。產生的模型很可能不如以理想規則化率徹底訓練的模型。
在學習率和正則化率之間取得平衡
學習率和正則化率通常會將權重拉向相反的方向。學習率越高,權重就會越接近 0 ;正則化率越高,權重就會越接近 0 。
如果正則化率相對於學習率來說太高,弱權重往往會產生預測不佳的模型。反之,如果學習率相對於正則化率偏高,強權重通常會產生過度配適的模型。
您的目標是在學習率和正則化率之間取得平衡。這可能會是一項挑戰。最糟的是,一旦您找到那個難以捉摸的平衡點,可能就得最終變更學習率。變更學習率後,您必須再次找出理想的正規化率。