新晋图像生成王者扩散模型,刚刚诞生没多久。
有关它的理论和实践都还在“野蛮生长”。
来自英伟达StyleGAN的原班作者们站了出来,尝试给出了一些设计扩散模型的窍门和准则,结果模型的质量和效率都有所改进,比如将现有ImageNet-64模型的FID分数从2.07提高到接近SOTA的1.55分。
他们这一工作成果迅速得到了业界大佬的认同。
DeepMind研究员就称赞道:这篇论文简直就是训练扩散模型的人必看,妥妥的一座金矿。
我们从以下几个方面来看StyleGAN作者们对扩散模型所做的三大贡献:
在这部分,作者的贡献主要为从实践的角度观察模型背后的理论,重点关注出现在训练和采样阶段的“有形”对象和算法,更好地了解了组件是如何连接在一起的,以及它们在整个系统的设计中可以使用的自由度(degrees of freedom)。
精华就是下面这张表:
该表给出了在他们的框架中复现三种模型的确定变体的公式。
(这三种方法(VP、VE、iDDPM+ DDIM)不仅被广泛使用且实现了SOTA性能,还来自不同的理论基础。)
这些公式让组件之间原则上没有隐含的依赖关系,在合理范围内选择任意单个公示都可以得出一个功能模型。
作者的第二组贡献涉及扩散模型合成图像的采样过程。
他们确定了最佳的时间离散化(time discretization),对采样过程应用了更高阶的Runge–Kutta方法,并在三个预训练模型上评估不同的方法,分析了随机性在采样过程中的有用性。
结果在合成过程中所需的采样步骤数量显着减少,改进的采样器可以用作几个广泛使用的扩散模型的直接替代品。
先看确定性采样。用到的三个测试模型还是上面的那三个,来自不同的理论框架和模型族。
作者首先使用原始的采样器(sampler)实现测量这些模型的基线结果,然后使用表1中的公式将这些采样方法引入他们的统一框架,再进行改进。
接着根据在50000张生成图像和所有可用真实图像之间计算的FID分数来评估质量。
可以看到,原始的的确定性采样器以蓝色显示,在他们的统一框架(橙色)中重新实现这些方法会产生类似或更好的结果。
作者解释,这些差异是由于原始实现中的某些疏忽,加上作者对离散噪声级的处理更仔细造成的。
确定性采样好处虽然多,但与每一步都向图像中注入新噪声的随机采样相比,它输出的图像质量确实更差。
不过作者很好奇,假设ODE(常微分方程)和SDE(随机微分方程)在理论上恢复相同的分布,随机性的作用到底是什么?
在此他们提出了一种新的随机采样器,它将现有的高阶ODE积分器与添加和去除噪声的显式“Langevin-like ‘churn’”相结合。
最终模型性能提升显著,而且仅通过对采样器的改进,就能够让ImageNet-64模型原来的FID分数从2.07提高到1.55,接近SOTA水平。
作者的第三组贡献主要为分数建模(score-modeling)神经网络的训练。
这部分继续依赖常用的网络体系结构(DDPM、NCSN),作者通过对扩散模型设置中网络的输入、输出和损失函数的预处理进行了原则性分析,得出了改进训练动态的最佳实践。
比如使用依赖于σ(noise level)的跳跃连接对神经网络进行预处理,使其能够估计y(signal)或n(noise),或介于两者之间的东西。
下表具体展示了模型彩英不同训练配置得到的FID分数。
作者从基线训练配置开始,使用确定性采样器(称为配置A),重新调整了基本超参数(配置B),并通过移除最低分辨率层,并将最高分辨率层的容量加倍来提高模型的表达能力(配置C)。
然后用预处理(配置D)替换原来的{cin,cout,cnoise,cskip}选项。这使结果基本保持不变,但VE在64×64分辨率下有很大改善。该预处理方法的主要好处不是改善FID本身,而是使训练更加稳健,从而将重点转向重新设计损失函数又不会产生不利影响。
VP和VE只在Fθ的架构上有所不同(配置E和F)。
除此之外,作者还建议改进训练期间的噪声级分布,并发现通常与GANs一起使用的无泄漏风险增强(non-leaking augmentation)操作也有利于扩散模型。
比如从上表中,我们可以看到:有条件和无条件CIFAR-10的最新FID分别达到了1.79和1.97,打破了之前的记录(1.85和2.1046)。
更多细节欢迎查看论文原文:
https://arxiv.org/abs/2206.00364
参考链接:
https://twitter.com/sedielem/status/1532466208435494930?s=12&t=Uzg6OWwe5AgXHSBrzlnFrg