9 分钟
本页目录

率失真与信息瓶颈

允许一点失真,就能压得更狠——率失真理论 R(D) 给出"容忍失真 D 时最少要多少比特"。信息瓶颈把这套思路搬进机器学习:学一个表示 T,既要压缩输入 I(X;T) 小,又要保留预测信息 I(T;Y) 大。这正是理解深度网络"先记忆后压缩"的一个理论框架。

引子:允许一点失真,天花板就松了

上一章的 源编码 都是无损的——重建必须逐比特还原,下界卡死在熵。

可很多场景根本不需要精确还原。JPEG 丢掉人眼不敏感的高频细节;MP3 丢掉被听觉掩蔽的频段;神经网络的中间表示丢掉与任务无关的信息。这些都是有意的"丢弃",而且丢了你几乎察觉不到。

一旦允许失真(distortion),可压缩的空间陡然放大。问题也随之变形:不再问"无损要多少比特",而是问——⁠给定我能容忍的失真上限,最少要多少比特? 这一章先回答这个问题(率失真),再把同一套思路搬进机器学习(信息瓶颈)。

率失真函数 R(D)

要谈"容忍失真",先得能量化失真。⁠率失真理论(rate-distortion theory) 用一个失真度量 d(x, \hat{x})(比如平方误差、汉明距离)来衡量"重建 \hat{x} 和原始 x 差多远"。

率失真函数 就定义为:在保证平均失真不超过 D 的前提下,所需的最小比特率。

R(D) = \min_{p(\hat{x} \mid x):\, \mathbb{E}[d]\leq D} I(X; \hat{X})

它是一条单调下降的曲线:容忍的失真 D 越大,需要的比特率 R 越低。两个端点最能说明问题:

  • D=0(不许失真):对离散信源,且 d(x,\hat x)=0 只在精确重建时成立,R(0)=H(X),退回到无损压缩的熵下界。连续信源配平方误差时通常有 R(0)=\infty,不能把这里的 H(X) 直接换成微分熵。
  • D 大到"平均把一切都猜成一个常数"也能接受:R(D)=0,一个比特都不用发。
率失真函数 R(D):失真换比特的权衡曲线 D(失真) R H(X) D=0 → R=H(X)(无损) D 够大 → R=0 可达区在曲线上方: 给定 D,比特率不能低于 R(D)

R(D) 之于有损压缩,正如熵之于无损压缩——都是不可逾越的理论下界。曲线上方是可达区,下方物理上做不到。

信息瓶颈原理

现在把这套思路搬个家。⁠信息瓶颈(Information Bottleneck, Tishby 1999) 把率失真推广到表示学习⁠——只不过,"失真"不再用像素误差衡量,而用"丢了多少与任务相关的信息"衡量。

设定是这样:有输入 X、要预测的标签 Y,我们想学一个中间表示 T(是 X 的某种压缩)。一个好的 T,要同时满足两个互相拉扯的目标:

  • 压缩⁠:I(X;T) 尽量⁠。T 尽量少保留关于 X 的信息,把无关细节全扔掉。
  • 保真⁠:I(T;Y) 尽量⁠。T 尽量多保留能预测 Y 的信息。

把这两股力合成一个拉格朗日目标:

\min\ I(X;T) - \beta \cdot I(T;Y)

\beta 是权衡旋钮:\beta 小,偏向狠压缩;\beta 大,偏向多保信息。标准设定的联合分布是 p(x,y)p(t\mid x),所以马尔可夫关系应写成 Y\to X\to T(或 T-X-Y):给定 X 后,TY 条件独立,T 只能从 X 提取与 Y 有关的信息。预测时当然会用 T 去估计 Y,但"预测流程 X\to T\to\hat Y"和"概率依赖关系 Y\to X\to T"是两件事。

信息瓶颈:T 夹在"压缩"与"保真"两股相反压力之间 X 输入 T 瓶颈 压缩表示 Y 标签 I(X;T) 要小 ↓ 拼命压缩,扔掉无关细节 I(T;Y) 要大 ↑ 拼命保留,留住预测信息 预测流程:X → T → Ŷ;概率关系:Y → X → T;目标:min I(X;T) − β·I(T;Y)

深度网络的"先记忆后压缩"

信息瓶颈之所以引人关注,是因为 Tishby 等人有一个观察。

训练深度网络时,如果跟踪每一层在 (I(X;T),\ I(T;Y)) 平面上的轨迹,常常会看到两个阶段:⁠先是拟合阶段⁠,I(T;Y) 快速上升,网络"记住"训练数据;⁠再是压缩阶段⁠,I(X;T) 缓慢下降,网络把与标签无关的输入信息挤出去,泛化随之改善。

这给"深度学习为什么能泛化"提供了一个信息论视角:⁠在保留任务信息的前提下,丢掉输入细节可能有助于泛化⁠。

需要诚实标注一句:这个"压缩阶段"是否普遍存在、是否就是泛化的⁠,学界仍有争议(有工作指出它依赖激活函数和互信息的估计方式)。所以把它当作一个有启发性的框架⁠,而非定论——它给了一套用信息量刻画表示质量的语言,这本身就有价值。

连接表示学习与对比学习

信息瓶颈里"最大化 I(T;Y)"这条思路,直接通向现代的自监督 / 对比学习⁠。

InfoNCE(SimCLR、CPC 等用的损失)为例:在相应的正负样本构造与采样假设下,它给出互信息 I 的一个可计算下界⁠。最小化 InfoNCE 损失,等价于抬高这一下界——让表示更容易区分"什么和什么是同一个东西"。但下界的松紧依赖负样本数量和采样方式,不能把损失值直接当成真实互信息。

顺着看下去会发现:表示学习的许多目标,拆开都是在信息瓶颈的两个方向上做文章——要么压缩,要么保信息。这里点到为止,不展开 InfoNCE 的下界推导。

框架压缩项保真项下界 / 目标
率失真 R(D)\min I(X;\hat{X})失真 \mathbb{E}[d]\leq D有损压缩比特率下界
信息瓶颈\min I(X;T)\max I(T;Y)\min I(X;T)-\beta \cdot I(T;Y)
对比学习(InfoNCE)通常没有显式 IB 压缩项抬高正样本表示的互信息下界下界依赖负样本与采样方式

这些工具在 LLM 场景怎么落地——困惑度、RLHF 里的 KL、scaling law 的压缩视角——收束在 LLM 中的信息论

参考

  • 论文⁠: "The Information Bottleneck Method" (Tishby, Pereira & Bialek, 1999 — 信息瓶颈原始论文)
  • 论文⁠: "Opening the Black Box of Deep Neural Networks via Information" (Shwartz-Ziv & Tishby, 2017 — 拟合/压缩两阶段观察,附争议)
  • 教材⁠: "Elements of Information Theory" (Cover & Thomas — 第 10 章 Rate Distortion Theory)
  • 论文⁠: "Representation Learning with Contrastive Predictive Coding" (Oord et al., 2018 — InfoNCE 作为互信息下界)

关键词: 率失真 rate-distortion, R(D) 函数, 有损压缩, 信息瓶颈 Information Bottleneck, Tishby, 马尔可夫链 Y→X→T, 压缩与保真权衡, 先记忆后压缩, 表示学习, InfoNCE, 对比学习