Skip to content

anibali/infogan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InfoGAN for Torch

This is an unofficial Torch implementation of the InfoGAN neural network architecture proposed by Chen et al in their paper "InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets". The original TensorFlow implementation can be found at https://github.com/openai/InfoGAN.

Generated MNIST digits varying c_1

Generated MNIST digits varying c_2

Features

  • Implement the InfoGAN network architecture
  • Use variational mutual information maximization for the error calculations (as per the paper)
  • CLI options for tweaking noise inputs and salient variables
  • Deterministic training

Requirements

Running

Begin by cloning this repository.

git clone https://github.com/anibali/infogan
cd infogan

NOTE: If you are using a Pascal architecture GPU (CUDA 8.0), you will need to modify the Dockerfile to build from a CUDA 8.0 base image. Refer to #5 for more details. Please make this change before proceeding.

Build the Docker image which contains Torch and all other required dependencies.

nvidia-docker build -t infogan-torch .

Download the MNIST dataset.

nvidia-docker run -it --rm --volume=$PWD:/app infogan-torch sh download_mnist.sh

Finally, run the training script.

nvidia-docker run -it --rm --volume=$PWD:/app infogan-torch th bin/train_infogan.lua

Output artifacts will appear in the out/ directory during training, including examples of fake images generated by the generator network and serialized copies of the generator and discriminator networks.

About

An unofficial Torch implementation of InfoGAN

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published