DDPM (Denoising Diffusion Probabilistic Models) builds generation on two Markov chains: a forward process q that gradually adds noise to an image until it becomes standard Gaussian over T steps, and a reverse process pθ that learns to denoise step by step. The forward step is q(xt∣xt−1)=N(xt;1−βtxt−1,βtI); since each step injects independent Gaussian noise, the accumulated noise has a closed form at any time t:
with αt=1−βt and the cumulative schedule αˉt=∏s=1tαs (the SNR αˉt/(1−αˉt) decreases with t); the standard linear schedule runs β1=10−4 up to βT=0.02. The training objective follows from maximizing the ELBO: each term is a Gaussian KL between the posterior q(xt−1∣xt,x0) and pθ(xt−1∣xt), which with known variances reduces to the L2 distance between means; since the mean is a linear combination of xt and the noise ϵ, the loss collapses to regressing the injected noise:
Sampling starts from xT∼N(0,I) and iterates backward t=T,…,1: xt−1=αt1(xt−1−αˉtβtϵθ(xt,t))+σtz, where σt2=β~t (posterior variance) and z=0 at the final step t=1.
💡Use Cases
an interview staple — “write the DDPM training/sampling formulas”; the backbone of text-to-image models (Stable Diffusion) and video/audio generation, often followed by “why regress the noise with L2?”.
⚡Key Problems Solved
GANs suffer unstable adversarial training, mode collapse and difficult tuning; DDPM's loss is plain MSE noise regression — stable first-order optimization and full-distribution coverage (good diversity) — at the cost of ~1000 sampling steps, which motivates DDIM/LCM acceleration.
🎯5 High-Frequency Exam Points
1
Write the closed-form forward process q(x_t|x_0) and define the cumulative schedule ᾱ_t.
2
Whiteboard: derive the training loss E‖ε−ε_θ(x_t,t)‖² from the ELBO; how each Gaussian KL term simplifies.
3
Write the DDPM reverse-sampling update; why is no noise added at the final step, and what is σ_t?
4
Relation between α_t, β_t and ᾱ_t; why can forward sampling jump to any t in one step?
5
How do DDPM, GAN and VAE compare on training stability, sample diversity and sampling speed?