DL学习--GAN

简介

生成式对抗网络,主要介绍三篇论文:1)Generative Adversarial Networks;2)Conditional Generative Adversarial Nets;3)Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks。

第一篇论文

GAN的过程和原理

GAN启发自博弈论中的二人零和博弈(two-player game),GAN模型中的两位博弈方分别有生成式模型(generative model)和判别式模型(discriminative model)充当。生成模型G捕捉样本数据的分布,用服从某一分部(均匀分布,高斯分布等)的噪声z生成一个类似真实训练数据的样本,追求效果是越像真实样本越好;判别模型D是一个二分类器,估计一个样本来自于训练数据(而非生成数据)的概率,如果样本来自于真实的训练数据,D输出大概率,否则,D输出小概率。可以做如下对比:生成网络G好比假币制造团队,专门制造假币,判别网络D好比警察,专门检测使用的货币是真币还是假币,G的目标是想方设法生成和真币一样的货币,使得D判别不出来,D的目标是想方设法检测出来G生成的假币。
这里写图片描述
在训练的过程中固定一方,更新另一方的网络权重,交替迭代,在这个过程中,双方都极力优化自己的网络,从而形成竞争优势,直到双方达到一个动态的平衡(纳什平衡),此时生成模型G恢复了训练数据的分布(造出了和真实数据一模一样的样本),判别模型再也判别不出来结果,准确率为50%,约等于乱猜。
这里写图片描述
当固定生成网络G的时候,对于判别网络D的优化,可以这样理解:输入来自于真实数据,D优化网络结构使自己输出1,输入看来自于生成网络,D优化网络结构使自己输出0;当固定判别网络D的时候,G优化自己的网络使自己输出尽可能和真实数据一样的样本,并且使得生成的样本经过D的判别之后,D输出高概率。
第一篇文章,在MNIST手写数据集上生成的结果如下图:
这里写图片描述
最右边的一列是真实样本的图像,前面五列是生成网络生成的样本图像,可以看到生成的样本还是很像真实样本的,只是和真实样本属于不同的类,类别是随机的。

第二篇论文

给GAN加上条件,让生成的样本符合我们的预期,这个条件可以是类别标签(例如MNIST手写数据集的类别标签),也可以是其他的多模态信息(例如对图像的描述语言)等。用公式表示就是:
这里写图片描述
式子中的y是所加的条件,结构图如下:
这里写图片描述
生成结果如下图:
这里写图片描述
图中所加的条件y是类别标签。

第三篇论文

DCGAN

实际中代码使用率最高的一篇文章,代码也是这篇文章代码的初级版本,它优化了网络结构,加入了conv,batch_norm等层,使得网络更容易训练,网络结构如下:
这里写图片描述
可以有加条件和不加条件两种网络,论文还做了好多试验,展示了这个网络在各种数据集上的结果。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值