Speculative Refinement: 一种混合自回归扩散解码策略及其在不同基准测试中的行为表现

arXiv cs.AI 论文

摘要

介绍了 Speculative Refinement (SpecRef),一种无需训练的混合解码策略,它通过熵引导的选择性掩码,从自回归草稿中热启动掩码扩散语言模型。在六个基准测试上的评估表明,代码基准测试混淆了结构发现与逻辑正确性,识别出了一种精炼张力现象,并显示评估协议可能产生不同的模型排名。

arXiv:2606.27474v1 Announce Type: cross 摘要:我们该如何评估结合了自回归(AR)和扩散解码的生成系统?我们通过Speculative Refinement(SpecRef)来研究这个问题,这是一种无需训练的混合方法,通过熵引导的选择性掩码从AR草稿中热启动掩码扩散语言模型。在六个基准测试(HumanEval、MBPP、GSM8K、BBH、ARC-Challenge、HellaSwag)上使用三种不同的评估协议(基于执行的pass@1、精确匹配、对数似然评分)对SpecRef进行评估,我们得出了几个超出我们特定系统的发现:(1)代码基准测试将结构发现与逻辑正确性混为一谈:提供语法脚手架,无需改变模型即可将准确率从接近零提升到超过20%,表明大部分基线失败是结构性的;(2)一种精炼张力现象,其中多阶段校正会降低已经正确的token,暴露了单模型评估无法发现的基准测试饱和上限;(3)对于同一模型对,对数似然和生成评估会产生不同的模型排名,表明它们衡量不同的能力;(4)标准的Python后处理会无声地破坏非AR生成器的代码评估。这些观察结果适用于任何多阶段或非自回归生成流水线,并指向更具诊断性的评估实践。
查看原文
查看缓存全文

缓存时间: 2026/06/29 05:28

# 推测性精炼:一种混合自回归扩散解码策略及其在基准测试中的表现 来源:https://arxiv.org/html/2606.27474 Aditi Gupta 印度海得拉巴国际信息技术研究所 aditi\.gu@research\.iiit\.ac\.in & Neel Mishra 微软 mishraneel99@gmail\.com Kushagra Trivedi 印度海得拉巴国际信息技术研究所 kushagra\.trivedi@students\.iiit\.ac\.in & Pawan Kumar 印度海得拉巴国际信息技术研究所 pawan\.kumar@iiit\.ac\.in ###### 摘要 我们应如何评估结合了自回归 (AR) 和扩散解码的生成系统?我们通过 **推测性精炼** (SpecRef) 来研究这个问题,这是一种无需训练的混合方法,它使用熵引导的选择性掩码,从 AR 草稿开始启动一个掩码扩散语言模型。在六个基准测试(HumanEval, MBPP, GSM8K, BBH, ARC-Challenge, HellaSwag)上使用三种不同的评估协议(基于执行的 pass@1、精确匹配、对数似然评分)对 SpecRef 进行评估后,我们发现了几个超越我们特定系统的相关结论:(1) 代码基准测试混淆了**结构发现**与**逻辑正确性**:提供语法框架可以在不改变模型的情况下,将准确率从接近零提升到超过 20%,这表明基线失败的大部分原因是结构性的;(2) 存在一种**精炼张力**现象,即多阶段校正会降低本已正确的 token,暴露了单模型评估无法看到的基准测试饱和上限;(3) 对于相同的模型对,对数似然评估和生成式评估会产生不同的模型排名,表明它们衡量的是不同的能力;(4) 标准的 Python 后处理会静默地破坏非 AR 生成器的代码评估。这些观察适用于任何多阶段或非自回归的生成流程,并指向更具诊断性的评估实践。代码见这里 (https://github.com/misterpawan/specref-eval.git)。  

# 推测性精炼:一种混合自回归扩散解码策略及其在基准测试中的表现 Aditi Gupta 印度海得拉巴国际信息技术研究所 aditi\.gu@research\.iiit\.ac\.in Neel Mishra 微软 mishraneel99@gmail\.com Kushagra Trivedi 印度海得拉巴国际信息技术研究所 kushagra\.trivedi@students\.iiit\.ac\.in Pawan Kumar 印度海得拉巴国际信息技术研究所 pawan\.kumar@iiit\.ac\.in

## 1 引言

一个 80 亿参数的扩散语言模型在 HumanEval 上,仅进行 16 步去噪时,得分为 0%。给它同一个问题,但配上来自一个 2.7B 自回归起草器的语法框架后,它在没有任何重新训练的情况下得分超过了 20%。模型并没有突然学会编程;基准测试是在检验它能否从零开始发现 Python 的缩进规则,而这被证明是困难的部分。这是我们试图用标准基准测试评估一个混合生成系统时发现的几个结论之一,并且我们意识到这些基准测试本身并非为此而设计。

