1. 程式人生 > 實用技巧 >簡單易懂的餘弦相似度與歐式距離

簡單易懂的餘弦相似度與歐式距離

1、餘弦相似度

給定兩個屬性向量,AB,其餘弦相似性θ由點積和向量長度給出,如下所示:

符號表示:

image.png

其中:image.png分別代表向量A和B的各分量

數值表示

(二維)

image

image.gif

(高維)

image.png

image.gif

給出的相似性範圍從-1到1:

-1意味著兩個向量指向的方向正好截然相反,1表示它們的指向是完全相同的,0通常表示它們之間是獨立的,而在這之間的值則表示中間的相似性或相異性。

餘弦距離:

image.png

2、歐式距離

N維歐氏空間中兩點間的距離公式:

image.png

3、二者關係

標準化之後的歐式距離近似於餘弦距離

證明如下:

證法一:

假設二維空間兩個點,

然後歸一化為單位向量

那麼餘弦相似度為:

歐式距離為:

化簡後結果:

作圖如下:

image.png

可以從影象上看到二者的值比較接近

對於高維空間與二維類似

證法二:

餘弦相似度的定義公式為

image.png

歸一化後

image.png

餘弦距離:

image.png

歐式距離:

image.png

由公式可以看出歸一化後,歐式距離與餘弦距離存在單調性關係,此時兩種距離的值域都為[0,2]。

歐式距離與餘弦距離的對比:

1.歐式距離的數值受到維度的影響,餘弦相似度在高維的情況下也依然保持低維完全相同時相似度為1等性質。

2.歐式距離體現的是距離上的絕對差異,餘弦距離體現的是方向上的相對差異。

參考:

https://www.zhihu.com/question/19640394

https://www.cnblogs.com/airnew/p/9563703.html

https://blog.csdn.net/lucky_kai/article/details/89514868