Inference-Time Scaling for Diffusion Models beyond Scaling Denoising Steps
核心思想
大语言模型(LLM)可以通过推理时增加计算(如 Chain-of-Thought)来提升性能。扩散模型能否也做到?传统做法是增加去噪步数,但步数的收益很快饱和。
本文提出全新视角:搜索更好的噪声样本。框架包含两个设计轴:
- 验证器(Verifier):评估生成样本质量的函数
- 搜索算法(Search Algorithm):在噪声空间中寻找高质量样本
核心发现:小模型 + 搜索可以匹敌甚至超越大模型。
背景知识
推理时扩展(Inference-Time Scaling)
| 领域 | 方式 | 例子 |
|---|---|---|
| LLM | 增加推理步骤 | Chain-of-Thought、Tree-of-Thought |
| 扩散模型(传统) | 增加去噪步数 | 50→100→250 步 |
| 扩散模型(本文) | 搜索噪声空间 | 生成 N 个候选 → 选最好的 |
为什么增加步数收益有限
去噪步数从 50 增加到 250,FID 改善很小(边际收益递减)。因为步数影响的是ODE 求解精度,而 50 步已经足够精确。真正的瓶颈在于初始噪声的选择。
扩散模型的 ODE 形式
\[d\mathbf{x} = -\dot{\sigma}(t) \sigma(t) \nabla_\mathbf{x} \log p(\mathbf{x}; \sigma(t)) \, dt\]不同的初始噪声 $\mathbf{x}_T$ 会沿不同 ODE 轨迹到达不同的 $\mathbf{x}_0$——搜索更好的 $\mathbf{x}_T$ 就是搜索更好的生成结果。
方法详解
1. 验证器(Verifier)
验证器 $V: \mathbb{R}^{H \times W \times C} \times \mathbb{R}^d \to \mathbb{R}$ 输入生成样本和条件信息,输出质量分数。
1.1 Oracle 验证器
使用有特权的评估指标(如 FID、IS),主要用于理论分析上界。
1.2 有监督验证器
利用条件信息(如类别标签、文本提示):
| 验证器 | 输入 | 特点 |
|---|---|---|
| CLIP 零样本分类 | 图像 + 类别名 | 文本对齐好,但易模式坍塌 |
| DINO 线性头 | 图像 + 类别 | 有效扩展,无严重坍塌 |
| ImageReward | 图像 + 文本提示 | 综合质量评估 |
| 美学分数 | 图像 | 视觉质量好,但牺牲文本对齐 |
1.3 自监督验证器
不需要条件信息,使用特征相似度。在文本到图像任务中效果有限(因为只关注视觉)。
2. 搜索算法
2.1 随机搜索(Random Search)
最简单的方法:
生成 N 个随机噪声 ε₁, ε₂, ..., εₙ
for each εᵢ:
运行 ODE 求解器得到 x₀⁽ⁱ⁾
计算验证器分数 V(x₀⁽ⁱ⁾)
返回分数最高的 x₀
2.2 零阶搜索(Zero-Order Search)
迭代地在局部邻域搜索:
初始化 pivot 噪声 ε*
for 每轮迭代:
在 ε* 的距离 λ 内采样 N 个邻居
运行 ODE → 计算验证器分数
更新 ε* 为最优邻居
返回最终 ε* 对应的生成结果
优势:局部搜索保持多样性,避免模式坍塌。
2.3 路径搜索(Search over Paths)
在扩散轨迹的中间点分支:
采样 N 个初始噪声,运行 ODE 到中间噪声水平 σ
for 每个候选:
添加 M 个随机扰动 → 模拟前向过程
运行反向 ODE → 得到多个候选
保留 top-N → 重复分支
最终返回最优结果
优势:探索扩散轨迹的分支结构,在更大空间中搜索。
3. 验证器黑客(Verifier Hacking)
问题:点对点验证器(如分类 logits)在无约束搜索下会导致模式坍塌——所有样本都被优化到同一个高分模式,多样性消失。
解决方案:
- 零阶搜索和路径搜索天然限制了搜索范围 → 缓解坍塌
- 使用验证器集成(多个验证器的组合)提高鲁棒性
实验结果
ImageNet 类条件生成
| 发现 | 细节 |
|---|---|
| Oracle 验证器 | 搜索带来显著 FID/IS 改善 |
| DINO 线性头 | 有效扩展,无坍塌 |
| CLIP 分类器 | IS 改善好,但 FID 坍塌 |
文本到图像(DrawBench)
| 方法 | LLM Grader |
|---|---|
| 无搜索基线 | — |
| ImageReward + 随机搜索 | 88.18(最优) |
| 美学分数 | 视觉质量高但文本对齐差 |
| CLIP | 文本对齐好但视觉质量差 |
验证器集成 + 随机搜索达到最佳平衡。
T2I-CompBench 组合任务
| 验证器 | 数字性 | 复杂组合 |
|---|---|---|
| 无搜索 | 0.6167 | 0.3600 |
| ImageReward | 0.6789 | 0.3810 |
| 验证器集成 | 0.6623 | 0.3754 |
小模型 + 搜索 vs 大模型
关键发现:
- SiT-L + 搜索 超越 SiT-XL(无搜索)
- PixArt-Σ + 搜索(0.09× FLUX 计算量)匹敌 FLUX
- PixArt-Σ + 搜索(2.59× FLUX 计算量)显著超越 FLUX
意义:推理时计算可以替代模型规模。
与微调的兼容性
搜索在 DPO 微调后的 SDXL 上进一步提升 ~1.2%——说明搜索和微调是互补的。
计算效率
- 每次迭代的 NFE 在 50 步后收益递减
- 增加搜索迭代次数比增加每次 NFE 更有效
个人思考
- “搜索 vs 规模”的新权衡:小模型+推理时搜索可以超越大模型——这与 LLM 领域”推理时计算 vs 预训练计算”的发现完全平行。
- 验证器黑客问题值得警惕:无约束优化单一指标必然导致 Goodhart 定律——集成多个验证器是务实的解决方案。
- 随机搜索的出人意料的效果:在很多场景下,最简单的随机搜索就是最优的——因为零阶搜索和路径搜索的局部约束虽然防止坍塌,但也限制了探索范围。
- 噪声空间的”质量地图”:不同初始噪声导致不同质量的生成——这暗示噪声空间存在结构化的”好区域”,值得深入研究。
- 实际应用场景:对于离线生成(广告、艺术创作),推理时多花 10× 计算换取更好质量是完全可接受的。