Training:
August 21, 2020 ยท View on GitHub
PyTorch implementation of denoising diffusion probabilistic models on the celebahq (256 * 256) dataset.
Training:
First, download the celebahq 256 * 256 dataset in this link. Rename the folder to 'CELEBAHQ' and save it under data/. Then, the images paths are going to be data/CELEBAHQ/all/00001.img ~ 30000.img
Train from scratch:
Run python main.py -c config.json -t 'train'
Train from a pretrained model:
This pretrained model has been trained for 990 epochs (~450 hours). Due to computational limit we use batchsize = 16, while the original implementaion uses batchsize = 64 . To use this checkpoint, download it (~1.59GB) and put it under model/celebahq/. Then, run python main.py -c config.json -t 'train'
Generation:
Download the pretrained model if you don't have one. Then run python main.py -c config.json -t 'generate'. Four images are generated by default. This number can be adjusted by changing gen_config["n"] in config.json.
Dependencies:
Necessary packages include Torch, Torchvision, and NumPy. A GPU is needed. If your GPU memory is less than 11GB, then you might need to decrease batchsize train_config["batch_size"] to 1 in training and decrease the number of images gen_config["n"] in generation.