深度學習理論方法-余弦相似度計算實戰與歐幾里得距離概述


 

借助三維坐標系來看下歐氏距離和余弦相似度的區別

   

           從圖上可以看出歐式距離衡量的是空間中各點之間的絕對距離,和點所在的位置坐標(即個體各維度的特征數值)直接相關,距離越小,兩向量之間越相似;而余弦相似度衡量的是空間中兩向量之間的夾角,體現的是方向上的差異,夾角越小(余弦相似度越大),兩向量之間越相似。如果保持A點的位置不變,B點朝原方向延伸,那么這個時候余弦相似度cosθ是保持不變的,因為夾角不變,而A、B兩點間的距離顯然在發生改變,這就是歐氏距離和余弦相似度的不同之處。

 

那么歐式距離和余弦相似度的應用場景是什么呢?

       歐氏距離能夠體現個體數值特征的絕對差異,所以更多的用於需要從維度的數值大小中體現差異的分析,比如使用用戶行為作為指標分析用戶價值的相似情況(比較不同用戶的消費能力),這屬於價值度量;而余弦相似度對絕對數值不敏感,更多的用於使用用戶對內容的評分來分析用戶興趣的相似程度(用戶是否喜歡某商品),這屬於定性度量。

 

基於歐幾里得距離的相似度計算

       歐幾里得距離是常用的計算距離的公式,它表示三維空間的兩個點的真實距離。歐幾里得相似度計算是一種基於用戶之間直線距離的計算方式,在計算時,不同的物品或者用戶可以將其定義為不同的坐標點,而特定的目標定位為坐標原點,歐幾里得計算兩個點之間的距離公式如下:

        

知道了兩個坐標之間的直線距離,歐幾里得相似度也就很好計算了,與d成反比,即其相似度公式如下:

從公式可以看出兩個物品或者用戶之間的距離越大,則其相似度越小,距離越小則相似度越大。

                                                           下表用戶與物品評分對應表

 
  物品1 物品2 物品3 物品4
用戶1 1 1 3 1
用戶2 1 2 3 2
用戶3 2 2 1 1

 

 

 

 

 

下面分別計算用戶1和用戶2之間的相似度,通過歐幾里得距離公式可得:

 

 

從計算結果可以看出,d12的分值大於d13的分值,因此可以得出結論,用戶2比用戶3更與用戶1具有相似性。

 

 

基於余弦角度相似度計算

與歐幾里得距離相似,余弦相似度也特定目標,即物品或者用戶作為坐標上的點,但不是坐標原點。基於此與特定的被計算的目標進行夾角計算。

 

由上圖可以看出,如果兩個目標較為相似,則其射線形成的夾角較小。如果兩個用戶不相近,則兩條射線形成的夾角較大,因此在使用余弦度量的相似度計算中,可以用夾角的大小來反映目標之間的相似性。計算公式如下:

 

 在上面用戶與物品評分對應表中用戶1和用戶2之間的相似性,結果如下:

而用戶1和用戶3的相似性結果為:

從計算可得,相對於用戶3,用戶2與用戶1更為相似。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM