Beyond Multi-Token Prediction: Pretraining LLMs with Future Summaries

Mila / CMU / FAIR-Meta · Mahajan, Goyal, Idrissi, Pezeshki, Mitliagkas, Lopez-Paz, Ahuja · arXiv:2510.14751 (ICLR 2026)
关键词: pretraining objective · multi-token prediction · teacher forcing · reverse LM · representation distillation

速读卡片 (TL;DR)

一句话: 预测具体的远期 token 是错的抽象层级 —— 远期未来该用一个紧凑的summary 向量来监督;FSP 在 NTP 旁挂一个辅助 head,要么去拟合未来窗口的 bag-of-words(FSP-BoW),要么去 distill 一个反向语言模型(RevLM, 右到左训)的隐藏状态(FSP-RevLM)。

+4.2
MATH (8B, vs MTP)
+5.0
ARC-Easy (8B, vs NTP)
1 head
vs MTP 的 N 个 head

立场: 这是一篇 objective design 的论文,不是新架构。核心贡献是把"未来"从 token 列表抽象成可学习的向量,从而绕开 MTP 加 head 不可扩展的瓶颈。RevLM 翻倍了 pretraining FLOPs,但作者赌的是"compute 多 / data 少"这个时代;summary 是 train-time only,推理时 head 直接丢掉。


1. 动机:为什么 MTP 不够,且 token 不是对的目标

1.1 历史脉络:从 NTP 的 exposure bias 到 MTP 的短视

整个故事的起点是teacher forcing 这个老问题。NTP 训练时永远喂 ground-truth 前缀去预测 xt+1;推理时模型却只能基于自己 sample 出的 token 继续走。这个 train-inference mismatch(Bengio 2015 起就在讲)在长输出场景里会复合:错误一旦累积,模型就 drift 出训练分布。

更阴险的是 Bachmann & Nagarajan 2024 指出的 "Clever Hans cheat":就算训练时不 drift,teacher forcing 也会让模型走捷径 —— 直接从 prefix 里某个局部线索抄答案,绕过它本应学的长程结构。结果是梯度饥饿(gradient starvation):该被训出来的 long-horizon plan 因为 loss 已经被简单捷径吃饱,就再也得不到信号了。

Gloeckle 等人的 MTP (2024) 是对此的第一记重击:在 backbone 顶上挂 k 个辅助 head,每个 head 单独负责预测 xt+2, xt+3, …, xt+k。这等价于"减弱 teacher forcing":要预测 xt+3 但只给到 x≤t,模型必须把 xt+1, xt+2, xt+3边际都隐式建出来。DeepSeek-V3、Qwen-3、MiMo、Nemotron-3 都已经在用 MTP 变体了 —— 它确实 work。

1.2 别的方案为什么不够 —— "exact token" 不是对的抽象

但 MTP 有两个根本性的限制,这正是 FSP 要打的靶子:

方案怎么减弱 teacher forcing瓶颈
NTP不减弱shortcut + exposure bias
MTP (Gloeckle)每个 future token 一个 headhead 数 ∝ 视野;实际只能 k=2~4
DS-MTPhead 之间递归喂中间表示同上,head 数仍受限
L-MTP / MuToR跳跃 / 随机偏移采样未来 token启发式抽样,可能漏掉关键信号
Joint-token / Next-Latent联合分布 / 表示空间对齐仍是 token 粒度,head 无法长程
FSP (本文)1 个 head 预测整段未来的 summary怎么定义 summary 是新问题

关键 insight:具体哪个 token 在哪个位置出现 —— 这件事在 100 个 token 之外 本质上是不可预测的(natural language 的天花板就是 entropy 噪声)。把 cross-entropy 算在它们头上,要么把模型逼疯,要么模型干脆放弃学习,只优化前几位的边际分布。这就是 paper 反复强调的"不是所有未来 token 都同等重要"。

而 summary —— 比如"未来这一段大概会出现哪些 vocabulary 项"或"未来这一段对应一个怎样的语义状态" —— 反而是可学的、可压缩的、对当前预测有用的

