机器学习中的信息论
在机器学习中,信息论是核心理论基础之一,用于量化不确定性、衡量变量间依赖关系,并指导模型优化。
信息量
信息量是对信息的一种量化指标,用于衡量信息的大小,信息量中最常用的就是香农信息量,香农信息量的定义与计算公式如下:
其中,\(p\) 是事件 \(x\) 发生的概率,\(h\) 则为事件 \(x\) 所包含的香农信息量 。一件事情发生的概率越小,所包含的信息量也就越大。(很符合现实常理)
信息量满足 \(3\) 个特性:
-
单调性
从日常直觉总觉来说,概率越小的事情,信息量应该越大。也就是说,信息量应该与事件发生的概率负单调。 -
非负性
信息量的最小值应该为 \(0\),不能是负数。 -
累加性
两个独立事件各自的信息量之和,需要与这两个独立事件构成的整体事件的信息量相等。
信息熵
离散随机变量的熵
- 定义:设离散随机变量 \(X\) 的概率分布为 \(p(x)\),其熵 \(H(X)\) 定义为:
其中 \(x\) 是 \(X\) 的所有可能取值,对数底数通常取 \(2\)(单位为”比特”)或自然对数 \(e\)(单位为“奈特”)。
- 直观理解:熵衡量平均不确定性。每个事件 \(x\) 的贡献是 \(-\log p(x)\)(概率越小,不确定性贡献越大),按概率加权平均后得到整体不确定性。
连续随机变量的微分熵
- 定义:设连续随机变量 \(X\) 的概率密度函数为 \(p(x)\),其微分熵 \(H(X)\) 定义为:
- 与离散熵的区别:微分熵可正可负(因概率密度可大于 \(1\),\(\log p(x)\) 可能为负),仅表示相对不确定性,不直接对应编码长度(离散熵对应最短平均编码长度)。
联合熵与条件熵
联合熵:两个变量的共同不确定性
- 定义:对随机变量 \(X, Y\),联合熵 \(H(X,Y)\) 衡量两者同时发生的不确定性:
其中 \(p(x,y)\) 是联合概率分布。
- 直观理解:相当于同时描述 \(X\) 和 \(Y\) 所需的平均信息量。若 \(X\) 和 \(Y\) 独立,则 \(p(x,y)=p(x)p(y)\),此时: $$H(X,Y) = H(X) + H(Y)$$(独立变量的联合熵等于各自熵之和)。
条件熵:已知一个变量时另一个变量的剩余不确定性
-
定义:已知 \(X\) 时,\(Y\) 的条件熵 \(H(Y|X)\) 定义为:
\[\begin{align*} H(Y|X) &= \sum_{x \in X} p(x) H(Y|X=x)\\ &= -\sum_{x\in X}\sum_{y\in Y} p(x)p(y|x)\log p(y|x)\\ &= -\sum_{x\in X}\sum_{y\in Y} p(x,y)\log p(y|x) \end{align*} \]其中 \(H(Y|X=x) = -\sum_{y} p(y|x) \log p(y|x)\) 是条件分布下的熵,按 \(p(x)\) 加权平均。
-
推导与联合熵的关系:通过联合熵分解可得:
\[H(X,Y) = H(X) + H(Y|X) = H(Y) + H(X|Y) \]直观理解:“同时描述 \(X\) 和 \(Y\)”等于“描述 \(X\) 的信息”加上“已知 \(X\) 后描述 \(Y\) 的剩余信息”。
互信息
定义与公式
-
从熵的角度定义:互信息 \(I(X;Y)\) 是已知 \(X\) 后,\(Y\) 的不确定性减少量,即:
\[I(X;Y) = H(Y) - H(Y|X) = H(X) - H(X|Y) \]等价于联合熵与边缘熵的关系:
\[I(X;Y) = H(X) + H(Y) - H(X,Y) \] -
从概率分布角度定义: 利用联合分布 \(p(x,y)\) 和边缘分布 \(p(x), p(y)\) 的相对熵:
\[\begin{align*} I(X;Y) &= -\sum_{x\in X}p(x)\log p(x)-\sum_{y\in Y}p(y)\log p(y)+\sum_{x\in X}\sum_{y\in Y}p(x,y)\log p(x,y)\\ &= \sum_{x\in X}\sum_{y\in Y}p(x,y)(\log p(x,y)-\log p(x)-\log p(y))\\ &= \sum_{x\in X}\sum_{y\in Y}p(x,y)\log \frac{p(x,y)}{p(x)p(y)} \end{align*} \]本质是衡量 \(p(x,y)\) 与独立假设下分布 \(p(x)p(y)\) 的差异(KL散度)。
核心性质
-
非负性:\(I(X;Y) \geq 0\),当且仅当 \(X\) 和 \(Y\) 独立时,\(I(X;Y)=0\)(此时 \(p(x,y)=p(x)p(y)\),对数项为0)。
-
对称性:\(I(X;Y) = I(Y;X)\)(交换 \(X\) 和 \(Y\) 不改变依赖关系)。
-
最大值:\(I(X;Y) \leq \min(H(X), H(Y))\),当 \(X\) 和 \(Y\) 完全确定相关(如 \(Y = f(X)\) 为一一映射)时,互信息等于较小的熵。
互信息高代表高相关性,为 \(0\) 代表变量之间独立。
相对熵(KL散度)
定义与公式
- 离散分布:设 \(p(x)\) 和 \(q(x)\) 为两个概率分布,KL散度定义为:
- 连续分布:
- 直观理解:衡量用分布 \(q\) 近似真实分布 \(p\) 时的“信息损失”。若 \(q=p\),则每个项的 \(\log 1=0\),KL散度为0;差异越大,散度越大。
核心性质
- 非负性:由吉布斯不等式可知 \(D_{\text{KL}}(p \| q) \geq 0\),等号成立当且仅当 \(p=q\) 处处成立。
- 非对称性:\(D_{\text{KL}}(p \| q) \neq D_{\text{KL}}(q \| p)\)
- 与互信息的关系:互信息是联合分布与边缘分布乘积的KL散度,即:
这解释了为什么互信息衡量变量间的依赖——它本质是联合分布偏离独立假设的程度。
交叉熵
定义与公式
- 设真实分布为 \(p(x)\),预测分布为 \(q(x)\),交叉熵定义为:
- 与KL散度的关系:通过分解公式可知:
即:交叉熵 = KL散度 + 真实分布的熵。
当真实分布 \(p\) 固定时,\(H(p)\) 是常数,因此 最小化交叉熵等价于最小化KL散度(机器学习中常用这一性质设计损失函数)。
在分类任务中的应用
- 二元交叉熵:真实标签 \(y \in \{0,1\}\),预测概率 \(\hat{y} = p(y=1|x)\),损失函数为:
当 \(y=1\) 时,惩罚项为 \(-\log \hat{y}\),要求 \(\hat{y}\) 接近1;当 \(y=0\) 时,惩罚项为 \(-\log (1-\hat{y})\),要求 \(\hat{y}\) 接近0。
- 多分类交叉熵: 真实标签为独热向量 \(y \in \mathbb{R}^n\),预测分布为Softmax输出 \(\hat y_i = \frac{e^{o_i}}{\sum_j e^{o_j}}\),损失函数为:
其中 \(y\) 是真实类别,即仅对真实类别的预测概率取负对数(本质是真实分布与预测分布的交叉熵)。
(具体推导过程参照回归模型学习笔记)

浙公网安备 33010602011771号