Alpha内测版本警告:此为早期内部构建版本,尚不完整且可能存在错误,欢迎大家提Issue反馈问题或建议。
Skip to content

信息论——度量信息的数学

兔狲教授的提示:信息是物理世界之外的另一个基本量。信息论不仅告诉我们如何高效地存储和传输信息,更重要的是,它提供了度量信息、不确定性和知识的数学框架。从数据压缩到通信编码,从机器学习到量子计算,信息论是现代数字世界的基石。

词条1:信息熵——不确定性的度量

官方解释

信息熵:离散随机变量 X 的熵 H(X)=xXp(x)logp(x)

性质

  1. 非负性:H(X)0
  2. 最大值:当分布均匀时熵最大
  3. 可加性:独立随机变量的联合熵等于熵的和

直观理解:熵度量了随机变量的不确定性或'惊喜程度'。

单位

  • 以2为底:比特(bit)
  • 以e为底:纳特(nat)
  • 以10为底:哈特利(hartley)

兔狲老师解释

熵是'意外的期望值'。

小小猪举了个例子:天气预报:

  • 确定性天气(如沙漠总是晴天):熵 =0,没有不确定性
  • 等可能天气(晴雨各50%):熵 =1 比特,最大不确定性
  • 偏态分布(晴90%,雨10%):熵 0.47 比特,有一定不确定性

信息量:事件 x 的信息量 I(x)=logp(x)

  • 罕见事件:信息量大(惊喜!)
  • 常见事件:信息量小(预料之中)
  • 熵:信息量的期望值

熵的极值

  • 最小熵 0:确定分布(某个结果概率为1)
  • 最大熵 log|X|:均匀分布(所有结果等可能)
  • 最大熵原理:在给定约束下,选择熵最大的分布

思考题1:动手题

问题:计算以下分布的熵:

  1. 伯努利分布 Bernoulli(p)p=0.5,0.1,0.9
  2. 均匀分布:掷骰子(6面均匀)
  3. 偏态分布:p(1)=0.5,p(2)=0.3,p(3)=0.2

问题:证明:H(X)log|X|,等号成立当且仅当 X 均匀分布。

思考题2:动脑题

问题:熵为什么用对数定义?线性函数不行吗?

思考方向:

  • 独立事件的信息可加性
  • 编码长度的联系
  • 对数的数学性质

词条2:联合熵、条件熵与互信息

官方解释

联合熵H(X,Y)=x,yp(x,y)logp(x,y)

条件熵H(Y|X)=xp(x)H(Y|X=x)=x,yp(x,y)logp(y|x)

链式法则H(X,Y)=H(X)+H(Y|X)

互信息I(X;Y)=H(X)H(X|Y)=H(Y)H(Y|X)=H(X)+H(Y)H(X,Y)

性质

  • I(X;Y)0
  • I(X;Y)=0 当且仅当 X,Y 独立
  • 对称性:I(X;Y)=I(Y;X)

兔狲老师解释

这些量描述'变量之间的关系'。

小海豹举了个例子:天气和穿衣:

  • X:天气(晴/雨)
  • Y:穿衣(短袖/长袖)
  • H(X):天气的不确定性
  • H(Y):穿衣选择的不确定性
  • H(Y|X):知道天气后,穿衣的不确定性
  • I(X;Y):天气和穿衣的相关性

如果穿衣完全由天气决定:H(Y|X)=0I(X;Y)=H(Y) 如果穿衣与天气无关:H(Y|X)=H(Y)I(X;Y)=0

思考题1:动手题

问题:设 X,Y 的联合分布: p(0,0)=0.4p(0,1)=0.1p(1,0)=0.2p(1,1)=0.3 计算:H(X)H(Y)H(X,Y)H(X|Y)H(Y|X)I(X;Y)

问题:证明:

  1. H(X,Y)H(X)+H(Y)
  2. H(X|Y)H(X)
  3. I(X;Y)=x,yp(x,y)logp(x,y)p(x)p(y)

思考题2:动脑题

问题:互信息与相关系数有什么区别?各度量什么?

思考方向:

  • 线性关系 vs 一般依赖关系
  • 对称性 vs 非对称性
  • 在特征选择中的应用

