常用的相似性度量指标

相似性度量,即综合评定两个事物之间相近程度的一种度量。两个事物越接近,它们的相似性度量也就越大,而两个事物越疏远,它们的相似性度量也就越小。相似性度量的给法种类繁多,一般根据实际问题进行选用。

1. 余弦相似度

2. 曼哈顿距离

3. 切比雪夫距离

4. 简单匹配系数 

5. jaccard 相似度

5.1 Jaccard系数

5.2 jaccard 距离

5.3 举例 

6. 皮尔逊相关系数


1. 余弦相似度

自然语言处理中,常采用余弦相似度进行文档相似性度量手段,假定AB是两个n维文档向量,A[A1, A2, ..., An] B[B1, B2, ..., Bn] ,则AB余弦相似度等于:

$$ \cos \theta=\frac{x_{1} x_{2}+y_{1} y_{2}}{\sqrt{x_{1}^{2}+y_{1}^{2}} \times \sqrt{x_{2}^{2}+y_{2}^{2}}} $$

2. 曼哈顿距离

设平面空间内存在两点,它们的坐标为(x1,y1),(x2,y2),则dis=|x1−x2|+|y1−y2|,即两点横纵坐标差之和。

3. 切比雪夫距离

设平面空间内存在两点,它们的坐标为(x1,y1),(x2,y2),则dis=max(|x1−x2|,|y1−y2|),即两点横纵坐标差的最大值。

曼哈顿距离和切比雪夫距离之间的相互转换关系,请移步至:曼哈顿距离与切比雪夫距离及其相互转化

4. 简单匹配系数 

简单匹配系数(simple matching coefficient)的定义如下:

设x和y是两个对象,都有n个二元属性组成。这两个对象(二元向量)进行比较,可以生成4个量:

  • f00=x取0且y取0的属性个数;
  • f10=x取1且y取0的属性个数;
  • f01=x取0且y取1的属性个数;
  • f11=x取1且y取1的属性个数;
SMC=值匹配的属性个数/属性个数=(f11+f00)/(f01+f10+f00+f11)

5. jaccard 相似度

5.1 Jaccard系数

Jaccard系数(jaccard index)又称为Jaccard 相似度(jaccard similarity coefficient),用于比较有限样本集之间的相似性和差异性。给定两个集合A,B jaccard 系数定义为A与B交集的大小并集大小比值,jaccard值越大说明相似度越高。

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

当A和B都为空时,jaccard(A,B)=1;

jaccard相似度的缺点是只适用于二元数据的集合。

5.2 jaccard 距离

与jaccard 系数相关的指标是jaccard距离用于描述不相似度,公式为

$$ d_{j}(A, B)=1-J(A, B)=\frac{|A \cup B|-|A \cap B|}{|A \cup B|}=\frac{A \Delta B}{|A \cup B|} $$

5.3 举例 

举一个非对称(注意这里强调非对称)二元属性的相似度的例子。

二元属性:取值为0或者1的属性,所以也成为布尔属性

对称二元属性:属性的两个状态的权重相同,例如:“性别”这一属性的取值“男性”,“女性”。

非对称二元属性:即状态的权重不相同,例如:“HIV”有“阴性”和“阳性”,阳性比较稀少,更重要。

已知有序集合A,B,每个集合都含有n个二元的属性,即每个属性都是0或1,其中:

  • M11表示A和B对应位都是1的属性的数量
  • M10表示A中为1,B中对应位为0的总数量
  • M01表示A中为0,B中对应位为1的总数量
  • M00表示对应位都为0的总数量

则满足:M11+M10+M01+M00=n。

Jaccard 相似度

$$ J=\frac{M_{11}}{M_{01}+M_{10}+M_{11}} $$

jaccard距离

$$ d_{J}=\frac{M_{01}+M_{10}}{M_{01}+M_{10}+M_{11}}=1-J $$

这里有人会有疑问,jaccard相似度是指交集和并集的比值,但是,这里J的分子为什么只有M11没有M00?

这是因为我们求的是非对称二元属性的相似度,这里只有非0值才受关注,比如考虑普通人的健康状况,属性集合(糖尿病,心脏病,精神病等),糖尿病指标0表示没有糖尿病,1表示糖尿病,心脏病指标0表示没有心脏病,1表示心脏病,比较两个人的患病情况,我们只关注有病的情况。所以分子和分母中没有M00。

更多详情,请移步至:jaccard相似度

6. 皮尔逊相关系数

Pearson相关系数 (Pearson CorrelationCoefficient)是用来衡量两个数据集合是否在一条线上面,定义如下:

$$ \rho_{X Y}=\frac{\operatorname{Cov}(\mathrm{X}, \mathrm{Y})}{\sqrt{D(X)} \sqrt{D(Y)}}=\frac{E((\mathrm{X}-\mathrm{EX})(Y-E Y))}{\sqrt{D(X)} \sqrt{D(Y)}} $$

 其中:D(X)为X的方差,D(Y)为Y的方差。

根据施瓦茨不等式可以得到-1<=Corr(X,Y)<=1,这样就可以定量的分析两个随机变量的相关性了。

  • Corr(X,Y)=1的时候,说明两个随机变量完全正相关,即满足Y=aX+b,a>0。考虑Corr(X,X),两个随机变量相同,肯定满足线性关系,此时,Cov(X,X)=Var(X),容易得到Corr(X,Y)=1;
  • Corr(X,Y)=-1的时候,说明两个随机变量完全负相关,即满足Y=-aX+b,a>0;
  • 0<| Corr(X,Y)|<1的时候,说明两个随机变量具有一定程度的线性关系。

相关距离: 

$$ D_{x y}=1-\rho_{X y} $$

举例:

 

身高X(cm)

体重Y(500g)

1

152

92

2

185

162

3

169

125

4

172

118

5

174

122

6

168

135

7

180

168

E(X)=(152+185+169+172+174+168+180)/7=171.43

E(Y)=(92+162+125+118+122+135+168)/7=131.71

D(X)=((152-171.43)^2+(185-171.43)^2+(169-171.43)^2+(172-171.43)^2+(174-171.43)^2+(168-171.43)^2+(180-171.43)^2)/7=94.24

D(Y)=((92-131.71)^2+(162-131.71)^2+(125-131.71)^2+(118-131.71)^2+(122-131.71)^2+(135-131.71)^2+(168-131.71)^2)/7=592.78

E{[X-E(X)][Y-E(Y)]}=((152-171.43)*(92-131.71)+(185-171.43)*(162-131.71)+(169-171.43)*(125-131.71)+(172-171.43)*(118-131.71)+(174-171.43)*(122-131.71)+(168-171.43)*(135-131.71)+(180-171.43)*(168-131.71))/7=209.41

Corr(X,Y)= 209.41/((94.24)^(1/2)*(592.78)^(1/2))=0.89

补充说明:Corr(X,Y)为0,表示X与Y不相关,这里的不相关指的是X与Y没有线性关系,但不是没有关系。因此将“相关”理解为“线性相关”也许更恰当一些。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值