2211.17192-fast-inference-transformers-speculative-decoding
Fast Inference from Transformers via Speculative Decoding
这篇论文把 speculative execution 推到随机采样场景:小 draft model 先自回归生成一批候选 token,大 target model 一次并行验证这些前缀,并用截断到一的 target-to-draft 概率比决定接受位置,再由 residual distribution 校正拒绝位置,从而在无需改模型、无需重训且保持 target 输出分布不变的前提下,把大模型串行 decode 的目标调用数降低到每步平均生成多个 token。
Source
- Title: Fast Inference from Transformers via Speculative Decoding
- arXiv: https://arxiv.org/abs/2211.17192
- ar5iv HTML: https://ar5iv.labs.arxiv.org/html/2211.17192
- PDF: https://arxiv.org/pdf/2211.17192
- TeX Source: https://arxiv.org/e-print/2211.17192
- PMLR: https://proceedings.mlr.press/v202/leviathan23a.html
- OpenReview / Review page: https://openreview.net/forum?id=C9NEblP8vS
- Authors: Yaniv Leviathan, Matan Kalman, Yossi Matias
- Submitted: 2022-11-30; current arXiv version v2, last revised 2023-05-18
- Venue: ICML 2023 Oral / Poster; PMLR 202:19274-19286, 2023
- Subjects: Machine Learning (cs.LG), Computation and Language (cs.CL)
- Institution: Google Research, Mountain View, CA, USA
作者与关系
- Yaniv Leviathan: Google Research.
- Matan Kalman: Google Research.
- Yossi Matias: Google Research.
阅读目标与判断边界
本笔记关注:
- speculative sampling 为什么能保持输出分布严格等于 target model。
- 接受率为什么等于
。 - speedup 的必要条件、成本模型和实验设置。
- 它与后续 MTP、Bebop TV loss、GLM-5.2 / Seer rollout acceleration 的关系。
判断边界:
- 论文证明的是 lossless stochastic sampling 的算法正确性;实际系统是否完全一致还取决于 logits 标准化、数值精度、sampler 实现和 batch/kernel determinism。
- walltime 实现只在 T5-XXL / T5X 上报告,batch size 为 1,硬件为单 TPU-v4;GPT-like 和 LaMDA 主要报告
,没有完整 walltime benchmark。 - 论文面向 off-the-shelf approximation model;后续 draft model 训练、EAGLE/Medusa/MTP heads、tree verification 和 RL rollout 场景属于后续发展。
论文脉络
1. 研究问题、背景和价值
自回归 Transformer 生成
作者抓住两个观察。第一,生成中的不同 token 难度不同,很多 token 可以被更小模型预测到。第二,大模型 decode 在许多部署中受 memory bandwidth / communication 限制,设备上仍有额外算力可用。于是可以用额外并行算力换串行步数:小模型先猜,大模型一次验证多个前缀。
2. 已有解决方案与不足
Blockwise Parallel Decoding 已经有“一次预测多个 token,再由 base model 验证最长前缀”的结构,但主要适用于 greedy decoding,且需要额外训练自定义 heads,目标是保持任务质量。Shallow Aggressive Decoding 也用类似 draft-verify 思路,但适合输入输出高度相似的任务,如 grammatical error correction。
这篇论文补齐的关键是 stochastic sampling。它把 temperature、top-k、nucleus、argmax 等都抽象成对 logits 处理后的标准分布采样,然后在任意
3. 作者可能的思考路径
作者的思路可以重建为:
- 大模型每步都串行运行,低难 token 上存在明显浪费。
- 小模型可以给出便宜候选,但直接采用会改变分布。
- 若 target model 能并行评估 draft prefix,则一次 target call 可以给出多个位置的
。 - 问题收敛为:给定 target distribution
与 draft distribution ,如何尽可能多接受来自 的样本,同时保证最后输出等价于从 采样。 - 使用 maximal coupling / residual correction 的思路:重叠部分
直接接受,draft 多出的部分用拒绝概率移除,target 剩余质量 由 residual distribution 补采。 - 接受率自然等于分布重叠质量
,也就是 。这成为后续 draft model 训练目标讨论的理论入口。
4. 核心假设或切入点
- target model 可以在一次并行调用中计算
的 next-token distribution。 - approximation model
的单步成本 远低于 target model ,且系统有足够并发资源让 个 target positions 并行执行。 - 采样方式先被标准化为分布
和 ;exactness 针对标准化后的分布成立。
5. 方法 / 系统 / 理论框架
5.1 单 token speculative sampling
目标是从 target distribution
拒绝该 token。等价地,接受概率是:
拒绝后,从 residual distribution 重新采样:
5.2 多 token speculative decoding step
Algorithm 1 的流程是:
| Step | 计算 | 作用 |
|---|---|---|
| Draft | 便宜地产生候选前缀 | |
| Verify | 一次 target call 验证所有候选位置,并准备 bonus token | |
| Accept prefix | 对每个 |
接受最长连续前缀 |
| Correct / bonus | 若 |
拒绝时校正第一个失败位置;全接受时多生成一个 target token |
每次调用至少返回 1 个 token,最多返回
5.3 正确性证明
令
拒绝后的 residual distribution 为:
于是最终输出某个 token
所以无论
5.4 接受率与 TV distance
论文定义:
这就是常用的 total variation distance。由
可得单步接受率:
后续 Bebop / LK losses / TV loss 之所以把 draft training 目标转向 overlap 或 TV,基础关系就在这里。
5.5 期望生成 token 数与 speedup
若简化假设每步 acceptance rate i.i.d.,且
令
若
这说明 speculative decoding 的核心系统条件是:draft 足够便宜,且 draft-target overlap 足够高。
5.6 算术量与 memory access
论文明确区分 latency 和 total arithmetic operations。Algorithm 1 会并行跑
但 target 权重和 KV cache 可以在一次并行 verification 中读取,memory access 可按平均输出 token 数降低。这解释了为什么该方法适合 memory bandwidth / communication bound 的推理系统。
6. 结论链条
- 自回归 decode 的串行 target call 是大模型 inference 主要瓶颈。
- 小模型或简单 heuristic 可以便宜地产生多个候选 token。
- 通过 speculative sampling,可以在任意
下保持最终输出分布等于 。 - 接受率等于
,因此 draft-target overlap 直接决定平均接受长度。 - 若
足够便宜,且系统有额外并发,减少 target 串行调用数能转化为 walltime speedup。 - T5-XXL 实测在单 TPU-v4、batch size 1 上获得 2.3x-3.4x speedup;GPT-like、T5、LaMDA 的
测量显示不同规模 draft 都能产生可用 overlap。
关键实验/定理
结果 1:speculative sampling 的 exactness
- 设置:任意离散分布
与 ,从 先采样,按 接受,拒绝后从 residual distribution 采样。 - Baseline:直接从
采样。 - 指标:最终 token 分布。
- 结果:最终输出概率为
。 - 解读:这是 lossless speculative decoding 的核心保证;draft model 质量只影响效率。
结果 2:接受率等于
- 设置:单步 speculative sampling。
- Baseline:常规 target sampling 无 draft;常规 rejection sampling 作为 appendix 对照。
- 指标:接受概率
。 - 结果:
- 解读:论文中的
等价于 TV distance。后续 TV loss 直接优化 acceptance 的理论来源就是这条式子。
结果 3:T5-XXL walltime speedup
- 设置:T5-XXL 11B 为 target;T5-small 77M、T5-base 250M、T5-large 800M 为 approximation model;任务为 WMT EnDe 与 CNN/DailyMail;batch size 1;single TPU-v4;同时测试 argmax sampling (
temp=0) 与 standard sampling (temp=1);使用现有 checkpoints;baseline 为 T5X 标准实现。 - Baseline:T5X autoregressive decoding。
- 指标:
、 、walltime speedup。 - 结果:
| Task | Draft |
Temp | Speed | ||
|---|---|---|---|---|---|
| EnDe | T5-small | 0 | 7 | 0.75 | 3.4x |
| EnDe | T5-base | 0 | 7 | 0.80 | 2.8x |
| EnDe | T5-large | 0 | 7 | 0.82 | 1.7x |
| EnDe | T5-small | 1 | 7 | 0.62 | 2.6x |
| EnDe | T5-base | 1 | 5 | 0.68 | 2.4x |
| EnDe | T5-large | 1 | 3 | 0.71 | 1.4x |
| CNNDM | T5-small | 0 | 5 | 0.65 | 3.1x |
| CNNDM | T5-base | 0 | 5 | 0.73 | 3.0x |
| CNNDM | T5-large | 0 | 3 | 0.74 | 2.2x |
| CNNDM | T5-small | 1 | 5 | 0.53 | 2.3x |
| CNNDM | T5-base | 1 | 3 | 0.55 | 2.2x |
| CNNDM | T5-large | 1 | 3 | 0.56 | 1.7x |
- 解读:T5-small 通常速度最高,因为它在
与 draft cost 之间取得较好平衡。draft 更大时 上升,但 也上升,最终 speedup 可能下降。
结果 4:跨模型 测量
- 设置:对 GPT-like 97M / T5-XXL 11B / LaMDA 137B 的不同 draft model 测量
;每个 setting 使用 target 生成的 10K tokens 估计。 - Baseline:unigram / bigram trivial model;小 Transformer / T5 / LaMDA draft。
- 指标:
。 - 结果摘录:
| Target | Draft | Sampling | |
|---|---|---|---|
| GPT-like 97M | GPT-like 6M | t=0 | 0.88 |
| GPT-like 97M | GPT-like 6M | t=1 | 0.89 |
| T5-XXL EnDe | Bigram | t=0 | 0.20 |
| T5-XXL EnDe | T5-small | t=1 | 0.62 |
| T5-XXL CNNDM | T5-small | t=1 | 0.53 |
| LaMDA 137B | LaMDA 100M | t=1 | 0.57 |
| LaMDA 137B | LaMDA 2B | t=1 | 0.71 |
| LaMDA 137B | LaMDA 8B | t=1 | 0.74 |
- 解读:小两到三个数量级的 draft model 仍可得到 0.5-0.9 的 overlap。简单 bigram 在 EnDe 上
,若 且 ,也能带来约 1.25x 的理论 speedup。
实验设置与 baseline 审计
| 维度 | 记录 |
|---|---|
| 模型与初始化 | Target: T5-XXL 11B, GPT-like 97M, LaMDA 137B;draft: T5-small 77M, T5-base 250M, T5-large 800M, GPT-like 6M, LaMDA 100M/2B/8B, unigram/bigram。均使用现有 checkpoints 或简单统计模型。 |
| 数据与任务 | T5: WMT EnDe translation, CNN/DailyMail summarization;GPT-like: lm1b unconditional generation, BERT tokenizer 8K tokens;LaMDA: dialog task。 |
| RL / 训练配置 | 不涉及 RL;无 draft training。 |
| 系统配置 | T5 walltime: batch size 1, single TPU-v4, T5X baseline。GPT-like/LaMDA 只报告 |
| 技术报告训练配置 | 非模型训练报告;无 pretraining / finetuning 细节。 |
| 训练硬件与拓扑 | 不涉及训练;推理硬件只披露 T5 walltime 使用 single TPU-v4。 |
| 并行方式与框架 | Target positions 在一次 |
| 训练数据规模与组成 | 不涉及新训练;使用 T5 v1.1、lm1b、LaMDA 现有模型。 |
| 训练过程与超参 | 不涉及。 |
| 训练时间 / GPU hours / 成本 | 不涉及;推理 walltime 只报告相对 speedup。 |
| 未披露项 | 具体 TPU profiler traces、完整 latency 数值、batch>1 行为、服务端 continuous batching 行为、数值一致性细节。 |
| 评测协议 | T5 walltime 对比 T5X; |
| 统计报告 | 未报告多 seed、置信区间或误差线。 |
| Baseline 是否 tuned | T5X 是强工程 baseline;不同 |
| Baseline 是否 compute-matched | 以 walltime 为主,speculative decoding 使用额外并发算力,total arithmetic operations 可能上升;论文明确讨论这一 tradeoff。 |
| Baseline 是否 implementation-matched | 同一 T5X 生态,但作者实现与 baseline 存在优化差异,appendix 承认理论与实测差异来自实现和 i.i.d. 假设。 |
| Baseline 是否覆盖强替代方案 | 覆盖 Blockwise Parallel Decoding / SAD 相关讨论;没有覆盖后续 EAGLE/Medusa/SpecInfer,因为这些工作在论文之后。 |
| Baseline 是否存在弱化风险 | batch size 1 和 single TPU-v4 限制了对生产 serving 的外推;T5-only walltime 使 GPT/LaMDA 系统收益仍属间接推断。 |
| 结论边界 | “不改输出分布”有理论强保证;“2x-3x walltime speedup”主要对论文中的 T5X / TPU setting 成立。 |
证据链强度评估
强证据
- 单步 speculative sampling 的 correctness proof 非常直接,输出分布严格还原到
。 - 接受率等于
,推导清晰,后续大量工作沿用这一关系。 - T5-XXL 实验包含真实 walltime 对比,并给出
的理论/实测对照。
中等强度证据
- “两数量级更小 draft 通常效果最好”由 GPT-like、T5、LaMDA 的
与 T5 walltime 支撑,证据范围仍属于有限架构覆盖。 - n-gram / copy heuristic 可作为 negligible-cost draft 的想法有实验线索,但论文只给出有限示例。
- 可变
/ oracle 可进一步提升最多约 60% 的分析是理论上界,未实作。
需要谨慎的推论
- batch size 1 的单 TPU-v4 结果不能直接代表现代高吞吐 serving。continuous batching、prefix cache、tree attention、paged KV、heterogeneous vocab、logprob kernel 和 scheduler 会改变成本模型。
- i.i.d.
假设只是简化;真实 acceptance 和位置、上下文难度、采样温度、domain、draft 自身 exposure bias 都有关。 - total arithmetic operations 增加在 compute-bound 场景会抵消 latency 收益。
- exactness 依赖相同 sampling standardization。若 target 和 draft 的 temperature/top-k/top-p/grammar mask 或 tokenization 不一致,需要额外校正。
OpenReview / 审稿意见吸收
- Venue status: ICML 2023 OralPoster;OpenReview page 显示 Published 2023-04-24, Last Modified 2023-06-15。
- Public reviews: OpenReview API
notes?forum=C9NEblP8vS&details=replyCount,directReplies,replies返回replyCount: 0,没有公开 official reviews / rebuttal / meta-review。 - Ratings / confidence: 未公开。
- Reviewer consensus: 未公开;论文致谢中感谢 reviewers,但没有可归档的具体意见。
- Main criticisms: 未公开。
- Author response: 未公开。
- 对本文可信度的影响: 录用状态和 Oral 标记提高论文影响力与社区认可度;缺少公开 review 使 baseline、公平性和 presentation 质疑无法进一步校准。
本地讨论补充
1. 讨论收敛点
- stochastic speculative decoding 中 target 并不先采一个“标准答案 token”再与 draft 比较。target 计算完整分布
,draft token 以 概率被接受。 - “严格等于下一个 token 才认可”对应 greedy / temperature=0 场景的退化理解;标准随机 sampling 语境中是概率接受。
- TV loss 的后续动机来自本文:如果 rejection sampling 的接受率就是
,则直接优化 TV overlap 会比只优化 CE/KL 更贴近 acceptance 目标。
2. 修正后的理解
- 论文中的
可以视作 total variation distance: 。 - 后续 Bebop 使用 TV loss 训练 MTP heads,解决的是 draft training objective 与 rejection sampling acceptance 的对齐问题;这篇论文本身不训练 draft,也不提出 TV loss。
- target-only / exact-match 式 speculative decoding 和 probabilistic rejection sampling 要分开讨论;前者更接近 greedy verifier,后者保持完整 sampling distribution exactness。
3. 后续复验指标
- 每个 task / temperature / position 的
分布,而非只看平均 。 - walltime speedup、target serial calls、draft cost
、total arithmetic operations、memory bandwidth、KV cache read/write。 - batch size、continuous batching、paged KV、prefix cache、tree verification 下的有效
与 acceptance length。 - sampler consistency:target/draft logits preprocessing、temperature/top-p/top-k/grammar mask、tokenization、randomness 和 floating-point path。
主要启发
- 解码加速可以通过减少串行 target calls 实现,额外并发算力和更高算术量可以换取更低 latency。
- draft model 的评价指标应包含 acceptance overlap。单纯 perplexity 或 CE/KL 只间接反映 speculative decoding speedup。
- 保证输出分布不变需要 residual correction;只看“draft 与 target 是否一致”的解释会漏掉随机采样中的概率接受机制。
- 对 RL rollout acceleration 来说,MTP / speculative decoding 的收益需要同时记录 entropy、TV overlap、draft cost、verification rule 和系统调度。
局限
- T5 walltime 实验规模有限:batch size 1、single TPU-v4、T5X;没有覆盖现代 GPU serving、continuous batching 和多用户 workload。
- GPT-like 与 LaMDA 部分主要报告
,没有完整端到端 latency benchmark。 - 算法降低串行步数,但会增加并发算术量;compute-bound 或缺少 spare compute 的场景收益有限。
- beam search 只在 appendix 中给出可能方案,性能和正确性细节未充分展开。
- lenience 能提高接受率,但会改变输出分布;本文主要结论依赖 lenience disabled 的 strict mode。
- 没有公开 official reviews,无法吸收 reviewer 对 baseline、实现和泛化边界的具体质疑。
跨论文关系
- 与 2607.03333 SPORK:本文的 draft proposal 与 target verification 作用于 token decode;SPORK 的 D3 复用同一验证路径接受 rejected tool-call probe 的最长匹配前缀,D1/D2 再把 speculation 扩展到工具 Action 与外部执行时间尺度。
- 与 2606.12370 Bebop:本文给出
与 residual correction;Bebop 在 MTP + RL rollout 场景中把这个关系转化为 rejection sampling verification 和 e2e TV loss 训练目标。 - 与 2026-06-16 GLM-5.2:GLM-5.2 的 MTP IndexShare/KVShare + rejection sampling + TV loss 属于本文算法在 native MTP heads 和 long-horizon agentic serving 中的下游工程化。
- 与 2511.14617 Seer:Seer 也减少 rollout 中的串行 decode / tail latency,但 draft source 来自 group-aware context pattern 和 compressed suffix tree,而本文使用 approximation model 分布
。 - 与 verl 官方仓库:verl 的 MTP / rollout correction / async pipeline 文档需要本文的基础语义来区分 target distribution、draft distribution、old policy logprob 和 trainer/rollout mismatch。
- 与 2605.14220 TIM / VeXact:本文处理 draft-target sampling exactness;TIM 处理 rollout engine 与 trainer engine logprob/path exactness。两者都要求把“理论分布一致”和“工程路径一致”分开审计。
- 与 2025-09-10 inference determinism:speculative decoding 保证分布等价,但真实系统还要处理 batch-invariant kernels、floating point non-determinism 和 sampler reproducibility。
- 与 2308.16369 Sarathi:两者都面向 inference latency / throughput。Sarathi 改 batch composition 和 prefill/decode scheduling;本文改每个 request 的 serial target calls。
Reference Intake Brief
Target
- Intended target system: 新增论文笔记;补齐 speculative decoding 原始算法节点。
- Existing related assets:
content/utility/papers-index.md;2606.12370 Bebop;2026-06-16 GLM-5.2;2511.14617 Seer。 - Proposed form: 新建独立 Markdown 文档,更新索引行与
data/authors.json,并在本文和 Bebop 笔记中维护关系。
Reusable Elements
- Speculative sampling exactness proof.
的接受率推导。 - speedup formula:
。 - 计算量与 memory access tradeoff。
- draft model selection:
与 的平衡,而非只看 draft 参数规模。
Risks
- Copyright/over-copying: 只摘录必要公式和实验表,正文以重述和分析为主。
- Unsourced or unverifiable claims: 论文事实来自 arXiv/PMLR/OpenReview/TeX source;作者 profile 来自 Google Research、个人主页、DBLP、OpenReview、X search snippets。
- Tone/brand mismatch: 保持本地 archive 的论文分析语气,区分论文结论和本地判断。
- Safety/compliance issues: 无直接安全滥用细节;属于推理系统效率论文。
- Overlap with existing assets: 与 Bebop 文档有明显重叠,本笔记定位为原始算法与理论来源。
Skipped
| Material | Reason |
|---|---|
| 公开 reviewer comments | OpenReview API 返回 replyCount: 0,未发现公开 official review / rebuttal / meta-review。 |
| 官方代码 | 论文未提供官方代码仓库;只记录 PMLR/OpenReview/arXiv 资料。 |
| 完整 LaMDA 内部设置 | 论文只披露 LaMDA 137B target 与 100M/2B/8B draft、dialog task 和 Top-40 filter 备注,内部数据与系统不可公开复查。 |
Recommendation
Decision: merge
Why: 这是 speculative decoding / speculative sampling 的基础论文,直接解释本地已有 Bebop、GLM-5.2、Seer、verl MTP 等文档中的 rejection sampling、TV overlap、acceptance length 和 rollout acceleration 术语。