首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Jaccard相似与余弦相似的应用与区别

Jaccard相似与余弦相似的应用与区别
EN

Data Science用户
提问于 2015-02-12 07:08:16
回答 3查看 53.7K关注 0票数 39

Jaccard相似度和余弦相似度是比较项目相似性时常用的两种度量方法。然而,在哪种情况下哪一种比另一种更可取,我并不十分清楚。

有人能帮助澄清这两种测量方法的差异(概念或原理的差异,而不是定义或计算)及其更好的应用吗?

EN

回答 3

Data Science用户

回答已采纳

发布于 2015-02-12 15:47:15

Jaccard相似度是由

s_{ij} = \frac{p}{p+q+r}

哪里,

两个对象的属性为正的P=#

Q=#属性1表示i,0表示j

属性的r=#i为0,j为1

然而,余弦相似性= \frac{A \cdot B}{\|A\|\|B\|},其中A和B是对象向量。

简单地说,在向量A和B仅包含0和1s的情况下,余弦相似性将公共属性的数目除以A和B的距离从零到0的乘积。而在Jaccard相似性中,公共属性的数量除以至少存在于两个对象中的一个中的属性数。

还有许多其他的相似性度量,每一个都有自己的怪癖。在决定使用哪一种方法时,试着考虑几个有代表性的案例,并计算出哪一种索引能给出最有用的结果来实现您的目标。

Cosine指数可以用来识别剽窃,但并不是识别互联网镜像网站的好指标。而Jaccard索引,将是一个很好的索引,以识别镜像网站,但不太好捕捉拷贝意大利面抄袭(在一个更大的文档)。

在应用这些索引时,您必须彻底考虑您的问题,并确定如何定义相似性。一旦你有了定义,你就可以去买一个索引了。

编辑:早些时候,我在这个答案中包含了一个例子,这最终是不正确的。感谢几位用户指出这一点,我删除了错误的例子。

票数 20
EN

Data Science用户

发布于 2016-03-02 12:00:50

Jaccard相似度用于两种类型的二进制情况:

  1. 对称,其中1和0具有同等重要性(性别、婚姻状况等)
  2. 不对称,其中1和0具有不同的重要程度(对疾病的检测呈阳性)

余弦相似度通常用于文本挖掘中,用来比较文档或电子邮件。如果两个文档术语向量之间的余弦相似度较高,那么这两个文档都有更多的共同字数。

另一个不同之处是,1-Jaccard系数可以作为不同或距离的度量,而余弦相似度则没有这样的构造。一个类似的东西是Tonimoto距离,它被用于分类学。

票数 12
EN

Data Science用户

发布于 2018-09-27 06:14:47

saq7 7的回答是错的。

\mathbf{a}\mathbf{b}是二进制向量的情况下,它们可以被解释为值为1的索引集。因此,让我们考虑集合AB

Jaccard相似度则由J(A, B) = \frac{|A \cap B|}{|A \cup B|} = \frac{|A \cap B|}{|A \cap B| + |A - B| + |B - A|}给出。

余弦相似度由C(A, B) = \frac{|A \cap B|}{\sqrt{\left|A\right|\left|B\right|}} = \frac{|A \cap B|}{\sqrt{(\left|A\cap B\right| + |A - B|)(\left|A\cap B\right| + |B - A|)}}给出。

一些比较:

  • 这里的分子是一样的。
  • 分母在jaccard中随|A||B|的大小而算术增长,但在几何上以余弦增长。
  • 余弦的分母只取决于|A|中的项目数和|B|中的项目数。这不取决于他们的交集。

我还没有明确的直觉,其中一个应该优先于另一个,除了,正如Vikram Venkat指出,1-jaccard对应一个真正的度量,不像余弦;余弦自然扩展到实值向量。

票数 8
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/5121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档