相似度度量計算

2022-03-13 22:23:25 字數 2193 閱讀 6211

看到很多地方在用這個, 就 總結一下:

相似度度量(similarity),即計算個體間的相似程度,相似度度量的值越小,說明個體間相似度越小,相似度的值越大說明個體差異越大。

對於多個不同的文字或者短文本對話訊息要來計算他們之間的相似度如何,乙個好的做法就是將這些文字中詞語,對映到向量空間,形成文字中文字和向量資料的對映關係,通過計算幾個或者多個不同的向量的差異的大小,來計算文字的相似度。下面介紹乙個詳細成熟的向量空間余弦相似度方法計算相似度

弦相似度也將特定目標,即物品或者使用者作為座標上的點,但不是座標原點。基於此與特定的被計算目標進行夾角計算。具體如圖5-3所示:

從圖5-3可以很明顯地看出,兩條射線分別從座標原點觸發,引出一定的角度。如果兩個目標較為相似,則其射線形成的夾角較小。如果兩個使用者不相近,則兩條射線形成的夾角較大。因此在使用余弦度量的相似度計算中,可以用夾角的大小來反映目標之間的相似性。

公式余弦相似度的計算公式如下所示。

例如:

從公式可以看到,余弦值的大小在[-1,1]之間,值的大小與夾角的大小成正比。

計算過程:

在非直角三角形中,餘弦定理的公式是

圖(5)

三角形中邊a和b的夾角 的余弦計算公式為:

公式(2)

在向量表示的三角形中,假設a向量是(x1, y1),b向量是(x2, y2),那麼可以將餘弦定理改寫成下面的形式:

向量a和向量b的夾角 的余弦計算如下:

擴充套件,如果向量a和b不是二維而是n維,上述余弦的計算法仍然正確。假定a和b是兩個n維向量,a是  ,b是  ,則a與b的夾角 的余弦等於:

余弦值越接近1,就表明夾角越接近0度,也就是兩個向量越相似,夾角等於0,即兩個向量相等,這就叫"余弦相似性"。

放在一起,一塊說一下:

表 相似度計算公式:

方法公式

說明夾角余弦

取值範圍為[-1,1],當余弦值接近±1,表明兩個向量有較強的相似性。當余弦值為0時,表示不相關

傑卡德相似係數

def jaccard(a,b):  #僅對0-1矩陣有效

return 1.0*(a*b).sum()/(a+b-a*b).sum()

分母a1uam表示喜歡物品1與喜歡物品m的使用者總數,分子a1n∩aw表示同時喜歡物品1和物品m的使用者數

相關係數

相關係數的取值範圍[-1,1]。

相關係數的絕對值越大,則表明兩者相關度越高

歐幾里得距離(euclidean dustance)

相似度值=1/(d+1)

由於在歐幾里得相似度計算中,最終數值的大小與相似度成反比,因此在實際應用中常常使用歐幾里得距離的倒數作為相似度值,即1/d+1作為近似值。

d,越大,相似度越小。反之成立。

歐兒裡得相似度計算是一種基於使用者之間直線距離的計算方式。在相似度計算中,不同的物品或者使用者可以將其定義為不同的座標點,而特定目標定位為座標原點。

參考:參考:很多網路中的大牛作者沒有記錄下來,謝你們的無私分享!

EIGRP度量計算

eigrp復合地量和 k值 eigrp 在其復合度量中使用下列值來計算通向網路的首選路徑 l頻寬l延遲 l可靠性 l負載 復合度量 公式 預設復合公式 度量 k1 頻寬 k3 延遲 完整復合公式 度量 k1 頻寬 k2 頻寬 256 負載 k3 延遲 k5 可靠性 k4 eigrp 所用的復合度量公...

余弦計算相似度度量

余弦計算相似度度量 相似度度量 similarity 即計算個體間的相似程度,相似度度量的值越小,說明個體間相似度越小,相似度的值越大說明個體差異越大。對於多個不同的文字或者短文本對話訊息要來計算他們之間的相似度如何,乙個好的做法就是將這些文字中詞語,對映到向量空間,形成文字中文字和向量資料的對映關...

余弦計算相似度度量

余弦計算相似度度量 相似度度量 similarity 即計算個體間的相似程度,相似度度量的值越小,說明個體間相似度越小,相似度的值越大說明個體差異越大。對於多個不同的文字或者短文本對話訊息要來計算他們之間的相似度如何,乙個好的做法就是將這些文字中詞語,對映到向量空間,形成文字中文字和向量資料的對映關...