題:
為什麼L1範數適用於稀疏模型
Yongwei Xing
2012-12-11 13:25:01 UTC
view on stackexchange narkive permalink

我正在閱讀有關線性回歸的書。關於L1和L2範數有一些句子。我了解它們,只是不明白為什麼L1規範適用於稀疏模型。有人可以給一個簡單的解釋嗎?

在同一http://www.chioka.in/differences-between-l1-and-l2-as-loss-function-and-regularization/中有一篇博客文章。
基本上,稀疏性是由等值面軸上的尖銳邊緣引起的。到目前為止,我發現的最佳圖形解釋是該視頻:https://www.youtube.com/watch?v=sO4ZirJh9ds
檢查以下中級職位。這可能會幫助https://medium.com/@vamsi149/regularization-in-machine-learning-connecting-the-dots-c6e030bfaddd
七 答案:
bnaul
2012-12-11 14:25:31 UTC
view on stackexchange narkive permalink

考慮向量$ \ vec {x} =(1,\ varepsilon)\ in \ mathbb {R} ^ 2 $,其中$ \ varepsilon>0 $很小。 $ \ vec {x} $的$ l_1 $和$ l_2 $範數分別由

$$ || \ vec {x} || _1 = 1+ \ varepsilon,\ \給出|| \ vec {x} || _2 ^ 2 = 1+ \ varepsilon ^ 2 $$

現在說,作為某些正則化程序的一部分,我們將減小其中之一的大小。 $ \ vec {x} $中$ \ delta \ leq \ varepsilon $的元素。如果我們將$ x_1 $更改為$ 1- \ delta $,則得出的範數為

$$ || \ vec {x}-(\ delta,0)|| _1 = 1- \ delta + \ varepsilon ,\ \ || \ vec {x}-(\ delta,0)|| _2 ^ 2 = 1-2 \ delta + \ delta ^ 2 + \ varepsilon ^ 2 $$

,將$ x_2 $減去$ \ delta $給出範數

$$ || \ vec {x}-(0,\ delta)|| _1 = 1- \ delta + \ varepsilon,\ \ || \ vec {x}-(0,\ delta)|| _2 ^ 2 = 1-2 \ varepsilon \ delta + \ delta ^ 2 + \ varepsilon ^ 2 $$

這裡要注意的是,對於$ l_2 $的罰款,對較大項$ x_1 $進行正則化會導致範數減少的幅度要比對較小項$ x_2 \約0 $的減少幅度大得多。但是,對於$ l_1 $罰款,減少幅度是相同的。因此,當使用$ l_2 $範數對模型進行懲罰時,幾乎不可能將任何東西設置為零,因為當$ \ varepsilon時,從$ \ varepsilon $到$ 0 $的$ l_2 $範數的減少幾乎不存在$很小。另一方面,$ l_1 $範數的減少總是等於$ \ delta $,而不管受到懲罰的數量如何。

另一種思考方式:$ l_1 $的含義並不多懲罰鼓勵稀疏,但是在某種意義上,$ l_2 $的懲罰在元素接近零的位置上會產生遞減的收益,從而在某種程度上不鼓勵

