ML Architecture

ML Architecture

Diffusion Model Forward & Reverse Process

Forward noising chain and reverse denoising chain with a U-Net at each step.

Prompt

A diffusion model figure showing both the forward (noising) and reverse (denoising) processes.

Top row β€” Forward process (left to right):
- A clean image x_0 progressively becomes Gaussian noise x_T over T=1000 steps.
- Show 5 representative timesteps as small image thumbnails: x_0 (clean), x_250, x_500, x_750, x_T (pure noise).
- Arrows between each pair labeled with the noise schedule q(x_t | x_{t-1}).

Bottom row β€” Reverse process (right to left):
- The model denoises x_T back toward x_0.
- At each step, a U-Net (epsilon_theta) predicts the noise from x_t and timestep t.
- Show the U-Net as a centered icon with conditioning inputs (timestep embedding, text prompt embedding).

Right side: a callout box explaining the loss "L = E[||epsilon - epsilon_theta(x_t, t)||^2]" rendered as cleaner LaTeX-style annotation.
Style: clean publication style, white background, minimal palette (navy, coral accent, gray), suitable for NeurIPS / ICML.
Use in Generator

When to use

For generative-AI papers introducing diffusion variants (DDPM, DDIM, score-based, latent diffusion).

Variations

Latent diffusion (Stable Diffusion style)

Same flow but operate in latent space. Add a VAE encoder mapping image -> latent at the start and a VAE decoder mapping denoised latent -> image at the end. The diffusion process happens entirely in the latent domain.

Tips

  • Always show both directions. Single-arrow diagrams make the process unclear.
  • Use 5 thumbnails for the timestep grid; more than 5 becomes cramped.
  • Annotate the loss explicitly β€” readers expect to see the training objective.

FAQ

How do I add classifier-free guidance?

Add a side branch where the U-Net is called twice (with and without conditioning) and outputs are linearly combined with a guidance scale w.