alexrakowski / keras-generative

Deep generative networks, coded with Keras.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Keras VAEs and GANs

Keras implementation of various deep generative networks such as VAE and GAN.

Models

Standard models

  • Variational autoencoder (VAE) [Kingma et al. 2013]
  • Generative adversarial network (GAN or DCGAN) [Goodfellow et al. 2014]
  • Improved GAN [Salimans et al. 2016]
  • Energy-based GAN (EBGAN) [Zhao et al. 2016]
  • Adversarially learned inference (ALI) [Dumoulin et al. 2017]

Conditional models

  • Conditional variational autoencoder [Kingma et al. 2014]
  • CVAE-GAN [Bao et al. 2017]

Usage

Prepare datasets

First, download img_align_celeba.zip and list_attr_celeba.txt from CelebA webpage. Then, place these files to datasets and run create_database.py on databsets directory.

Training

# Standard models
python train.py --model=dcgan --epoch=200 --batchsize=100 --output=output

# Conditional models
python train_conditional.py --model=cvaegan --epoch=200 --batchsize=100 --output=output

References

  • Kingma et al., "Auto-Encoding Variational Bayes", arXiv preprint 2013.
  • Goodfellow et al., "Generative adversarial nets", NIPS 2014.
  • Salimans et al., "Improved Techniques for Training GANs", arXiv preprint 2016.
  • Zhao et al., "Energy-based generative adversarial network", arXiv preprint 2016.
  • Dumoulin et al. "Adversarially learned inference", ICLR 2017.
  • Kingma et al., "Semi-supervised learning with deep generative models", NIPS 2014.
  • Bao et al., "CVAE-GAN: Fine-Grained Image Generation through Asymmetric Training", arXiv preprint 2017.

About

Deep generative networks, coded with Keras.


Languages

Language:Python 97.5%Language:Shell 2.1%Language:Makefile 0.5%