Token Lab搜索

← 全部研究实验
PHD / RESEARCH ENGINEERING

信息论与分布差异

理解熵、交叉熵、两个方向的 KL,以及概率支持集不一致。

本地计算与合成示例,不调用付费 API,不代表真实大模型基准。
学习指南与本课目录LEARNING CONTRACT

理解 → 实现 → 研究

目标:解释本课机制、复现一个例子、测试一个失败案例。读完不自动代表掌握。

01 · 理解与推导

前置知识 · 离散概率、对数、期望。

固定目标 P 时,H(P) 是常数,因此最小化交叉熵等价于最小化正向 KL。反转 KL 会改变用于加权惩罚的分布。输入权重会归一化,结果单位均为 nat。

Text / 原始公式
H(P) = −Σ pᵢ ln pᵢ
H(P,Q) = −Σ pᵢ ln qᵢ
KL(P||Q) = H(P,Q) − H(P)
JS(P,Q) = [KL(P||M)+KL(Q||M)]/2, M=(P+Q)/2
逐步推导与研究解释
  1. 展开 ln p−Σp ln q,可得 ,需注意支持集条件。解释优化等价性时 P 必须固定。
  2. 对观测类别 y 与 softmax logits z,交叉熵是 −z_y+log Σexp(z),导数为 softmax(z)_i−1[。这把信息论与训练信号连接起来。
  3. 熵衡量分布内部的不确定性。校准比较预测概率与有标签样本中的实际频率;自信但错误的预测也可能低熵。

常见误区:推理时改变温度不自动等于校准:需要在带标签的留出数据上拟合和验证。

02 · 检查知识掌握

四类均匀分布的熵是多少 nat?

查看推导

−4 × 0.25 × ln(0.25) = ln(4) ≈ 1.386294

03 · 运行对照实验

实验任务

先设置 ,再用 ,0 和 ,1。解释为什么 KL 无穷大而 JS 有限,不要用任意 epsilon 掩盖问题。

可执行的对照实验流程
  1. 使用 ,0.2,0.1 与 ,0.3,0.2,验证交叉熵减目标熵等于正向 KL。
  2. 交换 P/Q,预测哪些量改变;把 P 的所有权重乘以 10,验证归一化后结果不变。
  3. 运行 ,0 与 ,1。解释交叉熵和 KL 无穷大而 。导出把无穷大保留为字符串,不悄悄改为零。

交付物:输入配置、结果导出、控制变量说明、观察结果、替代解释及下一步验证。

查看提示

若 pᵢ>0 而 qᵢ=0,正向 KL 为无穷大;pᵢ=0 的项贡献为 0。混合分布 M 包含两者的支持集。

04 · 检查证据

运行实验后查看证据。

仅比较控制变量后的运行结果,导出包含输入与方法。

05 · 解释研究判断

自评要点:解释机制、识别假设、提出可区分不同解释的实验。不使用 LLM 自动评分。

1. 监督学习中最小化交叉熵时,为什么目标熵是常数?

查看参考答案与评分要点

目标分布相对于模型参数固定,变化的是预测分布。

2. 低熵模型可能严重错误吗?

查看参考答案与评分要点

可以,它可能把概率高度集中在错误类别上。需要分别评估正确率、校准和任务代价。

3. 为什么改变 KL 方向会改变优化结果?

查看参考答案与评分要点

期望的加权分布与支持集惩罚发生变化。模式覆盖的表现还取决于近似分布族和目标,不能只记结论。

假设与限制

这里比较分类分布,不进行模型校准评估。校准还需要预测与真实结果配对;熵不等于正确率。

参考资料

arXiv:1706.04599 · 2017

On Calibration of Modern Neural Networks

Guo et al. · 年份为首次 arXiv 投稿年份

建议阅读:可靠性图、校准指标与 temperature scaling。

读后自测:区分类别排序与置信度质量;温度应在验证集拟合,不用最终测试集调参。

BibTeX
@misc{arxiv170604599,
  title = {On Calibration of Modern Neural Networks},
  year = {2017},
  eprint = {1706.04599},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/1706.04599}
}

arXiv:2305.18290 · 2023

Direct Preference Optimization: Your Language Model is Secretly a Reward Model

Rafailov et al. · 年份为首次 arXiv 投稿年份

建议阅读:KL 约束奖励目标、策略重参数化与偏好损失。

读后自测:识别 reference policy 对数比与 β。当前信息论实验讲解 KL,不是 DPO 训练器。

BibTeX
@misc{arxiv230518290,
  title = {Direct Preference Optimization: Your Language Model is Secretly a Reward Model},
  year = {2023},
  eprint = {2305.18290},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/2305.18290}
}
MATHEMATICAL REVIEW · 2026-10-26

假设、参考实现与验收

这里比较分类分布,不进行模型校准评估。校准还需要预测与真实结果配对;熵不等于正确率。

已复核目标、导数、算例及实现。通过有限差分或清单检查不代表完成论文复现。

非负权重 P 与 Q → 分别归一化分布 → 求对数前检查支持集 → 以 nats 计算 H、交叉熵、KL、JS
机制图:从上到下跟踪每次变换。

运行前:预测一个边界情况

先设置 ,再用 ,0 和 ,1。解释为什么 KL 无穷大而 JS 有限,不要用任意 epsilon 掩盖问题。

提示:隔离假设

固定基线输入,只改变一个参数或边界;同时比较数值与声明单位。单例通过仅验证该样例。

最小可运行算例

将算例及所链接模块保存在同一目录。使用 Node.js 22 或更高版本,然后运行 node information-theory.mjs. 无需第三方运行依赖。

import {runPhd} from './phd-core.mjs';
const params={
  "p": "0.7,0.2,0.1",
  "q": "0.5,0.3,0.2"
};
console.log(runPhd('information-theory',params));

测试与迁移

先设置 ,再用 ,0 和 ,1。解释为什么 KL 无穷大而 JS 有限,不要用任意 epsilon 掩盖问题。

在下方笔记记录输入、代码版本、期望值和实测值;再构造违反上述假设的反例,解释原结论为何不再成立。

下载完整代码包(.tar.gz) · 完整参考代码与回归检查

预测、检验与证据记录

展开答案前先预测一个结果;练习后记录差异和迁移测试。记录仅存本地,在不同语言版本间共用。

打开记录/导出/清除 →

数学复核范围逐篇记录,不代表完成论文实证复现;可在笔记中记录疑似错误。 复核范围