来源:https://en.wikipedia.org/wiki/Edmond_de_Belamy

五年前,Generative Adversarial Networks(GANs)在深度学习领域掀起了一场革命。这场革命产生了一些重大的技术突破。Ian Goodfellow等人在“Generative Adversarial Networks”中提出了生成对抗网络。学术界和工业界都开始接受并欢迎GAN的到来。GAN的崛起不可避免。

首先,GAN最厉害的地方是它的学习性质是无监督的。GAN也不需要标记数据,这使GAN功能强大,因为数据标记的工作非常枯燥。

其次,GAN的潜在用例使它成为交谈的中心。它可以生成高质量的图像,图片增强,从文本生成图像,将图像从一个域转换为另一个域,随年龄增长改变脸部外观等等。这个名单是远远不够的。我们将在本文中介绍一些流行的GAN架构。

第三,围绕GAN不断的研究是如此令人着迷,以至于它吸引了其他所有行业的注意力。我们将在本文后面部分讨论重大技术突破。

诞生

生成对抗网络(GAN)具有两个网络,生成器网络和鉴别器网络。这两个网络可以是神经网络,从卷积神经网络,递归神经网络到自动编码器。在这种配置中,两个网络参与竞争游戏并试图相互超越,同时帮助他们完成自己的任务。经过数千次迭代后,如果一切顺利,生成器网络可以完美生成逼真的虚假图像,并且鉴别器网络可以很好地判断的图像是真实的还是虚假的。换句话说,生成器网络将来自潜在空间的随机噪声矢量(不是来自潜在空间的所有GAN样本)变换为真实数据集的样本。GAN的训练是一个非常直观的过程。

GAN具有大量的实际用例,如图像生成,艺术品生成,音乐生成和视频生成。此外,它还可以提高图像质量,图像风格化或着色,面部生成以及其他更多有趣的任务。

图片来源:O'Reilly

上图表示了一般的GAN网络的架构。首先,从潜在空间采样D维的噪声矢量并发送到生成器网络。生成器网络将该噪声矢量转换为图像。然后将生成的图像发送到鉴别器网络以进行分类。鉴别器网络不断地从真实数据集和由发生器网络生成的图像获得图像。它的工作是区分真实和虚假的图像。所有GAN架构都遵循这样的设计。

青春期

在青春期,GAN产生了许多流行的架构,如DCGAN,StyleGAN,BigGAN,StackGAN,Pix2pix,Age-cGAN,CycleGAN等。这些结构的结果都非常令人满意。下面详细讨论这些GAN架构。

DCGAN

这是第一次在GAN中使用卷积神经网络并取得了非常好的结果。之前,CNN在计算机视觉方面取得了前所未有的成果。但在GAN中还没有开始应用CNNs。Alec Radford,Luke Metz,Soumith Chintala等人“Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks”提出了DCGAN。这是GAN研究的一个重要里程碑,因为它提出了一个重要的架构变化来解决训练不稳定,模式崩溃和内部协变量转换等问题。从那时起,基于DCGAN的架构就被应用到了许多GAN架构。

来源:https://arxiv.org/pdf/1511.06434.pdf

BigGAN

这是GAN中用于图像生成的最新进展。一个谷歌的实习生和谷歌DeepMind部门的两名研究人员发表了一篇“Large Scale GAN Training for High Fidelity Natural Image Synthesis”的论文。本文是来自Heriot-Watt大学的Andrew Brock与来自DeepMind的Jeff Donahue和Karen Simonyan合作的实习项目。

来源:https://arxiv.org/pdf/1809.11096.pdf

这些图像都是由BigGAN生成,正如你看到的,图像的质量足以以假乱真。这是GAN首次生成具有高保真度和低品种差距的图像。之前的最高初始得分为52.52,BigGAN的初始得分为166.3,比现有技术(SOTA)好100%。此外,他们将Frechet初始距离(FID)得分从18.65提高到9.6。这些都是非常令人印象深刻的结果。它最重要的改进是对生成器的正交正则化。

来源:https://arxiv.org/pdf/1809.11096.pdf

StyleGAN

StyleGAN是GAN研究领域的另一项重大突破。StyleGAN由Nvidia在题为“A Style-Based Generator Architecture for Generative Adversarial Network”的论文中介绍。

来源:https://medium.com/syncedreview/gan-2-0-nvidias-hyperrealistic-face-generator-e3439d33ebaf

StyleGAN在面部生成任务中创造了新记录。算法的核心是风格转移技术或风格混合。除了生成面部外,它还可以生成高质量的汽车,卧室等图像。这是GANs领域的另一项重大改进,也是深度学习研究人员的灵感来源。

StackGAN

StackJANs由Han Zhang,Tao Xu,Hongsheng Li还有其他人在题为StackGAN: Text to Photo-Realistic Image Synthesis with Stacked Generative Adversarial Networks的论文中提出。他们使用StackGAN来探索文本到图像的合成,得到了非常好的结果。一个StackGAN由一对网络组成,当提供文本描述时,可以生成逼真的图像。

