相似度计算之Dice系数

18 sec read

Dice距离用于度量两个集合的相似性,因为可以把字符串理解为一种集合,因此Dice距离也会用于度量字符串的相似性。此外,Dice系数的一个非常著名的使用即实验性能评测的F1值。Dice系数定义如下:

    \[s = \frac{2|A\cap B|}{|A|+|B|}\]

其中分子是A与B的交集数量的两倍,分母为X和Y的长度之和,所以他的范围也在0到1之间。从公式看,Dice系数和Jaccard非常的类似。Jaccard是在分子和分母上都减去了|A∩B|。

    \[J(A,B)=\frac{|A\cap B|}{|A\cup B|}=\frac{|A\cap B|}{|A|+|B|-|A\cap B|}\]

与Jaccard不同的是,相应的差异函数

d=1-{\frac {2|X\cap Y|}{|X|+|Y|}}

不是一个合适的距离度量措施,因为它没有三角形不等性的性质。例如给定 {a}, {b}, 和 {a,b}, 前两个集合的距离为1, 而第三个集合和其他任意两个集合的距离为三分之一。

与Jaccard类似, 集合操作可以用两个向量A和B的操作来表示:

    \[s_{v}={\frac {2|A\cdot B|}{|A|^{2}+|B|^{2}}}\]

Python实现:

其他参考:

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

Pandas学习笔记:Excel、CSV文件的读取与导出

在使用Pandas处理数据时,常见的读取数据的方式时从Excel或CSV文件中获取,另外有时也会需要将处理完的数据输出为Excel或CSV文件。今天就一起来学习下Pandas常见的文件读取与导出的方法。
2 min read

Pandas学习笔记之数据类型

Pandas是建立在Numpy上,并与其他第三方库在科学运算环境中有较好兼容性的包。其最大的特色在于提供灵活直观的数据结构来处理关联和有标签的数据。如果从底层视角观察Pandas,可以把它看成增强版的NumPy结构化数据,行列都不再只是简单的整数索引,还可以 ...
1 min read

Excel比较多列并取获最小值或最大值取列名

最近在Excel中分析数据的时候需要要比较多列数据,并返回列中最小值所在列的列名,具体场景如下:
2 sec read

Leave a Reply

Your email address will not be published. Required fields are marked *