您的位置:首页 > 其它

详解熵、最大熵、联合熵和条件熵、相对熵以及互信息之间的关系

2018-07-03 19:06 1231 查看

信息量的定义

某事件发生的概率小,则该事件的信息量大。
定义随机变量XX的概率分布为P(X)P(X),XX的信息量为:h(X)=−log2P(X)h(X)=−log2P(X).

对随机事件的信息量求期望,得到随机变量X的熵:
H(X)=−∑x∈XP(x)logP(x)

当对数底数是2时,单位是bit,当对数底数是e时,单位是nat(奈特)。同时,若P(x)=0,则定义0log0=0。由熵定义可知,随机变量的熵只依赖于X的分布,而与X的取值无关。
熵表示的是随机变量不确定性的度量。熵越大,随机变量的不确定性也就越大。

两点分布的熵

H(X)=−∑x∈XP(x)logP(x)=−plog2p−(1−p)log2(1−p)H(X)=−∑x∈XP(x)log⁡P(x)=−plog2p−(1−p)log2(1−p)

这时,熵H(X)H(X)随概率pp变化的曲线如下图所示。

当p=0p=0或p=1p=1时,随机变量完全没有不确定性。当p=0.5p=0.5时,H(X)=1H(X)=1,熵取得最大值,随机变量的不确定性最大。

离散随机变量的最大熵

假设离散随机变量XX的概率分布是P(X)P(X),则其熵是:H(X)=−∑x∈XP(x)logP(x)H(X)=−∑x∈XP(x)log⁡P(x)
熵满足下列不等式:0≤H(X)≤log|X|0≤H(X)≤log⁡|X|
其中|X||X|是XX的取值个数,当且仅当XX的分布是均匀分布时右边的等号成立。也就是说,当XX服从均匀分布时,熵最大。

给定期望和方差,最大熵的分布形式

