跳转到内容
← 返回计算理论
计算理论当代14 分钟阅读

信息论

Information Theory

一个最基本的问题,直到 1948 年才有了精确答案:"信息"到底是什么,如何量化它? 在克劳德·香农发表《通信的数学理论》之前,"信息量"是一个直觉概念——人们知道长电报比短电报包含"更多信息",嘈杂线路会让通信"更不可靠",但这些描述都是定性的。香农做的事,是把这些直觉转化为严格的数学——由此诞生的信息论,成为数字通…

信息熵信道容量编码数据压缩纠错码

一个最基本的问题,直到 1948 年才有了精确答案:"信息"到底是什么,如何量化它?

在克劳德·香农发表《通信的数学理论》之前,"信息量"是一个直觉概念——人们知道长电报比短电报包含"更多信息",嘈杂线路会让通信"更不可靠",但这些描述都是定性的。香农做的事,是把这些直觉转化为严格的数学——由此诞生的信息论,成为数字通信、数据压缩、密码学、机器学习的共同基础。

破除误解:信息量与重要性无关

信息论的"信息"(information)是技术概念,与日常意义上的"重要性"或"有意义"完全无关。

"明天太阳会从东方升起"包含极少信息(概率接近 1,出现毫无意外)。"明天会下猫和狗"包含较多信息(出乎意料)。但前者在生活中更"重要"。

这种反直觉性正是信息论能够跨越语言、文化、内容类型、物理媒介的原因:它测量的是不确定性的消除量,与内容的语义无关。

核心一:香农熵——信息量的度量

设一个信息源(如英文字母、基因碱基、图像像素)可以产生 $n$ 种符号,第 $i$ 种符号出现的概率为 pip_i,则这个信息源的香农熵(Shannon entropy)为:

H=i=1npilog2pi(单位:比特/符号)H = -\sum_{i=1}^{n} p_i \log_2 p_i \quad \text{(单位:比特/符号)}

几个直觉上重要的性质:

  • 最大熵:当所有符号等概率(pi=1/np_i = 1/n)时,$H$ 取最大值 log2n\log_2 n——完全随机的信息源携带最多信息。
  • 确定性:若某符号概率为 1(必然发生),$H = 0$——确定的事情不传递信息。
  • 可加性:独立信息源的联合熵等于各熵之和。

这个公式是拍脑袋想出来的吗?不是。香农在论文附录中证明:如果要求一个"不确定性度量"满足三条朴素要求——(1)对概率分布连续;(2)等概时随选项数单调增加;(3)可分组性(把选择拆成"先选组、再选组内成员"两步时,总不确定性等于各组的不确定性加上组内不确定性的加权平均)——那么唯一满足条件的形式就是 Kpilogpi-K\sum p_i \log p_i,只差一个决定单位的常数。直觉上,可加性是对数的天职:独立事件的概率相乘、信息量相加,只有 log\log 能把乘法变加法,每个符号的"意外程度"因此只能是 logpi-\log p_i 的形状。Khinchin(1957)后来给出了更严格的公理化重构。换句话说,熵公式不是众多可选度量之一,而是被合理性要求逼出来的唯一解。

对英文文本,每个字母的熵大约为 1.0–1.5 比特(远低于等概率时的 log2264.7\log_2 26 \approx 4.7 比特),这反映了英文字母之间的高度统计相关性("th"、"the"等组合极为频繁)。

核心二:信道容量与香农定理

通信信道是传输信息的物理介质(铜线、光纤、无线电波等),它会引入噪声。

香农证明了两个深刻的定理:

信道容量定理(香农第二定理):每个信道都有一个固定的信息传输上限——信道容量 $C$。对加性高斯白噪声(AWGN)信道:

C=Blog2 ⁣(1+SN)(比特/秒)C = B \log_2\!\left(1 + \frac{S}{N}\right) \quad \text{(比特/秒)}

其中 $B$ 为带宽(赫兹),$S/N$ 为信噪比(功率比)。

可达性:只要传输速率 $R < C$,就存在编码方案,使误码率任意接近零。这个结论令同时代的工程师震惊——此前普遍认为噪声引起的错误是不可避免的物理限制。

不可达性:若 $R > C$,错误无法消除,且错误率有正下界。

