Counting 3,028 Big Data & Machine Learning Frameworks, Toolsets, and Examples...
Suggestion? Feedback? Tweet @stkim1

Author
Contributors

Improved Training of Wasserstein GANs in Pytorch

This is a Pytorch implementation of gan_64x64.py from Improved Training of Wasserstein GANs.

Prerequisites

  • Python >= 3.6
  • Pytorch v0.4.0
  • Numpy
  • SciPy
  • tensorboardX (installation here). It is very convenient to see costs and results during training with TensorboardX for Pytorch
  • TensorFlow for tensorboardX

Model

  • gan_train.py: This model is mainly based on GoodGenerator and GoodDiscriminator of gan_64x64.py model from Improved Training of Wasserstein GANs. It has been trained on LSUN dataset for around 100k iters.
  • congan_train.py: ACGAN implementation, trained on 4 classes of LSUN dataset

Result

1. WGAN: trained on bedroom dataset (100k iters)

Sample 1 Sample 2

2. ACGAN: trained on 4 classes (100k iters)

  • dining_room: 1
  • bridge: 2
  • restaurant: 3
  • tower: 4
Sample 1 Sample 2

Testing

During the implementation of this model, we built a test module to compare the result between original model (Tensorflow) and our model (Pytorch) for every layer we implemented. It is available at compare-tensorflow-pytorch

TensorboardX

Results such as costs, generated images (every 200 iters) for tensorboard will be written to ./runs folder.

To display the results to tensorboard, run: tensorboard --logdir runs

Acknowledgements