Skip to content

This repository contains multiple implementations of Diffusion Models, starting from the Denoising Diffusion Probabilistic Model (DDPM) and progressing to its conditional version (CDM). The project explores image generation by reversing the diffusion and denoising processes.

Notifications You must be signed in to change notification settings

louis-alexandre-laguet/Diffusion_Model

Repository files navigation

Diffusion Models Implementation (DDPM & CDM)

This repository contains several implementations of diffusion models, starting with a Denoising Diffusion Probabilistic Model (DDPM) and progressing to a conditional version (CDM). These exercises allow exploring image generation using a diffusion and denoising process.

Repository Content

1. DDPM Implementation and Sampling Process

Objective:

  • Understand how probabilistic diffusion models (DDPM) work.
  • Learn how images are generated by reversing a noise diffusion process.
  • Implement the sampling process to progressively denoise an image from pure noise.

2. DDPM Implementation and Training Process

Objective:

  • Train a DDPM model on image data.
  • Implement the loss function and train the denoising network.
  • Observe the improvement in image quality as the model progresses.

3. Training a Conditional Diffusion Model (CDM)

Objective:

  • Extend the DDPM approach to allow for conditional image generation.
  • Condition the model on additional information (e.g., class labels, textual descriptions, structured attributes).
  • Experiment with a Conditional Denoising Diffusion Model (CDDM) for more precise control over generated images.

Trained models are saved in the models directory.

About

This repository contains multiple implementations of Diffusion Models, starting from the Denoising Diffusion Probabilistic Model (DDPM) and progressing to its conditional version (CDM). The project explores image generation by reversing the diffusion and denoising processes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published