Progressive Growing of GANs
Reproduction of the work, "Progressive Growing of GANs for Improved Quality, Stability, and Variation" by NNabla.
For the training, the following dataset(s) need to be available:
- CelebA dataset
- Decompress via
7za e img_align_celeba_png.7z.001.
- (LSUN and LSUN Challenge)
args.py, there are configurations for training PGGANs,
generating images, and validating trained models using a certain metric.
Train the progressive growing of GANs with the following command,
python train.py --device-id 0 \ --img-path <path to images> \ --monitor-path <monitor path>
It takes about 1 day using the single Tesla V100.
After the training finishes, you can find the parameters of the trained model,
the generated images during the training, the training configuration,
the log of losses, and etc in the
For generating images, run
python generate.py --device-id 0 \ --model-load-path <path to model> \ --monitor-path <monitor path>
The generated images are located the
Validate models using some metrics.
python validate.py --device-id 0 \ --img-path <path to images> \ --evaluation-metric <swd or ms-ssim> \ --monitor-path <monitor path>
The log of the validation metric is located in the
- Currently, we are using LSGAN.
- [TODO] Some works on LSUN dataset
- [TODO] CelebA-HQ
- Tero Karras, Timo Aila, Samuli Laine, Jaakko Lehtinen, "Progressive Growing of GANs for Improved Quality, Stability, and Variation", arXiv:1710.10196.
This work was mostly done by the intern.