本页是 ML 最核心的信息论篇:交叉熵(cross-entropy)作为训练损失,KL 散度(Kullback–Leibler divergence)作为分布差异与 RLHF 约束。
段末注释:KL 散度 $D_{\mathrm{KL}}(P | Q) = \sum_x p(x) \log \frac{p(x)}{q(x)} \ge 0$,当且仅当 $P=Q$ 时为 0;不对称,一般 $D_{\mathrm{KL}}(P | Q) \neq D_{\mathrm{KL}}(Q | P)$。
系列入口:00.系列规划 | 前置:02 熵、Math-00/50
1. 交叉熵定义(D2–D3)

离散 $P$、$Q$($q(x)>0$ 当 $p(x)>0$):
$$
H(P, Q) = -\sum_x p(x) \log q(x)
$$
含义:真实分布 $P$ 的样本,用基于 $Q$ 的最优码长编码,平均每条多少 nat。
分类:one-hot 标签 $P=(0,\ldots,1,\ldots,0)$,模型 softmax 输出 $Q$:
$$
H(P,Q) = -\log q(y_{\mathrm{true}}) = \text{单样本 CE}
$$
batch 平均即 CrossEntropyLoss。
2. KL 散度与分解(D3)

$$
D_{\mathrm{KL}}(P | Q) = \sum_x p(x) \log \frac{p(x)}{q(x)} = H(P,Q) - H(P)
$$
| 性质 | 内容 |
|---|---|
| 非负 | $D_{\mathrm{KL}}(P | Q) \ge 0$ |
| 等号 | 当且仅当 $p(x)=q(x)$ 处处成立 |
| 不对称 | 方向 $P | Q$ 有意义:「$P$ 相对 $Q$ 的额外比特」 |
| 非度量 | 不满足三角不等式 |
训练:$P$(数据)固定 → $\min_Q H(P,Q) \Leftrightarrow \min_Q D_{\mathrm{KL}}(P | Q)$。
反向 KL $D_{\mathrm{KL}}(Q | P)$:mode-seeking;正向 $D_{\mathrm{KL}}(P | Q)$:mode-covering——VAE、变分推断中方向选择重要(Math-07)。
3. 连续形式(D3)
$$
D_{\mathrm{KL}}(P | Q) = \int p(x) \log \frac{p(x)}{q(x)} ,\mathrm{d}x
$$
高斯 $P=\mathcal{N}(\mu_1,\sigma_1^2)$,$Q=\mathcal{N}(\mu_2,\sigma_2^2)$ 有闭式(用于 VAE、扩散部分推导)。
4. ML 场景(D7)

| 场景 | 公式 |
|---|---|
| 多分类 | $\mathcal{L} = -\frac1N\sum_i \log q_\theta(y_i \mid \mathbf{x}_i)$ |
| 语言模型 | $\mathcal{L} = -\sum_t \log p_\theta(x_t \mid x_{<t})$ |
| 知识蒸馏 | $\mathcal{L} = D_{\mathrm{KL}}(p_{\mathrm{teacher}} | p_{\mathrm{student}})$ |
| RLHF | 奖励 $+ \beta D_{\mathrm{KL}}(\pi_\theta | \pi_{\mathrm{ref}})$ 防偏离 |
| t-SNE | $\min D_{\mathrm{KL}}(P_{\mathrm{high}} | P_{\mathrm{low}})$ |
| VAE | $\mathcal{L} = \mathbb{E}[-\log p(x |
| Label smoothing | $P=(1-\varepsilon)\delta_y + \varepsilon/K$ 降低过拟合 |
5. 局限与实现(D8)

| 问题 | 对策 |
|---|---|
| $q(x)\to 0$ 而 $p(x)>0$ | KL → $\infty$;数值 clip |
PyTorch kl_div |
输入需 log_q,注意 reduction |
| CE 与 BCE | 多类用 CrossEntropyLoss(含 softmax);二分类可用 BCEWithLogitsLoss |
| 只看 CE 不看校准 | 加 ECE、温度缩放评估 |
| KL 方向搞反 | RLHF 通常惩罚相对 参考策略 的偏离 |
6. PyTorch 示例(D12)
1 | import torch |
7. 小结
CE = 分类/语言模型的标准损失;KL = CE 减去不可训练的 $H(P)$,也是分布匹配与 RLHF 的核心度量。下一篇:05 最大熵与 Softmax | 10 语言模型。