L1和L2正則化

L1正則化和L2正則化可以看做是損失函數(shù)的懲罰項(xiàng)。所謂『懲罰』是指對損失函數(shù)中的某些參數(shù)做一些限制。對于線性回歸模型,使用L1正則化的模型建叫做Lasso回歸,使用L2正則化的模型叫做Ridge回歸(嶺回歸)。

L1正則化是指權(quán)值向量www中各個(gè)元素的絕對值之和
L2正則化是指權(quán)值向量www中各個(gè)元素的平方和然后再求平方根

L1正則化可以產(chǎn)生稀疏權(quán)值矩陣,即產(chǎn)生一個(gè)稀疏模型,可以用于特征選擇
L2正則化可以防止模型過擬合(overfitting);一定程度上,L1也可以防止過擬合

稀疏模型與特征選擇的關(guān)系
上面提到L1正則化有助于生成一個(gè)稀疏權(quán)值矩陣,進(jìn)而可以用于特征選擇。為什么要生成一個(gè)稀疏矩陣?

稀疏矩陣指的是很多元素為0,只有少數(shù)元素是非零值的矩陣,即得到的線性回歸模型的大部分系數(shù)都是0.在預(yù)測或分類時(shí),那么多特征顯然難以選擇,但是如果代入這些特征得到的模型是一個(gè)稀疏模型,表示只有少數(shù)特征對這個(gè)模型有貢獻(xiàn),絕大部分特征是沒有貢獻(xiàn)的,或者貢獻(xiàn)微小(因?yàn)樗鼈兦懊娴南禂?shù)是0或者是很小的值,即使去掉對模型也沒有什么影響),此時(shí)我們就可以只關(guān)注系數(shù)是非零值的特征。這就是稀疏模型與特征選擇的關(guān)系。

L1正則化,考慮二維情況:
J = J_0+\alpha\sum_w|w|
其中J0J_0J
0
?
J_0是原始的損失函數(shù),加號后面的一項(xiàng)是L1正則化項(xiàng),\alpha是正則化系數(shù)

image.png

彩色曲線是求解 的過程,黑色方框是正則化函數(shù),可以看到在圖中,當(dāng)?shù)戎稻€與L圖形首次相交的地方就是最優(yōu)解。上圖中與L在L的一個(gè)頂點(diǎn)處相交,這個(gè)頂點(diǎn)就是最優(yōu)解。注意到這個(gè)頂點(diǎn)的值是(w1,w2)=(0,w)可以直觀想象,因?yàn)長函數(shù)有很多『突出的角』(二維情況下四個(gè),多維情況下更多),與這些角接觸的機(jī)率會遠(yuǎn)大于與L其它部位接觸的機(jī)率(這是很直覺的想象,突出的角比直線的邊離等值線更近寫),而在這些角上,會有很多權(quán)值等于0(因?yàn)榻蔷驮谧鴺?biāo)軸上),這就是為什么L1正則化可以產(chǎn)生稀疏模型,進(jìn)而可以用于特征選擇。

而正則化前面的系數(shù)\alpha,可以控制L圖形的大小。\alpha越小,L的圖形越大(上圖中的黑色方框);\alpha越大,L的圖形就越小,可以小到黑色方框只超出原點(diǎn)范圍一點(diǎn)點(diǎn),這時(shí)最優(yōu)點(diǎn)的值(w1,w2)=(0,w)中的w可以取到很小的值。

L2正則化
J=J_0+\alpha\sum_ww^2

image.png

二維平面下L2正則化的函數(shù)圖形是個(gè)圓(絕對值的平方和,是個(gè)圓),與方形相比,被磨去了棱角。因此與L相交時(shí)使得或 等于零的機(jī)率小了許多(這個(gè)也是一個(gè)很直觀的想象),這就是為什么L2正則化不具有稀疏性的原因,因?yàn)椴惶赡艹霈F(xiàn)多數(shù)w都為0的情況。

L2正則化和過擬合的關(guān)系

