L1和L2正則詳解

之前看過很多L1正則和L2正則分析的文章,也看了很多比較二者區別的文章,但始終沒能總結成體系,寫這篇文章的目的就是想總結一下關於L1正則和L2正則的分析。

正則化方法 (Regularization) 是機器學習領域中一種非常重要的技巧,它主要用來對權重係數加以約束限制,進而防止過擬合。數學上來講,正則化即爲在目標函數中加入對權值係數的約束。

首先說說使用正則化的場景:

  1. 變量較多或者樣本量少於變量數的情形;

  2. 特徵集合具有比較高的共線性;

  3. 尋求稀疏解(比如估計模型參數時的嵌入式特徵選擇);

  4. 爲了解釋或尋求高維數據集中變量組合;

正則化的作用在於:

1)保證模型儘可能的簡單,避免過擬合。

2)約束模型特性,加入一些先驗知識,例如稀疏、低秩等。

說到正則化的作用,先要搞清楚兩個問題

1)實現參數的稀疏有什麼好處嗎?

一個好處是可以簡化模型,避免過擬合。因爲一個模型中真正重要的參數可能並不多,如果考慮所有的參數起作用,那麼可以對訓練數據可以預測的很好,但是對測試數據就只能呵呵了。另一個好處是參數變少可以使整個模型獲得更好的可解釋性。

2)參數值越小代表模型越簡單嗎?

是的。爲什麼參數越小,說明模型越簡單呢,這是因爲越複雜的模型,越是會嘗試對所有的樣本進行擬合,甚至包括一些異常樣本點,這就容易造成在較小的區間裏預測值產生較大的波動,這種較大的波動也反映了在這個區間裏的導數很大,而只有較大的參數值才能產生較大的導數。因此複雜的模型,其參數值會比較大。

瞭解這些前提知識以後,可以看L1和L2的區別:

L1正則化與L2正則化形式上的區別在於範數的階。這兩種正則化的主要區別在於以下幾點:

解的唯一性:L2正則化具有唯一解,而L1正則化沒有唯一解。

圖一:本圖闡釋了L1正則化和L2正則化解的唯一性,其中綠色的是L2正則化約束,其餘三條是L1正則化約束。

內嵌特徵選擇:L1具有內嵌的特徵選擇特性,而L2沒有。L1正則化會得到稀疏的係數解,即少數權重係數非零,多數權重係數經過L1正則約束值爲零。L2正則約束不會產生稀疏的係數解,因此不具特徵選擇特性。

稀疏性:即只有少數權重係數非零,L1正則化具有稀疏性,它會使得多數權重係數爲零,或者少數比較大的權重係數。

計算複雜度:L1正則化沒有解析解,而L2正則化具有解析解。這使得L2正則化計算複雜度更低。對於非稀疏的情形,L1正則化計算複雜度較高。

這是從應用場景上區分L1和L2.但這些解釋還是趨於表面說法了

接下來我們要從原理上區分L1和L2,同時也能理解L1能稀疏化參數求解結果,L2能防止過擬合的根本原因了

主要從三個角度來理解L1正則化的原理:從優化問題的角度,從梯度的角度和從概率的角度

L1爲什麼可以實現稀疏化?L1利用的是絕對值函數的尖峯

優化問題的角度:

從梯度的角度來看:

從概率的角度來看:


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章