Python
Switch branches/tags
Nothing to show
Clone or download
Latest commit 1d98c28 Oct 25, 2017
Permalink
Failed to load latest commit information.
assets add samples Aug 2, 2016
.gitignore add results, fix generation bugs. Jul 22, 2016
LICENSE add LICENSE Aug 10, 2016
README.md add samples Aug 2, 2016
cifar10.py . Aug 8, 2017
main.py Fixed several flags types from `float' to `int' Aug 8, 2017
network.py . Aug 9, 2017
ops.py . Aug 8, 2017
statistic.py . Aug 8, 2017
utils.py 256-way softmax in progress Jul 22, 2016

README.md

PixelCNN & PixelRNN in TensorFlow

TensorFlow implementation of Pixel Recurrent Neural Networks. This implementation contains:

model

  1. PixelCNN
  • Masked Convolution (A, B)
  1. PixelRNN
  • Row LSTM (in progress)
  • Diagonal BiLSTM (skew, unskew)
  • Residual Connections
  • Multi-Scale PixelRNN (in progress)
  1. Datasets
  • MNIST
  • cifar10 (in progress)
  • ImageNet (in progress)

Requirements

Usage

First, install prerequisites with:

$ pip install tqdm gym[all]

To train a pixel_rnn model with mnist data (slow iteration, fast convergence):

$ python main.py --data=mnist --model=pixel_rnn

To train a pixel_cnn model with mnist data (fast iteration, slow convergence):

$ python main.py --data=mnist --model=pixel_cnn --hidden_dims=64 --recurrent_length=2 --out_hidden_dims=64

To generate images with trained model:

$ python main.py --data=mnist --model=pixel_rnn --is_train=False

Samples

Samples generated with pixel_cnn after 50 epochs.

generation_2016_08_01_16_40_28.jpg

Training details

Below results uses two different parameters

[1] --hidden_dims=16 --recurrent_length=7 --out_hidden_dims=32
[2] --hidden_dims=64 --recurrent_length=2 --out_hidden_dims=64

Training results of pixel_rnn with [1] (yellow) and [2] (green) with epoch as x-axis:

pixel_rnn

Training results of pixel_cnn with [1] (orange) and [2] (purple) with epoch as x-axis:

pixel_cnn

Training results of pixel_rnn (yellow, green) and pixel_cnn (orange, purple) with hour as x-axis:

pixel_rnn_cnn_relative

References

Author

Taehoon Kim / @carpedm20