數學 相似度計算方法 距離

2021-08-20 06:34:35 字數 1537 閱讀 7307

在資料分析和資料探勘以及搜尋引擎中,我們經常需要知道個體間差異的大小,進而評價個體的相似性和類別。常見的比如資料分析中比如相關分析,資料探勘中的分類聚類(k-means等)演算法,搜尋引擎進行物品推薦時。

相似度就是比較兩個事物的相似性。一般通過計算事物的特徵之間的距離,如果距離小,那麼相似度大;如果距離大,那麼相似度小。比如兩種水果,將從顏色,大小,維生素含量等特徵進行比較相似性。

歐氏距離是最常用的距離計算公式,衡量的是多維空間中各個點之間的絕對距離,當資料很稠密並且連續時,這是一種很好的計算方式。n維空間中的歐式距離的計算公式為:

因為計算是基於各維度特徵的絕對數值,所以歐氏度量需要保證各維度指標在相同的刻度級別,比如對身高(cm)和體重(kg)兩個單位不同的指標使用歐式距離可能使結果失效。 

兩個點在標準座標系上的絕對軸距總和,在

2維空間中的計算公式為:

各座標數值差的最大值,在

2維空間中的計算公式為:

明氏距離是歐氏距離的推廣,是對多個距離度量公式的概括性的表述,看看下圖:

公式: 

從公式我們可以看出,

在資訊理論中,兩個等長字串之間的海明距離是兩個字串對應位置的不同字元的個數。換句話說,

它就是將乙個字串變換成另外乙個字串所需要替換的字元個數。具體如下:

余弦相似度用向量空間中兩個向量夾角的余弦值作為衡量兩個個體間差異的大小。相比距離度量,余弦相似度更加注重兩個向量在方向上的差異,而非距離或長度上。 

jaccard係數主要用於計算符號度量或布林值度量的個體間的相似度,因為個體的特徵屬性都是由符號度量或者布林值標識,因此無法衡量差異具 體值的大小,只能獲得「是否相同」這個結果,所以jaccard係數只關心個體間共同具有的特徵是否一致這個問題。 

對於上面兩個物件a和b,我們用jaccard計算它的相似性,公式如下 

首先計算出a和b的交(a ∩ b),以及a和b的並 (a ∪ b): 

然後利用公式進行計算: 

又稱相關相似性,通過peason相關係數來度量兩個使用者的相似性。計算時,首先找到兩個使用者共同評分過的專案集,然後計算這兩個向量的相關係數。

相似度計算方法

pearson 相關係數是用協方差除以兩個變數的標準差得到的,雖然協方差能反映兩個隨機變數的相關程度 協方差大於0的時候表示兩者正相關,小於0的時候表示兩者負相關 但其數值上受量綱的影響很大,不能簡單地從協方差的數值大小給出變數相關程度的判斷。為了消除這種量綱的影響,於是就有了相關係數的概念。由上圖...

相似度計算方法

1.余弦相似度 在平面系 a向量與b向量的夾角越小,說明相似度越大,余弦值越接近1,就表明夾角越接近0度,也就是兩個向量越相似,這就叫 余弦相似性 在三維也是乙個道理 x,y,z 確定的一點與點 a,b,c 一點的夾角 高中學過向量a與向量b的乘積定義為 所以兩者的夾角為 cos a b a b 分...

相似度計算方法學習

var e x e x 2x e x 2 e x 最後推出方差就是平方的均值減去 均值的平方 協方差就是看兩個變數是否正負相關,也就是數值上變化是否同或反向 相關係數直接衡量的就是線性相關關係,取值就在 1之間,體現的含義是x和y多大程度在一條斜率存在且不為0的直線上 余弦距離,也稱為余弦相似度,是...