1.3 为什么这事不平凡 —— 怎么定义和算这个 summary?

三个非平凡的地方:

Reverse 不是 reverse Curse 那个 reverse。 RevLM 的目的不是修"A is B → B is A",而是把"未来 → 现在" 的依赖打包成一个向量。它训完只用 hidden state,不当生成模型用。

2. 背景速查

缩写 / 术语含义
NTPNext-Token Prediction,标准 LM loss
MTPMulti-Token Prediction (Gloeckle 2024),N 个 head 同时预测 t+1..t+N
DS-MTPDeepSeek 变体,head 递归依赖 + 接收 ground-truth 中间 token
teacher forcing训练时喂 ground-truth 前缀给模型;严格定义"模型每接收 1 个 GT token 要预测多少 unseen 的信息"
FSP本文提出的 Future Summary Prediction,1 个 head 预测一个 future summary 向量
FSP-BoWsummary = future window 的 multi-hot bag-of-words(可加 tf-idf 权重)
FSP-RevLMsummary = 反向 LM 在对应位置的 hidden state(ℓ2 distill)
RevLMReverse LM,在右到左序列上训的一个 standard transformer LM
τ未来窗口长度(BoW 收集 xt+2..xt+τ;RevLM 用全部 x≥t+2)
path-star / sibling discovery两个 synthetic 任务,分别测 long-horizon plan 与 adaptive future
NTP / MTP 公式刷新
𝓛NTP = −Σt log Pθ(xt+1 | x≤t)
𝓛MTP = −Σt Σk=1..τ log Pθ(xt+k | x≤t)

注意 MTP 是 marginal 假设(各 head 条件独立),近似真正的联合分布 P(xt+1..t+τ|x≤t)

3. FSP 框架:统一所有 future-aware 目标

FSP 的 loss 形式特别干净:

𝓛FSP = 𝓛NTP + 𝔼[ ℓa( Aφ(x≤t), a(t, τ) ) ]

其中:

整个 FSP 设计的优雅之处在于:无论 summary 选什么,辅助 head 永远只有一个。这跟 MTP "每加一个未来位置就加一个 head" 是结构上的本质区别。

Transformerbackbone f_s x_≤t main head f_h softmax → x_{t+1} aux head f_ha' predict a(t,τ) BoW / RevLM hidden target a(t,τ) (BCE 或 ℓ2 比对) FSP 架构:1 个 backbone + 2 个 head(主+aux)
FSP 架构。Backbone 共享;主 head 走 NTP,aux head 走 summary。推理时 aux head 直接丢掉。这跟 MTP 的"k 个 head 平行打"形成强烈对比 —— 后者 head 数受限于实际可承担的参数预算。
NTP / MTP / FSP 的目标空间对比 NTP x_{t+1} — 1 个具体 token MTP x_{t+1} x_{t+2} x_{t+3} x_{t+4} — k 个具体 token,k 个 head(短视野) FSP-BoW x_{t+1} multi-hot ∈ {0,1}^V (可加 tf-idf) — 1 个 V 维向量,丢位置 FSP-RevLM x_{t+1} RevLM hidden ∈ ℝ^d (语义) — 1 个 d 维向量,自适应
四种目标的"形状"差异。NTP 是一个分类 logit;MTP 是 k 个分类 logit;BoW 是 V 维 multi-hot 上做 BCE;RevLM 是 d 维实值上做 ℓ2 distill。target 越靠下,信息越压缩、越偏语义、对位置越无感。

4. FSP-BoW: hand-crafted summary

FSP-BoW 是最简单的实现:在位置 t,统计未来窗口 {xt+2, …, xt+τ} 中出现的所有 token id,做成一个 V 维 multi-hot 向量。aux head 输出 V 维 logits,跟它做 reweighted BCE:

a = −Σi=1..V w(i) [ ai log σ(zi) + (1−ai) log(1−σ(zi)) ]

权重 w(i)tf-idf:罕见的内容词权重大,常见的虚词权重小 —— 不然 "the / , / 's" 这种 token 把 BCE 的信号埋了。

