第 3 章 信息论:用“不确定性”度量信息
3.1 信息不是“内容多少”,而是“不确定性被消除多少”
假设一个朋友只回答“是”或“否”,而且你不知道答案。他的回答消除了一比特不确定性。
假设另一个朋友每天都说“今天是星期二”,这句话虽然很长,但如果它对你没有消除任何不确定性,它携带的“信息量”就是零。
香农的观点是:信息量与事件发生的概率有关。
如果一个事件发生的概率很小,它出现时给你的惊讶程度就很大;如果概率接近 1,它出现时几乎没有新信息。
3.2 自信息
对于事件 $x$,其自信息定义为:
$$ I(x)=-\log p(x) $$这里的 $\log$ 通常以 2 为底,单位是比特;如果以自然对数 $e$ 为底,单位是纳特(nat)。
例子:
- 如果 $p(x)=1/2$,则 $I(x)=1$ 比特。
- 如果 $p(x)=1/4$,则 $I(x)=2$ 比特。
- 如果 $p(x)=1$,则 $I(x)=0$ 比特。
注意:这里 $I(x)$ 表示“事件 $x$ 带来的信息量”,不是随机变量之间的互信息。
3.3 香农熵
随机变量 $X$ 的熵定义为自信息的期望:
$$ H(X)=\mathbb{E}[-\log p(X)]=-\sum_{x}p(x)\log p(x) $$它衡量的是:在看到 $X$ 之前,你平均有多不确定;或者,要无损描述 $X$ 平均至少需要多少比特。
熵满足:
$$ 0\le H(X)\le \log_2 |\mathcal{X}| $$其中 $|\mathcal{X}|$ 是 $X$ 的取值个数。
二元熵:
如果 $X\in\{0,1\}$,且 $P(X=1)=p$,则:
$$ H(X)=-p\log_2 p-(1-p)\log_2(1-p)\triangleq h_2(p) $$当 $p=1/2$ 时,$h_2(p)=1$,这是二元随机变量的最大熵。
为什么最大熵重要:如果你对一件事一无所知,最诚实的先验分布通常是在约束条件下熵最大的分布。高斯分布在给定均值和方差时,是所有连续分布中熵最大的分布之一。
3.4 联合熵、条件熵
联合熵:
$$ H(X,Y)=-\sum_{x}\sum_{y}p(x,y)\log p(x,y) $$条件熵:
$$ H(Y\mid X)=-\sum_{x}\sum_{y}p(x,y)\log p(y\mid x) $$链式法则:
$$ H(X,Y)=H(X)+H(Y\mid X) $$它可以理解为:
描述 $(X,Y)$ 所需的信息 = 描述 $X$ 的信息 + 已知 $X$ 后描述 $Y$ 还需要的额外信息。
类似地:
$$ H(X_1,X_2,\dots,X_n)=\sum_{i=1}^{n}H(X_i\mid X_1,\dots,X_{i-1}) $$3.5 互信息:一个变量告诉另一个变量的信息
互信息定义为:
$$ I(X;Y)=H(X)-H(X\mid Y) $$等价地:
$$ I(X;Y)=H(Y)-H(Y\mid X) $$$$ I(X;Y)=H(X)+H(Y)-H(X,Y) $$$$ I(X;Y)=\sum_{x}\sum_{y}p(x,y)\log\frac{p(x,y)}{p(x)p(y)} $$请记住它的三个重要性质:
- 对称性:$I(X;Y)=I(Y;X)$。
- 非负性:$I(X;Y)\ge 0$。
- 当且仅当 $X$ 与 $Y$ 相互独立时,$I(X;Y)=0$。
直观理解:
- $H(X)$:观察 $X$ 之前的不确定性。
- $H(X\mid Y)$:观察 $Y$ 之后,对 $X$ 还剩多少不确定性。
- 两者之差就是“$Y$ 告诉了我们多少关于 $X$ 的信息”。
3.6 互信息的贝叶斯视角
互信息还可以写成:
$$ I(X;Y)=D_{\mathrm{KL}}\bigl(p(x,y)\,\|\,p(x)p(y)\bigr) $$其中 KL 散度为:
$$ D_{\mathrm{KL}}(p\parallel q)=\sum_x p(x)\log\frac{p(x)}{q(x)} $$KL 散度衡量的是:如果用分布 $q$ 近似真实分布 $p$,平均会损失多少对数概率。
它满足:
$$ D_{\mathrm{KL}}(p\parallel q)\ge 0 $$并且当且仅当 $p=q$ 时等于 0。但它不是距离,因为它不对称:
$$ D_{\mathrm{KL}}(p\parallel q)\ne D_{\mathrm{KL}}(q\parallel p) $$3.7 交叉熵与损失函数
如果真实分布是 $p$,预测分布是 $q$,交叉熵为:
$$ H(p,q)=-\sum_x p(x)\log q(x) $$它与 KL 散度的关系是:
$$ H(p,q)=H(p)+D_{\mathrm{KL}}(p\parallel q) $$所以,在训练分类器时,最小化交叉熵相当于最小化 KL 散度(因为真实分布的熵 $H(p)$ 与模型无关)。
二分类交叉熵损失:
$$ \mathcal{L}=-\frac{1}{N}\sum_{i=1}^{N}\left[y_i\log \hat{y}_i+(1-y_i)\log(1-\hat{y}_i)\right] $$这就是机器学习和语义任务中最常见的损失之一。
3.8 数据不等式
如果随机变量满足马氏链:
$$ X\to Y\to Z $$意思是:给定了 $Y$ 之后,$Z$ 与 $X$ 条件独立。则:
$$ I(X;Z)\le I(X;Y) $$这个不等式称为数据处理不等式。
它的含义:
对数据做任何确定性或条件独立的处理,都不会“无中生有”地增加关于原数据的信息。
对语义通信的启发:接收端只能利用信道上实际传过来的信息(或可训练的先验),不能靠“后处理”凭空恢复已经丢失的语义信息。这就是为什么语义提取、信道编码、解码需要联合设计。
3.9 法诺不等式:推断错误率的下界
假设 $\hat{X}$ 是从观测 $Y$ 得到的对 $X$ 的估计,$P_e=P(\hat{X}\ne X)$,则法诺不等式给出:
$$ H(X\mid Y)\le h_2(P_e)+P_e\log|\mathcal{X}| $$由此可得错误概率的下界:
$$ P_e\ge \frac{H(X\mid Y)-h_2(P_e)}{\log|\mathcal{X}|} \geq \frac{H(X\mid Y)-1}{\log|\mathcal{X}|} $$直观理解:如果接收端对发送符号仍然很不确定,那么任何推断都必然有较高的错误率。信息论告诉我们哪些错误原则上不可能避免,而不是告诉我们怎样具体编码。
3.10 渐近等分性质(AEP)
设 $X_1,X_2,\dots,X_n$ 是独立同分布随机变量,每个都服从 $p(x)$。渐近等分性质说的是:
$$ -\frac{1}{n}\log p(X_1,\dots,X_n)\xrightarrow{p} H(X) $$也就是说,当 $n$ 大到一定程度后,几乎所有典型的长度为 $n$ 的序列都有近似相同的概率:
$$ p(X_1,\dots,X_n)\approx 2^{-nH(X)} $$典型序列的总数约为 $2^{nH(X)}$。
为什么重要:它说明“绝大多数长序列都长得差不多”,所以不需要给所有可能的序列都分配码字,只需要给“典型序列”设计高效编码。这个思想是香农信源编码定理和信道编码定理的基础。
3.11 无损信源编码定理
香农第一定理(无失真信源编码定理):
设信源 $X$ 的熵为 $H(X)$,则原则上存在一种编码,使得平均码长 $R$ 任意接近但不能低于:
$$ R\ge H(X) $$这叫做无损压缩的极限。例如,如果 $H(X)=0.8$,那么不管压缩算法多好,平均每符号至少需要约 0.8 比特。Huffman 编码、算术编码、LZ 系列算法等,都是在逼近这个下界。
注意:这里说的是“统计意义上的平均码长”,不是单个符号。
3.12 信道编码定理
香农第二定理(有噪信道编码定理):
对于信道转移概率 $p(y\mid x)$,定义信道容量:
$$ C=\max_{p(x)} I(X;Y) $$则:
- 若传输速率 $R
- 若 $R>C$,则任何编码的错误概率都必然有正的下界,无法无限接近 0。
为什么“长码”重要:随机编码、典型序列解码等证明方法本质上是在“平均”大量噪声的影响。码长越长,越有机会用冗余来纠错;但在实际系统中,码长增加会带来延迟和复杂度。
3.13 AWGN 信道容量
如果信道是:
$$ Y=X+N,\qquad N\sim\mathcal{N}(0,\sigma^2) $$输入功率约束为:
$$ \mathbb{E}[|X|^2]\le P $$则信道容量为:
$$ C=\frac{1}{2}\log_2\left(1+\frac{P}{\sigma^2}\right) $$单位是“比特/信道使用”。如果信道带宽为 $B$,则:
$$ C=B\log_2\left(1+\frac{P}{N_0B}\right) $$其中 $N_0$ 是噪声功率谱密度。
重要结论:提高速率有两种方式:增加功率、增加带宽。但二者都不是无限的;即使功率很高,容量也只是对数增长。这解释了为什么“只靠堆带宽和功率”不能永远解决问题。
3.14 率失真理论
有时候我们不需要完全无损地恢复 $X$,只需恢复误差不超过某个容忍度 $D$。此时可以引入率失真函数:
$$ R(D)=\min_{p(\hat{x}\mid x):\ \mathbb{E}[d(X,\hat{X})]\le D} I(X;\hat{X}) $$其中:
- $d(x,\hat{x})$ 是失真函数;
- $D$ 是允许的平均失真;
- $R(D)$ 表示在平均失真不超过 $D$ 的前提下,描述信源所需的最小信息速率。
直观理解:
- $D=0$ 时,$R(0)=H(X)$,就是无损压缩;
- $D$ 越大,允许丢失的信息越多,所需速率越低;
- $R(D)$ 是单调递减的凸函数。
对于方差为 $\sigma^2$ 的高斯信源,使用均方误差度量时:
$$ R(D)=\frac{1}{2}\log_2\frac{\sigma^2}{D},\qquad 03.15 信源信道分离定理
传统通信系统把“压缩”(信源编码)和“抗噪”(信道编码)分开设计,这在理论上是有依据的,即:
对于足够长的码、足够平稳的信源,如果 $H(X)\le C$,则可以先压缩再信道编码,仍然可以达到可靠性要求;反之如果 $H(X)>C$,则不可行。
这就是香农的信源信道分离定理。它告诉我们:在无限码长、渐进意义下,分开设计不一定更差。
但真实系统不是无限码长,语义任务也不是简单的“恢复原始序列”,所以深度联合信源信道编码(Deep JSCC)才有了实际价值。这一点后面会详细讲。
第 3 章小结
你只需要记住以下几个“最小集”:
| 概念 | 公式 | 含义 |
|---|---|---|
| 熵 | $H(X)=-\sum p(x)\log p(x)$ | 平均不确定性 |
| 条件熵 | $H(X\mid Y)$ | 已知 Y 后还剩多少不确定性 |
| 互信息 | $I(X;Y)=H(X)-H(X\mid Y)$ | Y 告诉了我们多少关于 X 的信息 |
| 交叉熵 | $H(p,q)=-\sum p\log q$ | 用 q 近似 p 的代价 |
| KL 散度 | $D_{\mathrm{KL}}(p\parallel q)$ | 用 q 近似 p 的信息损失 |
| 容量 | $C=\max_{p(x)}I(X;Y)$ | 可靠通信的速率上限 |
| 率失真 | $R(D)=\min I(X;\hat X)$ | 给定失真下的最小速率 |