扩散语言模型 (dLMs) 已迅速从研究热点发展为一种有竞争力的生成范式。LLaDA (Nie et al., 2025) 证明了掩码扩散可以扩展到 80 亿参数,并在上下文学习方面与 LLaMA-3 相当。MDLM (Sahoo et al., 2024) 表明,采用现代训练配方的简单掩码扩散可以缩小与 AR 模型之间的困惑度差距。Dream 7B (Ye et al., 2025) 在保持扩散原生能力(如并行生成)的同时,进一步缩小了这一差距。在商业方面,Inception Labs 的 Mercury (Labs et al., 2025) 在 NVIDIA H100 GPU 上实现了每秒超过 1000 个 token 的速度,同时匹配了速度优化的 AR 模型的质量,证明了 dLMs 在生产规模上是可行的。

这些模型具有 AR 模型所缺乏的结构优势:每一步的双向上下文、任意位置的填充以及并行校正多个 token 的能力。问题不再是 dLMs 是否有效,而是如何将它们的优势与 AR 模型的顺序规划能力结合起来。最近的几项工作已经开始探索这个方向。Christopher et al. (2025) 使用扩散作为推测解码的起草器。Horvitz et al. (2024) 将扩散释义器条件化于 AR 输出之上。从破坏性输入热启动扩散在图像领域已被充分研究 (Meng et al., 2022),并且最近已为语言领域形式化 (Scholz and Turner, 2025)。这些努力表明,混合 AR-扩散流程是一个有前途的研究方向,但它们也提出了一个较少受到关注的问题:**我们应如何评估它们?**

NLP 社区已经建立了成熟的评估基础设施 (Gehrmann et al., 2021; Liang et al., 2023):基于执行的代码基准测试 (Chen et al., 2021)、数学推理套件 (Cobbe et al., 2021)、逻辑推理任务 (Suzgun et al., 2023) 以及 LLM 作为评判者的协议 (Zheng et al., 2023)。但这个基础设施是为从左到右的自回归 (AR) 解码 (Vaswani et al., 2017) 而构建的。后处理脚本假设 token 按顺序到达。执行沙箱假设语法格式良好。对数似然评分假设只有一次前向传播。这些假设在应用于 dLMs (Nie et al., 2025; Austin et al., 2021a; Lou et al., 2024)、推测解码流程 (Leviathan et al., 2023; Chen et al., 2023) 以及结合两者的混合系统时,会静默地失效。基准测试污染 (Xu et al., 2024) 已经是已知的担忧;我们表明**协议不匹配**同样严重且在很大程度上未被研究。

我们通过 **推测性精炼** (SpecRef) 来揭示这些问题。SpecRef 是一种无需训练的混合方法,它使用一个小型 AR 模型 (Phi-2, 2.7B) 起草一个初始答案,然后根据它们的香农熵选择性掩码最不自信的 token,并让一个大型扩散模型 (LLaDA-8B (Nie et al., 2025)) 精炼它们 (图 1)。该方法适用于任何现成的 AR 起草器,且无需训练。在六个基准测试上使用三种评估协议对其进行评估后,我们发现了远远超出我们特定系统范围的结论。

#### 贡献。据我们所知,这是第一个系统性的研究,它将一个 AR 语言模型作为起草器与一个掩码扩散模型 (LLaDA) 作为精炼器配对,并在多个基准测试和评估协议上评估由此产生的混合模型。我们的主要贡献是评估方面的见解,而非方法本身:
- • **结构发现与逻辑正确性**。代码基准测试 (HumanEval (Chen et al., 2021), MBPP (Austin et al., 2021b)) 混淆了两种能力:发现语法结构(缩进、括号、函数签名)和编写正确的逻辑。提供 AR 框架将这两者区分开来:在相同的扩散步数预算下,准确率从接近 0% 跃升至超过 20%(表 1),这表明独立扩散基线在代码任务上的失败,很大一部分是结构性的而非逻辑性的。
- • **精炼张力**。在 AR 起草器已经准确的基准测试上 (BBH (Suzgun et al., 2023): 82.8%),多阶段精炼可能**降低**准确率(降至 80.4%),因为精炼器会覆盖正确的 token。这种上限效应在单独评估任一模型时是看不见的。
- • **PPL 与生成式评估的差距**。在多项选择任务(ARC-Challenge, HellaSwag)上,对数似然评分产生的排名与在同一模型对上观察到的生成式基准测试排名不同(表 2),表明 PPL 模式和生成式评估衡量的是扩散模型的不同能力。
- • **后处理陷阱**。标准的代码后处理(`.strip()`, `textwrap.dedent()`)会静默地破坏非 AR 生成器的 Python 缩进,从而降低 pass@1 分数。我们记录了这一点以及在对混合系统调整 AR 时代评估时遇到的其他实际陷阱(第 3.3 节)。

