L1正則化產生稀疏模型,L2正則防止過擬合

2021-08-17 14:40:06 字數 2881 閱讀 9356

** j

=j0+

alph

a∑w|

w|(1) (1)j=

j0+a

lpha

∑w|w

|其中j0

j

0是原始的損失函式,後半部分為l1

l

1正則化項,為絕對值之和,j j

帶有絕對值符號的函式,因此

j' role="presentation">j

j是不完全可微的。機器學習的任務就是要通過一些方法(比如梯度下降)求出損失函式的最小值。當我們在原始損失函式j0

j

0後新增l1正則化項時,相當於對j0

j

0做了乙個約束。令l=

α∑w|

w|l =α

∑w|w

|,則j

=j0+

l j=j0

+l,此時我們的任務變成在

l l

約束下求出j0

' role="presentation">j0j

0取最小值的解。考慮二維的情況,即只有兩個權值w1

w 1和w

2 w2

,此時l=|

w1|+

|w2|

l =|

w1|+

|w2|

對於梯度下降法,求解j0

j

0的過程可以畫出等值線,同時l1

l

1正則化的函式l l

也可以在w1

w2' role="presentation">w1w

2w1w

2的二維平面上畫出來。如下圖:

圖中等值線是j0

j

0的等值線,黑色方形是

l l

函式的圖形。在圖中,當j0

' role="presentation">j0j

0等值線與

l l

圖形首次相交的地方就是最優解。上圖中j0

' role="presentation">j0j

0與l l

在l' role="presentation">l

l的乙個頂點處相交,這個頂點就是最優解。注意到這個頂點的值是(w

1,w2

)=(0

,w) (w1

,w2)

=(0,

w)。可以直觀想象,因為

l l

函式有很多『突出的角』(二維情況下四個,多維情況下更多),j0

' role="presentation">j0j

0與這些角接觸的機率會遠大於與

l l

其它部位接觸的機率,而在這些角上,會有很多權值等於0,這就是為什麼l1

' role="presentation">l1l

1正則化可以產生稀疏模型,進而可以用於特徵選擇。

而正則化前面的係數

α α

,可以控制

l' role="presentation">l

l圖形的大小。

α α

越小,l' role="presentation">l

l的圖形越大(上圖中的黑色方框);

α α

越大,l' role="presentation">l

l的圖形就越小,可以小到黑色方框只超出原點範圍一點點,這時最優點的值(w

1,w2

)=(0

,w) (w1

,w2)

=(0,

w)中的w w

可以取到很小的值。

稀疏矩陣指的是很多元素為0,只有少數元素是非零值的矩陣,即得到的線性回歸模型的大部分係數都是0. 通常機器學習中特徵數量很多,例如文字處理時,如果將乙個片語(term)作為乙個特徵,那麼特徵數量會達到上萬個(bigram)。在**或分類時,那麼多特徵顯然難以選擇,但是如果代入這些特徵得到的模型是乙個稀疏模型,表示只有少數特徵對這個模型有貢獻,絕大部分特徵是沒有貢獻的,或者貢獻微小(因為它們前面的係數是0或者是很小的值,即使去掉對模型也沒有什麼影響),此時我們就可以只關注係數是非零值的特徵。這就是稀疏模型與特徵選擇的關係

類似,假設有如下帶l2正則化的損失函式:

(2)j=j

0+α∑

ww2' role="presentation">j=j

0+α∑

ww2(2)

(2)j=j

0+α∑

ww2同樣可以畫出他們在二維平面上的圖形,如下:

二維平面下l2

l

2正則化的函式圖形是個圓,與方形相比,被磨去了稜角。因此j0

j 0與

l l

相交時使得w1

' role="presentation">w1w

1或w2

w

2等於零的機率小了許多,這就是為什麼l2

l

2正則化不具有稀疏性的原因。

擬合過程中通常都傾向於讓權值盡可能小,最後構造乙個所有引數都比較小的模型。因為一般認為引數值小的模型比較簡單,能適應不同的資料集,也在一定程度上避免了過擬合現象。可以設想一下對於乙個線性回歸方程,若引數很大,那麼只要資料偏移一點點,就會對結果造成很大的影響;但如果引數足夠小,資料偏移得多一點也不會對結果造成什麼影響,專業一點的說法是『抗擾動能力強』。

正則化(L1和L2正則)

稀疏性表示資料中心0佔比比較大 引西瓜書中p252原文 對於損失函式後面加入懲罰函式可以降低過擬合的風險,懲罰函式使用l2範數,則稱為嶺回歸,l2範數相當與給w加入先驗,需要要求w滿足某一分布,l2範數表示資料服從高斯分布,而l1範數表示資料服從拉普拉斯分布。從拉普拉斯函式和高斯函式的影象上看,拉普...

L1正則化和L2正則化

為了降低過擬合風險,需要控制模型複雜度,自然想到減少引數個數,但是這個問題不易直接解決,可以通過放寬條件控制。新增優化條件 這會使引數條件空間有明顯的凸角,這些突出點顯然會成為聯合優化時的最優解,但同時這些這些凸點中又會有較多的0值 由其限制條件可見,凸點都在座標軸上 因此l1範數會更易得到稀疏解,...

L1正則化和L2正則化

l1標準化與l2標準化 參考 l1 l2標準化及其python 實現 我們知道,正則化的目的是限制引數過多或者過大,避免模型更加複雜。l1 與 l2 解的稀疏性 以二維情況討論,上圖左邊是 l2 正則化,右邊是 l1 正則化。從另乙個方面來看,滿足正則化條件,實際上是求解藍色區域與黃色區域的交點,即...