02聚類演算法-相似度距離公式、維度災難

白爾摩斯發表於2018-12-08

聚類就是對__大量未知標註__的資料集,按照資料__內部存在的資料特徵__將資料集劃分為__多個不同的類別__,使__類別內的資料比較相似__,__類別之間的資料相似度比較小__。

聚類演算法的重點是計算樣本項之間的__相似度__,有時候也稱為樣本間的距離。


PS: 補充一個維度災難的概念

資料維度高,資料量大,這種時候樣本在空間中比較密集,這種情況不太好劃分。只有當資料相對比較鬆散的時候,才能做到有效的聚類分析。

維度高,資料量大的時候人工看就要看半天。

用幾何來理解,1維空間可以解釋100%的資料。2維空間是一個正方形,能解釋的資料可能只是正方形中的一個圓,其他部分解釋不到。3維空間是一個正方體,能解釋的資料是一個球體。在2維中不能解釋的資料是正方形靠近四個角附近的區域,在3維中不能解釋的是靠近正方體8個頂點附近的體積。隨著維度的增大,不能解釋的量也越來越大(聚集在超矩形體的頂點附近),當維度越接近無窮維的時候,分類的結果自然就差了。


一、相似度距離公式

1、閔可夫斯基距離(Minkowski)

閔可夫斯基距離

當p為1的時候是曼哈頓距離(Manhattan)
當p為2的時候是歐式距離(Euclidean)
當p為無窮大的時候是切比雪夫距離(Chebyshev)

曼哈頓距離 - 歐式距離 -  切比雪夫距離

2、標準化歐式距離(Standardized Euclidean Distance)

左邊公式是對樣本所有的特徵值做標準化,得到新的特徵值。

平均值符號

中間公式裡的__s標準__差怎麼來的?
特徵x1,對應了很多樣本。所有樣本的1號特徵的均值即標準差,記為s1;
若每組樣本有n個特徵,那麼就對應n個標準差 s1,s2 , … , sn;

左 - 標準化的核心概念 中 - 總的標準差s求解 右 - 標準化歐氏距離

3、夾角餘弦相似度(Cosine):

挖掘資料內在關聯的時候可能會用到。

設兩個向量

夾角餘弦相似度

4、KL距離(相對熵)

用來度量兩個分佈的相似程度。P(X)和Q(X)是兩個分佈。求出來的是P相對於Q的相似度。

物理意義:在一個事件空間中,P(X)的事件空間,若用Q(X)這個概率分佈進行編碼的時候(Q來描述P),平均每一個基本事件的編碼長度增加了多少位元。回顧之前資訊熵的概念:《01 決策樹 – 數學理論概述 – 熵

或者也可以這樣理解:已知了Q的分佈,用Q近似得去估計P,使得P的不確定度減少了多少。即,用一個分佈來保證另一個分佈的額外不確定度。

當P(X) = Q(X)時,表示兩個分佈完全相等。那麼相對熵=0;
當P(X)和Q(X)的相似度差異很大,那麼意味著相對熵的距離就越大。

KL距離(相對熵)


Jaccard、Pearson這兩個相似度的度量公式偏重於統計學。 在機器學習中用的比較少,但是可以直接計算得到結果。

5、傑卡德相似係數(Jaccard)

如果J(A,B) 越趨近於1,表示A和B集合完全重合。如果J(A,B) 趨近於0,表示A和B集合幾乎沒有相交。

即J(A,B) 越接近於1,越相似。距離和相似程度反比,距離越小,相似程度越大。所以用 1-J(A,B) 來表示度量函式時,值越大,相似度越大。

Jaccard

6、Pearson相關係數

回顧: 標準差、方差、協方差的公式。

E[(X-E(X))(Y-E(Y))]稱為隨機變數X和Y的協方差
即 __COV(X,Y)=E(XY)-E(X)E(Y)__;

協方差、方差都是描述的是資料的波動程度。
如一組資料:A:[0.00038、0.00001、0.00031];
第1個資料的大小是第二個資料的38倍,但是從絕對數值大小上來看,兩者只相差了0.00037,方差看上去不大。
現在有另一組資料:B:[100000,1000020,1000010];
是A資料的方差大還是B資料的方差大?
絕對數值上是B的方差大,但是從波動範圍來看,A資料的波動更大。所以用方差或者協方差來描述資料的波動情況不是很好的選擇。

所以在計算相對資料波動大小的時候,我們要將資料標準化。
即:__兩個資料的協方差/兩個資料的標準差的乘積__ = Cov(X,Y) / √D(X) √D(Y)
衡量兩個特徵相似度的指標,我們把指標縮放到了[-1,1]之間。

具體計算公式如下:

Pearson

一般情況下:
若:|PXY|<0.3 則:X和Y不相關;
若:0.3<|PXY|<0.7 則: X和Y弱相關
若:0.7<|PXY|<1 則:X和Y強相關;
若:PXY>0 則:正相關;
若:PXY<0 則:負相關;

03 聚類演算法 – K-means聚類


相關文章