我们还描述了 SpecRef 本身(第 2 节),因为解释评估发现需要它,并报告它在代码生成方面比独立扩散提升了最高 25.8% 的绝对准确率,同时将墙钟延迟降低了最高 2.43 倍。

| AR 起草器 | Phi-2, 2.7B |
| :--- | :--- |
| `def f(x):` | `return x+1` |
| `~x_0` | 熵掩码 |
| `def (` | `M` `M:` `M` `x_τ` |
| 精炼器 | LLaDA-8B |
| `def f(n):` | `return n*2` |
| `x_0` | `S`步 |
| 保留 | 掩码 | 精炼 |

**图 1:** SpecRef 流程。AR 起草器生成一个候选;每个 token 的熵识别不确定的位置(黄色/红色),这些位置被替换为 `[MASK]`。扩散精炼器从此热启动状态开始在 `S` 步中进行去噪。

## 2 背景:混合 AR-扩散生成

我们描述我们的混合系统的组件,该组件作为整篇论文的评估对象。

### 2.1 AR 起草器和不确定性估计

令 `c` 表示提示词,`x_0 = (x_0,1, ..., x_0,L)` 是一个来自词汇表 `V` 的长度为 `L` 的 token 序列。一个参数为 `φ` 的 AR 起草器定义了一个从左到右的因式分解分布:

`q_φ(x_0 | c) = ∏_{i=1}^{L} q_φ(x_0,i | c, x_0, <i)`

对于每个 token `x_0,i`,我们可以使用条件概率 `q_φ(· | c, x_0, <i)` 计算其位置熵:

`u_i = H[q_φ(· | c, x_0, <i)] = -∑_{v∈V} q_φ(v | c, x_0, <i) log q_φ(v | c, x_0, <i)`

高熵对应于模型对其预测不确定的位置,这构成了选择性掩码的自然候选。

### 2.2 掩码扩散语言模型

令 `x_t` 表示一个在离散时间步 `t ∈ {0, 1, ..., T}` 的序列。前向过程 (`q_t | q_0`) 独立地将每个 token 以概率 `α_t` 替换为特殊的 `[MASK]` token:

`q_t(x_t,i | x_0,i) = α_t · 𝟙[x_t,i = [MASK]] + (1 - α_t) · 𝟙[x_t,i = x_0,i]`

其中 `α_t` 随时间单调增加,使得 `α_T = 1`,此时 `x_T` 完全由 `[MASK]` token 组成。通过学习一个神经网络 `p_θ` 来近似逆向过程(去噪),该网络接受一个部分掩码的序列 `x_t` 并在所有位置上并行预测原始 token。掩码扩散的一个关键优势在于,它不受从左到右的顺序约束:`p_θ` 在每一步都能看到完整的双向上下文,并且它可以填充任意 token 子集。

### 2.3 SpecRef:带选择性掩码的热启动

从完全掩码的先验中采样时的主要瓶颈是**结构发现**:在 `t=T` 时,每个 token 都是 `[MASK]`,因此模型必须从零开始恢复代码框架、推理链和答案格式。在较小的步数预算 `S` 下,它通常无法产生语法有效的输出。SpecRef 转而从一个 AR 草稿热启动扩散模型。它采样一个草稿 `~x_0 ~ q_φ(· | c)`,然后在时间 `τ` 应用前向破坏核:

`x_τ ~ q_τ(· | ~x_0)`, (4)

并运行从 `τ` 到 0 的学习到的逆向过程:

`x_{t-1} ~ p_θ(· | x_t, c) 对于 t = τ, τ-1, ..., 1` (5)

在实践中,我们使用时间索引的一个子集(例如,类似于 DDIM 的风格 (Song et al., 2022))来将前向传播的次数减少到 `S << τ`。

SpecRef 并非全局掩码,而是**选择性**掩码:只有熵最高的前 `k%` 位置被替换为 `[MASK]`。两种启发式方法扩展了掩码集 `I`:
1. **数学感知块扩展 (`e=2`)**:通过正则表达式识别与数字或数学运算符字符对齐的位置。添加所有在 `±2` 位置内的 token:`I ← I ∪ {i | |i-j| ≤ 2,j ∈ M}`,其中 `M` 索引数学字符位置。这确保了算术上下文作为一个整体被重新生成。
2. **尾部截断 (`M=150`)**:无条件掩码索引 150 之后的所有 token,以强制扩散模型重新生成结论,而 AR 的漂移在此处最为严重。

