【模型解读】历数GAN的5大基本结构

作者&投稿:郴兔 (若有异议请与网页底部的电邮联系)
~ 首发于微信公众号《有三AI》

【模型解读】历数GAN的5大基本结构

生成对抗网络是近几年来无监督学习领域里最大的进展,被誉为下一代深度学习,不管是研究热度还是论文数量,已经逼近甚至超越传统判别式的CNN架构。

这一次我们简单介绍一下生成对抗网络的主流模型结构,从一个生成器一个判别器到多个生成器多个判别器。

作者 | 言有三

编辑 | 言有三

我们这一期文章不打算从头开始讲述GAN,所以如果大家没有相关基础的,就先看一下我们上一期GAN的介绍。

【技术综述】有三说GANs(上)​

一个基本的用于生成图像的GAN的结构就是这样的。

Generator就是生成器,它输入噪声,输出产生的图像。通常噪声就是一个一维的向量,经过reshape为二维图像,然后利用若干个反卷积层来学习上采样。

如全卷积的DCGAN模型[1],输入就是1*100的向量,然后经过一个全连接层学习,reshape到4*4*1024的张量,再经过4个上采样的反卷积网络,生成64*64的图。

Discrimator就是普通的CNN分类器,输入真实样本或者生成的假样本进行分类,在DCGAN中也是4个卷积层。

采用多个判别器[2]的好处带来了类似于boosting的优势,训练一个过于好的判别器,会损坏生成器的性能,这是GAN面临的一个大难题。如果能够训练多个没有那么强的判别器,然后进行boosting,可以取得不错的效果,甚至连dropout技术都可以应用进来。

多个判别器还可以相互进行分工,比如在图像分类中,一个进行粗粒度的分类,一个进行细粒度的分类。在语音任务中,各自用于不同声道的处理。

一般来说,生成器相比判别器要完成的任务更难,因为它要完成数据概率密度的拟合,而判别器只需要进行判别,导致影响GAN性能的一个问题就是模式坍塌,即生成高度相似的样本。

采用多个生成器单个判别器的方法,可以有效地缓解这个问题。

从上图结构可以看出,多个生成器采用同样的结构,在网络的浅层还共享权重。

在利用GAN进行半监督的图像分类任务时,判别器需要同时担任两个角色,即判别生成的假样本,以及预测类别,这对判别器提出了较高的要求。通过增加一个分类器可以分担判别器的工作量,即将捕捉样本和标签的条件分布这一任务交给生成器和分类器,而判别器只专注于区分真实样本和生成的样本。

这一类结构以Triple Generative Adversarial Nets为代表,下图是它的网络结构。

多个生成器和多个判别器就又有几种。

5.1 级联结构[5]

早期以DCGAN为代表的网络生成的图片分辨率太低,质量不够好,都不超过100×100,在32×32或者64×64左右。这是因为难以一次性学习到生成高分辨率的样本,收敛过程容易不稳定。

类似的问题在图像分割,目标检测中都存在。在目标检测中,级联网络被广泛使用,即采用从粗到精的方法依次改进检测器的性能。在图像分割中进行上采样时也采用学习小倍率的放大而不是大倍率的方法,如利用两个2倍上采样替换一个4倍的上采样,不仅可以增强网络的表达能力,还降低了学习难度。

基于此,金字塔GAN结构被提出并广泛使用,它参考图像领域里面的金字塔结构由粗到精一步一步生成图像,并添加残差进行学习。

上图就是它的结构,从低分辨率z3开始,逐级提升,最终生成I0,这是一个金字塔形状的结构,以下符号较多用图片代替。

5.2 并行与循环结构[6]

GAN有一大应用就是风格化,实现两个域之间的风格互换,以CycleGAN[6]为典型代表。它包含了多个生成器和多个判别器。Cycle的典型结构如下:

X和Y分别表示两个域的图像,可知这里存在两个生成器G和F,分别用于从X到Y的生成和Y到X到生成,包含两个判别器,分别是Dx和Dy。而损失本身也增加了一个循环损失,感兴趣读者可以去细读文章。

另外在cross domain学习中也常用到多判别器多生成器多结构,分别学习不同的域。而且各个域的判别器和生成器通常会共享一些权重,如下图是CoGAN[7]的网络结构。

另外还有一些零零散散的结构,比如3D GAN,RNN GAN,由于都是上面这几类的变种,不再统一介绍。

[1] Radford A, Metz L, Chintala S, et al. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks[J]. international conference on learning representations, 2016.

