跳到主要内容

信息论与熵

信息论为量化不确定性和通信极限提供了一套标准语言。建议按以下顺序构建这一知识分支:

  1. 自信息与熵;
  2. 联合熵与条件熵;
  3. 互信息与独立性;
  4. 交叉熵与 Kullback–Leibler 散度;
  5. 信源编码与压缩极限;
  6. 噪声信道与信道容量;
  7. 与概率建模及机器学习目标的关联。

下面的速查限定于有限离散分布,以及它们在编码和预测中的用途。先掌握概率、条件概率与期望MIT OpenCourseWare 6.050J 则继续讲解上述通信与物理系统主题。

自信息与平均不确定性

概率为 p>0p>0 的结果,其自信息为 log2p-\log_2 p 比特。独立结果的概率相乘,对应的信息量相加。必然发生的结果携带零比特信息,概率为 1/81/8 的结果携带 3 比特。这衡量的是模型下的意外程度,不是真实性、用途或语义。

若随机变量 XX 的概率为 p(x)p(x),熵就是自信息的期望:

H(X)=xp(x)log2p(x),0log20:=0.H(X)=-\sum_x p(x)\log_2 p(x),\qquad 0\log_2 0:=0.

若有 kk 种可能结果,则 0H(X)log2k0\le H(X)\le\log_2 k,均匀分布取得最大值。公平硬币的熵为 1 比特;概率为 (3/4,1/4)(3/4,1/4) 的偏置硬币,熵约为 0.8110.811 比特。较少见结果的自信息是 2 比特,但熵要对两种结果加权平均。

条件熵与共享信息

联合熵衡量数对 (X,Y)(X,Y) 的不确定性。条件熵则对观察 XXYY 剩余的不确定性取平均:

H(X,Y)=H(X)+H(YX),I(X;Y)=H(Y)H(YX).H(X,Y)=H(X)+H(Y\mid X),\qquad I(X;Y)=H(Y)-H(Y\mid X).

互信息 I(X;Y)I(X;Y) 非负,且仅在 X,YX,Y 独立时为零。平均而言,条件化不会增加熵,但某次特定观测可能增加不确定性。若 XX 是公平硬币且 Y=XY=X,则 H(YX)=0H(Y\mid X)=0I(X;Y)=1I(X;Y)=1 比特。若是两枚独立的公平硬币,则 H(X,Y)=2H(X,Y)=2I(X;Y)=0I(X;Y)=0。存在依赖关系本身不能证明因果关系。

交叉熵与模型偏差

pp 是真实分布,qq 是同一组结果上的预测分布。采用以 2 为底的对数,有:

H(p,q)=xp(x)log2q(x)=H(p)+DKL(pq),H(p,q)=-\sum_x p(x)\log_2 q(x) =H(p)+D_{\mathrm{KL}}(p\|q), DKL(pq)=x:p(x)>0p(x)log2p(x)q(x).D_{\mathrm{KL}}(p\|q)=\sum_{x:p(x)>0}p(x)\log_2\frac{p(x)}{q(x)}.

p(x)=0p(x)=0 的项贡献为零,求和时略去。若某处 p(x)>0p(x)>0q(x)=0q(x)=0,交叉熵和 KL 散度均为无穷大。否则 KL 散度非负,只有两分布一致时才为零。它不是距离度量:通常不对称,也不满足三角不等式。

例如 p=(3/4,1/4)p=(3/4,1/4)q=(1/2,1/2)q=(1/2,1/2) 时,交叉熵为 1 比特,KL 散度约为 0.1890.189 比特。因为 H(p)H(p) 固定,对 qq 最小化交叉熵就等于最小化 KL 散度。在分类任务中,对观测标签求 logq(yixi)-\log q(y_i\mid x_i) 的平均值,可估计期望对数损失;使用自然对数时,单位是纳特而非比特。训练损失低,并不能单独说明模型在新数据上的表现。

熵如何约束压缩?

对于已知的有限信源分布,最优二进制前缀码的平均码长 LL 满足 H(X)L<H(X)+1H(X)\le L<H(X)+1。熵是平均下界,不承诺每个符号都能用小数位比特编码。对偏置硬币逐个符号使用二进制前缀码,仍需每个符号一比特。若符号独立同分布,对长度为 nn 的块编码,可把每个符号相对熵的额外开销降至 1/n1/n 比特以下。相关信源需要利用条件结构或熵率,单符号熵未必是最佳的每符号极限。

连续变量需要另行处理:微分熵依赖坐标,可以为负,因此不能直接解释为存储一个实数所需的比特数。讨论这类存储成本前,必须先指定精度。

探索关联打开关联网络