【导读】生成式对抗网络模型(GANs)是基于深度学习的一种强大的生成模型,是一类机器学习技术,它由两个同时训练的模型组成:一个(生成器)训练生成假数据,另一个(鉴别器)训练从真实例子中辨别假数据,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。牛津大学Jakub Langr 撰写了《GANs in Action Deep learning with Generative Adversarial Networks》的著作,囊括了关于GAN的定义、训练、变体等,全面叙述关于当下AI最重要的技术之一GAN的著作,是学习生成式对抗网络非常好的学习图书,是关于GAN的最好的书籍之一。

深度学习系统在识别文本、图像和视频中的模式方面做得非常好。但事实证明,创建逼真的图像、自然的句子和段落,或翻译成地道英语的应用程序是难以实现的。生成式对抗网络(GANs)通过将两个相互对抗的神经网络(一个生成内容,另一个拒绝质量较差的样本)配对,为这些挑战提供了一个有希望的解决方案。

GAN

GANs已经取得了被认为是人工系统不可能取得的显著成果,例如能够生成逼真的人脸、将涂鸦变成类似照片的图像、将马的视频片段变成奔跑的斑马。最重要的是,GANs学得很快,不需要费力地标注大量训练数据。

2014年由谷歌的Ian Goodfellow发明的生成式对抗网络(GANs)是深度学习中最重要的创新之一。在GANs中,一个神经网络(生成器)生成内容(图像、句子等等),另一个神经网络(识别器)确定它们是否来自生成器,因此是“假的”,还是来自训练数据集,因此是“真实的”。在这两个系统之间的相互作用中,当生成器试图欺骗鉴别器相信“赝品”是真实的时,它会产生更真实的输出。其结果是一个可以生成逼真图像或自然文本和语音的生成器,以及一个训练有素的识别器,可以精确地识别和分类这类内容。

本书简介

实战GAN:用生成对抗式网络进行深度学习可以教会你如何构建和训练自己的生成对抗式网络。首先,您将了解生成模型以及GAN的工作原理,并概述它们的潜在用途。然后,随着您探索GAN体系结构的基础:生成器和鉴别器网络,您将开始构建自己的简单的对抗系统。

通过本书迷人的示例和详细的插图,您将学习为不同的场景培训不同的GAN体系结构。您将探索生成高分辨率图像、图像到图像的转换、对抗性学习以及目标数据生成,从而使您的系统变得智能、有效和快速。

