扩散模型确定性采样:DDIM与EDM的数学原理与加速策略
技术领域:生成模型 / 扩散采样加速
扩散模型的生成过程通常需要数百步迭代,DDIM(Denoising Diffusion Implicit Models)和EDM(Elucidating Diffusion Models)通过改变采样路径,将步数压缩至10~50步而不显著损失质量。
-
DDIM的核心改造:标准DDPM的逆向过程是随机马尔可夫链,而DDIM将其改为非马尔可夫(隐式)过程——每一步的噪声预测不依赖完整的历史,而是直接指向最终生成的确定性路径。数学上,DDIM采样公式为:
x_{t-1} = sqrt(α_{t-1}) * ( (x_t - sqrt(1-α_t) * ε_θ(x_t, t)) / sqrt(α_t) ) + sqrt(1-α_{t-1} - σ_t^2) * ε_θ(x_t, t) + σ_t * random_noise当σ_t=0时变为完全确定性过程,此时可用更少的步长(如50步甚至20步)直接求解常微分方程(ODE)。
-
EDM的改进思路:重新参数化扩散过程,使用连续时间框架而非离散步数。定义信号强度s(t)与噪声强度σ(t),前向过程为
x(t) = s(t) * x0 + σ(t) * ε。最优去噪器在网络输出上施加预调节(preconditioning),使训练损失在不同噪声强度下更均衡。 -
高阶求解器:在ODE路径上,可以使用Runge-Kutta等数值方法进一步提高步长效率。例如,DPM-Solver++利用扩散模型的半线性结构,将采样步数降至10步左右,FID指标相比50步DDIM仅下降不足1点。
-
蒸馏与一步生成:将多步采样过程蒸馏为单步生成模型(如Consistency Models),通过自一致性约束训练模型直接输出任意时刻的最终结果。蒸馏后的一步生成质量在CIFAR-10上可达到FID≈4,距离多步扩散(FID≈2)仍有差距,但已具备实用价值。
-
工程实践建议:对于需要实时生成的应用,推荐组合使用EDM训练的扩散模型 + DPM-Solver++采样器,步数15~20即可达到95%以上的全步数质量。进一步的,可对采样轨迹做分段自适应步长:平坦区域大步长,陡峭区域加密。