深度學習之歐式距離和余弦距離


原文鏈接

一、余弦距離

 

簡單來說,余弦相似度,就是計算兩個向量間的夾角的余弦值。余弦距離就是用1減去這個獲得的余弦相似度。余弦距離取值范圍由上面的余弦距離可以知道,余弦距離的取值范圍為[0,2] ,這就滿足了非負性的性質。

二、歐式距離

歐式距離之前提過了,就是常用的距離計算公式:

三、兩者之間的關系

當向量的模長是經過歸一化的,此時歐氏距離與余弦距離有着單調的關系:

 

 

在此場景下,如果選擇距離最小(相似度最大)的近鄰,那么使用余弦相似度和歐氏距離的結果是相同的。

四、什么時候用余弦距離什么時候用歐式距離呢?

總體來說,歐氏距離體現數值上的絕對差異,而余弦距離體現方向上的相對差異。

1)例如,統計兩部劇的用戶觀看行為,用戶A的觀看向量為(0,1),用戶B為(1,0);此時二者的余弦距很大,而歐氏距離很小;我們分析兩個用戶對於不同視頻的偏好,更關注相對差異,顯然應當使用余弦距離。

2)而當我們分析用戶活躍度,以登陸次數(單位:次)和平均觀看時長(單:分鍾)作為特征時,余弦距離會認為(1,10)、(10,100)兩個用戶距離很近;但顯然這兩個用戶活躍度是有着極大差異的,此時我們更關注數值絕對差異,應當使用歐氏距離。

總結:在日常使用中需要注意區分,余弦距離雖然不是一個嚴格意義上的距離度量公式,但是形容兩個特征向量之間的關系還是有很大用處的。比如人臉識別,推薦系統等。

 


免責聲明!

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



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