目录:

  • 1 INTRODUCTION TO GANS

    • 1.1 Introduction
    • 1.2 Prerequisites
    • 1.3 What Are Generative Adversarial Networks?
      • 1.3.1 GAN in Action
      • 1.3.2 GAN Training
      • 1.3.3 GAN Training Visualized
      • 1.3.4 Reaching Equilibrium
      • 1.3.5 The Pros and Cons of Studying GANs
    • 1.4 Applications of GANs
    • 1.5 Guide to this Book
    • 1.6 Summary
  • 2 AUTOENCODERS AS A PATH TO GANS

    • 2.1 Why did we include this chapter?
      • 2.1.1 Generative learning is a new area for most
      • 2.1.2 Challenges of generative modelling
      • 2.1.3 An Important part of the literature today
    • 2.2 So what are autoencoders to GANs?
    • 2.3 What are the reasons behind autoencoders?
    • 2.4 Overview of Autoencoders
    • 2.5 Usage of autoencoders
    • 2.6 Unsupervised learning
    • 2.7 New take on an old idea
    • 2.8 Variational autoencoder (VAE)
    • 2.9 Code is life
    • 2.10 Summary
  • 3 YOUR FIRST GAN: GENERATING HANDWRITTEN DIGITS

    • 3.1 Introduction
      • 3.1.1 Adversarial Training
      • 3.1.2 The Generator and the Discriminator
      • 3.1.3 GAN Training Algorithm
    • 3.2 Tutorial: Generating Handwritten Digits
      • 3.2.1 Import Statements
      • 3.2.2 The Generator
      • 3.2.3 The Discriminator
      • 3.2.4 Build the Model
      • 3.2.5 Training
      • 3.2.6 Outputting Sample Images
      • 3.2.7 Run the Model
      • 3.2.8 Inspecting the Results
    • 3.3 Conclusion
    • 3.4 Chapter Summary
  • 4 DEEP CONVOLUTIONAL GAN (DCGAN)

    • 4.1 Introduction
    • 4.2 Convolutional Neural Networks (ConvNets)
    • 4.3 Brief History of the DCGAN
    • 4.4 Batch Normalization
      • 4.4.1 Computing Batch Normalization
    • 4.5 Tutorial: Generating Handwritten Digits with DCGAN
      • 4.5.1 Import Statements
      • 4.5.2 The Generator
      • 4.5.3 The Discriminator
      • 4.5.4 Build & Run the DCGAN
      • 4.5.5 Model Output
    • 4.6 Conclusion
    • 4.7 Chapter Summary
  • 5 TRAINING & COMMON CHALLENGES: GANING FOR SUCCESS

    • 5.1 Evaluation
      • 5.1.1 Inception Score
      • 5.1.2 Fréchet Inception Distance
    • 5.2 Training challenges
      • 5.2.1 Network depth
      • 5.2.2 Game set-ups
      • 5.2.3 Min-Max GAN (MM-GAN)
      • 5.2.4 Non-Saturating GAN (NS-GAN)
      • 5.2.5 Summary of game setups
      • 5.2.6 Training hacks
    • 5.3 Chapter summary
  • 6 PROGRESSING WITH GANS

    • 6.1 Latent space interpolation
    • 6.2 They grow up so fast
      • 6.2.1 Progressive Growing & Smoothing in of Higher Resolution Layers
      • 6.2.2 Minibatch Standard Deviation
      • 6.2.3 Equalized Learning Rate
      • 6.2.4 Pixel-wise Feature Normalization
    • 6.3 Summary of key innovations
    • 6.4 Tensorflow Hub and hands-on
    • 6.5 Practical Applications
    • 6.6 Chapter summary
  • 7 SEMI-SUPERVISED GAN

    • 7.1 Introduction: “The GAN Zoo”
    • 7.2 Semi-Supervised GAN (SGAN)
      • 7.2.1 Why Semi-Supervised Learning?
      • 7.2.2 What is Semi-Supervised GAN?
    • 7.3 Tutorial: Implementing Semi-Supervised GAN
      • 7.3.1 Architecture Diagram
      • 7.3.2 Implementation
      • 7.3.3 Setup
      • 7.3.4 The Dataset
      • 7.3.5 The Generator
      • 7.3.6 The Discriminator
      • 7.3.7 Build the Model
      • 7.3.8 Training
      • 7.3.9 Train the Model
      • 7.3.10 Model Training and Test Accuracy
      • 7.3.11 Comparison to a Fully-Supervised Classifier
    • 7.4 Conclusion
    • 7.5 Summary
  • 8 CONDITIONAL GAN

    • 8.1 Introduction
    • 8.2 Conditional GAN (CGAN)
      • 8.2.1 What is Conditional GAN?
    • 8.3 Tutorial: Implementing Conditional GAN
      • 8.3.1 Implementation
      • 8.3.2 Setup
      • 8.3.3 The Generator
      • 8.3.4 Build the Model
      • 8.3.5 Training
      • 8.3.6 Outputting Sample Images
      • 8.3.7 Train the Model
    • 8.4 Inspecting the Output: Targeted Data Generation
    • 8.5 Conclusion
    • 8.6 Summary
  • 9 CYCLEGAN

    • 9.1 Introduction
    • 9.2 Image-to-Image Translation
    • 9.3 Cycle Consistent Loss: there and back aGAN
    • 9.4 Adversarial Loss
    • 9.5 Identity Loss
    • 9.6 Architecture
    • 9.7 CycleGAN architecture: building the network
    • 9.8 Generator architecture
    • 9.9 Discriminator architecture
    • 9.10 Object Oriented Design of GANs
    • 9.11 Tutorial: CycleGAN
    • 9.12 Building the network
    • 9.13 Running CycleGAN
    • 9.14 Expansions, augmentations and applications
    • 9.15 Applications
    • 9.16 Summary
  • 10 ADVERSARIAL EXAMPLES

    • 10.1 Introduction
    • 10.2 Context of Adversarial Examples
    • 10.3 Lies, Damned Lies and Distributions
    • 10.4 Use and abuse of training
    • 10.5 Signal and the noise
    • 10.6 Not all hope is lost
    • 10.7 Conclusion
    • 10.8 Summary
  • 11 PRACTICAL APPLICATIONS OF GANS

    • 11.1 Introduction
    • 11.2 GANs in Medicine
      • 11.2.1 Using GANs to Improve Diagnostic Accuracy
    • 11.3 GANs in Fashion
      • 11.3.1 Using GANs to Design Fashion
    • 11.4 Conclusion
    • 11.5 Summary
  • 12 LOOKING AHEAD

    • 12.1 Introduction
    • 12.2 Ethics
    • 12.3 GAN Innovations
    • 12.4 Relativistic GAN (RGAN)
      • 12.4.1 Application
    • 12.5 Self-Attention GAN (SAGAN)
      • 12.5.1 Application
    • 12.6 BigGAN
      • 12.6.1 Application
    • 12.7 Further reading
    • 12.8 Looking Back & Closing Thoughts
    • 12.9 Conclusion
    • 12.10 Summary

