M11 · 第 5 章 · 第三编 信息度量与综合复习

熵、互信息与散度

从自信息和期望定义离散熵,推导联合熵、条件熵与链式法则,用 KL 散度证明互信息非负,并区分对数底、支撑零值、离散熵和微分熵的适用边界。

报告页面错误
预备知识约束优化、KKT 条件与对偶性条件概率与独立性期望、方差与协方差

本章目标

  1. 按指定对数底计算自信息与熵,并在 bit、nat 之间正确换算。
  2. 由联合分布推导条件熵和链式法则,辨认离散熵及条件熵的零值条件。
  3. 计算交叉熵与 KL 散度,说明支撑条件、非负性、非对称性和等号成立条件。
  4. 把互信息写成联合分布与边缘乘积的 KL 散度,并判断其为零何时等价于独立。
  5. 区分离散熵与微分熵,解释微分熵可以为负且会随坐标尺度改变。
页面阅读位置0% · 仅保存在此浏览器
章节未开始
本册完成进度0/6 章 · 0%
本页目录

信息量必须先声明对数底

一个罕见结果发生时,比常见结果更令人意外。若事件的概率为 pp,希望“信息量”把独立事件的概率乘法转成信息加法,就自然得到负对数。

自信息与离散熵

选定对数底 b>1b>1。概率为 p(x)>0p(x)>0 的结果 xx 的自信息为

ıb(x)=logbp(x).\imath_b(x)=-\log_b p(x).

离散随机变量 XX 的熵是自信息的期望:

Hb(X)=x:p(x)>0p(x)logbp(x).H_b(X) =-\sum_{x:p(x)>0}p(x)\log_b p(x).

约定 limt0tlogbt=0\lim_{t\downarrow0}t\log_b t=0,因此熵公式中把 0logb00\log_b0 记为零。

b=2b=2 时单位是 bit;当 b=eb=e 时单位是 nat。两种单位只相差常数:

He(X)=(ln2)H2(X).H_e(X)=(\ln2)H_2(X).

对一个概率为零的不可能结果,单独写自信息会得到 ++\infty;但它在期望中的权重为零,极限约定使熵项为零。这与“概率为正而参考分布给出零概率”完全不同,后者会使 KL 散度为无穷大。

例 1:偏置硬币的自信息与熵

P(X=1)=1/4P(X=1)=1/4P(X=0)=3/4P(X=0)=3/4,取二为底。两个结果的自信息分别为

ı2(1)=2,ı2(0)=log2(3/4)0.415037.\imath_2(1)=2,\qquad \imath_2(0)=-\log_2(3/4)\approx0.415037.

所以

H2(X)=14log21434log2340.811278 bit.H_2(X) =-\frac14\log_2\frac14-\frac34\log_2\frac34 \approx0.811278\ \text{bit}.

该值小于公平硬币的 11 bit,因为观察偏置硬币前的不确定性较低。熵是平均信息量,不等于每次观测都提供相同数量的信息。

对有限字母表,Hb(X)0H_b(X)\ge0。它等于零当且仅当某个结果以概率一发生;若共有 nn 个可能结果,则 Hb(X)logbnH_b(X)\le\log_b n,等号当且仅当分布均匀。后一个结论可在后文用 KL 非负性直接证明。

二元熵曲线把范围写成可检验公式

Bernoulli 随机变量的熵称为二元熵函数:

hb(p)=plogbp(1p)logb(1p),0p1.h_b(p)=-p\log_b p-(1-p)\log_b(1-p), \qquad 0\le p\le1.

它满足 hb(p)=hb(1p)h_b(p)=h_b(1-p),且端点值 hb(0)=hb(1)=0h_b(0)=h_b(1)=0。在 0<p<10<p<1 上,

hb(p)=logb1pp,hb(p)=1(lnb)p(1p)<0.h_b'(p)=\log_b\frac{1-p}{p},\qquad h_b''(p)=-\frac{1}{(\ln b)p(1-p)}<0.

因此函数严格凹,唯一内部极大点是 p=1/2p=1/2;以二为底时最大值为 11 bit。这个导数复算同时验证了三个边界:确定结果熵为零、公平 bit 熵最大、把 pp1p1-p 对调不改变熵。

