Keras-GAN
About
Keras implementations of Generative Adversarial Networks (GANs) suggested in research papers. If dense layers produce reasonable results for a given model I will often prefer them over convolutional layers. The reason is that I would like to enable people without GPUs to test these implementations out. These models are in some cases simplified versions of the ones ultimately described in the papers, but I have chosen to focus on getting the core ideas covered instead of getting every layer configuration right. However, because of this the results will not always be as nice as in the papers.
Table of Contents
- Keras-GAN
- About
- Table of Contents
- Installation
- Implementations
- Auxiliary Classifier GAN
- Adversarial Autoencoder
- Bidirectional GAN
- Boundary-Seeking GAN
- Conditional GAN
- Context-Conditional GAN
- Context Encoder
- Coupled GANs
- CycleGAN
- Deep Convolutional GAN
- DualGAN
- Generative Adversarial Network
- InfoGAN
- LSGAN
- Pix2Pix
- Semi-Supervised GAN
- Super-Resolution GAN
- Wasserstein GAN
Installation
$ git clone https://github.com/eriklindernoren/Keras-GAN
$ cd Keras-GAN
$ sudo pip3 install -r requirements.txt
Implementations
AC-GAN
Implementation of Auxiliary Classifier Generative Adversarial Network.
Paper: https://arxiv.org/abs/1610.09585
Adversarial Autoencoder
Implementation of Adversarial Autoencoder.
Paper: https://arxiv.org/abs/1511.05644
BiGAN
Implementation of Bidirectional Generative Adversarial Network.
Paper: https://arxiv.org/abs/1605.09782
BGAN
Implementation of Boundary-Seeking Generative Adversarial Networks.
Paper: https://arxiv.org/abs/1702.08431
CC-GAN
Implementation of Semi-Supervised Learning with Context-Conditional Generative Adversarial Networks.
Paper: https://arxiv.org/abs/1611.06430
CGAN
Implementation of Conditional Generative Adversarial Nets.
Paper:https://arxiv.org/abs/1411.1784
Context Encoder
Implementation of Context Encoders: Feature Learning by Inpainting.
Paper: https://arxiv.org/abs/1604.07379
CoGAN
Implementation of Coupled generative adversarial networks.
Paper: https://arxiv.org/abs/1606.07536
CycleGAN
Implementation of Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks.
Paper: https://arxiv.org/abs/1703.10593
$ cd cyclegan
$ bash download_dataset.sh apple2orange
$ python3 cyclegan.py
DCGAN
Implementation of Deep Convolutional Generative Adversarial Network.
Paper: https://arxiv.org/abs/1511.06434
DualGAN
Implementation of DualGAN: Unsupervised Dual Learning for Image-to-Image Translation.
Paper: https://arxiv.org/abs/1704.02510
GAN
Implementation of Generative Adversarial Network with a MLP generator and discriminator.
Paper: https://arxiv.org/abs/1406.2661
InfoGAN
Implementation of InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets.
Paper: https://arxiv.org/abs/1606.03657
LSGAN
Implementation of Least Squares Generative Adversarial Networks.
Paper: https://arxiv.org/abs/1611.04076
Pix2Pix
Implementation of Unpaired Image-to-Image Translation with Conditional Adversarial Networks.
Paper: https://arxiv.org/abs/1611.07004
$ cd pix2pix
$ bash download_dataset.sh facades
$ python3 pix2pix.py
SGAN
Implementation of Semi-Supervised Generative Adversarial Network.
Paper: https://arxiv.org/abs/1606.01583
SRGAN
Implementation of Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network.
Paper: https://arxiv.org/abs/1609.04802
WGAN
Implementation of Wasserstein GAN (with DCGAN generator and discriminator).