This project implements DDPM training on CIFAR10.
Experiments logs and generation results are presented in wandb.
In addition, Hydra and DVC are supported.
To get started run the following code
pip install -r requirements.txt
Model and pipeline testing are evaluated by
pytest tests/
Testing coverage is presented below
Name Stmts Miss Cover
-------------------------------------------
modeling/diffusion.py 38 0 100%
modeling/training.py 37 2 95%
modeling/unet.py 68 0 100%
-------------------------------------------
TOTAL 143 2 99%
You can either execute full training/evaluation pipeline with
python main.py
or work step by step with running
dvc repro
In this case generation results will be in gen_sample.png
, while model checkpoint will be saved in ch.pt
.