来源:https://arxiv.org/pdf/1612.03242.pdf

正如上图所看到的,提供文本描述时,StackGAN生成了逼真的鸟类图像。最重要的是生成的图像正类似于所提供的文本。文本到图像合成有许多实际应用,例如从一段文本描述中生成图像,将文本形式的故事转换为漫画,创建文本描述的内部表现。

CycleGAN

CycleGAN有一些非常有趣的用例,例如将照片转换为绘画,将夏季拍摄的照片转换为冬季拍摄的照片,或将马的照片转换为斑马照片,或者相反。CycleGANs 由Jun-Yan Zhu,Taesung Park,Phillip Isola和Alexei A. Efros在题为“Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks”的论文中提出。CycleGAN用于不同的图像到图像翻译。

来源:https://arxiv.org/pdf/1703.10593.pdf

Pix2pix

对于图像到图像的翻译任务,pix2pix也显示出了令人印象深刻的结果。无论是将夜间图像转换为白天的图像还是给黑白图像着色,或者将草图转换为逼真的照片等等,Pix2pix在这些例子中都表现非常出色。pix2pix网络由Phillip Isola,Jun-Yan Zhu,Tinghui Zhou和Alexei A. Efros在他们的题为“Image-to-Image Translation with Conditional Adversarial Networks”的论文中提出。

来源:https://phillipi.github.io/pix2pix/

这是一个交互式的演示,能够从草图生成真实图像。

Age-cGAN(Age Conditional Generative Adversarial Networks)

面部老化有许多行业用例,包括跨年龄人脸识别,寻找失踪儿童,或者用于娱乐。Grigory Antipov,Moez Baccouche和Jean-Luc Dugelay在他们的题为“Face Aging with Conditional Generative Adversarial Networks”的论文中提出了用条件GAN进行面部老化。

1_p1VK22zXlezG-T712nEhbQ

该图显示了Age-cGAN是怎样从原来的年龄转换为目标年龄的。

这些都是非常流行的GAN架构。除了这些,还有数以千计的GAN架构。这取决于哪种架构适合您的需求。

崛起

正如着名理论物理学家理查德费曼所说:

“What I can’t create, I don’t understand”

GAN背后的思想是训练已知数据的网络。GAN开始了解数据,通过这种了解,GAN开始创建逼真的图像。

Edmond de Belamy

由GAN创作的Edmond de Belamy在佳士得拍卖会上以432,500美元的价格成交。这是GAN发展的重要一步,全世界第一次目睹了GAN及其潜力。在此之前,GAN主要局限于研究实验室,并由机器学习工程师使用。这一行为使GAN成为面向公众的一个入口。

这个人并不存在

您可能会熟悉 https://thispersondoesnotexist.com 这个网站。它是由优步的软件工程师Philip Wan创建。他根据NVIDIA发布的名为StyleGAN的代码创建了这个网站。每当你刷新时,它都会生成一个新的不存在的人脸,看起来无法判断它是否是假的。这项技术有可能创造一个完全的虚拟世界。

来源:https://thispersondoesnotexist.com/

实在是太棒了!

Deep Fakes

DeepFakes是另一个可怕的具有破坏性的技术。基于GAN,可以将人脸粘贴到视频中的目标人物上。人们找到这项技术的缺点,但对于AI研究人员来说,这是一个重大突破。这项技术有可能在电影行业节省数百万美元,在那里需要数小时的编辑来改变面对的特技演员。

这项技术很可怕,但我们也可以把他用在对社会好的一面。

来源:https://thenextweb.com/artificial-intelligence/2018/02/21/deepfakes-algorithm-nails-donald-trump-in-most-convincing-fake-yet/

未来发展

StyleGAN目前是GitHub上第六热门的python项目。到目前为止提出的GAN的数量已经达到了数千。这个GitHub仓库有一个受欢迎的GAN列表及论文:https://github.com/hindupuravinash/the-gan-zoo

现在

GAN已被用于增强游戏图形。我对GAN的这种用例感到非常兴奋。最近,NVIDIA发布了一个视频,其中展示了如何使用GAN对视频中的环境进行游戏化。

结论

在本文中,我们看到了GAN如何发展壮大并成为一种全球现象。我希望在未来几年GAN达到民主化。在本文中,我们从GAN的诞生开始,然后了解了一些流行的GAN架构,最后,我们看到了GAN的崛起。当我看到关于GAN的负面新闻时感到一些困惑。我相信,我们有责任让每个人都了解GAN带来的影响,以及我们如何在伦理道德上尽可能使用GAN。

欢迎关注磐创博客资源汇总站:
http://docs.panchuang.net/

欢迎关注PyTorch官方中文教程站:
http://pytorch.panchuang.net/