词条3:KL散度与交叉熵

官方解释

KL散度(相对熵):DKL(PQ)=xp(x)logp(x)q(x)

性质

  1. 非负性:DKL(PQ)0
  2. 零散度:DKL(PQ)=0 当且仅当 P=Q
  3. 非对称性:DKL(PQ)DKL(QP)

交叉熵H(P,Q)=xp(x)logq(x)=H(P)+DKL(PQ)

兔狲老师解释

KL散度是"分布间的距离"(但不是度量)。

兔狲教授举例说:真实分布 P vs 模型分布 Q

  • P:真实数据分布
  • Q:模型预测分布
  • DKL(PQ):用 Q 近似 P 的代价
  • 最小化KL散度:让模型分布接近真实分布

机器学习中的交叉熵损失: 分类问题:真实标签 y,预测概率 y^ 损失 =iyilogy^i 这就是交叉熵!最小化交叉熵 = 最小化KL散度(因为 H(P) 固定)

KL散度的不对称性

  • 正向KLDKL(PQ),强调覆盖 P 的所有模式
  • 反向KLDKL(QP),避免 QP 为零处有概率
  • 在变分推断中:用反向KL得到更紧凑的近似

思考题1:动手题

问题:计算KL散度:

  1. P=Bernoulli(0.5)Q=Bernoulli(0.7)
  2. P=Bernoulli(0.1)Q=Bernoulli(0.9)
  3. P=Bernoulli(0.5)Q=Bernoulli(0.5)

问题:证明:DKL(PQ)0(用Jensen不等式)。

思考题2:动脑题

问题:为什么KL散度不对称?这在实际应用中有什么影响?

思考方向:

  • 从编码角度理解
  • 在变分推断中的选择
  • 在生成模型(如VAE)中的应用

词条4:香农编码定理

官方解释

编码:将源符号映射到码字(二进制串)。

前缀码:没有任何码字是其他码字的前缀。

Kraft不等式:前缀码存在的充要条件是 i2li1,其中 li 是码字长度。

最优编码:码长 l(x)logp(x)(按概率倒数的对数分配码长)。

香农第一定理(无噪声编码定理): 对离散无记忆信源,存在编码使平均码长 L 满足 H(X)L<H(X)+1

兔狲老师解释

编码是'用比特表示信息'。

小小猪举了个例子:压缩英文文本:

  • 字母'e'常见:用短码(如'0')
  • 字母'z'罕见:用长码(如'1110')
  • 霍夫曼编码:最优前缀码
  • 平均码长接近熵

熵的意义

  • H(X):无损压缩的极限
  • 数据压缩不能低于熵(无损时)
  • 这就是为什么随机数据难压缩

实际编码

  • 霍夫曼编码:贪心算法构造最优前缀码
  • 算术编码:更接近熵限,处理整个消息
  • LZ系列:基于字典的通用编码
  • 实际压缩工具:gzip, PNG, MP3等

思考题1:动手题

问题:对符号集 {A,B,C,D},概率 p(A)=0.5p(B)=0.25p(C)=0.125p(D)=0.125

  1. 计算熵 H(X)
  2. 构造霍夫曼编码
  3. 计算平均码长,验证香农定理

问题:证明Kraft不等式:对前缀码,i2li1

思考题2:动脑题

问题:香农定理的哲学意义是什么?"信息"可以被精确度量吗?

思考方向:

  • 信息作为基本量
  • 压缩极限与物理极限
  • 算法信息论(柯尔莫哥洛夫复杂度)

词条5:信道容量与香农第二定理

官方解释

离散无记忆信道:输入 X,输出 Y,转移概率 p(y|x)

信道容量C=maxp(x)I(X;Y),最大互信息。

香农第二定理(有噪声信道编码定理): 只要传输速率 R<C,就存在编码使错误概率任意小;如果 R>C,错误概率有下界。

信道编码:添加冗余纠正错误。

典型序列:概率接近 2nH(X) 的序列,占据大部分概率质量。

兔狲老师解释

信道容量是'可靠通信的极限'。

