L1,L2,L0區(qū)別,為什么可以防止過(guò)擬合

引入

監(jiān)督學(xué)習(xí)的過(guò)程可以概括為:最小化誤差的同時(shí)規(guī)則化參數(shù)。最小化誤差是為了讓模型擬合訓(xùn)練數(shù)據(jù),規(guī)則化參數(shù)是為了防止過(guò)擬合。參數(shù)過(guò)多會(huì)導(dǎo)致模型復(fù)雜度上升,產(chǎn)生過(guò)擬合,即訓(xùn)練誤差很小,但測(cè)試誤差很大,這和監(jiān)督學(xué)習(xí)的目標(biāo)是相違背的。所以需要采取措施,保證模型盡量簡(jiǎn)單的基礎(chǔ)上,最小化訓(xùn)練誤差,使模型具有更好的泛化能力(即測(cè)試誤差也很小)。

范數(shù)規(guī)則化有兩個(gè)作用:

1)保證模型盡可能的簡(jiǎn)單,避免過(guò)擬合。

2)約束模型特性,加入一些先驗(yàn)知識(shí),例如稀疏、低秩?等。


先討論幾個(gè)問(wèn)題:

1)實(shí)現(xiàn)參數(shù)的稀疏有什么好處嗎?

一個(gè)好處是可以簡(jiǎn)化模型,避免過(guò)擬合。因?yàn)橐粋€(gè)模型中真正重要的參數(shù)可能并不多,如果考慮所有的參數(shù)起作用,那么可以對(duì)訓(xùn)練數(shù)據(jù)可以預(yù)測(cè)的很好,但是對(duì)測(cè)試數(shù)據(jù)就只能呵呵了。另一個(gè)好處是參數(shù)變少可以使整個(gè)模型獲得更好的可解釋性。

2)參數(shù)值越小代表模型越簡(jiǎn)單嗎?

是的。為什么參數(shù)越小,說(shuō)明模型越簡(jiǎn)單呢,這是因?yàn)樵綇?fù)雜的模型,越是會(huì)嘗試對(duì)所有的樣本進(jìn)行擬合,甚至包括一些異常樣本點(diǎn),這就容易造成在較小的區(qū)間里預(yù)測(cè)值產(chǎn)生較大的波動(dòng),這種較大的波動(dòng)也反映了在這個(gè)區(qū)間里的導(dǎo)數(shù)很大,而只有較大的參數(shù)值才能產(chǎn)生較大的導(dǎo)數(shù)。因此復(fù)雜的模型,其參數(shù)值會(huì)比較大。


L0范數(shù)

L0是指向量中非0的元素的個(gè)數(shù)。如果我們用L0范數(shù)來(lái)規(guī)則化一個(gè)參數(shù)矩陣W的話,就是希望W的大部分元素都是0。換句話說(shuō),讓參數(shù)W是稀疏的。

但不幸的是,L0范數(shù)的最優(yōu)化問(wèn)題是一個(gè)NP hard問(wèn)題,而且理論上有證明,L1范數(shù)是L0范數(shù)的最優(yōu)凸近似,因此通常使用L1范數(shù)來(lái)代替。


L1范數(shù)

L1范數(shù)是指向量中各個(gè)元素絕對(duì)值之和,也有個(gè)美稱叫“稀疏規(guī)則算子”(Lasso regularization)。

L1正則化之所以可以防止過(guò)擬合,是因?yàn)長(zhǎng)1范數(shù)就是各個(gè)參數(shù)的絕對(duì)值相加得到的,我們前面討論了,參數(shù)值大小和模型復(fù)雜度是成正比的。因此復(fù)雜的模型,其L1范數(shù)就大,最終導(dǎo)致?lián)p失函數(shù)就大,說(shuō)明這個(gè)模型就不夠好。


L2范數(shù)

也叫“嶺回歸”(Ridge Regression),也叫它“權(quán)值衰減weight decay”

但與L1范數(shù)不一樣的是,它不會(huì)是每個(gè)元素為0,而只是接近于0。越小的參數(shù)說(shuō)明模型越簡(jiǎn)單,越簡(jiǎn)單的模型越不容易產(chǎn)生過(guò)擬合現(xiàn)象。

L2范數(shù)即歐氏距離:


L1為什么比L2更容易獲得稀疏解?

為什么L1稀疏,L2平滑?

從兩個(gè)角度來(lái)解釋這個(gè)問(wèn)題。

角度一:數(shù)學(xué)公式

