在數學 與電腦科學 中,尤其是在機器學習 和逆問題 領域中,正則化 (英語:regularization)是指為解決適定性問題 或過適 而加入額外資訊的過程。[ 1]
在機器學習和逆問題的最佳化過程中,正則項往往被加在目標函數 當中。
概括來講,機器學習 的訓練過程,就是要找到一個足夠好 的函數
F
∗
{\displaystyle F^{*}}
用以在新的資料上進行推理 。[ 2] 為了定義什麼是「好」,人們引入了損失函數 的概念。一般地,對於範例
(
x
→
,
y
)
{\displaystyle ({\vec {x}},y)}
和模型
F
{\displaystyle F}
,有預測值
y
^
=
F
(
x
→
)
{\displaystyle {\hat {y}}=F({\vec {x}})}
。損失函數是定義在
R
×
R
→
R
{\displaystyle \mathbb {R} \times \mathbb {R} \to \mathbb {R} }
上的二元函數
ℓ
(
y
,
y
^
)
{\displaystyle \ell (y,{\hat {y}})}
,用來描述基準真相 和模型預測值之間的差距。一般來說,損失函數是一個有下確界 的函數;當基準真相和模型預測值足夠接近,損失函數的值也會接近該下確界。
因此,機器學習的訓練過程可以被轉化為訓練集
D
{\displaystyle {\mathcal {D}}}
上的最小化 問題。我們的目標是在泛函空間 內,找到使得全域損失
L
(
F
)
=
∑
i
∈
D
ℓ
(
y
i
,
y
^
i
)
{\displaystyle L(F)=\sum _{i\in {\mathcal {D}}}\ell (y_{i},{\hat {y}}_{i})}
最小的模型
F
∗
{\displaystyle F^{*}}
。
F
∗
:=
arg min
F
L
(
F
)
.
{\displaystyle F^{*}:=\mathop {\text{arg min}} _{F}L(F).}
由於損失函數只考慮在訓練集上的經驗風險 ,這種做法可能會導致過適 。為了對抗過適,我們需要向損失函數中加入描述模型複雜程度的正則項
Ω
(
F
)
{\displaystyle \Omega (F)}
,將經驗風險最小化問題轉化為結構風險最小化。
F
∗
:=
arg min
F
Obj
(
F
)
=
arg min
F
(
L
(
F
)
+
γ
Ω
(
F
)
)
,
γ
>
0.
{\displaystyle F^{*}:=\mathop {\text{arg min}} _{F}{\text{Obj}}(F)=\mathop {\text{arg min}} _{F}{\bigl (}L(F)+\gamma \Omega (F){\bigr )},\qquad \gamma >0.}
這裏,
Obj
(
F
)
{\displaystyle {\text{Obj}}(F)}
稱為目標函數 ,它描述模型的結構風險 ;
L
(
F
)
{\displaystyle L(F)}
是訓練集上的損失函數;
Ω
(
F
)
{\displaystyle \Omega (F)}
是正則項,描述模型的複雜程度;
γ
{\displaystyle \gamma }
是用於控制正則項重要程度的參數。正則項通常包括對光滑度 及向量空間 內範數 上界的限制。[ 3]
L
p
{\displaystyle L_{p}}
-範數 是一種常見的正則項。
在貝葉斯學派的觀點 看來,正則項是在模型訓練過程中引入了某種模型參數的先驗 分佈。
所謂範數 即是抽象之長度,通常意義上滿足長度的三種性質:非負性 、齊次性 和三角不等式 。
以函數的觀點來看,範數是定義在
R
n
→
R
{\displaystyle \mathbb {R} ^{n}\to \mathbb {R} }
的函數;並且它和損失函數類似,也具有下確界。後一性質是由範數的非負性和齊次性保證的[ 4] 。這一特性使得
L
p
{\displaystyle L_{p}}
-範數天然適合做正則項,因為目標函數仍可用梯度下降 等方式求解最佳化問題。
L
p
{\displaystyle L_{p}}
-範數作為正則項時被稱為
L
p
{\displaystyle L_{p}}
-正則項。
機器學習模型當中的參數,可形式化地組成參數向量,記為
ω
→
{\displaystyle {\vec {\omega }}}
。不失一般性,以線性模型為例:
F
(
x
→
;
ω
→
)
:=
ω
→
⊺
⋅
x
→
=
∑
i
=
1
n
ω
i
⋅
x
i
.
{\displaystyle F({\vec {x}};{\vec {\omega }}):={\vec {\omega }}^{\intercal }\cdot {\vec {x}}=\sum _{i=1}^{n}\omega _{i}\cdot x_{i}.}
由於訓練集 當中統計噪聲 的存在,冗餘的特徵可能成為過適 的一種來源。這是因為,對於統計噪聲,模型無法從有效特徵當中提取資訊進行調適 ,故而會轉向冗餘特徵。為了對抗此類過適現象,人們會希望讓儘可能多的
ω
i
{\displaystyle \omega _{i}}
為零。為此,最直觀地,可以引入
L
0
{\displaystyle L_{0}}
-正則項
Ω
(
F
(
x
→
;
ω
→
)
)
:=
γ
0
‖
ω
→
‖
0
n
,
γ
0
>
0.
{\displaystyle \Omega {\bigl (}F({\vec {x}};{\vec {\omega }}){\bigr )}:=\gamma _{0}{\frac {\lVert {\vec {\omega }}\rVert _{0}}{n}},\;\gamma _{0}>0.}
通過引入
L
0
{\displaystyle L_{0}}
-正則項,人們實際上是向最佳化過程引入了一種懲罰機制:當最佳化演算法希望增加模型複雜度(此處特指將原來為零的參數
ω
i
{\displaystyle \omega _{i}}
更新為非零的情形)以降低模型的經驗風險(即降低全域損失)時,在結構風險上進行大小為
γ
0
n
{\displaystyle {\tfrac {\gamma _{0}}{n}}}
的懲罰。於是,當增加模型複雜度在經驗風險上的收益不足
γ
0
n
{\displaystyle {\tfrac {\gamma _{0}}{n}}}
時,整個結構風險實際上會增大而非減小。因此最佳化演算法會拒絕此類更新。
引入
L
0
{\displaystyle L_{0}}
-正則項可使模型參數稀疏化,以及使得模型易於解釋。但
L
0
{\displaystyle L_{0}}
-正則項也有無法避免的問題:非連續、非凸、不可微。因此,在引入
L
0
{\displaystyle L_{0}}
-正則項的目標函數上做最佳化求解,是一個無法在多項式時間內完成的問題。於是,人們轉而考慮
L
0
{\displaystyle L_{0}}
-範數的最緊凸放鬆 ——
L
1
{\displaystyle L_{1}}
-範數,令
Ω
(
F
(
x
→
;
ω
→
)
)
:=
γ
1
‖
ω
→
‖
1
n
,
γ
1
>
0.
{\displaystyle \Omega {\bigl (}F({\vec {x}};{\vec {\omega }}){\bigr )}:=\gamma _{1}{\frac {\lVert {\vec {\omega }}\rVert _{1}}{n}},\;\gamma _{1}>0.}
和引入
L
0
{\displaystyle L_{0}}
-正則項的情況類似,引入
L
1
{\displaystyle L_{1}}
-正則項是在結構風險上進行大小為
γ
1
|
ω
i
|
n
{\displaystyle {\tfrac {\gamma _{1}|\omega _{i}|}{n}}}
的懲罰,以達到稀疏化的目的。
L
1
{\displaystyle L_{1}}
-正則項亦稱LASSO -正則項。[ 5] [ 6]
圖中左側是訓練集 ,右側是驗證集 。訓練集和驗證集資料均是由線性函數加上一定的隨機擾動生成的。圖中橙色直線是以線性模型調適訓練集資料得到模型的函數曲線;綠色虛線則是以15-階多項式模型調適訓練資料得到模型的函數曲線。由此可見,儘管多項式模型在訓練集上的誤差小於線性模型,但在驗證集上的誤差則顯著大於線性模型。此外,多項式模型為了調適噪聲 點,在噪聲點附近進行了高曲率 的彎折。這說明多項式模型過適 了訓練集資料。
在發生過適 時,模型的函數曲線往往會發生劇烈的彎折,這意味着模型函數在局部的切線之斜率非常高。一般地,函數的曲率是函數參數的線性組合 或非線性組合。為了對抗此類過適,人們會希望使得這些參數的值相對稠密且均勻地集中在零附近。於是,人們引入了
L
2
{\displaystyle L_{2}}
-範數,作為
L
2
{\displaystyle L_{2}}
-正則項。令
Ω
(
F
(
x
→
;
w
→
)
)
:=
γ
2
‖
ω
→
‖
2
2
2
n
,
γ
2
>
0
,
{\displaystyle \Omega {\bigl (}F({\vec {x}};{\vec {w}}){\bigr )}:=\gamma _{2}{\frac {\lVert {\vec {\omega }}\rVert _{2}^{2}}{2n}},\;\gamma _{2}>0,}
於是有目標函數
Obj
(
F
)
=
L
(
F
)
+
γ
2
‖
ω
→
‖
2
2
2
n
,
{\displaystyle {\text{Obj}}(F)=L(F)+\gamma _{2}{\frac {\lVert {\vec {\omega }}\rVert _{2}^{2}}{2n}},}
於是對於參數
ω
i
{\displaystyle \omega _{i}}
取偏微分
∂
Obj
∂
ω
i
=
∂
L
∂
ω
i
+
γ
2
n
ω
i
.
{\displaystyle {\frac {\partial {\text{Obj}}}{\partial \omega _{i}}}={\frac {\partial L}{\partial \omega _{i}}}+{\frac {\gamma _{2}}{n}}\omega _{i}.}
因此,在梯度下降 時,參數
ω
i
{\displaystyle \omega _{i}}
的更新
ω
i
′
←
ω
i
−
η
∂
L
∂
ω
i
−
η
γ
2
n
ω
i
=
(
1
−
η
γ
2
n
)
ω
i
−
η
∂
L
∂
ω
i
.
{\displaystyle \omega '_{i}\gets \omega _{i}-\eta {\frac {\partial L}{\partial \omega _{i}}}-\eta {\frac {\gamma _{2}}{n}}\omega _{i}={\Bigl (}1-\eta {\frac {\gamma _{2}}{n}}{\Bigr )}\omega _{i}-\eta {\frac {\partial L}{\partial \omega _{i}}}.}
注意到
η
γ
2
n
{\displaystyle \eta {\tfrac {\gamma _{2}}{n}}}
通常是介於
(
0
,
1
)
{\displaystyle (0,\,1)}
之間的數[ 7] ,
L
2
{\displaystyle L_{2}}
-正則項會使得參數接近零,從而對抗過適。
L
2
{\displaystyle L_{2}}
-正則項又稱Tikhonov -正則項或Ridge-正則項。
提前停止 可看做是時間維度上的正則化。直覺上,隨着迭代次數的增加,如梯度下降這樣的訓練演算法傾向於學習愈加複雜的模型。在時間維度上進行正則化有助於控制模型複雜度,提升一般化能力。在實踐中,提前停止一般是在訓練集 上進行訓練,而後在統計上獨立的驗證集 上進行評估;當模型在驗證集上的效能不再提升時,就提前停止訓練。最後,可在測試集 上對模型效能做最後測試。
^ Bühlmann, Peter; Van De Geer, Sara. Statistics for High-Dimensional Data. Springer Series in Statistics: 9. 2011. ISBN 978-3-642-20191-2 . doi:10.1007/978-3-642-20192-9 . If p > n, the ordinary least squares estimator is not unique and will heavily overfit the data. Thus, a form of complexity regularization will be necessary.
^ Ron Kohavi; Foster Provost. Glossary of terms . Machine Learning. 1998, 30 : 271–274 [2019-12-10 ] . (原始內容存檔 於2019-11-11).
^ Bishop, Christopher M. Pattern recognition and machine learning Corr. printing. New York: Springer. 2007. ISBN 978-0387310732 .
^ 範數的非負性保證了範數有下界。當齊次性等式
‖
c
⋅
x
→
‖
=
|
c
|
⋅
‖
x
→
‖
{\displaystyle \lVert c\cdot {\vec {x}}\rVert =|c|\cdot \lVert {\vec {x}}\rVert }
中的
c
{\displaystyle c}
取零時可知,零向量的範數是零,這保證了範數有下確界。
^ Santosa, Fadil; Symes, William W. Linear inversion of band-limited reflection seismograms.. SIAM Journal on Scientific and Statistical Computing (SIAM). 1986, 7 (4): 1307–1330. doi:10.1137/0907087 .
^ Tibshirani, Robert. Regression Shrinkage and Selection via the lasso. Journal of the Royal Statistical Society. Series B (methodological) (Wiley). 1996, 58 (1): 267–88. JSTOR 2346178 .
^ 可通過恰當地調整學習率
η
{\displaystyle \eta }
與正則係數
γ
2
{\displaystyle \gamma _{2}}
來滿足這一點。