Systematic Generalization in Language Models Scales with Information Entropy¶
会议: ACL 2025
arXiv: 2505.13089
代码: 有
领域: LLM NLP
关键词: 系统泛化, 信息熵, 组合性, SCAN, 分布外泛化
一句话总结¶
证明语言模型的系统泛化能力与训练数据中成分分布的信息熵正相关——高熵训练分布下即使没有内置组合先验的标准 seq2seq 模型也能实现强系统泛化。
研究背景与动机¶
- 领域现状:系统泛化(将已学成分组合到新位置/新组合中)是语言理解的核心能力,但当前模型表现不佳。
- 现有痛点:已有研究关注"模型能否系统泛化"(二元判断),但缺乏对系统泛化问题难度的度量方法。
- 核心矛盾:有人认为必须引入组合先验才能实现系统泛化,但也有研究表明标准模型在某些设置下可以泛化——究竟是架构还是数据决定泛化能力?
- 本文要解决什么? 提供信息论框架度量系统泛化难度,并证明标准模型在高熵条件下可以泛化。
- 切入角度:用训练数据中成分(如动词)在不同句法位置上的分布熵作为泛化难度的度量。
- 核心 idea 一句话:训练数据的分布熵越高,模型的系统泛化能力越强,且独立于训练样本数量。
方法详解¶
整体框架¶
基于修改版 SCAN 语法构建 seq2seq 数据集,控制训练集中动词在嵌入句中的分布熵。限制子 \(v_1\) 不出现在 \(e_1\) 中(训练集),测试时反转分布,观察模型能否将 \(v_1\) 泛化到 \(e_1\) 位置。
关键设计¶
- 系统泛化问题的熵度量:
- 做什么:用 \(e_2\) 中动词分布的信息熵 \(H_{e_2}^{train}(V) = -\sum_{v} p(v) \log_2 p(v)\) 度量泛化难度
-
低熵=动词分布集中,模型难以学到位置无关的动词表示;高熵=均匀出现,更容易泛化
-
两种熵缩放方式:
- 垂直缩放:固定动词种类数,调整概率分布趋向均匀
- 水平缩放:增加新动词类型,保持均匀分布
-
设计动机:分离"分布均匀性"和"词汇多样性"两个影响因素
-
四种模型架构对比:LSTM、Transformer、COGS-Transformer、T5,均为标准架构无组合先验
实验关键数据¶
主实验(泛化精度 vs 熵)¶
| 熵水平 | LSTM | Transformer | T5 |
|---|---|---|---|
| 极低 (0 bit) | ~0% | ~0% | ~0% |
| 低 (1 bit) | ~30% | ~40% | ~45% |
| 中 (2 bits) | ~70% | ~80% | ~85% |
| 高 (≥3 bits) | ~95% | ~98% | ~99% |
消融实验(样本数 vs 熵的解耦)¶
| 配置 | 泛化精度 | 说明 |
|---|---|---|
| 低熵 + 大样本 | 低 | 样本数再多,熵低就不行 |
| 高熵 + 小样本 | 高 | 关键是分布均匀性 |
| 水平 vs 垂直缩放 | 相似曲线 | 两种方式效果等价 |
关键发现¶
- 熵是泛化的核心因素:控制样本数后熵仍是决定性因素
- 不需要组合先验:标准 Transformer 在高熵数据上可达 ~98%
- 低熵泛化仍是开放问题:熵≈0 时所有模型都失败
亮点与洞察¶
- 优雅的理论框架:用信息熵统一度量泛化难度,将哲学问题转化为可量化的信息论问题
- "数据决定泛化"的有力证据:不是模型不能泛化,而是训练数据的分布性质决定泛化能力
- 连接人类语言学习:高熵条件类似人类接触到的多样化语言输入
局限性 / 可改进方向¶
- 仅在 SCAN 变体上验证:合成语法与自然语言有差距
- 仅考虑动词分布的熵:自然语言组合性涉及更多成分
- 未扩展到预训练大模型
- 改进方向:扩展到自然语言数据集;研究预训练数据分布熵与下游泛化的关系
相关工作与启发¶
- vs Lake & Baroni (2018) SCAN:原始 SCAN 显示泛化失败但没考虑训练分布影响;本文证明分布熵是关键
- vs Lake & Baroni (2023):他们通过课程学习提升泛化,本文直接分析分布性质更本质
- vs Dziri et al. (2024):从能力角度分析 LLM 组合缺陷,本文从数据角度提供解释
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 信息熵框架对系统泛化的解释力极强
- 实验充分度: ⭐⭐⭐⭐ 4种模型×两种缩放方式×多熵水平,但限于合成数据
- 写作质量: ⭐⭐⭐⭐⭐ 形式化定义严谨
- 价值: ⭐⭐⭐⭐ 对理解和提升泛化能力有重要理论指导 代码: ltgoslo/systematicity-entropy 领域: llm_nlp 关键词: 系统泛化, 组合泛化, 信息熵, SCAN, 序列到序列
一句话总结¶
本文提出用训练数据中组成部分的信息熵来量化系统泛化难度,实验证明 Transformer/RNN/CNN 等模型在高熵训练数据下即使没有组合先验也能实现 OOD 系统泛化,泛化性能与熵正相关。
背景与动机¶
- 系统泛化是语言能力核心: 人类可以轻松将已知概念重组到新上下文中(如交换主宾语),但神经网络一直难以做到这种组合性泛化,这是 NLP 领域的长期开放问题。
- 连接主义 vs 符号主义之争: Fodor & Pylyshyn (1988) 曾批评连续表示无法支持系统泛化,30 多年后研究者仍在探索神经网络是否能实现鲁棒的组合行为。
- 现有解决方案依赖先验: 先前研究通过在架构中引入组合先验(如 Gordon et al., 2019 的置换等变模型)或特殊训练流程(如 Lake & Baroni, 2023)来改善泛化,但这些方法是任务依赖的。
- 泛化难度缺乏统一度量: 虽然存在 SCAN 等组合泛化基准,但缺少对"系统泛化问题有多难"的量化指标,使得不同实验的可比性差。
- 数据分布角度被忽视: 大多数工作关注架构设计,很少从训练数据的分布属性角度研究泛化能力的边界条件。
- 本文切入点: 作者提出以数据为中心的视角,用训练集中组件部分的信息熵来量化系统泛化难度,探索"无先验条件下神经网络能否泛化"这一基本问题。
方法详解¶
任务设定¶
基于修改版 SCAN 语法构建序列到序列任务:输入 x = (e₁, c, e₂),其中 e₁/e₂ 是嵌入句子,c 是连接词(and/after)。输出 y 是对应的动作序列。词表包含 8 个动词(比原始 SCAN 的 4 个更多)和若干副词修饰语。
系统泛化的熵框架¶
- 训练/测试分布构造: 训练集中,某个动词 v₁ 从不出现在 e₁ 中但出现在 e₂ 中;测试集中 e₁ 仅包含 v₁。这构成 OOD 系统泛化问题。
- 核心度量: 用 e₂ 中动词分布的信息熵 H 来量化泛化难度。H=0(退化分布,最难)到 H=log₂|V|=3(均匀分布,最易)。
- 即使在最大熵下仍是 OOD: 注意即使 H 最大,v₁ 仍然从未在 e₁ 中出现过,因此泛化始终是分布外的。
两种增加熵的方式¶
- 垂直缩放(Distribution Mixing): 固定词表大小,通过混合退化分布 D(仅含 v₁)和均匀分布 U(不含 v₁),用参数 λ 控制混合比例,从而连续调节 H。
- 水平缩放(Incremental Support): 逐步增加 e₂ 中动词支撑集的大小(从 {v₁} 扩展到全部 V),每一步都用均匀分布,H 以对数形式增长。
实验模型¶
- Transformer: 原始编码器-解码器架构,绝对位置编码 + GLU 激活
- RNN: 双向编码器-解码器 + 注意力
- CNN: Gehring et al. (2017) 的编码器-解码器 + 注意力
- 置换等变模型: Gordon et al. (2019),用循环群强制动词等变性(作为 baseline/上界)
实验关键数据¶
实验一:垂直缩放(固定 6000 条训练样本)¶
| 模型 | H≈0 | H≈1 | H≈2 | H≈3 |
|---|---|---|---|---|
| Transformer | ~0% | ~30% | ~98% | ~100% |
| RNN | ~0% | ~10% | ~50% | ~95% |
| CNN | ~0% | ~5% | ~40% | ~90% |
| 等变模型 | ~100% | ~100% | ~100% | ~100% |
关键发现: 三种标准架构的准确率均与 H 正相关,Transformer 在全支撑情况下信息效率最高,H≈2 时已接近 100%。
实验二:水平缩放(训练集大小随支撑集增长)¶
| 模型 | H=0 | H=1 | H=2 | H=3 |
|---|---|---|---|---|
| Transformer | ~0% | ~10% | ~80% | ~100% |
| RNN | ~0% | ~15% | ~85% | ~100% |
| CNN | ~0% | ~20% | ~90% | ~100% |
| 等变模型 | ~100% | ~100% | ~100% | ~100% |
关键发现: 在水平缩放下三个模型性能接近;CNN 平均略优。对 Transformer 而言,支撑集减少比分布偏移更致命。
补充实验¶
- 样本量无关: 在 3000/4000/6000 条训练样本下,Transformer 性能-熵关系一致,说明泛化与熵有关而非数据量。
- 位置编码: 绝对编码优于 RoPE 和 DeBERTa 式相对编码,因为动词位置信息与序列其余部分独立。
亮点¶
- 首次将系统泛化难度与信息熵建立形式化关联,提供了可量化的理论框架
- 证明了标准架构(无先验)在高熵训练数据下确实能实现 OOD 组合泛化,挑战了"必须有组合先验"的传统观点
- 区分了两种不同的熵增方式(垂直/水平),揭示了模型对分布形状 vs 支撑集大小的不同敏感性
- 实验设计精巧:通过控制退化情况(H=0 需 |C|>1)避免了不可解的边界条件
- 泛化能力与模型大小/数据量无关这一发现具有重要理论启示
局限性 / 可改进方向¶
- 仅研究了基于嵌入句子的系统性泛化(Hadley 定义的子集),未覆盖更广义的组合泛化场景
- 依赖合成 SCAN 数据,自然语言中无法精确计算训练数据的组件分布熵
- 词表仅 8 个动词,规模较小;更大词表或更复杂语法下结论是否成立需验证
- 未探索 decoder-only Transformer(如 GPT 类模型),仅用 encoder-decoder 架构
- 低熵下(H≤1)所有标准模型都表现不佳,文章未提出改进方案
与相关工作的对比¶
- vs SCAN (Lake & Baroni, 2018): 在 SCAN 基础上扩展为 8 个动词、去掉 turn 算子、所有样本含嵌入句子
- vs Gordon et al. (2019): 他们的等变模型通过架构先验解决泛化,本文证明高熵数据可部分替代先验
- vs Keysers et al. (2020): 他们用 KL 散度量化训练/测试分布差异,本文关注训练集内部组件分布的熵
- vs Zhou et al. (2023): 他们同时修改组合函数和基元分布来研究复杂性,本文固定组合函数仅变化基元分布
- vs Wiedemer et al. (2023): 他们在图像生成领域关注支撑集一致性,本文进一步证明支撑集不够——熵才是关键度量
评分¶
- 新颖性: ⭐⭐⭐⭐ — 信息熵视角量化系统泛化难度是新颖且有洞察力的贡献
- 实验充分度: ⭐⭐⭐⭐ — 四种模型、两种熵增方式、多个控制实验,设计严谨
- 写作质量: ⭐⭐⭐⭐ — 形式化清晰,图表配合好,但部分符号较重
- 价值: ⭐⭐⭐⭐ — 为组合泛化研究提供了可量化的理论框架和新 baseline