感謝您的回答!不過,我對最後一點並不信服。如果運行非罰線性回歸,則幾乎不會獲得稀疏解(而添加L1罰則通常會給您帶來稀疏性)。因此,實際上,L1罰分的確通過發送從零開始精確到零的係數來鼓勵稀疏性。
@StefanWager也許有點誇大其詞,但我確實認為這裡的$ l_1 $罰金沒有什麼特別的地方:任何$ \ alpha \ leq1 $的$ l_ \ alpha $罰金也會引起稀疏,但是您看到了在實踐中較少使用(可能是因為它們不是凸的)。如果您真的只是想稀疏,那麼要走$ l_0 $的罰款(與非零條目的數量成正比),這恰好是個噩夢。
對,那是正確的。有許多導致稀疏性的規範(例如,正如您所提到的,任何p <= 1的Lp規範)。通常,任何在零處具有尖角的規範都會引起稀疏性。因此,回到最初的問題-L1範數通過在零處具有不連續的漸變來誘導稀疏性(對此屬性的任何其他懲罰也將這樣做)。
如果有人想閱讀更多內容,那麼有很多關於非凸罰函數的活躍文獻,這些函數可以替代L1範數(例如,最近,http://papers.nips.cc/paper/4904-regularized-m-estimators-非凸統計和算法的局部最優算法)。
很好的答案,我一直想知道一陣子,直到我發現了這個。
是否有其他可以提高凸度的凸面調節器?我知道t學生分佈正在這樣做。還有其他嗎?
我同意斯特凡·瓦格(Stefan Wager)對最後一點的擔憂。特別是,從某種意義上講,問題是,您發現$(ell,$ epsilon)$周圍$ \ ell_1 $球的最小$ \ ell_1 $元素。(您的$ \ delta $坐標協調擾動使$ \ ell_1 $球面的角位於$(1,\ epsilon)$周圍。)因此,由於這些球面共享平行面,因此兩個點的折減相等。另一方面,可能性具有平滑的輪廓。這就是您的示例未顯示套索展示的$ \ ell_1 $範數的稀疏性導致的原因。
儘管這個答案很大程度上基於theta將小於1的假設。
Kent Munthe Caspersen
2015-07-01 02:38:38 UTC
view on stackexchange narkive permalink

對於稀疏模型,我們考慮一個模型,其中許多權重為0。因此,讓我們對L1正則化如何更可能創建0權重進行推理。

請考慮一個模型,該模型由權重$(w_1,w_2,\ dots,w_m)$。

使用L1正則化,可以通過損失函數$ L_1(w)$ = $ \ Sigma_i | w_i | $來懲罰模型。

使用L2正則化,您可以通過損失函數$ L_2(w)$ = $ \ frac {1} {2} \ Sigma_i w_i ^ 2 $

If使用梯度下降,您將使步長大小\\ eta $乘以梯度,使權重沿梯度的相反方向反複變化。這意味著,較陡峭的漸變將使我們採取更大的步幅,而較平緩的漸變將使我們採取更小的步幅。讓我們看一下漸變(在L1情況下為次漸變):

$ \ frac {dL_1(w)} {dw} =符號(w)$,其中$ sign(w)=(\ frac {w_1} {| w_1 |},\ frac {w_2} {| w_2 |},\ dots,\ frac {w_m} {| w_m |})$

$ \ frac {dL_2(w) } {dw} = w $

如果我們繪製損失函數,並且它是僅由一個參數組成的模型的導數,則L1看起來像這樣:

enter image description here

對於L2來說是這樣的:

enter image description here

請注意,對於$ L_1 $,梯度為1或-1,除了$ w_1 = 0 $時。這意味著無論權重值如何,L1正則化將以相同步長將任何權重移向0。相反,您可以看到隨著權重接近0,$ L_2 $梯度朝著0線性減小。因此,L2-正則化也將任何權重移向0,但是當權重接近0時,步長會越來越小

嘗試想像一下,從一個$ w_1 = 5 $的模型開始,然後使用$ \ eta = \ frac {1} {2} $。在下面的圖片中,您可以看到使用L1正則化的梯度下降如何使10個更新$ w_1:= w_1-\ eta \ cdot \ frac {dL_1(w)} {dw} = w_1-\ frac {1} { 2} \ cdot 1 $,直到達到$ w_1 = 0 $的模型:

enter image description here

相反,通過L2正規化,其中$ \ eta = \ frac {1} {2} $,梯度為$ w_1 $,導致每一步僅接近0。即,我們進行更新$ w_1:= w_1-\ eta \ cdot \ frac {dL_2(w)} {dw} = w_1-\ frac {1} {2} \ cdot w_1 $因此,無論有多少個模型,權重永遠不會達到0我們採取的步驟:

enter image description here

請注意,如果步長$ \ eta $如此之高,L2-正則化可以使權重達到零它一步就達到零。即使L2正則化本身超過或低於0,當與目標函數一起使用時,它仍然可以達到0的權重,該目標函數試圖使模型相對於權重的誤差最小。在那種情況下,找到模型的最佳權重是在正則化(權重較小)和最小化損失(擬合訓練數據)之間進行權衡,而權衡的結果可能是某些權重的最佳值是0。

有人可以向我解釋一下,為什麼當我們將初始權重w1 = 5.1而不是5時,我們不會陷入無限循環。 $$ \ eta = 0.5 $$ 令w = 0.1,w> 0因此我們的偏導數等於1 $$ w_ {first \ text {} step} = 0.1-0.5 *(+ 1)=> w = -0.4 $$ 然後執行第二步,現在w <0 =>導數= -1: $$ w_ {第二步} = -0.4-0.5 *(-1)= 0.1。$$ 因此,我們將在0附近無休止地振盪。
正確的@AlexYashin-如果僅基於L1正則化更新權重,則最終可能會產生權重在0附近波動。但是,我們絕不會單獨使用正則化來調整權重。我們將正則化與優化損失函數結合使用。這樣,正則化將權重推向零,而我們同時嘗試將權重推至優化預測的值。第二方面是學習率。學習率較小時,我們可以接近正則化值可能波動的值,因此我們可以忽略它
為什麼`dL2(w)/ dw`是'模塊'而不是線性的?
@mrgloom的dL2(w)/ dw可以理解為重量變化時L2(w)的變化。由於L2正則化平方權重,因此當我們具有更高的權重時,對於相同的權重變化,“ L2(w)”的變化將更大。這就是為什麼在繪製函數時函數是凸的。但是,對於L1,無論權重是多少,每一次權重變化所產生的“ L1(w)”變化都是相同的-這導致了線性函數。
左側的“ dl2(w)/ dw”圖似乎是錯誤的。$ x ^ 2 $的導數為$ x $-通過原點的直線,其中$ x <0 $的*負*值?
@Frank您說得對,謝謝。我已經糾正了該圖。
@KentMuntheCaspersen了不起的解釋!感謝您提供的圖表以及為使此操作直觀而付出的努力!
-1
@Jjang,因為相對於L1正則化而言,對於0權重而言,梯度是不確定的,因此通常使用的慣例是,如果它變為0或超過它,則僅保持0。由於通常使用L1正則化進行特徵選擇,因此0權重僅表示我們將特徵排除在外。但是,有一些實現則不然。如果一次處理一個樣本(隨機與批次梯度下降),您可能不希望僅因為第一個樣本指向該方向而保持0權重。在線/連續學習也是如此,未來的數據可能會揭示新的重要變量
Zhanxiong
2016-04-04 20:46:46 UTC
view on stackexchange narkive permalink

Hastie,Tibshirani和Friedman的統計學習要素中的圖3.11非常具有說明性: enter image description here

說明:$ \ hat {\ beta} $是無約束的最小二乘估計。紅色橢圓是最小二乘誤差函數的輪廓(如該圖的標題中所述),以參數$ \ beta_1 $和$ \ beta_2 $表示。在沒有約束的情況下,誤差函數在MLE $ \ hat {\ beta} $處被最小化,並且其值隨著紅色橢圓的擴展而增加。菱形和圓盤區域分別是套索($ L_1 $)回歸和山脊($ L_2 $)回歸的可行區域。啟發式地,對於每種方法,我們都在尋找紅色橢圓和藍色區域的交點,目的是在保持可行性的同時使誤差函數最小化。

話雖如此,很明顯,可以看到與菱形可行區域相對應的$ L_1 $約束更有可能產生一個交點,該交點的解的一個分量為零(即,稀疏模型)是由於橢圓,圓盤和菱形的幾何特性。僅僅是因為鑽石的角(其中一個分量為零)更容易與對角線延伸的橢圓相交。

如果沒有其他信息,該插圖將無法令人信服。例如。為什麼誤差輪廓應該位於圖中的位置?
最終,@HrishikeshGanu花費了一些時間來編輯帖子。
所有輪廓將具有相同的形式...
請注意,只有當$ \ hat {\ beta} $在$ \ beta_1 $和$ \ beta_2 $軸上具有不同的方差時,才首選使用L1邊緣。換句話說,當紅線分佈在對角線$ \ beta_1 = \ beta_2 $軸上不對稱時。如果它是對稱的,則整個邊緣具有相同的距離/值/成本。
它來自拉格朗日乘子的屬性。在最佳情況下,應共享損耗和約束的切線。因為在不可微的點上有無限切線,所以更有可能將它們作為解。
Elvis
2012-12-11 14:58:14 UTC
view on stackexchange narkive permalink

看看統計學習的要素的圖3.11(第71頁)。它顯示了使平方誤差函數最小化的無約束$ \ hat \ beta $的位置,橢圓表示平方誤差函數的水平,以及受約束$ \ ell_1(\ hat \ beta)< t $和$ \ ell_2(\ hat \ beta)< t $。

這將使您從幾何角度理解在$ \ ell_1 $約束下,您會得到一些空組件。這基本上是因為$ \ ell_1 $球$ \ {x:\ ell_1(x)\ le 1 \} $在軸上具有“邊緣”。

更一般地說,這本書是不錯的參考書關於這個主題:既嚴謹又說明充分,很好的解釋。

我認為您的第二段是關鍵……至少就我的直覺而言:l1“球”更像是沿軸尖刺的鑽石,這意味著受約束擊中它的超平面更有可能在其上為零軸。
是的,我經常將優化過程想像為一個點的運動,該點被提交給兩種力:由於平方誤差函數而吸引到不受約束的$ \ hat \ beta $,而吸引到0 thak的吸引到$ \ ell_1 $或$ \ ell_2 $規範。在此,該吸引力的“幾何形狀”改變了點的行為。如果您固定一個小的$ \ ell_1 $或$ \ ell_2 $球,它可以在其中自由移動,它將在球的邊界上滑動,以便靠近$ \ hat \ beta $。結果顯示在上述書籍的插圖中...
這本書不錯,但是它從不解釋它的來歷和背後的數學原理。
solver149
2018-09-01 08:05:17 UTC
view on stackexchange narkive permalink

L1 Norm vs L2 Norm

圖像顯示了L1和L2範數所占區域的形狀。第二張圖像由各種梯度下降等高線組成,用於各種回歸問題。在所有等高線圖中,觀察與Ridge或L2 Norm相交的紅色圓圈。交點不在軸上。所有輪廓中的黑色圓圈代表與L1範數或套索相交的輪廓。它相交於相對靠近軸的位置。這導致係數為0,從而進行特徵選擇。因此,L1範數使模型變得稀疏。

以下鏈接的詳細說明:單擊發佈到數據科學上

這是一個很好的解釋,但對示例成本函數的表達式進行其他註釋也將很有用。也就是說,$ \ ell_2 $ -norm錯誤的圓形看起來很直觀,但是,狹窄伸長的形狀(也用於大多數其他示例)似乎並不瑣碎且不言自明。(在這裡,我談論的是圖8(b)的左上角成本函數:為什麼其主要方向朝$ \ beta_1 = 1 $點,而不是朝向$ \ beta_1 = 0 $?輪廓將不同,並且$ L_1 $最小化點將不為0!)
Arnab Mukherjee
2018-01-11 19:01:43 UTC
view on stackexchange narkive permalink

一個簡單的非數學答案應該是:

對於L2:Penalty項是的平方,因此 平方小將使其變小。 為了達到最小平方誤差的目的,我們不必將其設置為零,我們會在此之前得到它。

對於L1:P保金期限是絕對的,我們 可能需要將 歸零 ,因為有使變小/ em>

這是我的觀點。

對我來說不是很令人信服。
Harshit Ahluwalia
2020-04-24 16:20:58 UTC
view on stackexchange narkive permalink

l2正則化器不會將權重向量的值從一個迭代更改為另一迭代,因為l2範數的斜率一直都在減小,而l1正則化器不斷朝著最優W *減小權重向量的值,這是0,因為L1範數的常數是恆定的



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...