熵的编码解释也有整数长度边界。若二元前缀码给结果 ii 分配长度 i\ell_i,Kraft 不等式与 KL 非负性给出平均长度 Lˉ=ipiiH2(P)\bar L=\sum_i p_i\ell_i\ge H_2(P)。取 Shannon 长度 i=log2pi\ell_i=\lceil-\log_2p_i\rceil 时存在相应前缀码,并有

H2(P)Lˉ<H2(P)+1.H_2(P)\le\bar L<H_2(P)+1.

熵因此是理想平均码长的下界,而不是声称每个结果都能使用非整数个 bit。对长序列分块编码时,每个符号的整数取整损失可以被摊薄。

联合熵、条件熵与链式法则

对联合分布 p(x,y)p(x,y),定义

Hb(X,Y)=x,yp(x,y)logbp(x,y).H_b(X,Y)=-\sum_{x,y}p(x,y)\log_b p(x,y).

p(x)>0p(x)>0 时,条件分布为 p(yx)=p(x,y)/p(x)p(y\mid x)=p(x,y)/p(x)。条件熵先在每个 xx 下计算剩余不确定性,再对 XX 平均:

Hb(YX)=xp(x)Hb(YX=x)=x,yp(x,y)logbp(yx).H_b(Y\mid X) =\sum_x p(x)H_b(Y\mid X=x) =-\sum_{x,y}p(x,y)\log_b p(y\mid x).
熵的链式法则

对离散随机变量,只要相关熵有限,就有

Hb(X,Y)=Hb(X)+Hb(YX).H_b(X,Y)=H_b(X)+H_b(Y\mid X).

更一般地,

Hb(X1,,Xn)=k=1nHb(XkX1,,Xk1).H_b(X_1,\ldots,X_n) =\sum_{k=1}^nH_b(X_k\mid X_1,\ldots,X_{k-1}).
证明

p(x,y)>0p(x,y)>0,概率乘法公式给出 p(x,y)=p(x)p(yx)p(x,y)=p(x)p(y\mid x)。代入联合熵并拆开对数:

Hb(X,Y)=x,yp(x,y)logbp(x)x,yp(x,y)logbp(yx)=Hb(X)+Hb(YX).\begin{aligned} H_b(X,Y) &=-\sum_{x,y}p(x,y)\log_b p(x)\\ &\quad-\sum_{x,y}p(x,y)\log_b p(y\mid x)\\ &=H_b(X)+H_b(Y\mid X). \end{aligned}

第一项对 yy 求和后使用 yp(x,y)=p(x)\sum_y p(x,y)=p(x)。多变量形式可重复应用二变量公式得到。

对离散变量,Hb(YX)0H_b(Y\mid X)\ge0。它等于零当且仅当对每个具有正概率的 xx,条件分布 p(yx)p(y\mid x) 都集中在一个值上;等价地,存在函数 φ\varphi 使 Y=φ(X)Y=\varphi(X) 几乎必然成立。

例 2:二元对称噪声中的条件熵

XX 是公平 bit,独立噪声 NN 满足 P(N=1)=1/4P(N=1)=1/4,并令 Y=XNY=X\oplus N。联合概率为

p(0,0)=p(1,1)=38,p(0,1)=p(1,0)=18.p(0,0)=p(1,1)=\frac38,\qquad p(0,1)=p(1,0)=\frac18.

XXYY 都是公平 bit,故 H2(X)=H2(Y)=1H_2(X)=H_2(Y)=1。给定 XX 后,只剩噪声的不确定性,因此

H2(YX)=H2(N)=14log21434log2340.811278.H_2(Y\mid X)=H_2(N) =-\frac14\log_2\frac14-\frac34\log_2\frac34 \approx0.811278.

链式法则给出 H2(X,Y)1.811278H_2(X,Y)\approx1.811278。联合熵可以大于任一边缘熵,但不会超过两边缘熵之和。

交叉熵与 KL 散度

P=(pi)P=(p_i) 是数据分布,Q=(qi)Q=(q_i) 是参考或模型分布。以 QQ 的编码长度评价来自 PP 的结果,得到交叉熵

