---
title: 'Diffusion model'
description: 'A generative model that learns to reverse a gradual noising process, producing samples by repeatedly denoising an initial random state.'
canonical_url: 'https://darkfactory.dev/glossary/diffusion-model'
markdown_url: 'https://darkfactory.dev/glossary/diffusion-model.md'
collection: glossary
date_published: '2026-08-03T00:00:00-04:00'
date_modified: '2026-08-26T00:00:00-04:00'
---

# Diffusion model


## Definition

A diffusion model defines a forward process that gradually corrupts data with noise and learns a reverse process that removes that corruption. In a common image setup, training selects a noise level, adds a known amount of Gaussian noise to an example, and teaches a neural network to predict the noise or an equivalent denoising target.

Sampling starts from random noise and applies the learned reverse transition over a sequence of steps. The result should resemble the training distribution or a requested condition such as text, a class label, or another image. The repeated steps make ordinary diffusion sampling slower than one-pass generation, although later samplers and distillation methods can reduce the number of evaluations.

## From diffusion processes to image generation

Jascha Sohl-Dickstein, Eric Weiss, Niru Maheswaranathan, and Surya Ganguli presented a deep generative model based on a forward diffusion process and learned reversal in 2015. Jonathan Ho, Ajay Jain, and Pieter Abbeel's 2020 denoising diffusion probabilistic model connected the approach to denoising score matching and demonstrated high-quality image synthesis. These papers established the modern model family; neither implies that every iterative denoiser is a diffusion model.

## Distinguish it from nearby terms

A generative adversarial network trains a generator against a discriminator and often produces a sample in one forward pass. A diffusion model learns reverse transitions for a specified noising process and usually samples iteratively. A denoising autoencoder may remove corruption in one pass without defining the full generative chain.

## Check your understanding

During training, a clean image is corrupted at a randomly selected noise level. During generation, the system begins with noise. Which direction is fixed by design, which direction is learned, and why are multiple reverse steps needed?

## Related terms

- [Generative adversarial network (GAN)](https://darkfactory.dev/glossary/generative-adversarial-network)
- [Latent space](https://darkfactory.dev/glossary/latent-space)
- [Inference](https://darkfactory.dev/glossary/inference)

## Evidence and further reading

- [NIST AI 100-2: Adversarial Machine Learning](https://csrc.nist.gov/pubs/ai/100/2/e2025/final)
- [Google Machine Learning Glossary](https://developers.google.com/machine-learning/glossary/)
- [Deep Unsupervised Learning Using Nonequilibrium Thermodynamics](https://arxiv.org/abs/1503.03585)
- [Denoising Diffusion Probabilistic Models](https://arxiv.org/abs/2006.11239)