香农定理是存在性定理:它证明了好的编码存在,但没有给出如何构造它们的方法。此后数十年,编码理论的主要工作就是找到逼近香农极限的实用编码方案。

核心三:数据压缩——无损压缩极限

无损压缩的目标是:用尽可能短的编码表示原始数据,同时能完全还原。香农的信源编码定理(第一定理)给出了极限:

对于熵为 $H$ 的信息源,任何无损压缩编码的平均码长不能低于 $H$ 比特/符号。

这意味着,压缩是有极限的——当数据已经接近随机(如加密后的密文)时,再压缩几乎不可能。

实用的无损压缩方案(Huffman 编码、Lempel-Ziv 算法,ZIP、PNG、FLAC 等格式背后的技术)都以逼近这个极限为目标:

  • Huffman 编码(1952):出现频率高的符号用短码,频率低的用长码,最优前缀编码。
  • Lempel-Ziv 算法(LZ77/LZ78,1977/1978):利用字符串在数据中的重复出现进行压缩,是 DEFLATE(ZIP/PNG)的基础。

核心四:纠错码——从理论到工程

香农定理证明了纠错码的可能性,但没给出构造。Hamming(1950)、Reed-Solomon(1960)、Turbo 码(1993)和 LDPC 码(低密度奇偶校验码,1963 年由 Gallager 提出,2000 年代复兴)各自从不同角度逼近了信道极限。

Reed-Solomon 码今天在 CD、DVD、QR 码、卫星通信和存储系统中无处不在——当 CD 表面有划痕时,就是 Reed-Solomon 码在纠正因划痕导致的错误读数。

LDPC 码和 Turbo 码在性能上已经非常接近香农极限(在某些设置下差距不到 0.1 分贝),它们被用于 4G/5G 移动通信和深空探测器通信。

核心五:互信息与条件熵

两个随机变量 $X$$Y$互信息(Mutual Information):

I(X;Y)=H(X)H(XY)=H(Y)H(YX)I(X; Y) = H(X) - H(X | Y) = H(Y) - H(Y | X)

互信息测量:知道 $Y$ 的值,能消除多少关于 $X$ 的不确定性(反之亦然)。它是衡量两个变量相关性的无参数度量,不依赖于任何线性假设。

互信息在机器学习(特征选择、决策树信息增益)、神经科学(神经元编码效率)、生物信息学(基因表达相关性分析)中广泛使用。

熵率与语言:香农的猜字游戏

真实的信源很少是"每次独立抽一个符号"——语言里 q 后面几乎必然跟着 u,一个词的下一个词也远非任意。刻画这种带记忆的源,要用熵率(entropy rate):已知此前全部历史的条件下,下一个符号的平均信息量,即极限 H=limnH(XnX1,,Xn1)H = \lim_{n\to\infty} H(X_n \mid X_1, \dots, X_{n-1})

1951 年,香农设计了一个精巧的实验来测英文的熵率:让受试者逐字母猜测一段被遮住的文本,猜错就告知、继续猜,用"每个字母平均猜几次才中"反推字母的条件不确定性。他得出的估计是:书面英文每字母约 0.6–1.3 比特——对比 27 字符等概时的约 4.76 比特,说明英文超过七成的"容量"是冗余。冗余不是浪费:它是嘈杂电话里仍能听清、缺了字母仍能读懂的原因,也正是纠错码要人工加回去的那类结构。

这个七十多年前的数字,今天有了新的坐标。大语言模型的训练目标——最小化对真实文本的交叉熵——本质上就是在逼近自然语言的熵率;模型报告的困惑度(perplexity)只是交叉熵的指数化。现代大模型在文本上的每字符交叉熵,已经与香农估计的区间处在同一量级;这是"逼近了真实熵"还是"模型与人的预测误差同构",学界仍有争论。模型一侧的机制与能力边界见 large-language-models;这里只需记住:语言建模的整个评估框架,是从香农 1951 年那几页猜字游戏里长出来的。

代价与争议

过度扩张:香农本人在 1956 年警告过,将信息论类比机械地应用到语言学、心理学、经济学往往产生肤浅的结论。"熵"的概念被引用到几乎所有领域,质量良莠不齐。

量子信息论:经典信息论的量子推广(量子熵、量子信道容量、量子纠错码)自 1990 年代以来快速发展,是目前信息论最活跃的前沿之一,但与经典信息论有根本性的区别(如量子态不能被"完美复制"——量子不可克隆定理)。

