1. 程式人生 > >L1正則化與L2正則化的理解

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