APPENDIXES

APPENDIX A: TECHNICAL/DEPLOYMENTS

GANs介绍

机器能否思考的概念比计算机本身还要古老。1950年,著名的数学家、逻辑学家和计算机科学家艾伦·图灵(Alan turing)撰写了一篇论文,题为《计算机器与智能》(Computing Machinery and Intelligence),这篇论文将使他的名字永世留名。

图灵在论文中提出了一种被他称为“模仿游戏”的测试方法,这种测试现在被称为“图灵测试”。在这个假想的场景中,一个不知情的观察者在一扇紧闭的门后与两个同伴交谈:一个是人类同伴;另一个是电脑。图灵认为,如果观察者不能分辨出哪个是人,哪个是机器,那么这台计算机就通过了测试,必须被认为是智能的。

任何试图与自动化聊天机器人或语音智能助手进行对话的人都知道,要通过这个看似简单的测试,计算机还有很长的路要走。然而,在其他任务中,计算机不仅能与人类的表现相媲美,而且还超越了人类——即使是在一些直到最近才被认为是最聪明的算法也无法企及的领域,比如般精确的人脸识别或围棋,计算机也可以胜任了。

机器学习算法非常擅长识别现有数据中的模式,并将这种洞察力用于分类(为示例分配正确的类别)和回归(根据各种输入估计数值)等任务。然而,当被要求生成新数据时,计算机却表现不佳。一种算法可以打败国际象棋大师,估计股票价格走势,并对信用卡交易是否可能存在欺诈行为进行分类。相比之下,任何试图与亚马逊(Amazon)的Alexa或苹果(Apple)的Siri闲聊的尝试都是注定要失败的。的确,人类最基本、最基本的能力——包括愉快的交谈或原创的制作——可以让最复杂的超级计算机陷入数字痉挛。

这一切都在2014年发生了改变,当时在蒙特利尔大学读博士的Ian Goodfellow发明了生成式对抗网络(GANs)。这项技术使计算机能够通过使用两个而不是一个单独的神经网络来生成真实的数据。GANs并不是第一个用来生成数据的计算机程序,但它们的结果和通用性使它们有别于其他所有程序。GANs取得了明显的成效,长期以来一直被认为是几乎不可能的人工系统,如生成与real-world-like假图像质量的能力,将一个潦草变成photograph-like形象,或把视频的一匹马变成一个运行zebra-all不需要——大批煞费苦心地标记的训练数据。