跨域连接

  • 热力学熵:两种熵共用形式却不共用内容。热力学熵带量纲、指向一个物理系统的微观状态数;香农熵无量纲、以比特计、指向一个分布的不确定性。把二者直接等同是错的;真正把它们接上的是"擦除信息必须耗散热量"这一条,而那需要额外的物理论证,不能由公式相似推出。
  • 语料库语言学:自然语言每个字符的条件熵远低于字母表等概率时的上限,这个差额就是冗余度。它可以从语料直接测出,所以"语言有冗余"不是修辞而是数值;冗余正是嘈杂环境下仍能听懂、缺字仍能读通的原因,也是文本可压缩、而加密后的密文压不动的原因。
  • 遗传密码:把碱基当符号、把翻译当信道,密码子的简并就是一层冗余,落在第三位的突变常不改变产物。但这一步必须写明是类比:它是选择压力留下的鲁棒性,没有理由认为它在编码论意义上接近最优码,也不存在一个"解码器"在纠正错误。
  • 密码学基础:完美保密的定义就是密文与明文之间互信息为零,由此可推出密钥不能短于明文。这是一条信息论的不可能性,不依赖任何计算难度假设;正因代价过高,现代密码才整体退到"破解代价超出攻击者资源"的计算安全上。
  • 机器学习概览:分类常用的交叉熵损失等于真实分布的熵加上两个分布的 KL 散度,而前一项与模型无关。所以最小化它就是在最小化模型分布与真实分布的偏离——损失函数的形状不是凑出来的,是信息论定下的,模型输出也因此该被读成分布而非分数。

率失真理论:有损压缩的数学极限

无损压缩有香农第一定理给出的极限;有损压缩(允许一定失真)有什么理论约束?香农的率失真理论(Rate-Distortion Theory)回答了这个问题:

对于给定的允许失真量 $D$,需要多少比特才能以不超过 $D$ 的失真描述信息源?率失真函数 $R(D)$ 给出了这个下界。

率失真理论是 JPEG、MP3、H.264 等有损压缩格式的理论基础,尽管这些实用格式并未达到理论极限——做到率失真最优在计算上通常是不可行的。

信息论与机器学习的深层联系

深度学习中大量使用信息论的概念:

交叉熵损失(Cross-Entropy Loss):分类问题中最常用的损失函数,定义为模型预测分布 $q$ 与真实分布 $p$ 之间的交叉熵:

H(p,q)=xp(x)logq(x)H(p, q) = -\sum_x p(x) \log q(x)

这等于真实分布的熵 $H(p)$ 加上 KL 散度 DKL(pq)D_{KL}(p \| q)。最小化交叉熵等价于最小化 KL 散度,即让模型分布尽可能接近真实分布。

变分自编码器(VAE,2013):使用 KL 散度作为正则化项,让隐空间的分布接近标准正态分布,从而实现连续的生成空间。

互信息最大化:无监督表示学习的一个理论框架,主张学习能最大化输入与表示之间互信息的特征。

信息瓶颈(Information Bottleneck):Tishby 等人(2000 年提出,2017 年用于解释深度网络)的框架,认为深度网络在学习中压缩了与标签无关的输入信息,同时保留了与标签相关的信息——这是一种率失真视角的网络学习理论,但实证上仍有争议。

参考文献

  • Shannon, C. E. A Mathematical Theory of Communication. Bell System Technical Journal 27 (1948): 379–423, 623–656.
  • Shannon, C. E. Prediction and Entropy of Printed English. Bell System Technical Journal 30 (1951): 50–64. (英文熵率的猜字实验)
  • Shannon, C. E. Communication Theory of Secrecy Systems. Bell System Technical Journal 28 (1949): 656–715.
  • Khinchin, A. Ya. Mathematical Foundations of Information Theory. Dover (1957). (熵的严格公理化)
  • Cover, T. M. & Thomas, J. A. Elements of Information Theory. 2nd ed. Wiley-Interscience (2006). (最权威的教材)
  • Gallager, R. G. Information Theory and Reliable Communication. Wiley (1968). (经典研究生教材,包含 LDPC 码原始理论)
  • MacKay, D. J. C. Information Theory, Inference, and Learning Algorithms. Cambridge University Press (2003). (免费在线版,深入浅出)