戴斯系数(Dice coefficient),也称索倫森-戴斯系数(Sørensen–Dice coefficient),取名於和,是一种集合相似度度量函数,通常用于计算两个样本的相似度:
:s = \frac{2 | X \cap Y |}
它在形式上和Jaccard指数没多大区别,但是有些不同的性质。
和Jaccard类似,它的范围为0到1。 与Jaccard不同的是,相应的差异函数
:d = 1 - \frac{2 | X \cap Y |}
不是一个合适的距离度量措施,因为它没有三角形不等性的性质。例如给定 {a}, {b}, 和 {a,b}, 前两个集合的距离为1,而第三个集合和其他任意两个集合的距离为三分之一。
与Jaccard类似, 集合操作可以用两个向量 A 和B的操作来表示:
s_v = \frac{2 | A \cdot B |}{| A |^2 + | B |^2}
上式给出了两个向量的距离输出,也给出了更一般情况下向量之间的相似度度量措施。
戴斯系数可以计算两个字符串的相似度:Dice(s1,s2)=2*comm(s1,s2)/(leng(s1)+leng(s2))。
其中,comm (s1,s2)是s1、s2 中相同字符的个数leng(s1),leng(s2)是字符串s1、s2 的长度。
在信息检索中, 给定关键词集合X 和Y ,相似度定义为两倍的共同信息(重叠部分)除以基数的总和 :
当作为字符串之间的相似度度量时, 计算两个字符串之间的系数, x 和y,使用 bigrams 公式如下:
:s = \frac{2 n_t}{n_x + n_y}
其中nt 是两个字符串共有的bigrams的个数, nx 是 x中bigrams的个数 ,ny 是 y中bigrams的个数。例如要计算下面两个字符串之间的相似度:
:night
:nacht
我们可以在各个单词中得出如下bigrams集合:
:{ni,ig,gh,ht}
:{na,ac,ch,ht}
每个集合有4个元素, 这个两个集合只有一个相同的元素: ht.
代入公式我们可以计算出, s = (2 · 1) / (4 + 4) = 0.25.
同见
*雅卡爾指數(Jaccard index), 等同于: D=2J/(1+J) and J=D/(2-D)
*
*萊文斯坦距離
*Sørensen similarity index
参考文献
参考资料
评论 (0)