Hb(P,Q)=ipilogbqi.H_b(P,Q)=-\sum_i p_i\log_b q_i.

若某个 pi>0p_i>0qi=0q_i=0,则交叉熵为 ++\infty。在 QQPP 的支撑不置零时,Kullback–Leibler 散度定义为

KL 散度
Db,KL(PQ)=i:pi>0pilogbpiqi=Hb(P,Q)Hb(P).D_{b,\mathrm{KL}}(P\Vert Q) =\sum_{i:p_i>0}p_i\log_b\frac{p_i}{q_i} =H_b(P,Q)-H_b(P).

若存在 pi>0,qi=0p_i>0,q_i=0,定义 Db,KL(PQ)=+D_{b,\mathrm{KL}}(P\Vert Q)=+\infty;当 pi=0p_i=0 时,相应项按极限记为零。

Gibbs 不等式与 KL 非负性

对同一离散字母表上的概率分布 P,QP,Q

Db,KL(PQ)0.D_{b,\mathrm{KL}}(P\Vert Q)\ge0.

散度等于零当且仅当 P=QP=Q

证明

QQPP 的正支撑上有零点,结论由散度为 ++\infty 立即成立。否则先用自然对数。由对数的凹性,

i:pi>0pilnqipiln(i:pi>0qi)0.\sum_{i:p_i>0}p_i\ln\frac{q_i}{p_i} \le \ln\left(\sum_{i:p_i>0}q_i\right) \le0.

两边取负得到 De,KL(PQ)0D_{e,\mathrm{KL}}(P\Vert Q)\ge0。底数变换只乘以正数 1/lnb1/\ln b,不改变符号。等号要求 qi/piq_i/p_iPP 的支撑上为常数,且 QQ 在支撑外没有质量;归一化随后迫使该常数为一,所以 P=QP=Q

例 3:同一偏置分布相对公平模型的散度

P=(3/4,1/4)P=(3/4,1/4)Q=(1/2,1/2)Q=(1/2,1/2),以二为底。由于 QQ 均匀,交叉熵为

H2(P,Q)=34log21214log212=1.H_2(P,Q) =-\frac34\log_2\frac12-\frac14\log_2\frac12 =1.

H2(P)0.811278H_2(P)\approx0.811278,故

D2,KL(PQ)=10.8112780.188722 bit.D_{2,\mathrm{KL}}(P\Vert Q) =1-0.811278 \approx0.188722\ \text{bit}.

直接求和也得到

34log232+14log2120.188722.\frac34\log_2\frac32+\frac14\log_2\frac12 \approx0.188722.

交换 P,QP,Q 一般会改变数值,因此 KL 散度不是距离:它不对称,也不满足通常的三角不等式。

对数损失把交叉熵变成可优化目标

若真实结果服从 PP,模型报告分布 QQ,单次对数损失为 logbqX-\log_b q_X。其总体期望恰是

EXP[logbqX]=Hb(P,Q)=Hb(P)+Db,KL(PQ).\mathbb E_{X\sim P}[-\log_b q_X] =H_b(P,Q) =H_b(P)+D_{b,\mathrm{KL}}(P\Vert Q).

对固定的 PP,第一项与模型无关,因此在允许的模型族中最小化期望交叉熵,等价于最小化从 PPQQ 的这一方向 KL 散度。若模型族包含 PP,唯一零散度解为 Q=PQ=P;若模型族受参数形式限制,最优解只是该方向下最接近的可表示分布,不能据此声称模型恢复了真实生成机制。

实际训练常用样本平均

1nk=1nlogbqxk-\frac1n\sum_{k=1}^n\log_b q_{x_k}

估计总体交叉熵。它的可信度依赖抽样过程和泛化,而不由代数分解自动保证。模型若给一次已发生结果分配零概率,样本损失立即为无穷大;数值实现中的截断、平滑或有限精度可以避免溢出,却也改变了被优化的分布或目标,必须把这种处理写清楚。

互信息是“联合”偏离“独立”的程度

互信息

随机变量 X,YX,Y 的互信息定义为

Ib(X;Y)=Db,KL ⁣(pX,YpXpY).I_b(X;Y) =D_{b,\mathrm{KL}}\!\left( p_{X,Y}\,\middle\Vert\,p_Xp_Y \right).

