Loading AI tools
来自维基百科,自由的百科全书
在數學與電腦科學中,尤其是在機器學習和逆問題領域中,正則化(英語:regularization)是指為解決適定性問題或過適而加入額外資訊的過程。[1]
在機器學習和逆問題的最佳化過程中,正則項往往被加在目標函數當中。
概括來講,機器學習的訓練過程,就是要找到一個足夠好的函數用以在新的資料上進行推理。[2]為了定義什麼是「好」,人們引入了損失函數的概念。一般地,對於範例和模型,有預測值。損失函數是定義在上的二元函數,用來描述基準真相和模型預測值之間的差距。一般來說,損失函數是一個有下確界的函數;當基準真相和模型預測值足夠接近,損失函數的值也會接近該下確界。
因此,機器學習的訓練過程可以被轉化為訓練集上的最小化問題。我們的目標是在泛函空間內,找到使得全域損失最小的模型。
由於損失函數只考慮在訓練集上的經驗風險,這種做法可能會導致過適。為了對抗過適,我們需要向損失函數中加入描述模型複雜程度的正則項,將經驗風險最小化問題轉化為結構風險最小化。
這裏,稱為目標函數,它描述模型的結構風險;是訓練集上的損失函數;是正則項,描述模型的複雜程度;是用於控制正則項重要程度的參數。正則項通常包括對光滑度及向量空間內範數上界的限制。[3]-範數是一種常見的正則項。
在貝葉斯學派的觀點看來,正則項是在模型訓練過程中引入了某種模型參數的先驗分佈。
所謂範數即是抽象之長度,通常意義上滿足長度的三種性質:非負性、齊次性和三角不等式。
以函數的觀點來看,範數是定義在的函數;並且它和損失函數類似,也具有下確界。後一性質是由範數的非負性和齊次性保證的[4]。這一特性使得-範數天然適合做正則項,因為目標函數仍可用梯度下降等方式求解最佳化問題。-範數作為正則項時被稱為-正則項。
機器學習模型當中的參數,可形式化地組成參數向量,記為。不失一般性,以線性模型為例:
由於訓練集當中統計噪聲的存在,冗餘的特徵可能成為過適的一種來源。這是因為,對於統計噪聲,模型無法從有效特徵當中提取資訊進行調適,故而會轉向冗餘特徵。為了對抗此類過適現象,人們會希望讓儘可能多的為零。為此,最直觀地,可以引入-正則項
通過引入-正則項,人們實際上是向最佳化過程引入了一種懲罰機制:當最佳化演算法希望增加模型複雜度(此處特指將原來為零的參數更新為非零的情形)以降低模型的經驗風險(即降低全域損失)時,在結構風險上進行大小為的懲罰。於是,當增加模型複雜度在經驗風險上的收益不足時,整個結構風險實際上會增大而非減小。因此最佳化演算法會拒絕此類更新。
引入-正則項可使模型參數稀疏化,以及使得模型易於解釋。但-正則項也有無法避免的問題:非連續、非凸、不可微。因此,在引入-正則項的目標函數上做最佳化求解,是一個無法在多項式時間內完成的問題。於是,人們轉而考慮-範數的最緊凸放鬆——-範數,令
和引入-正則項的情況類似,引入-正則項是在結構風險上進行大小為的懲罰,以達到稀疏化的目的。
在發生過適時,模型的函數曲線往往會發生劇烈的彎折,這意味着模型函數在局部的切線之斜率非常高。一般地,函數的曲率是函數參數的線性組合或非線性組合。為了對抗此類過適,人們會希望使得這些參數的值相對稠密且均勻地集中在零附近。於是,人們引入了-範數,作為-正則項。令
於是有目標函數
於是對於參數取偏微分
因此,在梯度下降時,參數的更新
注意到通常是介於之間的數[7],-正則項會使得參數接近零,從而對抗過適。
-正則項又稱Tikhonov-正則項或Ridge-正則項。
提前停止可看做是時間維度上的正則化。直覺上,隨着迭代次數的增加,如梯度下降這樣的訓練演算法傾向於學習愈加複雜的模型。在時間維度上進行正則化有助於控制模型複雜度,提升一般化能力。在實踐中,提前停止一般是在訓練集上進行訓練,而後在統計上獨立的驗證集上進行評估;當模型在驗證集上的效能不再提升時,就提前停止訓練。最後,可在測試集上對模型效能做最後測試。