sklearn:点互信息和互信息

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013710265/article/details/72848755

1、点互信息PMI

机器学习相关文献里面,经常会用到点互信息PMI(Pointwise Mutual Information)这个指标来衡量两个事物之间的相关性(比如两个

词)。

其原理很简单,公式如下:



在概率论中,我们知道,如果x跟y不相关,则p(x,y)=p(x)p(y)。二者相关性越大,则p(x, y)就相比于p(x)p(y)越大。用后面的式子可能更

理解,在y出现的情况下x出现的条件概率p(x|y)除以x本身出现的概率p(x),自然就表示x跟y的相关程度

举个自然语言处理中的例子来说,我们想衡量like这个词的极性(正向情感还是负向情感)。我们可以预先挑选一些正向情感的词,

比如good。然后我们算like跟good的PMI。

2、互信息MI

点互信息PMI其实就是从信息论里面的互信息这个概念里面衍生出来的。  

互信息即:


其衡量的是两个随机变量之间的相关性,即一个随机变量中包含的关于另一个随机变量的信息量。所谓的随机变量,即随机试验结

果的量的表示,可以简单理解为按照一个概率分布进行取值的变量,比如随机抽查的一个人的身高就是一个随机变量。

可以看出,互信息其实就是对X和Y的所有可能的取值情况的点互信息PMI的加权和。因此,点互信息这个名字还是很形象的。

3、sklearn编程

from sklearn import metrics as mr
mr.mutual_info_score(label,x)

label、x为list或array。

计算x和label的互信息。

阅读更多
换一批

没有更多推荐了,返回首页