機器學習筆記-距離度量與相似度(一)閔可夫斯基距離


在機器學習過程中,我們經常需要知道個體(樣本)之間的差異大小,進而評價個體的相似性和類別,特征空間中兩個樣本(點)之間的距離就是兩個樣本相似性的一種反映。常見的分類和聚類算法,如K近鄰、K均值(K-means)、層次聚類等等都會選擇一種距離或相似性的度量方法。根據數據特性的不同,可以采用不同的度量方法。一般而言,定義一個函數 \(dist(x,y)\), 若它是一個“距離度量”(distance measure),則需要滿足一些基本性質:

  1. 非負性:\(dist(x_i,x_j)\ge0\);
  2. 同一性:\(dist(x_i,x_j)=0\)當且僅當\(x_i=x_j\);
  3. 對稱性:\(dist(x_i,x_j)=dist(x_j,x_i)\)
  4. 直遞性:\(dist(x_i,x_j)\le dist(x_i,x_k)+dist(x_k,x_j)\).

注:直遞性常被稱為“三角不等式”

機器學習中的常見距離公式

1. 閔可夫斯基距離(Minkowski distance)

閔可夫斯基距離不是一種距離,而是一組距離的定義,是對多個距離度量公式的概括性的表述。

給定樣本\(\pmb x_i=(x_{i1};x_{i2};\dots;x_{in})\)\(\pmb x_j=(x_{j1};x_{j2};\dots;x_{jn})\)\(\pmb x \in R^n\)\(n\)維向量。

則閔可夫斯基距離可定義為:

\[dist(x_i,x_j)=\big(\sum_{u=1}^n|x_{iu}-x_{ju}|^p\big)^\frac{1}{p} \tag{1.1} \]

注:上式即為\(\pmb x_i - \pmb x_j\)\(L_p\)范數\(||\pmb x_i - \pmb x_j||_p\)

\(p\ge1\),公式(1.1)顯然滿足距離度量的基本性質.

\(p=2\)時,閔可夫斯基距離即歐氏距離(Euclidean distance) :

\[dist(x_i,x_j)=||\pmb x_i - \pmb x_j||_2=\big(\sum_{u=1}^n|x_{iu}-x_{ju}|^2\big)^\frac{1}{2} \tag{1.2} \]

\(p=1\)時,閔可夫斯基距離即曼哈頓距離(Manhattan distance),亦稱“街區距離”(city block distance):

\[dist(x_i,x_j)=||\pmb x_i - \pmb x_j||_1=\sum_{u=1}^n|x_{iu}-x_{ju}| \tag{1.3} \]

\(p\rightarrow \infty\)時,閔可夫斯基距離即切比雪夫距離(Chebyshev distance):

\[dist(x_i,x_j)=max_{u=1}^n|x_{iu}-x_{ju}| \]

無圖無真相!!!

如圖1所示,假設乘車從\(\pmb{x}_i\)點到\(\pmb{x}_j\)點(左下角和右上角兩個黑色的點),圖中灰色表示街道,白色方框表示建築物。則綠色的斜線表示歐式距離。其他三條折線表示了曼哈頓距離,顯然這三條折線的長度是相等的。


圖1 歐氏距離與曼哈頓距離

從計算公式可以知道,坐標平面上到原點的歐氏距離(\(p=2\))相等的所有點組成的形狀是一個圓,比如距離為1,則為一個半徑為1的圓。類似的當\(p=1\)時,形狀為菱形,\(p\)趨於\(\infty\)時,形狀是正方形,如圖2:


圖2 p取值與距離

那么,當\(p\)取其他數值的時候呢?它是下面(圖3)這樣子噠:


圖3 p的其他取值

注意,當\(p \lt 1\)時,閔可夫斯基距離不再滿足直遞性(即三角不等式),舉個簡單的反例:假設點\(\pmb{x}_i=(0,0)\)\(\pmb{x}_j=(1,1)\),和另一點\(\pmb{x}_u=(0,1)\),當\(p\lt 1\)時,帶入公式(1.1)計算\(\pmb{x}_i=(0,0)\)\(\pmb{x}_j=(1,1)\)的距離等於\((1+1)^{1/p} \gt 2\), 而\(\pmb{x}_u=(0,1)\)到這兩個點的距離都是1。

閔可夫斯基距離比較直觀,但是它與數據的分布無關,具有一定的局限性,如果數據某一維度的值遠遠大於另一個維度的值,這個距離公式就會過度放大幅值較大維度的作用。所以,在實際應用計算距離之前,我們通常需要對數據進行標准化。

參考來源:
1)https://www.cnblogs.com/daniel-D/p/3244718.html
2)機器學習 - 周志華


免責聲明!

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



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