最大熵对应的概率分布
最大熵定理
设 X∼p(x) 是一个连续型随机变量,其微分熵定义为
h(X)=−∫p(x)logp(x)dx
其中,log 一般取自然对数 ln, 单位为 奈特(nats)。
考虑如下优化问题:
pMaximizeSubject to h(p)=−∫Sp(x)logp(x)dx∫Sp(x)dx=1p(x)≥0∫Sp(x)fi(x)dx=αi, i=1,2,3,…,n
其中,集合 S 是随机变量的support,即其所有可能的取值。我们意图找到这样的概率分布 p, 他满足所有的约束(前两条是概率公理的约束,最后一条叫做矩约束,在模型中有时会假设随机变量的矩为常数),并且能够使得熵最大。将上述优化问题写成标准形式:
pMinimizeSubject to ∫Sp(x)logp(x)dx−p(x)≤0∫Sp(x)dx=1∫Sp(x)fi(x)dx=αi, i=1,2,3,…,n
使用Lagrange乘数法得到其Lagrangian
L(p,λ)=∫Splogp dx−μ−1p+μ0(∫Sp dx−1)+j=1∑nλj(∫Spfj dx−αj)
根据KKT条件对Lagrangian求导令为0,可得最优解。
∂p∂L=lnp+1−μ−1+μ0+j=1∑nλjfj:=0⟹p=exp(−1+μ−1−μ0−j=1∑nλjfj)=c∗e−∑j=1nλj∗fj(x):=p∗
其中,我们要选择 c∗,λ∗ 使得 p(x) 满足约束。到这里我们知道,在所有满足约束的概率分布当中,p∗ 是使得熵达到最大的那一个!
例子
高斯分布
------⇒
约束:
- E(X)=0⟹f1=x
- E(X2)=σ2⟹f2=x2
根据上面的论证,最大熵分布应具有如下形式:
p(x)=ce−λ1x−λ2x2
再根据 KKT 条件:
- ∫−∞+∞p(x)=1
- ∫−∞+∞xp(x)=0
- ∫x2p(x)=σ2
由条件 (2)⟹p(x) 是偶函数 ⟹λ1=0, 原条件变成
- ∫−∞+∞ce−λ2x2=1
- ∫x2ce−λ2x2=σ2
⟹c=2πσ21, λ2=2σ21⟹p(x)=2πσ21e−2σ2x2∼N(0, σ2)
指数分布
-------⇒
约束:
根据上面的论证,最大熵分布应具有如下形式:
p(x)=ce−λ1x
再根据 KKT 条件:
- ∫0+∞ce−λ1x=1
- ∫0+∞xce−λ1x=μ1
推导如下:
∫0+∞e−λ1x=c1⟹λ1=c∫0+∞xe−λ1x=cμ1=λ1μ1⟹λ1=μ
⟹p(x)=μe−μx∼Exp(μ)
均匀分布
-------⇒
约束:
根据上面的论证,最大熵分布应具有如下形式:
p(x)=ce−0x=c∫abc dx=1⟹c=b−a1
⟹p(x)=b−a1∼Unif(a, b)
几何分布
-------⇒
几何分布计数直到第一次成功前所有的失败次数。P(X=k)=qkp
约束:
根据上面的论证,最大熵分布应具有如下形式:
P(X=k)=pk=ce−λ1k
再根据 KKT 条件:
- ∑k=0∞pk=1
- ∑k=0∞kpk=p1−p
推导如下:
k=0∑∞ce−λ1k=ck=0∑∞qk(where q=e−λ1)=1−qc⟹c=1−qk=0∑∞kce−λ1k=ck=1∑∞k(e−λ1)k=ck=1∑∞kqk=cq∑kqk−1=cq∑(qk)′=cq(k=1∑∞qk)′=cq(1−qq)′=cq⋅(1−q)21=1−qq=p1−p
⟹e−λ1=q=1−p, c=p⟹P(X=k)=pk=pqk∼Geom(p)