生成对抗网络:实现原理及改进方案

你可能已经听说过什么是GAN,但是如果你不想让自己对GAN的学习只停留在“认识”的层次上,那你最应该学习本课程。本课程从”什么是概率生成模型“入手,循序渐进的为你讲解GAN的实现原理,并结合实际应用,提出传统GAN的缺陷以及应对缺陷的改进办法。

讲师:   尉方音

深度学习新星——生成对抗网络

课程背景:

本课程从“什么是概率生成模型”开始,循序渐进的讲解了GAN的基本原理。并结合实际应用,提出了传统GAN存在的缺陷。

传统GAN存在什么缺陷?一个是传统GAN难以训练,需要长时间的训练才能收敛,甚至一直不收敛。另一个是传统GAN在训练优化的过程中存在不稳定性,很容易坍缩到一个鞍点上。

针对这两个问题,研究者提出了基于Wasserstein 距离的WGAN。它彻底解决了GAN训练不稳定的问题,让GAN的训练不再需要小心平衡生成器和判别器的训练程度;同时基本解决了collapse mode的问题,确保了生成样本的多样性;并且提供了一个“指示值”作为训练中指示训练完成程度的变量。

WGAN如此神奇,实现上却一点也不复杂,只需要对传统GAN算法做寥寥几处的修改就可实现。本课程将为大家引出“Wasserstein 距离”的同时,给大家讲解WGAN算法是如何实现的。

如果你对GAN有基本的认识,想要深入学习GAN的原理,了解GAN的发展方向,那么本课程你不应错过。

课程资料:

课程讲稿:

购买课程后可见

课程大纲:

本课程包含的内容有:

  • 生成对抗网络原理介绍

    • GANs的价值函数

    • GANs的算法

    • GANs的理论推导

  • 一些有趣的GANs发展方向

    • 深度卷积生成对抗网络(DCGAN,Deep Convolutional GANs)

  • 生成对抗网络在实践中的训练技巧

    • 训练更稳定GANs的方法

  • WGAN——GANs的原理突破

    • 原始GANs存在的缺陷

    • 过渡解决方案

    • Wasserstein 距离

    • WGAN

课程笔记:

《GAN的原理与应用专题》笔记

作者 网小鱼
一、什么是GAN
框架简述:
       GAN全称是Generative Adversarial Nets,中文叫做“生成对抗网络”。在GAN中有2个网络,一个网络用于生成数据,叫做“生成器”。另一个网络用于判别生成数据是否接近于真实,叫做“判别器”。 下图展示了最简单的GAN的结构以及工作原理。

屏幕快照_2017-06-12_上午10.45_.34_.png


屏幕快照_2017-06-12_上午10.45_.48_.png


屏幕快照_2017-06-12_上午10.45_.56_.png


屏幕快照_2017-06-12_上午10.46_.13_.png


屏幕快照_2017-06-12_上午10.46_.20_.png


 
      模型中最左侧的随机向量是为了让生成器产生不同的输出,而增加的扰动项。这些扰动决定了生成器可以生成不同的仿真作品。之后我们会看到这些向量产生的输出会有一些插值和加减法等方面的特性。
      这个图示是最简单的GAN框架,在实际应用中还可以把“生成器的输入-输出”作为判别器的输入,这样就可以做到生成符合某些条件的任务内容。例如根据文字内容生成符合描述的图片…………

购买课程以阅读更多笔记内容

讲师介绍
尉方音

北京大学信息科学技术学院本科生,在商汤科技研发部人脸识别组做实习生