Skip to content

Latest commit

 

History

History

stacked_MNIST_experiments

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

PacGAN: The power of two samples in generative adversarial networks

[paper (arXiv)] [paper (NeurIPS)] [poster] [website] [interview (youtube)] [code]

Authors: Zinan Lin, Ashish Khetan, Giulia Fanti, Sewoong Oh

Stacked MNIST experiments

Prerequisites

The codes are based on Taehoon Kim's implementation of DCGAN. Before running codes, please download MNIST dataset according to instructions on this page. Many thanks to Taehoon Kim!

Before running codes, you may need to change GPU configurations according to the devices you have. The configurations are set in config.py in each directory. Please refer to GPUTaskScheduler github page for details of how to make proper configurations.

The GAN part is implemented by TensorFlow, the evaluation part is implemented by Keras. Please set Keras's backend to Theano. Otherwise there will be two tensorflow models running on one GPU node & one process, which may produce unpredictable results.

Running code

cd VEEGAN_experiment
python train_mnist.py
python main.py
cd unrolled_GAN_experiment
cd D=0.5G
python train_mnist.py
python main.py
cd unrolled_GAN_experiment
cd D=0.25G
python train_mnist.py
python main.py

Note: The MNIST classifier code train_mnist.py is based on Keras' demo code.

Results

Figure3

Table2

Table3

The detailed explanation of the architectures, hyperparameters, metrics, and experimental settings are given in the paper.

Pretrained model

The tensorflow checkpoint files of one trial of DCGAN, PacDCGAN2, and PacDCGAN3, PacDCGAN4 in VEEGAN experiment (Figure 3 and Table 2 above) can be downloaded here.