科普 | ​生成对抗网络(GAN)的发展史相关推荐

  1. 生成对抗网络(GAN)的发展史

    目录 诞生 青春期 1.DCGAN 2.BigGAN 3.StyleGAN 4.StackGAN 5.CycleGAN 6.Pix2pix 7.Age-cGAN(Age Conditional Gen ...

  2. [论文阅读] (06) 万字详解什么是生成对抗网络GAN?经典论文及案例普及

    <娜璋带你读论文>系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢.由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学 ...

  3. 万字详解什么是生成对抗网络GAN

    摘要:这篇文章将详细介绍生成对抗网络GAN的基础知识,包括什么是GAN.常用算法(CGAN.DCGAN.infoGAN.WGAN).发展历程.预备知识,并通过Keras搭建最简答的手写数字图片生成案. ...

  4. 简述一下生成对抗网络GAN(Generative adversarial nets)模型?

    简述一下生成对抗网络GAN(Generative adversarial nets)模型? 生成对抗网络GAN是由蒙特利尔大学Ian Goodfellow在2014年提出的机器学习架构. 要全面理解生 ...

  5. 生成对抗网络gan原理_中国首个“芯片大学”即将落地;生成对抗网络(GAN)的数学原理全解...

    开发者社区技术周刊又和大家见面了,萌妹子主播为您带来第三期"开发者技术联播".让我们一起听听,过去一周有哪些值得我们开发者关注的重要新闻吧. 中国首个芯片大学,南京集成电路大学即将 ...

  6. 必读!TOP10生成对抗网络GAN论文(附链接)

    来源:新智元 本文约2200字,建议阅读7分钟. 本文所选论文提供了一个易读的对GAN的介绍,帮助你理解GAN技术的基础. [ 导读 ]生成对抗网络 (GAN) 是深度学习中最有趣.最受欢迎的应用之一 ...

  7. 生成对抗网络GAN综述

    题目:生成对抗网络GAN综述 系别:工程物理系 姓名:王雨阳 简 介: 生成对抗网络(GAN)是目前深度学习中应用较为广泛的一种网络.在我今后的研究中,可能会用到GAN,并且我也想了解一下GAN,因此 ...

  8. 权重对生成对抗网络GAN性能的影响

    本文制作了一个生成对抗网络GAN网络,并通过调节权重的初始化方法来观察权重对网络性能的影响. 生成网络的结构是784*300*784,对抗网络的结构是784*300*1.生成网络的输入是一个28*28 ...

  9. DL之GAN:生成对抗网络GAN的简介、应用、经典案例之详细攻略

    DL之GAN:生成对抗网络GAN的简介.应用.经典案例之详细攻略 目录 生成对抗网络GAN的简介 1.生成对抗网络的重要进展 1.1.1986年的RBM→2006年的DBN

最新文章

  1. 【MySQL】面试官:如何查询和删除MySQL中重复的记录?
  2. opengl 大作业_「陪玩时光」糕妈:说说年糕的小学生活,先从陪作业和家长群聊起...
  3. 发一个统计项目代码行数的Java代码
  4. Oracle学习:常用语句
  5. Unity基础之:UnityAPI的学习
  6. arm opcode hook
  7. ip dhcp snooping的设置
  8. Python_爬虫_urllib解析库
  9. vb杨辉三角代码编写_杨辉三角怎样用VB写杨辉三角的完整代码 – 手机爱问
  10. NeatUpload 的使用
  11. cnzz.php,CNZZ网站流量统计原理简析
  12. Python——下载音乐(干货)
  13. linux sli 提高效率,两大优点!NVIDIA混合SLI功能完全解析
  14. 宝文理计算机分数位次,2017高考位次换算(2019高考分数线排名)
  15. unchecked runtime.lasterror: cannot create item with duplicate id XXX 谷歌浏览器扩展插件开发问题
  16. 【Python】回数是指从左向右读和从右向左读都是一样的数,例如12321,909。请利用filter()筛选出回数
  17. 隐藏电脑桌面desktop.ini文件图标方法
  18. 哪个软件可以自己设计字体?好用的制作艺术字软件
  19. 纽约大学计算机与科学,纽约大学计算机科学专业研究生入学要求
  20. 虚拟现实项目开发流程

热门文章

  1. 基于单片机智能门禁密码锁仿真系统-毕设课设资料
  2. 哄女友开心系列,图片拼图
  3. swap函数 一点儿都不简单
  4. Linux 硬盘/文件系统的管理
  5. 动手学深度学习V2.0(Pytorch)——10.感知机(激活函数)
  6. Bentley软件公司设立1亿美元风投基金加速推进基础设施数字孪生发展
  7. Chrome 浏览器安装Vue2、Vue3插件方法 (详细有效)
  8. 今日头条飞聊下载,重名软件较多可别下错哦
  9. 【win】万维网发布服务(W3SVC)已停止。除非万维网发布服务(W3SVC)正在运行,否则无法启动网站。
  10. tkinter显示多行内容的表格单元