1. 程式人生 > >正則化項L1和L2的區別

正則化項L1和L2的區別

梯度下降法 誤差 font 分享 特征 技術 技術分享 http 現在

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

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

一、概括:

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不斷減小,因此總得來看,θ是不斷減小的。

正則化項L1和L2的區別