PixelCNN++: Improving the PixelCNN with Discretized Logistic Mixture Likelihood and Other Modifications
Tim Salimans, Andrej Karpathy, Xi Chen, Diederik P. Kingma
Code Available — Be the first to reproduce this paper.
ReproduceCode
- github.com/openai/pixel-cnnOfficialIn papertf★ 0
- github.com/ajayjain/lmconvpytorch★ 79
- github.com/tuatruog/astrocompresspytorch★ 1
- github.com/pclucas14/pixel-cnn-pppytorch★ 0
- github.com/kamenbliznashki/pixel_modelspytorch★ 0
- github.com/sarus-tech/tf2-published-models/tree/master/pixelcnn_plustf★ 0
- github.com/andrecianflone/vector_quantizationpytorch★ 0
- github.com/google/flax/tree/master/examples/pixelcnnjax★ 0
Abstract
PixelCNNs are a recently proposed class of powerful generative models with tractable likelihood. Here we discuss our implementation of PixelCNNs which we make available at https://github.com/openai/pixel-cnn. Our implementation contains a number of modifications to the original model that both simplify its structure and improve its performance. 1) We use a discretized logistic mixture likelihood on the pixels, rather than a 256-way softmax, which we find to speed up training. 2) We condition on whole pixels, rather than R/G/B sub-pixels, simplifying the model structure. 3) We use downsampling to efficiently capture structure at multiple resolutions. 4) We introduce additional short-cut connections to further speed up optimization. 5) We regularize the model using dropout. Finally, we present state-of-the-art log likelihood results on CIFAR-10 to demonstrate the usefulness of these modifications.
Tasks
Benchmark Results
| Dataset | Model | Metric | Claimed | Verified | Status |
|---|---|---|---|---|---|
| CIFAR-10 | Pixel CNN ++ | NLL (bits/dim) | 2.92 | — | Unverified |