
摘要
PixelCNN 是一类最近提出的强大生成模型,具有可计算的似然性。本文讨论了我们在 https://github.com/openai/pixel-cnn 上实现的 PixelCNN 模型。我们的实现对原始模型进行了若干修改,这些修改不仅简化了模型结构,还提高了其性能。1) 我们在像素上使用了离散化的 Logistic 混合似然性(discretized logistic mixture likelihood),而不是 256 路 softmax,这加速了训练过程。2) 我们基于整个像素进行条件建模,而不是红绿蓝(R/G/B)子像素,从而简化了模型结构。3) 我们通过下采样高效地捕捉多分辨率下的结构特征。4) 我们引入了额外的短连接(short-cut connections),以进一步加快优化速度。5) 我们使用 dropout 对模型进行正则化。最后,我们展示了在 CIFAR-10 数据集上的最新对数似然结果,以证明这些修改的有效性。
代码仓库
google/flax/tree/master/examples/pixelcnn
jax
GitHub 中提及
tuatruog/astrocompress
pytorch
GitHub 中提及
andrecianflone/vector_quantization
pytorch
GitHub 中提及
kamenbliznashki/pixel_models
pytorch
GitHub 中提及
pclucas14/pixel-cnn-pp
pytorch
GitHub 中提及
openai/pixel-cnn
官方
tf
ajayjain/lmconv
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| density-estimation-on-cifar-10 | Pixel CNN ++ | NLL (bits/dim): 2.92 |