正态分布的概率密度函数为:f(x)=12π−−√σe−(x−μ)22σ2f(x)=12πσe−(x−μ)22σ2
对数正态分布为:lnf(x)=ln12π−−√−lnσ−−(x−μ)22σ2=α⋅x2+β⋅x+γln⁡f(x)=ln⁡12π−ln⁡σ−−(x−μ)22σ2=α⋅x2+β⋅x+γ
该分布的对数是关于随机变量XX的二次函数。根据计算过程的可逆性,若某对数分布能够写成随机变量二次形式,该分布必然是正态分布。
目标函数为:argmaxP(x)H(X)=−∑x∈XP(x)logP(x)s.t.{E(X)=μVar(X)=σ2arg⁡maxP(x)⁡H(X)=−∑x∈XP(x)log⁡P(x)s.t.{E(X)=μVar(X)=σ2
由约束条件E(X)=μ,Var(X)=σ2E(X)=μ,Var(X)=σ2

可得Var(X)=E(X2)−E2(X)⇒E(X2)=Var(X)+E2(X)=μ2+σ2Var(X)=E(X2)−E2(X)⇒E(X2)=Var(X)+E2(X)=μ2+σ2
采用拉格朗日乘子法转化为无约束的极值问题。拉格朗日函数为:L(P)=−∑x∈XP(x)logP(x)+λ1(E(X)−μ)+λ2(E(X2)−μ2−σ2)=−∑x∈XP(x)logP(x)+λ1(∑x∈Xx⋅P(x)−μ)+λ2(∑x∈Xx2⋅P(x)−μ2−σ2)L(P)=−∑x∈XP(x)log⁡P(x)+λ1(E(X)−μ)+λ2(E(X2)−μ2−σ2)=−∑x∈XP(x)log⁡P(x)+λ1(∑x∈Xx⋅P(x)−μ)+λ2(∑x∈Xx2⋅P(x)−μ2−σ2)
对P(x)P(x)求导可得:∂L∂P=−logP(x)−1+λ1⋅x+λ2⋅x2∂L∂P=−log⁡P(x)−1+λ1⋅x+λ2⋅x2
令其导数等于0,可得:logP(x)=λ1⋅x+λ2⋅x2−1log⁡P(x)=λ1⋅x+λ2⋅x2−1
P(x)P(x)的对数是关于随机变量xx的二次形式,所以该分布P(x)P(x)是正态分布。

联合熵和条件熵

设有随机变量(X,Y)(X,Y),其联合概率分布为:P(X=xi,Y=yj)=p(xi,yj)=pij,i=1,2,⋯,n;j=1,2,⋯,mP(X=xi,Y=yj)=p(xi,yj)=pij,i=1,2,⋯,n;j=1,2,⋯,m
联合熵为H(X,Y)=−∑x,yP(x,y)logP(x,y)H(X,Y)=−∑x,yP(x,y)log⁡P(x,y)
条件熵为H(Y|X)=H(X,Y)−H(X)H(Y|X)=H(X,Y)−H(X)。条件熵表示在已知随机变量XX的条件下随机变量YY的不确定性。
H(Y|X)=H(X,Y)−H(X)=−∑x,yP(x,y)logP(x,y)+∑xP(x)logP(x)=−∑x,yP(x,y)logP(x,y)+∑x(∑yP(x,y))logP(x)=−∑x,yP(x,y)logP(x,y)+∑x∑yP(x,y)logP(x)=−∑x,yP(x,y)logP(x,y)P(x)=−∑x,yP(x,y)logP(y|x)=−∑x∑yP(x)P(y|x)logP(y|x)=−∑xP(x)∑yP(y|x)logP(y|x)=∑xP(x)(−∑yP(y|x)logP(y|x))=∑xP(x)H(Y|X=x)H(Y|X)=H(X,Y)−H(X)=−∑x,yP(x,y)log⁡P(x,y)+∑xP(x)log⁡P(x)=−∑x,yP(x,y)log⁡P(x,y)+∑x(∑yP(x,y))log⁡P(x)=−∑x,yP(x,y)log⁡P(x,y)+∑x∑yP(x,y)log⁡P(x)=−∑x,yP(x,y)log⁡P(x,y)P(x)=−∑x,yP(x,y)log⁡P(y|x)=−∑x∑yP(x)P(y|x)log⁡P(y|x)=−∑xP(x)∑yP(y|x)log⁡P(y|x)=∑xP(x)(−∑yP(y|x)log⁡P(y|x))=∑xP(x)H(Y|X=x)
H(Y|X)H(Y|X)定义为XX给定的条件下YY的条件概率分布的熵对XX的数学期望。

相对熵

相对熵,又称互熵,交叉熵,K-L散度等。用来衡量两个概率分布之间的差异。
设有两个概率分布p(x)p(x)和q(x)q(x),则pp对qq的相对熵为:D(p∥q)=∑xp(x)logp(x)q(x)D(p‖q)=∑xp(x)log⁡p(x)q(x)
对于连续的随机变量,定义为:D(p∥q)=∫p(x)logp(x)q(x)dxD(p‖q)=∫p(x)log⁡p(x)q(x)dx
1.相对熵可以度量两个随机变量的“距离”。
2.在概率和统计学中,经常会使用一种近似的分布来代替复杂的分布。K-L散度度量了使用一个分布来近似另一个分布时所损失的信息。
3.一般的,D(p∥q)≠D(q∥p)D(p‖q)≠D(q‖p),即是非对称的。
4.D(p∥q)≥0,D(q∥p)≥0D(p‖q)≥0,D(q‖p)≥0。这个可以利用凸函数中Jensen不等式来证明。
D(p∥q)=∑xp(x)logp(x)q(x)=−∑xp(x)logq(x)p(x)≥−log(∑xp(x)⋅q(x)p(x))=−log(∑xp(x))=−log(1)=0D(p‖q)=∑xp(x)log⁡p(x)q(x)=−∑xp(x)log⁡q(x)p(x)≥−log⁡(∑xp(x)⋅q(x)p(x))=−log⁡(∑xp(x))=−log⁡(1)=0
其中,因为loglog函数是凹函数,所以−log−log是凸函数。
同理可证D(q‖p)≥0D(q‖p)≥0。
5.假定已知随机变量PP,求相对简单的随机变量QQ,使得QQ尽量接近PP。就可以使用PP和QQ的K-L距离。
6.假定使用D(Q‖P)D(Q‖P),为了让距离最小,则要求在PP为0的地方,QQ尽量为0。会得到比较“窄”的分布曲线。
7.假定使用D(P‖Q)D(P‖Q),为了让距离最小,则要求在PP不为0的地方,QQ尽量不为0。会得到比较“宽”的分布曲线。

互信息

两个随机变量XX,YY的互信息,定义为XX,YY的联合分布和独立分布乘积的相对熵。
I(X,Y)=D(p(x,y)‖p(x)p(y))=∑x,yp(x,y)logp(x,y)p(x)p(y)I(X,Y)=D(p(x,y)‖p(x)p(y))=∑x,yp(x,y)log⁡p(x,y)p(x)p(y)
计算I(X,Y)=D(p(x,y)|p(x)p(y)) =∑x,yp(x,y)logp(x,y)p(x)p(y)I(X,Y)=D(p(x,y)|p(x)p(y)) =∑x,yp(x,y)log⁡p(x,y)p(x)p(y)
H(Y)−I(X,Y)=−∑yp(y)logp(y)−∑x,yp(x,y)logp(x,y)p(x)p(y)=−∑y(∑xp(x,y))logp(y)−∑x,yp(x,y)logp(x,y)p(x)p(y)=−∑x,yp(x,y)logp(y)−∑x,yp(x,y)logp(x,y)p(x)p(y)=−∑x,yp(x,y)logp(x,y)p(x)=−∑x,yp(x,y)logp(y|x)=∑xp(x)(−∑yp(y|x)logp(y|x))=∑xp(x)H(Y|x)=H(Y|X)H(Y)−I(X,Y)=−∑yp(y)log⁡p(y)−∑x,yp(x,y)log⁡p(x,y)p(x)p(y)=−∑y(∑xp(x,y))log⁡p(y)−∑x,yp(x,y)log⁡p(x,y)p(x)p(y)=−∑x,yp(x,y)log⁡p(y)−∑x,yp(x,y)log⁡p(x,y)p(x)p(y)=−∑x,yp(x,y)log⁡p(x,y)p(x)=−∑x,yp(x,y)log⁡p(y|x)=∑xp(x)(−∑yp(y|x)log⁡p(y|x))=∑xp(x)H(Y|x)=H(Y|X)
所以H(Y|X)=H(X,Y)−H(X)=H(Y)−I(X,Y)I(X,Y)=H(X)+H(Y)−H(X,Y)H(Y|X)=H(X,Y)−H(X)=H(Y)−I(X,Y)I(X,Y)=H(X)+H(Y)−H(X,Y)
因为I(X,Y)=H(X)+H(Y)−H(X,Y)I(X,Y)=H(X)+H(Y)−H(X,Y),所以从另一个角度也可以推出互信息的表达式。
I(X,Y)=H(X)+H(Y)−H(X,Y)=−∑xp(x)logp(x)−∑yp(y)logp(y)+∑x,yp(x,y)logp(x,y)=(−∑x∑yp(x,y)logp(x))−(∑y∑xp(x,y)logp(y))+∑x,yp(x,y)logp(x,y)=−∑x,yp(x,y)logp(x)−∑x,yp(x,y)logp(y)+∑x,yp(x,y)logp(x,y)=∑x,yp(x,y)(logp(x,y)−logp(x)−logp(y))=∑x,yp(x,y)(logp(x,y)p(x)p(y))I(X,Y)=H(X)+H(Y)−H(X,Y)=−∑xp(x)log⁡p(x)−∑yp(y)log⁡p(y)+∑x,yp(x,y)log⁡p(x,y)=(−∑x∑yp(x,y)log⁡p(x))−(∑y∑xp(x,y)log⁡p(y))+∑x,yp(x,y)log⁡p(x,y)=−∑x,yp(x,y)log⁡p(x)−∑x,yp(x,y)log⁡p(y)+∑x,yp(x,y)log⁡p(x,y)=∑x,yp(x,y)(log⁡p(x,y)−log⁡p(x)−log⁡p(y))=∑x,yp(x,y)(log⁡p(x,y)p(x)p(y))

Venn图

通过Venn图,可以方便我们记忆熵,联合熵,条件熵,互信息之间的关系。


左边的圆表示随机变量XX的熵,右边的圆表示随机变量YY的熵。左边的橙色部分表示随机变量YY给定的条件下随机变量XX的条件熵。右边的绿色部分表示随机变量XX给定的条件下随机变量YY的条件熵。两圆中间相交的部分表示随机变量XX和YY的互信息。橙色部分、两圆相交的咖啡色部分以及绿色部分加在一起表示XX和YY的联合熵。通过此图,各种熵之间的关系就很好记忆了。

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