什么是范數?


什么是范數?

我們知道距離的定義是一個寬泛的概念,只要滿足非負、自反、三角不等式就可以稱之為距離。范數是一種強化了的距離概念,它在定義上比距離多了一條數乘的運算法則。有時候為了便於理解,我們可以把范數當作距離來理解。

 

在數學上,范數包括向量范數和矩陣范數,向量范數表征向量空間中向量的大小,矩陣范數表征矩陣引起變化的大小。一種非嚴密的解釋就是,對應向量范數,向量空間中的向量都是有大小的,這個大小如何度量,就是用范數來度量的,不同的范數都可以來度量這個大小,就好比米和尺都可以來度量遠近一樣;對於矩陣范數,學過線性代數,我們知道,通過運算AX=B,可以將向量X變化為B,矩陣范數就是來度量這個變化大小的。

這里簡單地介紹以下幾種向量范數的定義和含義

 

1、 L-P范數

與閔可夫斯基距離的定義一樣,L-P范數不是一個范數,而是一組范數,其定義如下:

根據P 的變化,范數也有着不同的變化,一個經典的有關P范數的變化圖如下:

 

上圖表示了p從無窮到0變化時,三維空間中到原點的距離(范數)為1的點構成的圖形的變化情況。以常見的L-2范數(p=2)為例,此時的范數也即歐氏距離,空間中到原點的歐氏距離為1的點構成了一個球面。

實際上,在0時,Lp並不滿足三角不等式的性質,也就不是嚴格意義下的范數。以p=0.5,二維坐標(1,4)、(4,1)、(1,9)為例,

。因此這里的L-P范數只是一個概念上的寬泛說法。

 

2、L0范數

當P=0時,也就是L0范數,由上面可知,L0范數並不是一個真正的范數,它主要被用來度量向量中非零元素的個數。用上面的L-P定義可以得到的L-0的定義為:

這里就有點問題了,我們知道非零元素的零次方為1,但零的零次方,非零數開零次方都是什么鬼,很不好說明L0的意義,所以在通常情況下,大家都用的是:

表示向量x中非零元素的個數。

對於L0范數,其優化問題為:

在實際應用中,由於L0范數本身不容易有一個好的數學表示形式,給出上面問題的形式化表示是一個很難的問題,故被人認為是一個NP難問題。所以在實際情況中,L0的最優問題會被放寬到L1或L2下的最優化。

3、L1范數

L1范數是我們經常見到的一種范數,它的定義如下:

表示向量x中非零元素的絕對值之和。

L1范數有很多的名字,例如我們熟悉的曼哈頓距離、最小絕對誤差等。使用L1范數可以度量兩個向量間的差異,如絕對誤差和(Sum of Absolute Difference):

對於L1范數,它的優化問題如下:

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

4、L2范數

L2范數是我們最常見最常用的范數了,我們用的最多的度量距離歐氏距離就是一種L2范數,它的定義如下:

表示向量元素的平方和再開平方。

像L1范數一樣,L2也可以度量兩個向量間的差異,如平方差和(Sum of Squared Difference):

對於L2范數,它的優化問題如下:

L2范數通常會被用來做優化目標函數的正則化項,防止模型為了迎合訓練集而過於復雜造成過擬合的情況,從而提高模型的泛化能力。

5、范數

當時

,也就是范數

,它主要被用來度量向量元素的最大值,與L0一樣,通常情況下表示為

來表示

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM