L0/L1/L2範數的聯繫與區別

範數(norm)


數學中的一種基本概念。在泛函分析中,它定義在賦範線性空間中,並知足必定的條件,即①非負性;②齊次性;③三角不等式。它經常被用來度量某個向量空間(或矩陣)中的每一個向量的長度或大小。

這裏簡單地介紹如下幾種向量範數的定義和含義 函數

一、 L-P範數 


與閔可夫斯基距離的定義同樣,L-P範數不是一個範數,而是一組範數,其定義以下: 優化

 

根據P 的變化,範數也有着不一樣的變化,一個經典的有關P範數的變化圖以下: spa

 


上圖表示了p從無窮到0變化時,三維空間中到原點的距離(範數)爲1的點構成的圖形的變化狀況。以常見的L-2範數(p=2)爲例,此時的範數也即歐氏距離,空間中到原點的歐氏距離爲1的點構成了一個球面。
實際上,在0時,Lp並不知足三角不等式的性質,也就不是嚴格意義下的範數。以p=0.5,二維座標(1,4)、(4,1)、(1,9)爲例,。所以這裏的L-P範數只是一個概念上的寬泛說法。3d

二、L0範數 


當P=0時,也就是L0範數,由上面可知,L0範數並非一個真正的範數,它主要被用來度量向量中非零元素的個數。用上面的L-P定義能夠獲得的L-0的定義爲: orm

 

這裏就有點問題了,咱們知道非零元素的零次方爲1,但零的零次方,非零數開零次方都是什麼鬼,很很差說明L0的意義,因此在一般狀況下,你們都用的是: blog

表示向量x中非零元素的個數。
對於L0範數,其優化問題爲: 數學

在實際應用中,因爲L0範數自己不容易有一個好的數學表示形式,給出上面問題的形式化表示是一個很難的問題,故被人認爲是一個NP難問題。因此在實際狀況中,L0的最優問題會被放寬到L1或L2下的最優化。io

三、L1範數 


L1範數是咱們常常見到的一種範數,它的定義以下: im

 

表示向量中非零元素的絕對值之和
L1範數有不少的名字,例如咱們熟悉的曼哈頓距離、最小絕對偏差等。使用L1範數能夠度量兩個向量間的差別,如絕對偏差和(Sum of Absolute Difference): d3

對於L1範數,它的優化問題以下: 

 

因爲L1範數的自然性質,對L1優化的解是一個稀疏解,所以L1範數也被叫作稀疏規則算子。經過L1能夠實現特徵的稀疏,去掉一些沒有信息的特徵,例如在對用戶的電影愛好作分類的時候,用戶有100個特徵,可能只有十幾個特徵是對分類有用的,大部分特徵如身高體重等可能都是無用的,利用L1範數就能夠過濾掉。

四、L2範數


L2範數是咱們最多見最經常使用的範數了,咱們用的最多的度量距離歐氏距離就是一種L2範數,它的定義以下: 

 

表示向量元素的平方和再開平方。 
像L1範數同樣,L2也能夠度量兩個向量間的差別,如平方差和(Sum of Squared Difference): 

對於L2範數,它的優化問題以下: 

 

L2範數一般會被用來作優化目標函數的正則化項,防止模型爲了迎合訓練集而過於複雜形成過擬合的狀況,從而提升模型的泛化能力。

五、範數


當時,也就是範數,它主要被用來度量向量元素的最大值,與L0同樣,一般狀況下表示爲

 來表示

相關文章
相關標籤/搜索