這個(gè)角度從權(quán)值的更新公式來(lái)看權(quán)值的收斂結(jié)果。

首先來(lái)看看L1和L2的梯度(導(dǎo)數(shù)的反方向):

所以(不失一般性,我們假定:wi等于不為0的某個(gè)正的浮點(diǎn)數(shù),學(xué)習(xí)速率η 為0.5):

L1的權(quán)值更新公式為wi= wi-?η * 1 ?= wi- 0.5 * 1,也就是說(shuō)權(quán)值每次更新都固定減少一個(gè)特定的值(比如0.5),那么經(jīng)過(guò)若干次迭代之后,權(quán)值就有可能減少到0。

L2的權(quán)值更新公式為wi= wi-?η * wi= wi- 0.5 * wi,也就是說(shuō)權(quán)值每次都等于上一次的1/2,那么,雖然權(quán)值不斷變小,但是因?yàn)槊看味嫉扔谏弦淮蔚囊话耄院芸鞎?huì)收斂到較小的值但不為0。

L1能產(chǎn)生等于0的權(quán)值,即能夠剔除某些特征在模型中的作用(特征選擇),即產(chǎn)生稀疏的效果。

L2可以得迅速得到比較小的權(quán)值,但是難以收斂到0,所以產(chǎn)生的不是稀疏而是平滑的效果。

角度二:幾何空間

這個(gè)角度從幾何位置關(guān)系來(lái)看權(quán)值的取值情況。

直接來(lái)看下面這張圖:

高維我們無(wú)法想象,簡(jiǎn)化到2維的情形,如上圖所示。其中,左邊是L1圖示,右邊是L2圖示,左邊的方形線上是L1中w1/w2取值區(qū)間,右邊得圓形線上是L2中w1/w2的取值區(qū)間,綠色的圓圈表示w1/w2取不同值時(shí)整個(gè)正則化項(xiàng)的值的等高線(凸函數(shù)),從等高線和w1/w2取值區(qū)間的交點(diǎn)可以看到,L1中兩個(gè)權(quán)值傾向于一個(gè)較大另一個(gè)為0,L2中兩個(gè)權(quán)值傾向于均為非零的較小數(shù)。這也就是L1稀疏,L2平滑的效果。


假設(shè)原先損失函數(shù)是C0,那么在L2和L1正則條件下對(duì)參數(shù)求導(dǎo)分別是:



可以想象用梯度下降的方法,當(dāng)w小于1的時(shí)候,L2正則項(xiàng)的懲罰效果越來(lái)越小,L1正則項(xiàng)懲罰效果依然很大,L1可以懲罰到0,而L2很難。


elastic net

L1+L2結(jié)合的方式,即elastic net。這種方式同時(shí)兼顧特征選擇(L1)和權(quán)重衰減(L2)。其公式如下這種方式同時(shí)兼顧特征選擇(L1)和權(quán)重衰減(L2)。其公式如下

上式中,t為正則項(xiàng)與L(w)之間的trade-off系數(shù),和之前的描述一致,p是elastic net里獨(dú)有的參數(shù),它是L1和L2之間的一個(gè)trade-off,如果p為0,那么上式退化為L(zhǎng)2正則化,如果p為1,那么上式退化為L(zhǎng)1正則化。所以當(dāng)p取值為0到1時(shí)(不包含端點(diǎn)),上式兼顧了L1和L2的特點(diǎn)。又由于L1為1范式,L2為2范式,那么elastic net就介于1范式和2范式之間。











總結(jié):L1會(huì)趨向于產(chǎn)生少量的特征,而其他的特征都是0,而L2會(huì)選擇更多的特征,這些特征都會(huì)接近于0。Lasso在特征選擇時(shí)候非常有用,而Ridge就只是一種規(guī)則化而已。在所有特征中只有少數(shù)特征起重要作用的情況下,選擇Lasso比較合適,因?yàn)樗茏詣?dòng)選擇特征。而如果所有特征中,大部分特征都能起作用,而且起的作用很平均,那么使用Ridge也許更合適。


L0/L1/L2范數(shù)的聯(lián)系與區(qū)別

L0,L1,L2正則化淺析

為什么L1稀疏,L2平滑?(贊)

l1 相比于 l2 為什么容易獲得稀疏解?(贊)


https://www.zhihu.com/question/20473040?utm_campaign=rss&utm_medium=rss&utm_source=rss&utm_content=title

機(jī)器學(xué)習(xí)中的正則化技術(shù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容