用于 top-k 选择的 token 分数为:`m_i = clip(u_i / log|V|, 0, 1)`,其中 `u_i` 通过字符级偏移对齐映射到精炼器 token 位置(因为起草器和精炼器使用不同的分词器)。我们自始至终使用 `k=60%`。算法 1 给出了完整过程。

**算法 1** 统计 SpecRef(Top-k 熵掩码)
```
输入:提示词 c;AR 起草器 q_φ;精炼器 p_θ;掩码百分位数 k;数学扩展窗口 e;尾部截断 M。
输出:精炼后的样本:x_0
1:  采样草稿:~x_0 ~ q_φ(· | c)
2:  提取 logit 熵:u_i = H[q_φ(· | c, ~x_0,<i)]
3:  选择掩码集:I ← {i | m_i 在 ~x_0 中属于前 k%}
4:  扩展掩码集:I ← I ∪ {i | |i-j| ≤ e,j ∈ M}
5:  截断尾部:I ← I ∪ {i | i > M}
6:  形成中间掩码状态 x_τ:x_τ,i = { [MASK] 如果 i∈I, ~x_0,i 否则 }
7:  for 精炼步数 S do
8:     采样提议:x_{t-1}' ~ p_θ(· | x_t, c)
9:  end for
10: return x_0
```

### 2.4 计算成本与交接点

总成本为 `L * C_AR + S * C_D`,其中 `C_AR` 是一个 AR token 的摊销成本(在 vLLM 服务下可忽略不计),`C_D` 是一个扩散前向传播在所有 `L` 个位置上的成本。一个具有 `N` 步的独立扩散采样器成本为 `N * C_D`;SpecRef 的目标是 `S << N`。掩码率 `k%`(等价于热启动时间 `τ`)控制了一个权衡:`k → 0` 保留整个草稿;`k → 100%` 退化为从零开始的标准扩散。我们使用 `k=60%`:足够多的 token 存活以携带全局结构,同时有足够多的 token 被掩码以进行校正。在 GSM8K(RTX 4090)上,这产生了每查询 6.79 秒,而独立 LLaDA 在 `S=64` 时为 16.49 秒,加速比为 2.43 倍。

## 3 评估设置

### 3.1 模型与基础设施

所有实验运行在 8× NVIDIA V100,每块 16GB。精炼器(LLaDA-8B-Instruct)通过流水线并行分布在 2 块 GPU 上。起草器(Phi-2, 2.7B)在 vLLM 下运行,采用 4 位量化;其延迟不到总生成时间的 1%。

### 3.2 评估协议

我们特意选择了需要三种不同评估协议的基准测试,因为协议本身就是一个重要的变量。

#### 协议 A:基于执行 (pass@1)。HumanEval (Chen et al., 2021) 和 MBPP (Austin et al., 2021b)。生成的 Python 代码在沙箱中针对真实单元测试执行,并设置 10 秒的 SIGALRM 超时(早期扩散步骤中常见的无限循环)。我们报告 pass@1。

#### 协议 B:带解析的精确匹配。GSM8K (Cobbe et al., 2021) 和 MATH(补充材料,在 5000 个样本的子集上评估)。模型被提示以 `\boxed{...}` 格式产生答案。我们使用正则表达式提取最终答案并计算精确匹配准确率。

#### 协议 C:对数似然评分 (PPL 模式)。ARC-Challenge 和 HellaSwag。每个答案选项被格式化为 `context + choice_text`。条件对数似然通过 8 轮蒙特卡洛掩码(每轮随机掩码续写 token 的一个子集,在模型下评分,然后平均)来估计,遵循 LLaDA 评估协议 (Nie et al., 2025)。选择得分最高的选项。该协议与扩散步数无关:不执行迭代去噪。

相似文章

什么是推测性解码?(在paperswithco.de上热门)[R]

Reddit r/MachineLearning

推测性解码是一种推理优化技术,它使用快速草稿模型提出未来 token,并由较大模型并行验证,从而提高 LLM 的生成速度。文章强调了它在 Papers with Code 上的热门状态,以及最近的 SGLang 博客文章,该文章介绍了使用 DFlash 模型实现的最先进延迟。

训练扩散模型进行从左到右推测

arXiv cs.CL

本文提出了三种训练时干预方法(位置加权、首次错误焦点损失和链损失),用于在推测解码中将基于扩散的草稿模型与自回归验证对齐,使接受前缀长度提升21-76%,且不增加推理开销。

注意力漂移:自回归投机解码模型学到了什么

Reddit r/LocalLLaMA

本文指出了自回归投机解码模型中的“注意力漂移”现象,即草稿模型的注意力从提示词转移到了其自身生成的令牌上。作者提出了架构上的改进,例如后归一化(Post-norm)和 RMSNorm,这些改进在各种基准测试中提高了接受率和鲁棒性。