Tensorflow生成模型收集: GAN与VAE

2017年08月30日 由 yining 发表 3557 0
本文将收集TensorFlow可生成的模型,列举出各种GAN和VAE的Tensorflow实现。

生成对抗网络(GAN)


列表

生成对抗网络(GANs)

GAN文章链接:https://arxiv.org/abs/1406.2661

LSGAN文章链接:https://arxiv.org/abs/1611.04076

WGAN文章链接:https://arxiv.org/abs/1701.07875

DRAGAN文章链接:https://arxiv.org/abs/1705.07215

CGAN文章链接:https://arxiv.org/abs/1411.1784

infoGAN文章链接:https://arxiv.org/abs/1606.03657

ACGAN文章链接:https://arxiv.org/abs/1610.09585

EBGAN文章链接:https://arxiv.org/abs/1609.03126

BEGAN文章链接:https://arxiv.org/abs/1702.08431

GAN架构变体
GAN架构变体

mnist结果

生成器和鉴别器的网络架构恰好与infoGAN纸上提到的架构相同。infoGAN纸地址:https://arxiv.org/abs/1606.0365
为了公平地比较所有Gan变体的核心思想,除了EBGAN和BEGAN,网络架构的所有实现都保持不变。然后对EBGAN/BEGAN进行了小的修改,因为它们采用了自动编码器结构。

以下结果可以用命令重现:
python main.py --dataset mnist --gan_type  --epoch 25 --batch_size 64

随机生成

所有的结果都是随机抽取的。

生成对抗网络(GANs)生成对抗网络(GAN)每一行都有相同的噪声向量,每一列都有相同的标签条件。

有条件的生成

生成对抗网络(GAN)InfoGAN:操纵两个连续的代码
生成对抗网络(GAN)Fashion-mnist结果

mnist的网络架构的评论也被应用到这里。
Fashion-mnist是最近提出的一个数据集,它包含了6万个示例和1万个示例的测试集。Fashion-mnist数据集地址:https://github.com/zalandoresearch/fashion-mnist。每个例子都是一个28x28的灰度图像,与10个类(t恤/上衣,裤子,套衫,衣服,外套,凉鞋,衬衫,运动鞋,包,短靴)的标签相关联。

以下结果可以用命令重现:
python main.py --dataset fashion-mnist --gan_type  --epoch 40 --batch_size 64

随机生成

所有的结果都是随机抽取的。

生成对抗网络(GAN)生成对抗网络(GAN)有条件的生成

每一行都有相同的噪声向量,每一列都有相同的标签条件。

生成对抗网络(GAN)

如果没有mnist版本的超参数调优,那么ACGAN/infoGAN就不能很好地与iwth CGAN进行比较。ACGAN倾向于陷入模式崩溃。infoGAN倾向于忽略噪声矢量。它导致同一类中的不同样式不能被表示。

InfoGAN:操纵两个连续的代码

生成对抗网络(GAN)

变分自编码器(VAN)


列表变分自编码器(VAN)

VAE文章链接:https://arxiv.org/abs/1312.6114

CVAE文章链接:https://arxiv.org/abs/1406.5298

DVAE文章链接:https://arxiv.org/abs/1511.06406

AAE文章链接:https://arxiv.org/abs/1511.05644

VAE架构变体
变分自编码器(VAN)

mnist结果

译码器(发生器)和编码器(鉴别器)的网络架构与infoGAN纸上的架构相同。infoGAN纸地址:https://arxiv.org/abs/1606.0365。编码器的输出节点数是不同的。(VAE为2x z_dim,GAN为1)

以下结果可以用命令重现:
python main.py --dataset mnist --gan_type  --epoch 25 --batch_size 64

随机生成

所有的结果都是随机抽取的。

变分自编码器(VAN)

此外,还对GAN的结果进行了比较,比较了VAE和GAN生成的图像。主要的区别(VAE生成平滑和模糊的图像,GAN生成锐利的和手工的图像)可以从结果中观察到。

有条件的生成

每一行都有相同的噪声向量,每一列都有相同的标签条件。

变分自编码器(VAN)同时对CGAN的结果进行了比较,比较了CVAE和CGAN生成的图像。

Fashion-mnist结果

mnist的网络架构的评论也被应用到这里。

以下结果可以用命令重现:
python main.py --dataset fashion-mnist --gan_type  --epoch 40 --batch_size 64

随机生成

所有的结果都是随机抽取的。

变分自编码器(VAN)此外,还对GAN的结果进行了比较,比较了VAE和GAN生成的图像。

有条件的生成

每一行都有相同的噪声向量,每一列都有相同的标签条件。

变分自编码器(VAN)同时对CGAN的结果进行了比较,比较了CVAE和CGAN生成的图像。

文件夹架构

下面显示了基本的文件夹架构。
├── main.py # gateway
├── data
│ ├── mnist # mnist data (not included in this repo)
│ | ├── t10k-images-idx3-ubyte.gz
│ | ├── t10k-labels-idx1-ubyte.gz
│ | ├── train-images-idx3-ubyte.gz
│ | └── train-labels-idx1-ubyte.gz
│ └── fashion-mnist # fashion-mnist data (not included in this repo)
│ ├── t10k-images-idx3-ubyte.gz
│ ├── t10k-labels-idx1-ubyte.gz
│ ├── train-images-idx3-ubyte.gz
│ └── train-labels-idx1-ubyte.gz
├── GAN.py # vainilla GAN
├── ops.py # some operations on layer
├── utils.py # utils
├── logs # log files for tensorboard to be saved here
└── checkpoint # model files to be saved here

这个实现基于一个存储库,并在Windows 10和Ubuntu14.04上测试了Tensorflow。存储库地址:https://github.com/carpedm20/DCGAN-tensorflow
欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
写评论取消
回复取消