【问题标题】:about cosine similarity关于余弦相似度
【发布时间】:2011-02-21 01:04:15
【问题描述】:

我发现文档之间的余弦相似度.. 我是这样做的

D1=(8,0,0,1) 其中 8,0,0,1 是术语 t1, t2, t3 , t4 的 tf-idf 分数

D2=(7,0,0,1)

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

结果是

cos(theta)= 5

现在我从这个值评估什么...我不明白 cos(theta)=5 表示它们之间的相似性...我做对了吗?

【问题讨论】:

  • cos(theta) 总是介于 -1 和 1 之间。你做错了什么。还有,这是作业吗?

标签: similarity trigonometry tf-idf


【解决方案1】:

分母错了。

cosine similarity 定义为

         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。

【讨论】:

  • 哦,我忽略了零值......我真是太愚蠢了......谢谢kennyTM......非常感谢你......
  • @jaskirat:您没有忽略零值。您计算了 |D1|和 |D2|错。没有什么是 √(7^2 + 8^2)。
  • 我正在检查你的答案..但我仍然无法得到与你显示的相同的答案 (0.999846142)..
  • 明白了……我只是在交叉检查结果……谢谢肯尼……享受
猜你喜欢
  • 2020-08-12
  • 2011-01-01
  • 2017-12-12
  • 2014-10-15
  • 2013-05-24
  • 1970-01-01
  • 2014-02-25
  • 2013-05-29
相关资源
最近更新 更多