ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

GAN和DCGAN

2020-02-22 18:42:46  阅读:584  来源: 互联网

标签:池化层 卷积 生成器 网络 鉴别器 GAN DCGAN


Generative Adversarial Networks

生成式对抗网络

Image Name

GAN的体系结构如图所示。在GAN架构中有两个部分:1生成器(generator)网络能够生成看起来像真实的数据。;2鉴别器(discrimiator)网络试图区分虚假数据和真实数据。这两个网络都在互相竞争。生成器网络试图欺骗鉴别器网络。这时,鉴别器网络就会适应新的假数据。这些信息反过来又用于改进生成器。

鉴别器是一个二分类器,用来分别输入的X是来源于真实数据和来源与鉴别器的假数据。假设鉴别器输入x时输出标量值o\in \mathbb{R},通过sigmoid层获得预测概率D(x)=1/(1+e^{-o})。假定标签y为1表示真实数据,0表示假数据。最小化交叉熵损失(cross-entropy loss)来训练鉴别器。

\min_{G}{\left \{ -y\log D(x)-(1-y)log(1-D(x)) \right \}}

生成器的输入采用随机生成数,比如z\sim N(0,1),输入z为潜在变量(latent variable),生成x^{'}=G(z)。生成器的目标是使得鉴别器把x^{'}=G(z)误认为真实数据,即D(G(z))\approx 1。对于给定鉴别器D,更新生成器G参数最小化y=0时的交叉熵损失(cross-entropy loss):

\max_{G}{\left \{ -(1-y)\log(1-D(G(z))) \right \}}=\max_{G}{\left \{ -\log(1-D(G(z))) \right \}}

当鉴别器可以识别出生成数据时,D(x^{'})\approx 0的损失接近0,导致梯度太小(梯度消失),无法有效训练生成器,因此采用最小化以下损失:

\min_{G}{\left \{ -y\log(D(G(z))) \right \}}=\min_{G}{\left \{ -\log(D(G(z))) \right \}}

训练目标使得输入x^{'}=G(z)鉴别器输出y=1

综上所述,D和G正在玩一个具有综合目标函数的“极小极大”游戏:

\min_{D}\max_{G}{\left \{ -E_{x\sim Data}\log D(x)-E_{z\sim Noise}\log(1-D(G(z)) ) \right \}}

 

DCGAN

DCGAN 的判别器和生成器都使用了卷积神经网络(CNN)来替代GAN 中的多层感知机,同时为了使整个网络可微,拿掉了CNN 中的池化层,另外将全连接层以全局池化层替代以减轻计算量。

2. 去卷积(反卷积,Deconvolution)
从上图中可以看到,生成器G 将一个100 维的噪音向量扩展成64 * 64 * 3 的矩阵输出,整个过程采用的是微步卷积的方式。作者在文中将其称为fractionally-strided convolutions,并特意强调不是deconvolutions。

上采样和去卷积是同一个概念,它的目的是将经过池化层以后缩小的矩阵扩大到一定的大小,比如说从3 * 3 扩大到5 * 5,如下图所示:

 

而去卷积(链接:反卷积)又包含转置卷积和微步卷积,两者的区别在于padding 的方式不同:

另外还有一个概念叫空洞卷积(Dilated Convolution)。在pixel-wise 目标检测任务上有一个常见的场景就是需要通过去卷积来会恢复经过池化层以后的矩阵大小,先池化再去卷积的过程实际上损失了很多信息,而这个过程的真实目的实际上就是为了通过缩小矩阵size 的方式来增大感受野,那能不能跳过先缩小在增大的过程直接进行感受野放大呢?这个就是所谓的空洞卷积,更详细的内容可以参考这个链接:空洞卷积

参考资料:

https://blog.csdn.net/qq_33594380/article/details/84135797

 

 

 

 

 

 

 

wjsjjss 发布了14 篇原创文章 · 获赞 1 · 访问量 1001 私信 关注

标签:池化层,卷积,生成器,网络,鉴别器,GAN,DCGAN
来源: https://blog.csdn.net/wjsjjss/article/details/104445565

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有