DPM-Solver: A Fast ODE Solver for Diffusion Probabilistic Model Sampling in Around 10 Steps

Cheng Lu, Yuhao Zhou, Fan Bao, Jianfei Chen, Chongxuan Li, Jun Zhu

2022 · NeurIPS

DPM-Solver: A Fast ODE Solver for Diffusion Probabilistic Model Sampling in Around 10 Steps

Problem

Framing

Diffusion models delivered strong likelihoods and sample quality, but training-free samplers still needed about 50+50+ network evaluations for high fidelity. DPM-Solver closes this gap by solving the diffusion ODE with an exponential-integrator view that treats the linear term exactly, reaching CIFAR-10 FID 4.704.70 in 1010 NFE and 2.872.87 in 2020 NFE.

Currently Used Methods

Direct antecedents

Proposed Method

Architecture

The method adds no new network. It wraps a pretrained noise predictor ϵθ(xt,t)\boldsymbol{\epsilon}_\theta(\mathbf{x}_t,t), discrete- or continuous-time, inside a dedicated ODE solver in half-logSNR λ\lambda. The key structural claim is that diffusion ODEs are semi-linear: the data term is integrated analytically, and only an exponentially weighted neural-network integral is approximated.

Sample-quality comparison on ImageNet 256\times256: DDIM columns at 10/15/20/100 NFE versus DPM-Solver at 10 NFE, showing sharper butterfly and van samples for the same few-step budget.

Loss / Objective

Sampling is training-free; the pretrained model still uses the standard noise-prediction loss.

L(θ;ω(t))=120Tω(t)Eqt(xt)[ϵθ(xt,t)ϵ2]dt\mathcal{L}(\theta;\omega(t))=\frac{1}{2}\int_0^T \omega(t)\,\mathbb{E}_{q_t(\mathbf{x}_t)}\left[\left\|\boldsymbol{\epsilon}_\theta(\mathbf{x}_t,t)-\boldsymbol{\epsilon}\right\|^2\right]dt

Sampling Rule / Algorithm

The solver starts from the exact diffusion-ODE solution, then approximates only the weighted network integral.

xt=αtαsxsαtλsλteλϵ^θ(x^λ,λ)dλ\mathbf{x}_t=\frac{\alpha_t}{\alpha_s}\mathbf{x}_s-\alpha_t\int_{\lambda_s}^{\lambda_t} e^{-\lambda}\,\hat{\boldsymbol{\epsilon}}_\theta(\hat{\mathbf{x}}_\lambda,\lambda)\,d\lambda

Its first-order update is:

x~t=αtαsx~sσt(eh1)ϵθ(x~s,s),h=λtλs\tilde{\mathbf{x}}_{t}=\frac{\alpha_t}{\alpha_s}\tilde{\mathbf{x}}_{s}-\sigma_t\left(e^{h}-1\right)\boldsymbol{\epsilon}_\theta(\tilde{\mathbf{x}}_{s},s), \qquad h=\lambda_t-\lambda_s

Training Procedure

Evaluation

Datasets

Metrics

Headline results

Table 1: FID on CIFAR-10 for different orders of RK methods and DPM-Solvers, varying the number of function evaluations (NFE).

PlotMethods shownWhat it shows
CIFAR-10 (continuous)ODE (DPM-Solver), ODE (RK45), SDE (Euler), SDE (Adaptive)DPM-Solver reaches low FID in very few evaluations; SDE solvers need far more steps.
CIFAR-10 (discrete)DPM-Solver, DDPM, Analytic-DDPM, DDIM, Analytic-DDIM, PNDM, GGDMDPM-Solver dominates the low-NFE regime and approaches 4\approx 4 FID by 20\sim 20 steps.
CelebA 64×6464\times64 (discrete)DPM-Solver, DDPM, Analytic-DDPM, DDIM, Analytic-DDIM, PNDM, FastDPM, It^o-TaylorDPM-Solver remains best or tied-best through the few-step region.

Ablations

Method Strengths and Weaknesses

Strengths

Weaknesses

Suggestions from the authors

Links

Prior Papers

Further Papers