/diffusion

My implementation of diffusion (like) models

Primary LanguagePython

diffusion

The Implementation of DIffusion (like) models for fun.

Requirements

pip install torch torchvision einops numpy datasets tqdm scipy omegaconf

Result

  • All the datasets are loaded with huggingface/datasets.

  • MNIST

    • 20 epoch
    • Unet with 1 up-down block and mid block
  • FASHION MNIST

    • 20 epoch
    • Unet with 1 up-down block and mid block
  • CIFAR10

    • 100 epoch
    • Unet with 2 up-down block and mid block
  • AFHQ - CAT

    • AFHQ dataset filtered with cat label
    • 300 epoch
    • Unet with 2 up-down block and mid block
Model MNIST FASHION MNIST CIFAR10 CAT
DDPM MNIST FASHION_MNIST CIFAR10 CAT
Score-SDE MNIST FASHION_MNIST CIFAR10 CAT
Rectified Flow MNIST FASHION_MNIST CIFAR10 CAT
  • Score-SDE is not stable with regards to color tones in the CAT dataset.
    • Since the previous experiment worked well at times, it may depend on the model size.
    • This phenomenon sometimes occurs in DDPM.