Worked example:τ = 12 的某段代码

假设当前位置 t,未来 12 个 token 是:

x_{t+2..t+13} = ["def", " sum", "(", "a", ",", " b", ")", ":", " return", " a", " +", " b"]

BoW 向量 a ∈ {0,1}V:在 vocab id 对应这 12 个 unique token 的位置上是 1,其余是 0(注意 a, b 各只出现 2 次,但 multi-hot 不计数,只标 0/1)。tf-idf 后,def, return, + 这种"语义重"的 token 拿大权重,(, ,, :拿小权重。

aux head 看到 x≤t 输出 V 维 logit,要在所有这 ~9 个位置上 sigmoid 接近 1、其余位置 sigmoid 接近 0。

反向论证:为什么不直接预测排序的 token 序列?

因为位置在远期是不可预测的 —— 同样语义的代码可以是 def add(x,y): return x+y,排序错了 cross-entropy 直接爆炸。BoW 把位置抽掉,只保留"集合",这才让远期 supervision 变 trainable。τ 可以拉到 100(table 3),信号还在。

5. FSP-RevLM: learned summary via reverse LM

RevLM 是个独立训练的 transformer LM,但它喂的是 右到左 的序列。也就是说它在学:

Qψ(xt+1 | x≥t+2) ← 给定后缀,预测它前面那个 token

训完之后,RevLM 在位置 t+2 输出的 hidden state gh ∘ gs(x≥t+2) 自然就编码了"从 t+2 到结束这一整段后缀的语义压缩"。这就是 forward model 的 aux head 要拟合的目标:

a = ‖ Aφ(x≤t) − gh∘gs(x≥t+2) ‖22

注意它做的是 representation distillation —— 老师不是另一个 forward LM,而是结构对偶的 reverse LM。这跟 next-latent prediction (Teoh 2025) 有相似 flavor,但 next-latent 拿的是 forward 自己的未来 hidden state(self-distillation),FSP-RevLM 拿的是显式的 right-to-left teacher。

FSP-RevLM 训练 pipeline Forward LM x_1 x_2 x_t x_{t+1} x_{t+2} x_T prefix x_≤t A_φ(x_≤t) ∈ ℝ^d ℓ2 distill g_h∘g_s(x_≥t+2) ∈ ℝ^d Reverse LM (右到左) x_T x_{t+2} x_{t+3} suffix x_≥t+2 (反序训) 关键:RevLM 与 forward 同尺寸、同步数训。它的 hidden state 提供 supervision,推理时不参与。
FSP-RevLM 的核心 pipeline。RevLM 在反向序列上独立预训练得到 hidden state,作为 forward model aux head 的拟合目标。这是一个 representation distillation,不是 logit distillation。

Worked example:跟踪一个具体位置

令一段序列长 T = 8192,选 t = 3000:

反向论证:为什么 reverse 训而不是 forward 自蒸馏?

如果用 forward 自己生成 target(像 next-latent prediction),target 还是带着 NTP 的 teacher-forcing 偏差;它习得的"未来"是被 ground-truth 引导出来的,可能仍然是 shortcut。RevLM 反向训完全独立 —— 它在 t+2 位置的 hidden state 已经"看过"完整 suffix,encode 的是真实 suffix 的语义,不带 forward 方向的捷径。

6. 同一位置,四种目标 worked example

把同一句拿出来对比,最能看清四种 objective 的差异。

假设序列是 (Python 注释):

# compute the sum of the list and return it
def total(lst): return sum(lst)

取 t 在 def total(lst): 的冒号位置(即 xt = :)。

方法targetaux head 数loss
NTPxt+1 = " return"0CE on V
MTP (k=4)xt+1..t+4 = " return", " sum", "(", "lst"44× CE on V
FSP-BoW (τ=12)multi-hot 集合 {return, sum, (, lst, )}(忽略位置)1BCE on V
FSP-RevLMRevLM 在位置 t+2 的 hidden state ∈ ℝ4096,大约编码"这段是个返回 lst 求和的函数体"1ℓ2 on ℝd

注意从上到下,target 越来越脱离"具体哪个 token 出现在哪",越来越靠近"这一段的语义角色"。FSP-RevLM 那一行的 target 描述本身就有信息论意义:它压缩了 dim < V × τ 的 token 序列到 d=4096 维。

7. 合成实验:验证两个 thesis

7.1 Path-Star Graph: 长视野 summary 重要

任务:输入是个 DAG 的邻接表 + start 节点 + end 节点;模型生成从 start 到 end 的完整路径。Bachmann & Nagarajan 的经典发现:NTP 学不会全程 plan,只学到"看 prefix 里 vi 的下一跳"的捷径。

Path-star 上的准确率(degree=2,seeds=5) NTP .45 MTP .66 MTP+2 head .89 MTP+3 head .98 FSP-BoW 1.00 G(2,6) G(2,8) MTP-4head: .48 ; FSP-BoW: 1.00
MTP 加 head 在 G(2,6) 还能撑;G(2,8) 即使 4 个 head 也卡死在 .48。FSP-BoW 把整段 path 的 BoW 当 supervision,直接 1.00。这就是"长视野 summary"压倒"加 head"的最直观证据。

7.2 Sibling Discovery: adaptive summary 重要

任务被改造成:序列由多个独立 component 拼接,每个 component 是 [S1i, S2i, S3i, Pi]。给定当前 component 的部分 prefix,模型要预测同 component 的 sibling —— 但未来里有大段无关 component 的 token

结果(收敛速度,越低越快):

这是 "adaptive vs static summary" 的 cleanest 实验。

8. 真实 pretraining 结果

8.1 8B / 1T tokens 主表

TaskNTPMTPDS-MTPFSP-RevLM
ARC-Easy0.7180.7360.6170.766
ARC-Challenge0.5310.5520.4260.559
GSM8K0.7160.6780.7040.705
MATH0.3420.3090.3350.351
MBPP0.6570.6720.6780.683
HumanEval+0.4780.5410.5260.541

解读:

8.2 future summary 的形式 ablation (8B, table 3)

MethodMATHGSM8KARC-Easy
MTP (baseline)0.3090.6780.736
MTP-Skip τ=4 (random sampling)0.2770.6390.722
MTP-Skip τ=320.2710.5980.564
FSP-BoW τ=120.3310.6990.737
FSP-BoW τ=1000.3310.7140.662
FSP-RevLM0.3510.7050.766

解读:

8.3 Pass@K diversity

论文的一个迷人副产物:在 GSM8K / MATH 上,FSP-RevLM 的 pass@K 曲线随 K 上升幅度比 MTP 更陡 —— 也就是说 base model 的解的多样性更高。

Pass@K 曲线示意 (MATH) K=1 4 8 16 .10 .25 .40 MTP FSP-RevLM
FSP-RevLM 的 pass@16 显著高于 pass@1,说明 base model 的解空间更广。论文据此推测 RL post-training 可以从 FSP base 上拿到更高的天花板(Yue 2025 显示 RL 提升上限被 base coverage 框死)。

8.4 数据受限场景:FSP 优势放大

同 1T compute,但只用 50B unique tokens × 20 epochs。

9. 与同类工作对比

方法未来 supervision 形式aux head 数关键差异
MTP (Gloeckle 2024) [note]k 个固定偏移 tokenkFSP 的起点,但短视野
DS-MTP (DeepSeek-V3)k 个 token + 中间 GT 反馈khead 递归依赖,在 8B 上反而崩
L-MTP (Liu 2025)跳跃式非相邻 future tokenk启发式抽样,FSP 表 3 的 MTP-Skip 已证明这条路次于 BoW
MuToR (Gerontopoulos 2025)register tokens 预测随机偏移 token无新 head(用 register)同上,heuristic 抽样
TRELAWNEY (Thankaraj 2025)训练数据里插入 future window 块无新 head用数据增强代替 head;仍是 token 粒度
NCP / Next-latent (Teoh 2025) [NCP note]forward 自己未来位置的 hidden state1self-distill;FSP 用 reverse teacher 而非 forward
SemFormer (Yin 2024)planning token 预测 future autoencoder embedding1 个,但仅在 planning 位位置稀疏 + 用 autoencoder(L-to-R)而非 reverse LM
BST (Hu 2024) / Twin Networks (Serdyuk 2017)对齐 forward/reverse hidden stateFSP 是 distill,不是 weight-sharing 或 dual encoder
Meet-in-the-Middle (Nguyen 2023)forward/reverse 输出分布对齐需要两个分布严格匹配;FSP 不要求
ProphetNet (Qi 2020)n-gram via shared self-attn仍逐 token 监督 + 保留位置
FSP (本文)1 个 vector summary(BoW 或 RevLM hidden)1统一框架,可换 summary 形式;long horizon + adaptive
跟 NCP 的关系特别值得说:NCP/Next-latent prediction 也是把 token target 换成 hidden representation,但它的 teacher 是 forward 自己 —— 等于让模型对齐自己未来的 hidden state。这种 self-distill 仍然带 forward direction 的 teacher-forcing 偏差。FSP-RevLM 的 reverse teacher 在结构上摆脱了这种偏差,这是论文最强的结构性论点之一。

10. 局限 / 个人 take / 待验证问题

follow-up 实验清单

  1. 用 forward 1/4 size 的 RevLM 重做 FSP-RevLM,看 8B 上能保留多少 gain。
  2. 对 RevLM hidden state 做 linear probe:能预测多少 future bag-of-words / future entity?
  3. RL on FSP-base vs RL on NTP-base,直接对比 post-training 上限。
  4. 把 BoW 替换成 contrastive learning 的 future embedding,看是否能拿到 BoW 的鲁棒性 + RevLM 的 adaptive。
  5. 组合 FSP + DS-MTP 的"slight teacher forcing":aux head 既看中间 GT 又预测 summary。
  6. 在 long-context (32K+) 上的表现 —— RevLM 的优势在长依赖上应该更明显。

11. Memory points

立场正确的未来 supervision 是 summary 而不是 token。预测 token 在远期是噪声(位置不可预测),summary(BoW 或 hidden state)绕开这点。
架构FSP = 1 个 backbone + 1 个 main head (NTP) + 1 个 aux head (summary)。永远 1 个 aux head,不管未来窗口多长。
两种 summaryBoW = multi-hot ∈ {0,1}V + tf-idf reweighted BCE;RevLM = 反向 LM hidden state ∈ ℝd + ℓ2 distill。
RevLM反向 LM 跟 forward 同尺寸同步数训,推理时丢掉。代价 ≈ 2× pretraining FLOPs。
两个 thesis(1) 长视野 summary 重要 → path-star 上 BoW 1.00 vs MTP-4head 0.48;(2) adaptive summary 重要 → sibling discovery 上 BoW 在 components>6 时失败,RevLM 全程胜。
8B 主结果FSP-RevLM 在 ARC-Easy +5pp / MATH +0.9pp / MBPP +2.6pp 优于 NTP,4/6 任务最强。GSM8K 唯一略输 NTP。
反例 1"随机偏移采样未来 token" (MTP-Skip / MuToR / L-MTP 这条路)在 8B 实验里全线劣于 vanilla MTP,τ 越大越差。
反例 2DS-MTP 在 8B / 1T 上 ARC-Easy 崩到 0.617 (比 NTP 差 10pp),论文没解释,但说明 DS-MTP 的 GT 中间反馈在大模型上可能反作用。
scalingFSP-RevLM 优势 3B → 8B 在变大;3B 上 DS-MTP 还更强。FSP 是吃 scale 的方法。
data-constrained50B unique × 20 epochs 时,所有 future-aware 全 > NTP —— NTP 在重复数据上 overfit 最快。
diversityFSP-RevLM 的 pass@K 曲线更陡 → base model 解空间更广 → RL post-training 上限更高(未直接验证)。
实现要点aux head 仅 train-time;推理走纯 NTP head。BoW 用 tf-idf,τ ∈ {12, 100};RevLM 用 last layer 的 hidden state。