The reverse diffusion process is a neural network that approximates the intractable denoising posterior at each timestep
To generate new data, a diffusion model runs the reverse chain: starting from pure Gaussian noise x_T, it iteratively samples x_{t-1} from an approximate posterior p_theta(x_{t-1}|x_t). The true reverse posterior q(x_{t-1}|x_t) is intractable because estimating it would require the entire dataset, so a neural network parameterises a Gaussian approximation with learned mean and (optionally) variance. When beta_t is small, the reverse step is also approximately Gaussian, so this parameterisation is well justified. Each reverse step is one neural network forward pass, making total generation cost O(T) inference calls. The network sees the noisy sample x_t and the timestep t as inputs, calibrating its denoising behaviour to the current noise level.
Examples
In Stable Diffusion the reverse network is a U-Net that takes the latent noisy image plus a sinusoidal timestep embedding and text conditioning, producing a noise estimate for that step.
Assessment
Why is the reverse posterior q(x_{t-1}|x_t) intractable to compute directly? What does the neural network p_theta learn to approximate, and what are its inputs?