论文精读:Understanding LLM via Compression (NeurIPS 2025 Spotlight)¶
Pan et al. Understanding LLM Behaviors via Compression: Data Generation, Knowledge Acquisition and Scaling Laws. NeurIPS 2025. 论文链接
一、一句话总结¶
这篇论文用信息论从第一性原理推导出了 Scaling Law 的数学形式——不是拟合曲线,而是从"数据中知识的 Zipf 分布"出发,证明了 loss 必然呈幂律下降。同时解释了为什么 LLM 会幻觉(低频知识超出模型容量),以及知识是按频率从高到低被学会的。
二、核心框架:Syntax-Knowledge 模型¶
2.1 核心思想¶
作者把语言数据分解为两个独立的层面: - Syntax(语法):有限的、可参数化的规则(语法结构、固定搭配) - Knowledge(知识):无限的、服从幂律分布的事实("北京是中国首都"、"水的沸点是100°C") 数学上,Syntax 是一个有限参数集合 \(\phi_{\text{syn}} = \{\phi_{\text{syn}}^{(1)}, ..., \phi_{\text{syn}}^{(n_s)}\}\),Knowledge 用 Pitman-Yor 过程 (PYCRP) 建模——这是一个非参数贝叶斯模型,天然产生 Zipf/幂律分布。
2.2 为什么用 Pitman-Yor 过程¶
传统参数模型(如 GMM)有固定数量的组件。但真实世界的知识是开放的——总有新知识出现。PY 过程的"新桌子"概率保证了新知识可以无限产生,但频率服从幂律分布(高频少、低频多),完美匹配 Zipf 定律。 PYCRP 的机制(中国餐馆过程):
-
第 \(n\) 个"顾客"(token)加入已有桌 \(k\) 的概率 \(\propto (N_k - \alpha)\)(越多人的桌越吸引新人 = 马太效应)
-
开新桌的概率 \(\propto (\beta + \alpha K)\)(已有 \(K\) 桌时开新桌 = 新知识出现)
-
参数 \(\alpha \in (0,1)\) 控制幂律指数
2.3 数据生成过程¶
flowchart LR
py["Pitman-Yor<br/>采样 knowledge κ"]
syntax["Syntax 模板<br/>选择"]
encode["Syntax 编码器<br/>生成句子"]
sentence["输出文本"]
py --> syntax --> encode --> sentence
classDef stage fill:#fff,stroke:#cc785c,color:#1a1a1a;
class py,syntax,encode,sentence stage
-
从 PY 过程采样一个 knowledge 元素 \(\kappa\)(如"巴黎是法国首都")
-
\(\kappa\) 决定使用哪个 syntax 模板(如"X 是 Y 的 Z")
-
Syntax 编码器生成完整句子
三、从 Zipf 到 Scaling Law 的完整推导¶
3.1 两部分编码(Two-Part Coding)¶
Kolmogorov 结构函数告诉我们,压缩 = 两部分:
\(K(X) \leq K(\mathcal{M}) + L_\mathcal{M}(X) + O(1)\)
-
\(K(\mathcal{M})\):描述模型本身的长度(= 参数量 × 精度)
-
\(L_\mathcal{M}(X)\):用模型编码数据的残余长度(= cross-entropy loss)
训练 LLM 就是在 \(K(\mathcal{M})\)(模型大小)和 \(L_\mathcal{M}(X)\)(loss)之间找最优权衡。模型太小 → loss 高(欠拟合);模型太大 → \(K(\mathcal{M})\) 浪费。
3.2 Data Scaling Law 推导¶
定理 5.2:给定模型 \(\mathcal{M}\) 和 \(N\) 个训练 token,冗余(loss 中可优化的部分)为:
\(\frac{1}{N} \text{Red}_N(\mathcal{M}, \Phi) = \tilde{O}\left(\frac{d_{\text{knw}}}{N^{1-\alpha}} + \frac{n_s d_{\text{syn}}}{N}\right)\)
-
第一项 \(N^{-(1-\alpha)}\):knowledge 学习率。\(\alpha\) 是 PY 过程的幂律指数。\(\alpha\) 越大 → 知识分布越集中 → 学得越快
-
第二项 \(N^{-1}\):syntax 学习率。参数有限,标准 \(O(1/N)\) 率
关键推论:Scaling Law 的指数 \(\beta = 1-\alpha\),直接来自知识的 Zipf 分布指数。自然语言的 \(\alpha \approx 0.05\)-\(0.1\),所以 \(\beta \approx 0.9\)-\(0.95\)... 等等,这和实际观测的 \(\beta \approx 0.05\)-\(0.1\) 不一致? 实际上论文的 \(\alpha\) 定义和 Kaplan/Chinchilla 的不同——这里的 \(\alpha\) 是 PY 过程的 discount 参数(\(\in (0,1)\)),不是 Chinchilla 的 scaling 指数。两者的关系通过 PY 过程的尾部行为连接。
3.3 Model Scaling Law 推导¶
定理 5.6:模型容量为 \(C\)(bits)时的最优冗余:
\(\text{Red}_M(C) = \Theta\left(C^{-1/(\alpha+1)}\right)\)
模型越大(\(C\) 越大)→ loss 幂律下降。指数 = \(-1/(\alpha+1)\),同样由 PY 过程的 \(\alpha\) 决定。
四、知识获取动态:什么先学、什么后学¶
4.1 两阶段学习¶
4.2 频率决定学习顺序¶
高频知识("太阳从东方升起")在早期就被学会;低频知识("铷的原子序数是 37")需要更多数据才能学会。 数学上:知识元素 \(k\) 出现频率 \(p_k \propto k^{-1/\alpha}\)。模型分配给 \(k\) 的"记忆预算" \(m_k^*\) 正比于 \(p_k\)。频率低于阈值的知识 \(m_k^* \to 0\) → 无法学会 → 幻觉。
五、幻觉的信息论解释¶
LLM 的幻觉不是 bug,是信息论的必然结果。
5.1 为什么模型会胡说¶
模型容量 \(C\) 有限。高频知识优先占据容量(因为编码高频知识的 ROI 更高——减少更多 loss/bit)。当容量满了,低频知识被"挤出"。
对被挤出的知识,模型不是输出"不知道",而是用最接近的已有知识模式插值——这就是幻觉。
5.2 实验验证¶
论文用 7.2M 参数模型做了控制实验:
出现频率低于 508 次的知识,无论训练多少 epoch,都会幻觉。增大模型到更大规模 → 阈值降低 → 能学会更低频的知识。 这解释了为什么:
-
更大的模型幻觉更少(容量更大,能装更多低频知识)
-
但永远无法消除幻觉(知识是无限的,模型是有限的)
-
RAG 可以缓解(外挂知识不占模型容量)
六、对实践的启示¶
七、和其他 Scaling Law 论文的关系¶
本文把前人的经验观察提升到了理论推导。Scaling Law 不再是"曲线看起来像幂律所以拟合成幂律",而是"数据中知识的 Zipf 分布必然导致幂律 Scaling"。
八、追问¶
参考¶
-
[1] Pan et al. Understanding LLM Behaviors via Compression. NeurIPS 2025 Spotlight. 论文
-
[2] Kaplan et al. Scaling Laws for Neural Language Models. 2020. 论文
-
[3] Hoffmann et al. Chinchilla. 2022. 论文
-
[4] Pitman & Yor. The Two-Parameter Poisson-Dirichlet Distribution. 1997.
-
[5] Kolmogorov. Three Approaches to the Quantitative Definition of Information. 1965.
原论文关键图表¶
Figure 1: Loss 按知识频率类分解 vs 模型大小。小模型只能学高频知识,大模型逐步覆盖低频知识。理论预测(右)完美匹配实验(左)。

Figure 2: 知识准确率 vs 出现频率。存在一个"频率阈值"——低于此频率的知识必然幻觉。增大模型降低阈值。

Figure 3: (a) Kolmogorov 结构函数示意图:x轴模型容量,y轴 loss,曲线展示最优权衡。(b) Syntax-Knowledge 模型架构。

↑ 上级 · A5.1 压缩即智能:信息论推导