2013-06-19 53 views
1

我讀這樣的問題:使用局部敏感散列時的餘弦相似度是否爲-1?

How to understand Locality Sensitive Hashing?

但是,我發現,計算餘弦相似性的方程如下: 的Cos(V1,V2)= cos(THETA)=(漢明距離/簽名長度)* pi =((h/b)* pi)

這意味着如果向量完全相似,則漢明距離爲零,餘弦值爲1.但是當向量完全不是相似,那麼漢明距離將等於簽名長度,所以我們有cos(pi),這將導致-1。相似性不應總是在0和1之間嗎?

回答

3

餘弦相似度是向量除以量值的點積,因此角度餘弦值可能爲負值。例如,如果單位矢量指向相反的方向,那麼您希望該值爲-1。我認爲讓你感到困惑的是表示的本質,因爲另一篇文章是關於二維空間中向量之間的角度的討論,而在多維空間中創建向量更常見,維數通常遠大於2,並且每個維度的值都是非負值(例如,單詞出現在文檔中或不出現),結果爲0到1的範圍。

+0

你能否澄清你的最後一點?你的意思是說,在多維空間中,天使總是在0到90之間?如果是這樣,爲什麼?我其實並不瞭解你的意思,「每個維度的價值都是非負面的」。 –

+2

當您有文本數據時,給定單詞的字數不可能是負數。通常每個單詞代表它自己的尺寸,因此角度總是在0°和90°之間。 –