在各项有限时,它有等价表达

Ib(X;Y)=Hb(X)+Hb(Y)Hb(X,Y)=Hb(Y)Hb(YX)=Hb(X)Hb(XY).\begin{aligned} I_b(X;Y) &=H_b(X)+H_b(Y)-H_b(X,Y)\\ &=H_b(Y)-H_b(Y\mid X)\\ &=H_b(X)-H_b(X\mid Y). \end{aligned}

KL 非负性立刻给出 Ib(X;Y)0I_b(X;Y)\ge0。互信息为零当且仅当 p(x,y)=p(x)p(y)p(x,y)=p(x)p(y) 对所有结果成立,也就是 X,YX,Y 独立。由 Ib(X;Y)=Hb(Y)Hb(YX)I_b(X;Y)=H_b(Y)-H_b(Y\mid X) 还可得到离散情形的“条件化不增加平均熵”:

Hb(YX)Hb(Y).H_b(Y\mid X)\le H_b(Y).

在例 2 中,

I2(X;Y)=10.8112780.188722 bit.I_2(X;Y)=1-0.811278\approx0.188722\ \text{bit}.

噪声没有让输出失去全部关于输入的信息,但使每次观测平均只保留约 0.1890.189 bit。若 XYZX\to Y\to Z 构成 Markov 链,即给定 YYZZ 不再依赖 XX,则数据处理不等式给出 I(X;Z)I(X;Y)I(X;Z)\le I(X;Y):对 YY 的随机后处理不能凭空增加关于 XX 的信息。

给定第三个变量后,还可定义条件互信息

Ib(X;ZY)=yp(y)Db,KL ⁣(pX,ZypXypZy).I_b(X;Z\mid Y) =\sum_y p(y) D_{b,\mathrm{KL}}\!\left( p_{X,Z\mid y}\,\middle\Vert\, p_{X\mid y}p_{Z\mid y} \right).

它非负,并且在离散情形下等于零当且仅当 XXZZ 在给定 YY 后条件独立。互信息的链式法则

Ib(X;Y,Z)=Ib(X;Y)+Ib(X;ZY)I_b(X;Y,Z)=I_b(X;Y)+I_b(X;Z\mid Y)

把一组观测提供的信息拆成先观察 YY 的贡献与再观察 ZZ 的增量。数据处理不等式可由这类分解或 KL 在随机映射下的收缩性质证明;它比较的是同一输入经过处理前后的信息,不表示任意新增变量都会降低互信息。

最大熵与约束优化

nn 个结果上令均匀分布为 Ui=1/nU_i=1/n。KL 非负性给出

0Db,KL(PU)=ipilogbpi+logbn=logbnHb(P).0\le D_{b,\mathrm{KL}}(P\Vert U) =\sum_i p_i\log_b p_i+\log_b n =\log_b n-H_b(P).

因此 Hb(P)logbnH_b(P)\le\log_b n,且等号仅在 P=UP=U 时成立。这是一个完整的最大熵结论:只给归一化约束时,均匀分布最不确定。

若再给出矩约束 ipiTi=c\sum_i p_iT_i=c,并且最优解位于概率单纯形内部,则对自然对数熵写拉格朗日驻点条件可得

(lnpi+1)+α+βTi=0,-(\ln p_i+1)+\alpha+\beta T_i=0,

从而

pi=exp(βTi)jexp(βTj).p_i=\frac{\exp(\beta T_i)}{\sum_j\exp(\beta T_j)}.

这解释了指数族为何常从最大熵问题出现。结论依赖可行性、有限归一化常数和内部最优;若约束迫使某些 pi=0p_i=0,就必须连同非负约束的 KKT 条件处理边界。

微分熵不是离散熵的逐字替换

连续随机变量若相对于选定坐标下的 Lebesgue 测度有密度 ff,可定义微分熵

hb(X)=f(x)logbf(x)dx,h_b(X)=-\int f(x)\log_b f(x)\,\mathrm dx,

前提是积分有意义。密度可以大于一,所以 hb(X)h_b(X) 可以为负;它还会随坐标尺度改变。

例 4:均匀分布的微分熵可为负