[2] Durugkar I P, Gemp I, Mahadevan S, et al. Generative Multi-Adversarial Networks[J]. international conference on learning representations, 2017.

[3] Ghosh A, Kulharia V, Namboodiri V P, et al. Multi-Agent Diverse Generative Adversarial Networks[J]. computer vision and pattern recognition, 2018: 8513-8521.

[4] Chongxuan L I, Xu T, Zhu J, et al. Triple Generative Adversarial Nets[J]. neural information processing systems, 2017: 4088-4098.

[5] Denton E L, Chintala S, Szlam A, et al. Deep generative image models using a Laplacian pyramid of adversarial networks[J]. neural information processing systems, 2015: 1486-1494.

[6] Zhu J, Park T, Isola P, et al. Unpaired Image-to-Image Translation Using Cycle-Consistent Adversarial Networks[J]. international conference on computer vision, 2017: 2242-2251.

[7] Liu M, Tuzel O. Coupled Generative Adversarial Networks[J]. neural information processing systems, 2016: 469-477.

本系列的完整目录:

【模型解读】从LeNet到VGG,看卷积+池化串联的网络结构

【模型解读】network in network中的1*1卷积,你懂了吗

【模型解读】GoogLeNet中的inception结构,你看懂了吗

【模型解读】说说移动端基准模型MobileNets

【模型解读】pooling去哪儿了?

【模型解读】resnet中的残差连接,你确定真的看懂了?

【模型解读】“不正经”的卷积神经网络

【模型解读】“全连接”的卷积网络,有什么好?

【模型解读】从“局部连接”回到“全连接”的神经网络

【模型解读】深度学习网络只能有一个输入吗

【模型解读】从2D卷积到3D卷积,都有什么不一样

【模型解读】浅析RNN到LSTM


蝶山区13213522931: 为什么要说GaN基LED?“GaN基”到底是什么意思? -
柘步枸杞: LED的发光主要靠的就是电子激发发光芯片(也就是发光p-n结)而发光的.发光芯片(发光的p-n结)是GaN或主相是GaN的晶体做的.所以叫做GaN基LED

蝶山区13213522931: 衬底的材料简介 -
柘步枸杞: 氮化物衬底材料的研究与开发增大字体复位宽带隙的GaN基半导体在短波长发光二极管、激光器和紫外探测器,以及高温微电子器件方面显示出广阔的应用前景;对环保,其还是很适合于环保的材料体系.半导体照明产业发展分类所示的若干主...

蝶山区13213522931: 请问三亚哪里有形象设计或做服装搭配的机构?类似于服装搭配,陪同购物之类的,求解答! -
柘步枸杞: 海南省三亚市夏日百货6楼H6时尚文化空间

蝶山区13213522931: 干妹妹对你有多好?讲最亲切的!
柘步枸杞: 你好,非常好,和亲妹妹一样.

蝶山区13213522931: 帮我翻译一下(英译中),不要谷歌 -
柘步枸杞: 挥发性、深度和命令构成:从纯净的限制顺序未来市场行情的证据Ho-Chyuan陈和Juping吴电子交易系统的The迅速发展吸引了研究员对研究pure限制顺序市场,限制顺序贸易商提供流动资产完...

蝶山区13213522931: 魔方的GAN手法是什么意思
柘步枸杞: GAN是一位魔方高手的英文名,很多的手法是他整理的.公式也是他整理成又顺手又快捷.所以GAN的手法是非常适合速度比赛又是最好最顺手,所以叫GAN整理重编的手法,让新手更方便还原魔方. 参考: http://wenwen.sogou.com/z/q876744739.htm 欢迎采纳追问. 如果使用gan手法拧F2L的公式 ,会比较顺手 .其实CFOP是一种还原魔方的方法,而gan手法是gan自己摸索出来拧CFOP公式比较顺手的一种手法.这样说LZ能明白么? 我认为不同的公式每个人拧起来都有不同的见解,别人的手法不一定就是最好的.应该探索出最适合自己的手法.

蝶山区13213522931: 人工智能算法当中涉及众多的学习算法,比如机器学习、迁移学习、增...
柘步枸杞: 首先,要背诵他的公式,然后反复的作该公式到滚瓜烂熟,然后根据教程中给你的图形,和公式对应上,到以后遇见这个图形的时候,就对应这个公式,作出这个公式所对应的步骤,就能顺利的把GAN的手法使用出来了

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网