基于Jaccard相似系数的相似度计算

原文链接:基于Jaccard相似系数的相似度计算 – 每天进步一点点

jaccard系数主要用于计算个体之间的相似度,个体的特征属性可以通过符号度量或者布尔标识,所以不能直接通过特征属性的差异进行直接计算,只能通过特征属性是否相同进行比较。因此,jaccard系数只关心个体特征属性是否相同。

1.计算流程

对于相似性分析,首先可以基于观点:“两篇文章越相似,则它们词语的交集越多”作为相似性分析的入口,该观点对应的理论基础即为jaccard相似系数。基于jaccard相似系数的网页相似度计算方式,可以按照如下步骤进行

网页 网页内容
A 努力建设国家级自然保护区
B 保护自然保护区义不容辞

(1)分词处理。将网页A内容和网页B内容分别进行分词处理后,结果为”努力 建设 国家级 自然保护区“ 和”保护 自然保护区 义不容辞“

(2)将网页A内容对应的词语当作一个集合A,即A={”努力“,”建设“,”国家级“,”自然保护区“},同理B={"保护","自然保护区","义不容辞"}。

(3) 计算集合A和集合B的交集{“自然保护区”}、计算集合A和集合B的并集{“努力”,“建设”,“国家级”,“自然保护区”,“保护”,“义不容辞”}

(4)计算交集数量与并集数量的比,交集数量为1,并集数量为6,交集数量与并集数量的比值为0.17。

基于上述流程,可以将0.17视为网页A和网页B的相似度衡量标准,该衡量标准的原来即称为Jaccard相似系数。

2.狭义Jaccard相似系数

Jaccard相似系数也称为雅可比相似度系数,狭义jaccard相似系数(Jaccard Similarity Coefficient)是通过样本交集与总交集的差异的相似度算法,一般用J表示,公式如下:

根据上述公式,即在集合A和集合B中,两者的交集越多,则表示两种相似度越高。Jaccard的相似性与集合的顺序无关,仅与在集合中是否出现有关,即为二者数据,不是0则是1,是一种简单 相似性方法,实质是集合交集与并集的比值。

3.广义Jaccard相似系数

广义Jaccard相似系数也称作Tanimoto系数,一般用EJ表示,公式如下:

上述公式中的A、B分别表示两个向量,与狭义的Jaccard中的元素为二值数据不同,广义Jaccard可以使元素不仅是0或1,实质是狭义Jaccard相似系数的扩展算法。

 

posted on 2024-11-13 09:57  longkui  阅读(13)  评论(0编辑  收藏  举报

导航