XUnif[0,a]X\sim\operatorname{Unif}[0,a],则 f(x)=1/af(x)=1/a,所以

hb(X)=0a1alogb1adx=logba.h_b(X) =-\int_0^a\frac1a\log_b\frac1a\,\mathrm dx =\log_b a.

当以二为底且 a=1/4a=1/4 时,h2(X)=2h_2(X)=-2。若 Y=cXY=cXc0c\ne0,变量替换给出

hb(Y)=hb(X)+logbc.h_b(Y)=h_b(X)+\log_b|c|.

同一物理量改用更细或更粗的单位会改变数值,因此微分熵不能脱离参考坐标和单位解释。

离散常量的熵为零;连续常量是点质量,不具有普通 Lebesgue 密度,不能直接代入微分熵积分。用越来越窄的连续密度逼近点质量时,微分熵可趋于 -\infty。相较之下,只要写清绝对连续条件,连续 KL 散度

DKL(PQ)=f(x)logf(x)g(x)dxD_{\mathrm{KL}}(P\Vert Q) =\int f(x)\log\frac{f(x)}{g(x)}\,\mathrm dx

仍非负;若 PPQQ 为零的集合上有正概率,则散度为 ++\infty。互信息作为联合分布相对边缘乘积的 KL 散度,也不会因可逆坐标缩放而平白增减。这正是连续问题中常优先解释相对信息量而非单独微分熵的原因。

离散化提供了两类熵之间的桥梁。把连续变量按宽度 Δ\Delta 的等距小区间量化为 XΔX_\Delta,在密度足够规则且积分有限时,

Hb(XΔ)=hb(X)+logb1Δ+o(1),Δ0.H_b(X_\Delta) =h_b(X)+\log_b\frac1\Delta+o(1), \qquad \Delta\downarrow0.

分辨率越细,离散格子的数量越多,量化熵因 logb(1/Δ)\log_b(1/\Delta) 而发散;减去这一分辨率项后才留下微分熵。这个公式不能用来证明微分熵非负,反而明确显示它依赖坐标尺度。对于联合量化,互信息中的相同分辨率项会在 H(XΔ)+H(YΔ)H(XΔ,YΔ)H(X_\Delta)+H(Y_\Delta)-H(X_\Delta,Y_\Delta) 中抵消,这与互信息对可逆平滑坐标变换保持不变相一致。

连续公式还要求积分存在。若正负部分分别发散,不能用形式上的“无穷减无穷”定义熵;若联合分布集中在低维曲线上,互信息甚至可能为无穷大。遇到这类情形,应先说明参考测度、绝对连续性和有限性,再使用链式法则或差值表达。

常见误读与边界

  • 熵的数值必须连同对数底报告;bit 与 nat 不能直接相加。
  • 0log0=00\log0=0 是加权极限约定,不表示概率零的事件自信息为零。
  • DKL(PQ)=0D_{\mathrm{KL}}(P\Vert Q)=0 才推出 P=QP=Q;散度小只表示在该方向上接近,不提供对称距离保证。
  • 互信息为零等价于独立,不等价于“线性相关系数为零”;后者只排除线性相关。
  • 离散熵非负且确定变量熵为零;微分熵可以为负、随尺度变化,点质量甚至不在密度公式的适用范围内。
  • 条件熵和链式法则中的条件分布只需在 p(x)>0p(x)>0 的条件上定义;零概率条件不影响加权和。

练习

练习

随机变量 XX 的分布为 (1/2,1/4,1/4)(1/2,1/4,1/4)。求三个结果的二进制自信息、H2(X)H_2(X)He(X)H_e(X),并判断熵是否可能为零。

查看提示
分别计算三个结果的自信息,再用概率加权;nat 值可由 bit 值乘 ln2\ln 2
查看解答

三个自信息依次为 1,2,21,2,2 bit,因此

H2(X)=121+142+142=32 bit.H_2(X)=\frac12\cdot1+\frac14\cdot2+\frac14\cdot2 =\frac32\ \text{bit}.

换成自然对数底,

He(X)=32ln21.03972 nat.H_e(X)=\frac32\ln2\approx1.03972\ \text{nat}.

