Diffusion models learn to reverse a Markov chain that progressively corrupts data with Gaussian noise
A diffusion model is trained in two stages. In the forward process a clean data sample (image, audio, etc.) is progressively destroyed over T steps by adding small amounts of Gaussian noise at each step, following a Markov chain. By step T the sample is indistinguishable from pure Gaussian noise. In the reverse process, a neural network learns to approximate the reverse of each step — denoising a slightly noisier sample to obtain a slightly cleaner one. At inference, the model starts from pure noise and runs the reverse chain to generate a new sample. Unlike GANs (which use a discriminator) or VAEs (which use a surrogate ELBO with a simple prior), diffusion models are learned with a fixed forward procedure, making training stable at the cost of slow multi-step generation. The key insight from thermodynamics is that if each noise step is small enough, its reverse is also approximately Gaussian and can be learned.
Examples
Stable Diffusion generates images by starting from a 64x64 tensor of random Gaussian noise and running 20-50 reverse denoising steps with a U-Net backbone, each step moving the tensor slightly toward a coherent image.
Assessment
Explain the two-phase structure of a diffusion model (forward/reverse) and contrast it with one key difference from a GAN in terms of how the generative distribution is learned.