余弦相似的定义是什么?怎么计算?

  统计/机器学习 推荐系统 描述性统计    浏览次数: 924
0

假设我有个item,并且有它们的各属性的评分,比如

A = [2, 3, 4]

B = [1, 4, 2]

怎么求它们的余弦相似?余弦相似的定义是什么?

谢谢!


 

brpc   2017-11-21 11:25



   1个回答 
6

把两个物品的属性看成向量,那么这两个物品的余弦相似就是这两个向量夹角的余弦。

余弦的定义如下

$$\cos(\theta)=\frac{<A, B>}{|A||B|}$$

用你的例子的话就是

$$\cos(\theta)=\frac{2\times 1+ 3\times4+4\times 2}{\sqrt{2^2+3^2+4^2}\sqrt{1^2+4^2+2^2}}$$


余弦的取值范围是-1到1。若1,说明这两个物品极其相似;若-1就说明完全相反。


SofaSofa数据科学社区 DS面经 问答 实战

TheTheThe   2017-11-21 13:51

如果有三个vector,例如A,B,C,还可以用cosine similarity 吗? - Mandyzzz   2018-04-07 12:58
两两求similarity吧,没有一下子算三个的 - CatalanFubini   2018-04-07 21:04


  相关主题

python里怎么计算jaccard相似   2回答

余弦相似和内积的意义?   1回答

推荐系统算法里的cold start是什么意思?   2回答

推荐系统里的ALS是什么意思?   2回答

推荐系统中常用的表示相似或者距离的方法有哪些?   1回答

两个向量的余弦距离大于1?   1回答

Jaccard相似或者Jaccard距离是怎么计算的?   1回答

协同过滤的数据预处理问题   4回答

推荐系统中的召回(recall)是什么意思?   1回答

推荐系统有哪些常用的评价标准   4回答

怎么理解推荐系统中的NDCG?   1回答

关于pairwise ranking数据预处理的问题   0回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!