о косинус сходства - PullRequest
1 голос
/ 18 мая 2010

Я нахожу косинусное сходство между документами .. Я сделал это так

D1 = (8,0,0,1) где 8,0,0,1 - оценки tf-idf слагаемых t1, t2, t3, t4

D2 = (7,0,0,1)

cos (theta) = (56 + 0 + 0 + 1) / sqrt (64 + 49) sqrt (1 +1)

, который получается

cos (тета) = 5

Теперь, что я оцениваю по этому значению ... Я не понимаю, что означает cos (theta) = 5 о сходстве между ними ... Я правильно все делаю?

1 Ответ

2 голосов
/ 18 мая 2010

Знаменатель неверен.

Косинусное сходство определяется как

         D1 · D2
 sim = ———————————
        |D1| |D2|

Здесь

D1 · D2 = (7*8 + 0*0 + 0*0 + 1*1) = 57
           ______________________    __
   |D2| = √ 7^2 + 0^2 + 0^2 + 1^2 = √50
           ______________________    __
   |D1| = √ 8^2 + 0^2 + 0^2 + 1^2 = √65

Таким образом, сходство должно быть (57 / √ (50 * 65)) = 0.999846142, а не 5.

...