当前分布有三个正概率结果,故熵不为零。离散熵只有在某一个结果概率为一时才等于零。

练习

XX 为公平 bit,Y=XNY=X\oplus N,其中 NNXX 独立且 P(N=1)=1/8P(N=1)=1/8。求 H2(Y)H_2(Y)H2(YX)H_2(Y\mid X)H2(X,Y)H_2(X,Y)I2(X;Y)I_2(X;Y)

查看提示
公平输入经过翻转概率 ϵ\epsilon 的二元对称信道后,输出仍公平。
查看解答

对称性使 YY 仍公平,所以 H2(Y)=1H_2(Y)=1。给定 XX 后,不确定性只来自 NN

H2(YX)=h2(1/8)=18log21878log2780.543564.H_2(Y\mid X) =h_2(1/8) =-\frac18\log_2\frac18-\frac78\log_2\frac78 \approx0.543564.

链式法则给出 H2(X,Y)=H2(X)+H2(YX)1.543564H_2(X,Y)=H_2(X)+H_2(Y\mid X)\approx1.543564。互信息为

I2(X;Y)=H2(Y)H2(YX)0.456436 bit.I_2(X;Y)=H_2(Y)-H_2(Y\mid X) \approx0.456436\ \text{bit}.
练习

P=(1/2,1/2,0)P=(1/2,1/2,0)Q=(1/4,3/4,0)Q=(1/4,3/4,0)。以二为底计算 DKL(PQ)D_{\mathrm{KL}}(P\Vert Q)DKL(QP)D_{\mathrm{KL}}(Q\Vert P)。再令 R=(1,0,0)R=(1,0,0),判断 DKL(PR)D_{\mathrm{KL}}(P\Vert R)

查看提示
分别按 P 加权和按 Q 加权;再检查参考分布是否在 P 的正支撑上取零。
查看解答

零概率项按极限贡献零。于是

D2(PQ)=12log22+12log2230.207519,D2(QP)=14log212+34log2320.188722.\begin{aligned} D_2(P\Vert Q) &=\frac12\log_2 2+\frac12\log_2\frac23 \approx0.207519,\\ D_2(Q\Vert P) &=\frac14\log_2\frac12+\frac34\log_2\frac32 \approx0.188722. \end{aligned}

两个方向数值不同,验证了非对称性。对 RR,第二个结果满足 p2=1/2>0p_2=1/2>0r2=0r_2=0,所以 DKL(PR)=+D_{\mathrm{KL}}(P\Vert R)=+\infty

练习

取自然对数底,XUnif[0,1/2]X\sim\operatorname{Unif}[0,1/2],并令 Y=10XY=10X。求 he(X)h_e(X)he(Y)h_e(Y),解释为什么其中一个值为负不违反概率公理。

查看提示
先用均匀密度得到 h(X)=lnah(X)=\ln a,再应用线性缩放公式。
查看解答

均匀区间长度为 1/21/2,所以

he(X)=ln12=ln2.h_e(X)=\ln\frac12=-\ln2.

由缩放公式,

he(Y)=he(X)+ln10=ln5.h_e(Y)=h_e(X)+\ln10 =\ln5.

微分熵积分的是密度的对数,而密度可以大于一;它还依赖坐标尺度。因此负微分熵既不表示负概率,也不违反 KL 非负性。若把同一量从一种长度单位换到另一种单位,微分熵会加入相应尺度的对数。

知识关系

可信资源

课程 · 2026

EE 276: Information Theory

Tsachy Weissman

用于核对离散熵、条件熵、KL 散度和互信息的定义、恒等式、单位与零值条件。

打开官方来源

Stanford EE 276 的官方课程页面与材料覆盖熵、相对熵、互信息、数据压缩和通信中的基本定理。核对公式时应保持课程所用对数底一致,并同时检查离散字母表、支撑和连续密度等前提。

后续学习

进入 最优化与信息论综合复习 后,可在概率单纯形上最大化熵,并用 约束优化、KKT 条件与对偶性 推导归一化常数和指数形式。进一步学习时,可比较交叉熵最小化、最大似然和 KL 投影:三者在适当条件下能写成相近目标,但被固定的分布、优化方向和支撑条件各不相同。