擬合過程中通常都傾向于讓權(quán)值盡可能小,最后構(gòu)造一個(gè)所有參數(shù)都比較小的模型。因?yàn)橐话阏J(rèn)為參數(shù)值小的模型比較簡單,能適應(yīng)不同的數(shù)據(jù)集,也在一定程度上避免了過擬合現(xiàn)象。可以設(shè)想一下對于一個(gè)線性回歸方程,若參數(shù)很大,那么只要數(shù)據(jù)偏移一點(diǎn)點(diǎn),就會對結(jié)果造成很大的影響;但如果參數(shù)足夠小,數(shù)據(jù)偏移得多一點(diǎn)也不會對結(jié)果造成什么影響,專業(yè)一點(diǎn)的說法是『抗擾動能力強(qiáng)』。

為什么L2正則化可以獲得值很小的參數(shù)

以線性回歸中的梯度下降法為例,假設(shè)要求解的參數(shù)為\thetah_\theta(x)是我們的假設(shè)函數(shù)。線性回歸一般使用平方差損失函數(shù)。假設(shè)有m個(gè)樣本,線性回歸的代價(jià)函數(shù)如下,為了后續(xù)處理方便,乘以一個(gè)常數(shù)\frac{1}{2m}

J(\theta)=\frac{1}{2m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2(3)

在梯度下降算法中,需要先對參數(shù)求導(dǎo),得到梯度。梯度本身是上升最快的方向,為了讓損失盡可能小,沿梯度的負(fù)反向更新參數(shù)即可。

對于單個(gè)樣本,先對某個(gè)參數(shù)\theta_j求導(dǎo):

\frac{\partial}{\partial\theta_j}J(\theta)=\frac{1}{m}(h_\theta(x)-y)\frac{\partial}{\partial\theta_j}h_\theta(x) (3.1)

注意到h_\theta(x)的表達(dá)式是h_\theta(x)=\theta_0x_0+\theta_1x_1+...+\theta_nx_n。單個(gè)樣本對某個(gè)參數(shù)\theta_j求導(dǎo),\frac{\partial}{\partial\theta_j}h_\theta(x)=x_j,上式的結(jié)果為:

\frac{\partial}{\partial\theta_j}J(\theta)=\frac{1}{m}(h_\theta(x)-y)x_j (3.2)

在考慮所有樣本的情況,將每個(gè)樣本對\theta_j的導(dǎo)數(shù)求和即可,得到下式:

\frac{\partial}{\partial\theta_j}J(\theta)=\frac{1}{m}\sum_{i=1}^m(h_\theta(x)^{(i)}-y^{(i)})x_j^{(i)} (3.3)

梯度下降算法中,為了盡快收斂,會沿梯度的負(fù)方向更新參數(shù),因此在(3.3)前面添加一個(gè)負(fù)號,并乘以一個(gè)系數(shù)\alpha(學(xué)習(xí)率),得到最終用于迭代計(jì)算參數(shù)\theta_j的形式:

\theta_j: = \theta_j-\alpha\frac{1}{m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} (4)

在原始代價(jià)函數(shù)之后添加L2正則化,則迭代公式會變成下面的樣子:

\theta_j:=\theta_j(1-\alpha\frac{\lambda}{m})-\alpha\frac{1}{m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} (5)

其中\lambda就是正則化參數(shù)。從上式可以看到,與未添加l2正則化的迭代公式相比,每一次迭代,\theta_j都要先乘以一個(gè)小于1的因子(即(1-\alpha\frac{1}{m})),從而使得\theta_j不斷減小,因此總得來看,\theta是不斷減小的。

L1正則化一定程度上也可以防止過擬合。當(dāng)L1的正則化系數(shù)很小時(shí),得到的最優(yōu)解會很小,可以達(dá)到和L2正則化類似的效果。

正則化 參數(shù)的選擇

通常越大的\lambda可以讓代價(jià)函數(shù)在參數(shù)為0時(shí)取到最小值。因?yàn)檎齽t化系數(shù)越大,正則化的函數(shù)圖形就會向坐標(biāo)軸原點(diǎn)收縮得厲害,這個(gè)現(xiàn)象稱為shrinkage,過程可以稱為shrink to zero。

原文地址https://blog.csdn.net/jinping_shi/article/details/52433975

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,923評論 6 535
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,740評論 3 420
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,856評論 0 380
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,175評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,931評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,321評論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,383評論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,533評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,082評論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,891評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,067評論 1 371
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,618評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,319評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,732評論 0 27
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,987評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,794評論 3 394
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,076評論 2 375