OpenAI 发布改进的一致性模型训练技术
TL;DR
OpenAI 发布了一套训练改进方案,消除了在一致性模型中进行扩散模型蒸馏的需求,在 CIFAR-10 上实现了 2.51 的单步 FID 分数,在 ImageNet 64×64 上实现了 3.25 的单步 FID 分数——这比之前的一致性训练结果提高了约 3.5 倍至 4 倍。
背景:一致性模型及其局限性
一致性模型通过单个推理步骤生成数据,避免了扩散模型的迭代采样。从历史上看,它们一直依赖于从预训练扩散模型的蒸馏,以及用于指导训练的学习感知指标,如 LPIPS。这些依赖关系将最终的样本质量限制在教师扩散模型的性能水平,并引入了来自 LPIPS 的评估偏差。
直接从数据训练消除蒸馏
OpenAI 的新方法直接在原始数据上训练一致性模型,而不是从扩散教师模型进行蒸馏。通过移除教师-学生流水线,模型不再受限于扩散模型的质量,从而使其能够超越之前的一致性模型限制。
修复理论缺陷:从教师模型中移除 EMA
在分析过程中,作者们发现了一个之前被忽视的缺陷:应用于教师一致性模型的指数移动平均 (EMA) 会干扰一致性目标。解决方案是从教师模型中消除 EMA,这能稳定训练并改善收敛性。
用 Pseudo-Huber Loss 替换 LPIPS
LPIPS 虽然对感知相似度很有用,但会使训练目标产生偏差。OpenAI 用 Pseudo-Huber loss 替换了它,这是一种稳健统计损失函数,结合了 L2 在零误差附近的平滑性与 L1 的离群值抗性。这一改变带来了更可靠的梯度并提升了视觉保真度。
Lognormal 噪声调度与步数翻倍
引入了另外两个训练技巧:
- Lognormal 噪声调度 – 注入噪声的方差遵循对数正态分布,能更好地匹配跨时间步的数据流形规模。
- 动态离散化步数 – 在固定数量的训练迭代后,离散化步数的总数会翻倍,从而在训练过程中有效地提高一致性目标的解析度。
这两个调整都有助于模型学习更细粒度的一致性关系。
超参数调优与整体收益
全面的超参数搜索补充了架构上的变化。综合效果使得模型在单步采样中实现了 FID 分数 2.51 (CIFAR-10) 和 3.25 (ImageNet 64×64),相比之前的一致性训练基准,实现了 3.5 倍和 4 倍的提升。
两步采样进一步提升质量
当允许模型进行第二次采样步骤时,FID 分数提升至 2.24 (CIFAR-10) 和 2.77 (ImageNet 64×64)。这些结果在单步和两步模式下都超越了通过蒸馏获得的结果,缩小了一致性模型与更广泛的最先进生成模型之间的性能差距。
对生成建模的影响
- 效率 – 单步采样保留了一致性模型的速度优势,同时实现了与多步扩散模型相当的质量。
- 简洁性 – 移除蒸馏简化了训练流水线,减少了计算开销并消除了对大型扩散教师模型的需求。
- 基准测试进步 – 报告的 FID 分数在标准图像合成基准测试中为一致性模型树立了新的 SOTA。
未来方向
OpenAI 的研究发现为进一步的研究方向提供了启发,例如将 lognormal 调度扩展到更高分辨率的数据集,探索替代的稳健损失函数,以及将一致性训练与条件生成任务相结合。
所有图表和声明均直接取自 OpenAI 于 2024-06-20 发布的消息。