有時候,我們需要度量兩個向量之間的距離來決定他們的歸屬。
接下來列舉一些常用的距離度量方法
1、歐氏距離
2、馬氏距離
3、曼哈頓距離
4、閔可夫斯基距離
5、漢明距離
6、傑卡德相關系數
7、余弦相似度
8、切比雪夫距離
9、皮爾遜相關系數
1、歐氏距離:也叫歐幾里得距離
兩點之間或多點之間的距離表示法
二維空間的公式:
其中,
為點
與點
之間的歐氏距離;
為點
到原點的歐氏距離。
n維空間的公式:
其實就是應用勾股定理計算兩個點的直線距離,它會受指標不同單位刻度影響,所以,在使用前一般要先標准化,距離越大,個體間差異越大
改進方法1:
標准化歐氏距離:針對各分量分布不一致,將各分量都標准化到均值,方差相等
標准化后值:(標准化前的值-分量的均值)/分量標准差
改進方法2:
2、馬氏距離(Mahalanobis):表示點與分布之間的距離,考慮到各種特性之間的聯系,且尺度無關。
方差:方差是標准差的平方,標准差的意義是數據集中各個點到均值點距離的平均值,描述的是數據的離散程度。
協方差:標准差和方差是描述一維數據的,當存在多維數據時,需要知道每個維度之間的變量中間是否關聯。協方差是衡量多維數據集中,變量之間相關性的統計量。比如:一個人的身高和體重的關系,就需要用協方差來衡量。
協方差矩陣:當變量超過兩個,就需要使用協方差矩陣來衡量相關性。ui是第i個元素的期望值,μi=E(Xi)。協方差矩陣的第i,j項(第i,j項是一個協方差)被定義為如下形式:
馬氏距離:馬氏距離(Mahalanobis)是由馬哈拉諾比斯(P. C. Mahalanobis)提出的,表示數據的協方差距離。與歐氏距離不同的是它考慮到各種特性之間的聯系。對於均值為μ=(μ1,μ2,μ3,...,μp)T,協方差為Σ的多變量向量x=(x1,x2,x3,...,xp)T,
,馬氏距離為sqrt((x-μ)Σ^(-1)(x-μ))
如果S^(-1)是單位陣的時候,馬氏距離簡化為歐氏距離.
3、曼哈頓距離(Manhattan)
表示兩個點在標准坐標系上的絕對軸距之和
圖中紅線代表曼哈頓距離,綠色代表歐氏距離,也就是直線距離,而藍色和黃色代表等價的曼哈頓距離。
曼哈頓距離——兩點在南北方向上的距離加上在東西方向上的距離,即d(i,j)=|xi-xj|+|yi-yj|。
4、閔可夫斯基距離
閔可夫斯基距離(Minkowski distance)是衡量數值點之間距離的一種非常常見的方法,假設數值點 P 和 Q 坐標如下:
那么,閔可夫斯基距離定義為:
當 p 趨近於無窮大時,閔可夫斯基距離轉化成切比雪夫距離(Chebyshev distance):
5、漢明距離(Hammi)
漢明距離是一個概念,它表示兩個(相同長度)字對應位不同的數量
比如:1011101 與 1001001 之間的漢明距離是 2
6、傑卡德相關系數
傑卡德相似系數是衡量兩個集合相似度的一種指標
主要用於計算符號度量或布爾值度量的個體間的相似度,因為個體的特征屬性都是由符號度量或者布爾值標識,因此無法衡量差異具體值的大小,只能獲得“是否相同”這個結果,所以Jaccard系數只關心個體間共同具有的特征是否一致這個問題。
7、余弦相似度(cosine similarity)
用向量空間中兩個向量夾角的余弦值作為衡量兩個個體間差異的大小。
cosine distance = 1 - cosine similarity
cos(seta) = (a^2+b^2-c^2)/(2ab)
或
cos(seta) =(a*b)/(||a||x||b||)
或
(x1,y1)*(x2,y2)/sqrt(x1^2+y1^2)xsqrt(x2^2+y2^2)
==
(x1x2,+y1y2)/sqrt(x1^2+y1^2)xsqrt(x2^2+y2^2)
余弦相似度的夾角相似度度量不會受指標刻度影響,余弦值在區間【-1,1】,值越大,越相似。
8、切比雪夫距離(Chebyshev distance)
切比雪夫距離(Chebyshev distance)或是L∞度量是向量空間中的一種度量,二個點之間的距離定義為其各座標數值差的最大值。
設平面空間內存在兩點,它們的坐標為(x1,y1),(x2,y2)
則dis=max(|x1−x2|,|y1−y2|)
即兩點橫縱坐標差的最大值
9、皮爾遜相關系數
如果比較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;
相關系數的分類:
0.8-1.0 極強相關
0.6-0.8 強相關
0.4-0.6 中等程度相關
0.2-0.4 弱相關
0.0-0.2 極弱相關或無相關