L0,L1,L2范數及其應用

原文作者鏈接

L0,L1,L2范數及其應用

在線性代數,函數分析等數學分支中,范數(Norm)是一個函數,其賦予某個向量空間(或矩陣)中的每個向量以長度或大小。對于零向量,另其長度為零。直觀的說,向量或矩陣的范數越大,則我們可以說這個向量或矩陣也就越大。有時范數有很多更為常見的叫法,如絕對值其實便是一維向量空間中實數或復數的范數,而Euclidean距離也是一種范數。

范數的一般化定義:設p≥1p≥1的實數,p-norm定義為:


p-范數

此處,當p=1時,我們稱之為taxicab Norm,也叫Manhattan Norm。其來源是曼哈頓的出租車司機在四四方方的曼哈頓街道中從一點到另一點所需要走過的距離。也即我們所要討論的l1范數。其表示某個向量中所有元素絕對值的和。?

而當p=2時,則是我們最為常見的Euclidean norm。也稱為Euclidean distance。也即我們要討論的l2范數。?

而當p=0時,因其不再滿足三角不等性,嚴格的說此時p已不算是范數了,但很多人仍然稱之為l0范數。 這三個范數有很多非常有意思的特征,尤其是在機器學習中的正則化(Regularization)以及稀疏編碼(Sparse Coding)有非常有趣的應用。

下圖給出了一個Lp球的形狀隨著P的減少的可視化圖。

1- L0 范數

雖然L0嚴格說不屬于范數,我們可以采用等式11來給出l0-norm得定義:


0-范數

上面的公式仍然讓人不是很明白,0的指數和平方根嚴格意義上是受限條件下才成立的。因此在實際應用中,多數人給出下面的替代定義:


0-范數

其表示向量中所有非零元素的個數。正是L0范數的這個屬性,使得其非常適合機器學習中稀疏編碼,特征選擇的應用。通過最小化L0范數,來尋找最少最優的稀疏特征項。但不幸的是,L0范數的最小化問題在實際應用中是NP難問題。因此很多情況下,L0優化問題就會被relaxe為更高維度的范數問題,如L1范數,L2范數最小化問題。

2- L1 范數

對于向量X,其L1范數的定義如下:


1-范數

其應用范圍非常的廣泛。如在計算機視覺中的Sum of Absolute DifferentsMean Absolute Error,都是利用L1范式的定義。

L1最優化問題的解是稀疏性的其傾向于選擇很少的一些非常大的值和很多的insignificant的小值。而L2最優化則更多的非常少的特別大的值,卻又很多相對小的值,但其仍然對最優化解有significant的貢獻。但從最優化問題解的平滑性來看,L1范數的最優解相對于L2范數要少,但其往往是最優解,而L2的解很多,但更多的傾向于某種局部最優解。

L1 VS L2

但由于L1范數并沒有平滑的函數表示,起初L1最優化問題解決起來非常困難,但隨著計算機技術的到來,利用很多凸優化算法使得L1最優化成為可能。

3- L2 范數

當然范數中最常見,也最著名的非L2范數莫屬。其應用也幾乎包括科學和工程的各個領域。定義公式如下:


2-范數

也Euclidean Norm,如果用于計算兩個向量之間的不同,即是Euclidean Distance.

歐幾里德范數的最優化問題可以用如下公式表述:


最優化

借助拉格朗日乘子,我們便可以解決該最優化問題。由L2衍生,我們還可以定義無限norm,即l-infinity norm:

無窮范數

無窮范數

一眼看上去上面的公式還是有點tricky的。我們通過一個簡單的數學變換,假設X_j是向量中最大的元素,則根據無限大的特性,我們可以得到:


則根據公式無窮范數的定義,我們可以得到:


因此我們便可以說l-infinity norm是X向量中最大元素的長度。


無窮范數

4- 機器學習中的應用

不知道有多少人是因為機器學習中的正則化和特征選擇等才開始了解這些范數的,至少我是。L0范數本身是特征選擇的最直接最理想的方案,但如前所述,其不可分,且很難優化,因此實際應用中我們使用L1來得到L0的最優凸近似。L2相對于L1具有更為平滑的特性,在模型預測中,往往比L1具有更好的預測特性。當遇到兩個對預測有幫助的特征時,L1傾向于選擇一個更大的特征。而L2更傾向把兩者結合起來。

4-1 正則化

在機器學習中正則化是指在損失函數中通過引入一些額外的信息,來防止ill-posed問題或過擬合問題。一般這些額外的信息是用來對模型復雜度進行懲罰(Occam's razor)。其一般形式如下:


||w||||w||便可以選取L1或是L2范數來作為懲罰項,不同的模型,其損失函數也不同,對于線性回歸而言,如果懲罰項選擇L1,則是我們所說的Lasso回歸,而L2則是Ridge回歸。下面我們列出了不同模型中的正則化的損失函數(來自Andrew Ng的Machine Learning課程):

Regularized Logistic Regression


Regularized Neural Network


Soft Margin SVM


從上面可以看出常用的正則化項多是L2范數,除了防止過擬合的問題,還有一個好處就是能否改善ill-posed(condition)問題。尤其是當訓練樣本相對于特征數非常少時,其矩陣便是非滿秩的,往往傾向于有無數個解,且是不可逆的。其condition num便會很大。一方面,根據此得到的最優化值很不穩定,往往某個特征變量很小的變動都會引發最終結果較大的偏差。另外通過矩陣求逆從而求的最優解就會變的非常困難。如對于線性回歸而言,求的最優解析解為:


而加上L2正則項后,其變為:


從而可以直接求逆,改善了condition number。

而對于無解析解,通過迭代優化的算法,L2正則化通過將目標函數變為λ-strongly convex(λ強凸),有效的加快了其收斂速度。

4-2 貝葉斯先驗

正則化項從貝葉斯學習理論的角度來看,其相當于一種先驗函數。即當你訓練一個模型時,僅僅依靠當前的訓練集數據是不夠的,為了實現更好的預測(泛化)效果,我們還應該加上先驗項。而L1則相當于設置一個Laplacean先驗,去選擇MAP(maximum a posteriori)假設。而L2則類似于 Gaussian先驗。如下圖所示:

從上圖可以看出,L1先驗對大值和小值的tolerate都很好,而L2先驗則傾向于均勻化大值和小值。

4-3 特征選擇與稀疏編碼

機器學習社區里通常把特征選擇的方法分為三種。一種是基于統計學的一些方法,對特征進行預篩選,選出子集作為模型輸入。如統計推理使用的假設檢驗,P值。另一種是采用某種成熟的學習算法進行特征選擇,如決策樹中采用信息增益來選擇特征。還有一種便是在模型算法中進行自動特征選擇。而L1范數作為正則化項,其特征選擇的圖譜傾向于spiky,實現了有效的特征選擇。

稀疏編碼也是想通過尋找盡可能少的特征表達某個輸入的向量X。


其中?i?i是所要尋找的基向量,a(j)iai(j)是我們要優化的各個基向量的權重。最右邊的表達式便是其正則化懲罰項,在這里也稱Sparse Cost。實際中我們通常便用L1范數。

加入兩個題目


題目1


題目2

L1最優化問題的解是稀疏性的其傾向于選擇很少的一些非常大的值和很多的insignificant的小值。而L2最優化則更多的非常少的特別大的值,卻又很多相對小的值,但其仍然對最優化解有significant的貢獻。但從最優化問題解的平滑性來看,L1范數的最優解相對于L2范數要少,但其往往是最優解,而L2的解很多,但更多的傾向于某種局部最優解。


5 參考

[1.]Wiki: Norm.

[2.]Rorasa's blog.

[3.]MaxJax.

[4.]機器學習中的范數規范化.

[5.]Difference between l1 and l2.

[6.]gradient-descent-wolfe-s-condition-and-logistic-regression.

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

推薦閱讀更多精彩內容