學習筆記234—正則化項L1和L2的區別


一、概括:

L1和L2是正則化項,又叫做罰項,是為了限制模型的參數,防止模型過擬合而加在損失函數后面的一項。

二、區別:

  1.L1是模型各個參數的絕對值之和。

   L2是模型各個參數的平方和的開方值。

  2.L1會趨向於產生少量的特征,而其他的特征都是0.

    因為最優的參數值很大概率出現在坐標軸上,這樣就會導致某一維的權重為0 ,產生稀疏權重矩陣

     L2會選擇更多的特征,這些特征都會接近於0。  

          最優的參數值很小概率出現在坐標軸上,因此每一維的參數都不會是0。當最小化||w||時,就會使每一項趨近於0

三、再討論幾個問題

1.為什么參數越小代表模型越簡單?

  越是復雜的模型,越是嘗試對所有樣本進行擬合,包括異常點。這就會造成在較小的區間中產生較大的波動,這個較大的波動也會反映在這個區間的導數比較大。

  只有越大的參數才可能產生較大的導數。因此參數越小,模型就越簡單。

2.實現參數的稀疏有什么好處?

  因為參數的稀疏,在一定程度上實現了特征的選擇。一般而言,大部分特征對模型是沒有貢獻的。這些沒有用的特征雖然可以減少訓練集上的誤差,但是對測試集的樣本,反而會產生干擾。稀疏參數的引入,可以將那些無用的特征的權重置為0.

3.L1范數和L2范數為什么可以避免過擬合?

  加入正則化項就是在原來目標函數的基礎上加入了約束。當目標函數的等高線和L1,L2范數函數第一次相交時,得到最優解。

  L1范數:

  L1范數符合拉普拉斯分布,是不完全可微的。表現在圖像上會有很多角出現。這些角和目標函數的接觸機會遠大於其他部分。就會造成最優值出現在坐標軸上,因此就會導致某一維的權重為0 ,產生稀疏權重矩陣,進而防止過擬合。

  L2范數:

  L2范數符合高斯分布,是完全可微的。和L1相比,圖像上的棱角被圓滑了很多。一般最優值不會在坐標軸上出現。在最小化正則項時,可以是參數不斷趨向於0.最后活的很小的參數。

  假設要求的參數為θθ,hθ(x)hθ(x)是我們的假設函數,那么線性回歸的代價函數如下:

  

  那么在梯度下降法中,最終用於迭代計算參數θθ的迭代式為:

  

  如果在原始代價函數之后添加L2正則化,則迭代公式會變成下面的樣子:

  

  每一次迭代,θj都要先乘以一個小於1的因子,從而使得θj不斷減小,因此總得來看,θ是不斷減小的。

4.L0范數和L1范數區別?

  L0范數是指向量中非0的元素的個數。如果我們用L0范數來規則化一個參數矩陣W的話,就是希望W的大部分元素都是0。這太直觀了,太露骨了吧,換句話說,讓參數W是稀疏的。 L1范數是指向量中各個元素絕對值之和。既然L0可以實現稀疏,為什么不用L0,而要用L1呢?個人理解一是因為L0范數很難優化求解(NP難問題),二是L1范數是L0范數的最優凸近似,而且它比L0范數要容易優化求解。所以大家才把目光和萬千寵愛轉於L1范數。

      OK,來個一句話總結:L1范數和L0范數可以實現稀疏,L1因具有比L0更好的優化求解特性而被廣泛應用。

參考連接:https://www.cnblogs.com/lyr2015/p/8718104.html

https://blog.csdn.net/jinping_shi/article/details/52433975

https://blog.csdn.net/zouxy09/article/details/24971995


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM