深度学习【11】对抗网络GAN

Generative Adversarial Networks对抗网络GAN是2014年的10佳论文之一,是一种新的生成模型。本质是对训练数据的概率分布进行建模,并且可以用来生成样本,如一张图像。对抗网络可以用一个简单的实际例子来说明,如艺术画的伪造者和鉴别者。一开始伪造者和鉴别者的水平都不高,但是鉴别者还是比较容易鉴别出伪造者伪造出来的艺术画。但随着伪造者对伪造技术的学习后,其伪造的艺术画会...
摘要由CSDN通过智能技术生成

Generative Adversarial Networks

对抗网络GAN是2014年的10佳论文之一,是一种新的生成模型。本质是对训练数据的概率分布进行建模,并且可以用来生成样本,如一张图像。对抗网络可以用一个简单的实际例子来说明,如艺术画的伪造者和鉴别者。一开始伪造者和鉴别者的水平都不高,但是鉴别者还是比较容易鉴别出伪造者伪造出来的艺术画。但随着伪造者对伪造技术的学习后,其伪造的艺术画会让鉴别者识别错误;或者随着鉴别者对鉴别技术的学习后,能够很简单的鉴别出伪造者伪造的艺术画。这是一个双方不断学习技术,以达到最高的伪造和鉴别水平的过程。
对抗网络其实并不是一个新的网络结构,而是一个训练框架。框架中有两个网络,生成网络和判别网络(生成网络和判别网络可为MLP或CNN等其他网络结构),分别对应伪造者和鉴别者。在mnist数据集中,生成网络用来生成一张手写图像,而判别网络则负责判断该张图片是机器生成还是人手写的。为了理解对抗网络为何有上述功能,必须明白下面几个问题:
a.生成网络和判别网络的各自输入输出是什么
b.怎么设计一个损失函数来达到同时提升生成网络的欺骗能力和判别网络的鉴别能力
c.训练数据是怎么样的
d.如何训练网络

判别网络

判别网络的任务是判断一张手写数字图片是生成网络生成的,还是真实数据。由此看来判别网络只是一个普通的分类模型,其输入是一张图像,输出是类别。在mnist手写数字例子中,判别网络的输入大小为28*28,输出节点个数为1。

生成网络

我们之前提到过生成网络的任务是对训练数据集的概率分别进行建模,同时能够生成伪造样例。因此生成网络的输出为一张图片,在mnist例子中输出层节点个数为28*28。而输入是符合某一分布的多维随机数。

损失函数对

抗网络的损失函数也很简单,其目的是使生成网络更具有欺骗性(对训练数据更好的建模)以及使判别网络有更强的鉴别能力。具体公式如下:

V(D,G)=Expdata(x)[logD(x)]+Ezpz(x)[log(1D(G(z
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值