距離:
1. 明可夫斯基距離(Minkowski Distance)
公式:
其中p是一個變量,下面的所有距離都是這個公式的特例;
p=1就是曼哈頓距離, P=2就是歐式距離,P=無窮時,就是切比雪夫距離.
2. 歐幾里得距離(Euclidean Distance)
最常見的歐式距離就是平面上兩點間的距離D=sqrt(x^2+y^2);
通用的公式爲:
3. 曼哈頓距離(Manhattan Distance)
曼哈頓距離來源於城市區塊距離,是將多個維度上的距離進行求和後的結果
公式:
假設下面就是曼哈頓街區,兩個頂點之間的距離,無論怎麼走,最近的方法都是2+3=5;
4. 切比雪夫距離(Chebyshev Distance)
切比雪夫距離起源於國際象棋中國王的走法,我們知道國際象棋國王每次只能往周圍的8格中走一步,那麼如果要從棋盤中A格(x1, y1)走到B格(x2, y2)最少需要走幾步?
公式:
假設下面是棋盤的一小塊,國王要從A到B,只能橫,豎,斜地走.那麼無論怎麼走,最短距離始終是7=max(4,7);
補充
度量空間(metrics)需要滿足一下三個要求:
非負性
(a)d(x,y)>=0
(b)d(x,y)=0 if x==y
對稱性
d(x,y) = d(y,x) for all x,y
三角性
d(x,z)<= d(x,y) + d(y,z)
metrics對於許多算法是必須的,不過很多情況下,不必滿足metrics也可以作爲距離度量。
相關性度量
相關性是統計學上的概念.在機器學習中,經常要衡量兩個變量的相關性,比如K-mean聚類算法等.這裏做一個簡單的小結。
補充
我們可以從距離直接得到相似性,如:
s表示相關性,d表示距離,則有:
s = -d
s=1/(1+d) 這種方法把距離映射到(0-1)的相似性空間中
s=e^-d 這種方法爲非線性映射
s = 1-(d-mind)/(maxd-mind) 也是一種把距離映射到(0-1)範圍上的方法,不過這種是線性的。
小結:任意一種遞減的函數都可以把d映射爲s度量
1. 向量空間餘弦相似度
指的是兩個向量夾角餘弦值,體現的更多是兩個向量在方向上的差異.
我們看下面這幅圖,他表徵了餘弦相似與歐式距離的差異.餘弦更注重線性方向,而歐式距離則注重絕對距離.
補充:對於稀疏的非二進制屬性,cosine距離是比較好的選擇。
2. person相關係數
X和Y基於自身總體標準化後計算空間向量的餘弦夾角
皮爾森相關係數表示兩個變量分佈的線性關係.
如果Y=kX+b,那麼X完全由Y線性決定,皮爾森係數爲+1,-1;
如果Y=X^2,雖然X完全由Y決定,但不是線性的;皮爾森係數爲0;
假設X,Y兩個變量,他們的分佈在二維平面上表示如下.通過下圖觀察他們的線性相關性.
第二行的圖明顯都有Y=kX+b;相關係數爲1或-1;
第三行雖然圖像很漂亮,不過應該都是非線性的相關,皮爾森係數爲0;
餘弦夾角與皮爾森相關係數的聯繫與區別:
我們把皮爾森相關係數用向量的形式展開,得到:
對比餘弦夾角,我們可以看出,皮爾森相關係數分子分母都有與餘弦夾角相同的項,只不過都減去了一個均值。
於是我們得出:皮爾森相關係數=中心化之後的餘弦夾角。
如wiki上的一個實例:
例如,有5個國家的國民生產總值分別爲 10, 20, 30, 50 和 80 億美元。 假設這5個國家 (順序相同) 的貧困百分比分別爲 11%, 12%, 13%, 15%, and 18%。 令 x 和 y 分別爲包含上述5個數據的向量: x = (1, 2, 3, 5, 8) 和 y = (0.11, 0.12, 0.13,0.15, 0.18)。
利用通常的方法計算兩個向量之間的夾角, 未中心化 的相關係數是:
我們發現以上的數據特意選定爲完全相關: y = 0.10 + 0.01 x。 於是,皮爾遜相關係數應該等於1。將數據中心化(通過E(x) = 3.8移動 x 和通過 E(y) = 0.138 移動 y ) 得到 x = (−2.8, −1.8, −0.8, 1.2,4.2) 和 y = (−0.028, −0.018,−0.008, 0.012, 0.042), 從中,
3. spearman秩相關係數
又稱等級相關係數,或順序相關係數,是將兩樣本值按數據的大小順序排列位次.
再以排序後的位置替換原來的元素 ,即用rank進行皮爾森相關係數計算.
下面式子中x,y分別表示排序後的等級rank.
斯皮爾曼相關係數指示的是兩個變量是否單調相關,無論是否線性.如下圖:
X,Y是單調上升相關的,雖然非線性,斯皮爾曼係數爲1;
比如我們統計經濟是否隨着人口增加而增加,通過計算它們的斯皮爾曼相關係數就能得到.
4. Jaccard相似係數(Jaccard Coefficient)
Jaccard係數主要用於計算符號度量或布爾值度量的個體間的相似度,因爲個體的特徵屬性都是由符號度量或者布爾值標識,因此無法衡量差異具體值的大小,只能獲得“是否相同”這個結果,所以Jaccard係數只關心個體間共同具有的特徵是否一致這個問題。如果比較X與Y的Jaccard相似係數,只比較xn和yn中相同的個數,公式如下:
如集合A={1,2,3,4};B={3,4,5,6};
那麼他們的J(X,Y)=1{3,4}/1{1,2,3,4,5,6}=1/3;
補充:Jaccard距離的非二進制補充是tonimoto距離
5. KL距離
雖然寫的是距離,但個人覺得放在相關性這裏比較適合.
KL距離也叫做相對熵,是基於統計學與信息論的相關係數,是兩個概率分佈P和Q差別的非對稱性的度量.
公式:
更進一步的,互信息爲P(X,Y)與P(X)P(Y)的KL距離.
KL距離具有不對稱性,即P到Q的KL距離,不等於Q到P的KL距離。
由於KL距離的不對稱性,Kullback and Leibler定義了一種對稱的距離:D(P||Q)+D(Q||P),這個公式經常被用於分類中的特徵選擇,P和Q爲特徵在兩個class中的分佈.
關於KL距離,具體可見blog: