背景知识:从熵(Entropy)到互信息(MI,Mutual Information)

news/2024/12/22 2:57:25/

本文为鄙人的网摘与总结,参考链接见文末,侵删。

目录

    • 香农熵(Shannon entropy)
    • 熵(entropy)
    • 信息(Information)

香农熵(Shannon entropy)

信息量:对某个事件发生或者变量出现的概率的度量,一般一个事件发生的概率越低,则这个事件包含的信息量越大,这跟我们直观上的认知也是吻合的,越稀奇新闻包含的信息量越大,因为这种新闻出现的概率低。

​ 香农对信息量的衡量:
l o g 1 p = − l o g p log\ \frac{1}{p}=-log\ p log p1=log p
​ 一条信息的[信息量]大小和它的不确定性有直接的关系。比如说,我们要搞清楚一件非常非常不确定的事,或是我们一无所知的事情,就需要了解大量的信息。相反,如果我们对某件事已经有了较多的了解,我们不需要太多的信息就能把它搞清楚。所以,从这个角度,我们可以认为,信息量的度量就等于不确定性的多少。变量的不确定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大。

香农熵定义:对于任意一个随机变量 X X X
H ( X ) = − ∑ x P ( X ) l o g 2 [ P ( x ) ] H(X)=-\sum_x P(X) log_2 [P(x)] H(X)=xP(X)log2[P(x)]
​ 对于随机变量而言,其取值是不确定的。在做随机试验之前,我们只了解各取值的概率分布,而做完随机试验后,我们就确切地知道了取值,不确定性完全消失。这样,通过随机试验我们获得了信息,且该信息的数量恰好等于随机变量的熵。在这个意义上,我们可以把熵作为信息的量度。

熵(entropy)

是衡量一个系统的稳定程度,也是一个系统所有变量信息量的期望或者均值。当一个系统越不稳定,或者事件发生的不确定性越高,它的熵就越高。如下所示(同eq. 2),对数的底数没有确定:
H ( X ) = − ∑ x ∈ X P ( x ) l o g P ( x ) = − E l o g P ( X ) H(X)=-\sum_{x\in X} P(x) log P(x)=-E\ log \ P(X) H(X)=xXP(x)logP(x)=E log P(X)
​ 熵的变体:

  1. 连续变量的熵
    H ( X ) = ∫ P ( x ) ⋅ l o g 1 P ( x ) d x H(X)=\int P(x) · log\frac{1}{P(x)}dx H(X)=P(x)logP(x)1dx

  2. 联合熵(joint entropy):
    H ( X , Y ) = ∑ x ∈ X ∑ y ∈ Y P ( x , y ) l o g 1 P ( x , y ) = − E l o g P ( X , Y ) H(X,Y)=\sum_{x\in X}\sum_{y\in Y}P(x,y)log\frac{1}{P(x,y)}=-E\ log P(X,Y) H(X,Y)=xXyYP(x,y)logP(x,y)1=E logP(X,Y)

  3. 条件熵(conditional entropy):
    H ( Y ∣ X ) = ∑ x ∈ X P ( x ) H ( Y ∣ X = x ) = − E l o g P ( Y ∣ X ) H(Y|X)=\sum_{x\in X}P(x)H(Y|X=x)=-E log\ P(Y|X) H(YX)=xXP(x)H(YX=x)=Elog P(YX)

  4. 相对熵(relative entropy),即KL散度(Kullback–Leibler divergence),用于衡量两个分布对于同一个变量的差异:
    D K L ( p ∣ ∣ q ) = ∑ i p ( x i ) ⋅ [ l o g 1 q ( x i ) − l o g 1 p ( x i ) ] = ∑ i p ( x i ) ⋅ l o g p ( x i ) q ( x i ) D_{KL}(p||q)=\sum_{i}p(x_i)·[log\frac{1}{q(x_i)}-log\frac{1}{p(x_i)}] =\sum_{i}p(x_i)·log\frac{p(x_i)}{q(x_i)} DKL(pq)=ip(xi)[logq(xi)1logp(xi)1]=ip(xi)logq(xi)p(xi)
    其中 p p p 是观察到的变量分布, q q q 是我们找到的一个尽量分布。

备注:

(1) K L 散 度 = 交 叉 熵 − 熵 KL散度=交叉熵-熵 KL=:
D K L ( p ∣ ∣ q ) = H ( p , q ) − H ( p ) D_{KL}(p||q)=H(p,q)-H(p) DKL(pq)=H(p,q)H(p)

(2) KL散度是非对称度量,故不能作为距离计算,因为 D K L ( p ∣ ∣ q ) ≠ D K L ( q ∣ ∣ p ) D_{KL}(p||q)\neq D_{KL}(q||p) DKL(pq)=DKL(qp)

  1. 交叉熵(cross entropy),也可以用来衡量两个分布之间的差异性。
    H C E ( p , q ) = ∑ i p ( x i ) ⋅ l o g 1 q ( x i ) H_{CE}(p,q)=\sum_i p(x_i)·log\ \frac{1}{q(x_i)} HCE(p,q)=ip(xi)log q(xi)1
    显然交叉熵是相对熵的一部分,因为在通常情况下我们是已知 p p p的分布,即第二部分是常量,此时交叉熵和相对熵是一个线性关系。我们常常在神经网络中使用交叉熵作为损失函数。

  2. JS散度(Jensen-Shannon divergence):为解决相对熵即KL散度的不对称问题,进而延伸的变体。
    D J S ( p ∣ ∣ q ) = 0.5 × [ D K L ( p ∣ ∣ p + q 2 ) + D K L ( q ∣ ∣ p + q 2 ) ] D_{JS}(p||q) =0.5\times[D_{KL}(p||\frac{p+q}{2})+D_{KL}(q||\frac{p+q}{2})] DJS(pq)=0.5×[DKL(p2p+q)+DKL(q2p+q)]
    注:JS散度有上界 1 2 l o g 2 \frac{1}{2}log\ 2 21log 2.

信息(Information)

信息增益(Information Gain):在一个训练集上,用来衡量一个变量 a a a对其的影响。
G a i n ( D , a ) = H ( D ) − H ( D ∣ a ) Gain(D,a)=H(D)-H(D|a) Gain(D,a)=H(D)H(Da)
可知 信 息 增 益 = 信 息 熵 − 条 件 熵 信息增益=信息熵-条件熵 = ,信息熵是代表随机变量的复杂度(不确定度),条件熵代表在某一个条件下,随机变量的复杂度(不确定度),故信息增益代表了在一个条件下,信息复杂度(不确定性)减少的程度。

互信息(Mutual Information):
I ( X , Y ) = H ( X ) − H ( X ∣ Y ) = H ( Y ) − H ( Y ∣ X ) = H ( X ) + H ( Y ) − H ( X , Y ) I(X,Y)=H(X)-H(X|Y)=H(Y)-H(Y|X)=H(X)+H(Y)-H(X,Y) I(X,Y)=H(X)H(XY)=H(Y)H(YX)=H(X)+H(Y)H(X,Y)
如图所示,互信息即为两边熵的交叉部分。

我们也可以从另一个角度进行理解。设随机变量 ( X , Y ) (X,Y) (X,Y)的联合分布及边缘分布分别为 p ( x , y ) 、 p ( x ) 、 p ( y ) p(x,y)、p(x)、p(y) p(x,y)p(x)p(y)互信息就是联合分布与乘积分布的相对熵
I ( X ; Y ) = ∑ x ∑ y p ( x , y ) l o g p ( x , y ) p ( x ) p ( y ) = K L ( p ( x , y ) ∣ ∣ p ( x ) p ( y ) ) I(X;Y)=\sum_x \sum_y p(x,y)log \frac{p(x,y)}{p(x)p(y)}=KL(p(x,y)||p(x)p(y)) I(X;Y)=xyp(x,y)logp(x)p(y)p(x,y)=KL(p(x,y)p(x)p(y))
I ( X ; Y ) = ∑ x ∑ y p ( y ∣ x ) l o g p ( y ∣ x ) p ( y ) = K L ( p ( y ∣ x ) ∣ ∣ p ( y ) ) I(X;Y)=\sum_x \sum_y p(y|x)log \frac{p(y|x)}{p(y)}=KL(p(y|x)||p(y)) I(X;Y)=xyp(yx)logp(y)p(yx)=KL(p(yx)p(y))
互信息可以看成是一个随机变量中包含的关于另一个随机变量的信息量,或者说是一个随机变量由于已知另一个随机变量而减少的不肯定性。

互信息与信息增益的关系与区别

  • 互信息描述的是同一个系统下两个子系统的对应部分的信息量;信息增益描述的是同一个系统下,不同状态的信息量。
  • 互信息是指一些物体以不同属性进行分类时的信息量,评价的是属性的关键程度;信息增益是指在已知一个事件后, 事件的不确定程度。
  • 信息增益是互信息的无偏估计,所以在决策树的训练过程中, 两者是等价的。

​ 3. 归一化互信息(NMI,Normal Mutual Information):

将互信息放在[0,1]之间,用于算法的评价:
N M I ( X ; Y ) = 2 I ( X , Y ) H ( X ) + H ( Y ) NMI(X;Y)=\frac{2I(X,Y)}{H(X)+H(Y)} NMI(X;Y)=H(X)+H(Y)2I(X,Y)

  1. 聚类中的标准互信息NMI

N M I ( Ω ; C ) = 2 I ( Ω , C ) H ( Ω ) + H ( C ) NMI(\Omega ;C)=\frac{2I(\Omega,C)}{H(\Omega)+H(C)} NMI(Ω;C)=H(Ω)+H(C)2I(Ω,C)

其中:
I ( Ω , C ) = ∑ k ∑ j P ( w k ∩ c j ) l o g P ( w k ∩ c j ) P ( w k ) P ( c j ) = ∑ k ∑ j ∣ w k ∩ c j ∣ N l o g N ∣ w k ∩ c j ∣ ∣ w k ∣ ∣ c c ∣ I(\Omega,C)=\sum_k \sum_j P(w_k \cap c_j)log\frac{P(w_k \cap c_j)}{P(w_k) P(c_j)} =\sum_k \sum_j \frac{|w_k \cap c_j|}{N}log\frac{N|w_k \cap c_j|}{|w_k||c_c|} I(Ω,C)=kjP(wkcj)logP(wk)P(cj)P(wkcj)=kjNwkcjlogwkccNwkcj
P ( w k ) P(w_k) P(wk)​, P ( c j ) P(c_j) P(cj), P ( w k ∩ c j ) P(w_k \cap c_j) P(wkcj)可以分别看做样本属于聚类簇 w k w_k wk,属于类别 C j C_j Cj,同时属于两者的概率。第二个等价式子则由概率的极大似然估计推导得出:
H ( Ω ) = − ∑ k P ( w k ) l o g P ( w k ) = − ∑ k ∣ w k ∣ N l o g ∣ w k ∣ N H(\Omega)=-\sum_k P(w_k)logP(w_k)=-\sum_k\frac{|w_k|}{N}log\frac{|w_k|}{N} H(Ω)=kP(wk)logP(wk)=kNwklogNwk
I ( Ω , C ) I(\Omega,C) I(Ω,C)表示给定类簇信息 C C C的前提下,类别信息 Ω \Omega Ω的增加量,或者说其不确定度的减少量。

  1. 点互信息(Pointwise Mutual Information)
    P M I ( x : y ) = l o g p ( x , y ) p ( x ) p ( y ) = l o g p ( x ∣ y ) p ( x ) = l o g p ( y ∣ x ) p ( y ) PMI(x:y)=log\frac{p(x,y)}{p(x)p(y)}=log\frac{p(x|y)}{p(x)}=log\frac{p(y|x)}{p(y)} PMI(x:y)=logp(x)p(y)p(x,y)=logp(x)p(xy)=logp(y)p(yx)

如果 x x x y y y不相关,则 p ( x , y ) = p ( x ) p ( y ) p(x,y)=p(x)p(y) p(x,y)=p(x)p(y)。二者相关性越大,则 p ( x , y ) p(x,y) p(x,y)就相比于 p ( x ) p ( y ) p(x)p(y) p(x)p(y)越大。用后面的式子可能更好理解,在 y y y出现的情况下x出现的条件概率 p ( x ∣ y ) p(x|y) p(xy)除以 x x x本身出现的概率 p ( x ) p(x) p(x),自然就表示x跟y的相关程度。

参考:

  1. 互信息(Mutual Information)浅尝辄止(一):基础概念
  2. 为什么样本方差的分母为 n − 1 n-1 n1
  3. 香农熵-百度百科
  4. 如何理解K-L散度(相对熵)
  5. 归一化互信息(NMI)评价指标
  6. 深度聚类评估指标(Purity、NMI、RI、ARI)
  7. 什么是点互信息
  8. 互信息(Mutual Information)

http://www.ppmy.cn/news/499490.html

相关文章

【精华】表格识别技术-MI

文章目录 一、背景三、表格检测算法四、表格识别算法五、对齐算法 表格识别是指将图片中的表格结构和文字信息识别成计算机可以理解的数据格式,在办公、商务、教育等场景中有着广泛的实用价值,也一直是文档分析研究中的热点问题。围绕这个问题&#xff0…

Nvme-MI 协议理解-overview

最近工作涉及到做一些MI 协议测试用例编写。 看起来MI 协议很繁杂,看了两个多月了,想边学习理解,边进行总结。 MI 协议主要涉及物理层smbus/I2C, 中间传输层的MCTP,和最上层封装起来的MI 层。 这里主要着重在out of …

GDB MI命令

GDB MI命令 Breakpoint 指令 IDGDB MI CommandGDB Command1-break-after number countignore2-break-commands number [ command1 … commandN ]commands3-break-condition [ --force ] number [ expr ]condition4-break-delete ( breakpoint )delete5-break-disable ( break…

EESM和MI-ESM

最近这方面一直是我研究内容的一部分,工作也将要进行到收尾阶段了,总结一下我初期的调研成果: 文章目录 ESM——EESM & MI-ESM问题提出:为何会需要ESM(Effective SINR Mapping,有效SINR模型&#xff09…

米家BLE广播协议(MI Beacon)Object字段解密

一、协议分析 参考链接:小米蓝牙广播数据解析(MiBeacon) 二、广播实例解析(门窗传感器广播数据) service data 如下 95 FE 58 59 89 18 69 B3 D4 D7 38 C1 A4 60 2C 8F B1 3B 00 00 41 3D 5E 0A Mi service UUID : 0xFE95 Frame Control …

MU-MIMO是什么

欢迎来到东用知识小课堂! 1.什么是MIMO MIMO:Multiple-Intput Multiple-Output,即多入多出系统,这里的入和出是相对于发射天线和接受天线构成的天线系统来讲。 通常的通信系统是单发单收,也就是SISO:Single-Input Sing…

【MySQL】MVCC是如何解决快照读下的幻读问题的

文章目录 LBCC当前读 MVCC隐藏列undo logRead View 总结 我们从上文中了解到InnoDB默认的事务隔离级别是repeatable read(后文中用简称RR),它为了解决该隔离级别下的幻读的并发问题,提出了LBCC和MVCC两种方案。其中LBCC解决的是当…

NVMe-MI 时代的NVMe SSD监控和管理

带外管理是企业级NVMe SSD的一种管理维护方式,它独立于主机的操作系统,无需登陆甚至无需系统启动,即可实现高效的NVMe设备监控、管理、升级等操作。它涉及BMC、SMBUS、VPD、IPMI这些技术和概念,它们早已有之并且非常成熟。 说到N…