在GANs的帮助下,机器数据生成技术已经取得了很大的进步,一个生动的例子就是人脸的合成,如图所示。就在2014年,当GANs被发明出来的时候,机器所能产生的最好的效果就是模糊的面部表情——甚至连这都被视为突破性的成功。仅仅三年后的2017年,GANs成像技术的进步使计算机能够合成质量堪比高分辨率人像照片的假面。在这本书中,我们探究了使这一切成为可能的算法的底层。

生成式对抗网络(GANs)是一类机器学习技术,它由两个同时训练的模型组成:一个(生成器)训练生成假数据,另一个(鉴别器)训练从真实例子中辨别假数据。

成为VIP会员查看完整内容
[Jakub_Langr,_Vladimir_Bok]_GANs_in_Action__Deep_l(z-lib.org).pdf
351

相关内容

GAN:生成性对抗网,深度学习模型的一种,在神经网络模型中引入竞争机制,非常流行。
最新《生成式对抗网络》简介,25页ppt
专知会员服务
173+阅读 · 2020年6月28日
生成式对抗网络GAN异常检测
专知会员服务
115+阅读 · 2019年10月13日
GAN新书《生成式深度学习》,Generative Deep Learning,379页pdf
专知会员服务
202+阅读 · 2019年9月30日
GAN零基础入门:从伪造视频到生成假脸
新智元
13+阅读 · 2019年6月18日
2019年最新-深度学习、生成对抗、Pytorch优秀教材推荐
深度学习与NLP
42+阅读 · 2019年4月18日
【干货】最新GAN教程,153PPT附代码
GAN生成式对抗网络
12+阅读 · 2018年9月18日
一文读懂生成对抗网络GANs(附学习资源)
数据派THU
10+阅读 · 2018年2月9日
深度卷积对抗生成网络(DCGAN)实战
全球人工智能
14+阅读 · 2017年11月7日
【简介】生成式对抗网络简介
GAN生成式对抗网络
8+阅读 · 2017年9月16日
GAN猫的脸
机械鸡
11+阅读 · 2017年7月8日
wGAN如何解决GAN已有问题(附代码实现)
数据派THU
17+阅读 · 2017年6月27日
Seeing What a GAN Cannot Generate
Arxiv
8+阅读 · 2019年10月24日
Arxiv
4+阅读 · 2019年4月3日
Arxiv
12+阅读 · 2018年1月28日
VIP会员
相关VIP内容
最新《生成式对抗网络》简介,25页ppt
专知会员服务
173+阅读 · 2020年6月28日
生成式对抗网络GAN异常检测
专知会员服务
115+阅读 · 2019年10月13日
GAN新书《生成式深度学习》,Generative Deep Learning,379页pdf
专知会员服务
202+阅读 · 2019年9月30日
相关资讯
GAN零基础入门:从伪造视频到生成假脸
新智元
13+阅读 · 2019年6月18日
2019年最新-深度学习、生成对抗、Pytorch优秀教材推荐
深度学习与NLP
42+阅读 · 2019年4月18日
【干货】最新GAN教程,153PPT附代码
GAN生成式对抗网络
12+阅读 · 2018年9月18日
一文读懂生成对抗网络GANs(附学习资源)
数据派THU
10+阅读 · 2018年2月9日
深度卷积对抗生成网络(DCGAN)实战
全球人工智能
14+阅读 · 2017年11月7日
【简介】生成式对抗网络简介
GAN生成式对抗网络
8+阅读 · 2017年9月16日
GAN猫的脸
机械鸡
11+阅读 · 2017年7月8日
wGAN如何解决GAN已有问题(附代码实现)
数据派THU
17+阅读 · 2017年6月27日
微信扫码咨询专知VIP会员