小海豹举了个例子:二进制对称信道(BSC):

  • 输入0/1,以概率 p 翻转为1/0
  • 容量 C=1H(p)(其中 H(p) 是二元熵)
  • p=0(无噪声):C=1(每比特可靠传输1比特)
  • p=0.5(完全随机):C=0(无法可靠传输)
  • p=0.1C0.53

编码奇迹

  • 添加冗余(如重复码、汉明码、LDPC码)
  • 在噪声中可靠传输
  • 接近香农极限(Turbo码、Polar码)

实际系统

  • WiFi:使用卷积码、LDPC码
  • 5G:使用Polar码(理论最优)
  • 存储系统:RAID、ECC内存
  • 深空通信:需要极强纠错

思考题1:动手题

问题:计算以下信道容量:

  1. 无噪声信道:p(y|x)=1 if y=x else 0
  2. 二进制擦除信道:以概率 ε 擦除(输出?),否则正确
  3. Z信道:00 概率1,10 概率 p11 概率 1p

问题:证明:Cmin{log|X|,log|Y|}

思考题2:动脑题

问题:香农第二定理为什么令人惊讶?它解决了什么问题?

思考方向:

  • 噪声下的可靠通信
  • 冗余与效率的权衡
  • 编码理论的诞生

词条6:信息论在AI中的应用

官方解释

最小描述长度(MDL):选择使"模型复杂度+数据拟合误差"最小的模型。

信息瓶颈:在压缩输入和预测输出之间权衡。

变分推断:用KL散度近似后验分布。

互信息最大化:在表示学习中。

信息论聚类:如信息瓶颈聚类。

兔狲老师解释

信息论是AI的'指导原则'。

兔狲教授举例说:决策树学习:

  • 选择分裂特征:最大化信息增益(互信息)
  • 信息增益 =H(Y)H(Y|X)
  • 这就是ID3、C4.5算法的核心

表示学习

  • 目标:学习有用的数据表示
  • 信息瓶颈:min I(X;Z)βI(Z;Y)
  • 压缩输入 X 到表示 Z,同时保留预测 Y 的信息
  • β 控制压缩程度

生成模型

  • VAE:最小化重构误差 + KL散度(正则化)
  • GAN:判别器和生成器的博弈
  • 扩散模型:逐步去噪的信息论过程

信息论与深度学习

  • 批量归一化:减少内部协变量偏移
  • Dropout:防止特征共适应
  • 注意力机制:信息瓶颈视角
  • 对比学习:互信息最大化

思考题1:动手题

问题:实现决策树:

  1. 计算每个特征的信息增益
  2. 选择最大增益的特征分裂
  3. 递归构建树
  4. 用信息增益比改进(C4.5)

问题:用信息瓶颈分析简单数据集:

  1. 计算 I(X;Y)
  2. 学习表示 Z
  3. 绘制 I(X;Z) vs I(Z;Y) 曲线
  4. 分析最优 β

思考题2:动脑题

问题:信息论如何改变我们对机器学习的理解?从'最小化误差'到'信息处理'的视角转变。

思考方向:

  • 学习作为压缩
  • 泛化作为最小描述长度
  • 表示作为信息瓶颈
  • 深度学习的信息论解释

总结:信息的世界观

兔狲教授总结道:信息论不仅是一套数学工具,更是一种世界观:

  1. 信息是基本的:与物质、能量并列的基本量
  2. 不确定性可度量:熵量化了无知的程度
  3. 通信有极限:香农定理划定了可能性的边界
  4. 学习即压缩:从数据中提取规律就是压缩信息

在AI中,信息论提供了:

  • 设计原则:如最大信息增益、最小描述长度
  • 分析工具:如互信息分析特征重要性
  • 理论框架:理解学习的本质和极限
  • 实用算法:从决策树到变分自编码器

掌握信息思维,你就掌握了:

  • 抽象能力:看到数据背后的信息结构
  • 效率意识:追求最优表示和传输
  • 极限意识:知道什么可能,什么不可能
  • 统一视角:连接通信、计算和认知

小小猪的体会:原来信息可以像物理量一样精确度量!

小海豹的反思:信息论让我理解了学习的本质是从数据中提取信息。

下一章预告:我们将学习线性模型,这是机器学习的基础,也是理解复杂模型的起点。