美文网首页
GAN和WGAN

GAN和WGAN

作者: YPY_93a9 | 来源:发表于2019-01-17 18:35 被阅读9次

1. GAN

GAN有两个模型,分别是生成模型和判别模型。这两个模型进行博弈,先保持生成模型不变,优化判别模型(判别是真实数据还是生成的数据),使得它能最大化区别真实和生成数据;保持判别模型不变,优化生成模型,使它能接近真实数据,让判别模型判别不出来。

1) 定义x是真实数据

2) 定义一个先验变量:p_{z}z(例如:在N(0,1)产生),生成模型G是一个以g_{\theta}为参数的多层感知器。把z通过G映射到与x相同维度的空间。

3)定义一个判别模型D(x;\theta_{d}),D是一个以\theta_{d}为参数的多层感知器。它输出的是[0,1]的一个数。

损失函数:

在训练一开始,因为很容易判别是不是真实数据,min(log(1-D(G(z))))是饱和状态,所以我们max(log(D(G(x))))

具体的算法:

可以通过代码更好得理解GAN(链接中分别有tensorflow和pytorch版本): vanilla gan

GAN的问题:

1. 训练困难,训练过程要小心平衡生成器和判别器

2. 生成器和判别器的loss无法指示训练进程

3. 生成样本缺乏多样性,也就是mode collapse

2. WGAN

WGAN的出现解决了上述GAN的几个问题,(有点小激动),以下是wgan的算法,而改进后相比原始GAN的算法实现流程却只改了四点

1)判别器最后一层去掉sigmoid

2)生成器和判别器的loss不取log

3)每次更新判别器的参数之后把它们的绝对值截断到不超过一个固定常数c

4)不要用基于动量的优化算法(包括momentum和Adam),推荐RMSProp,SGD也行

附上知乎详细链接:wgan

相关文章

  • 零样本图像识别 | Feature Generating Net

    创新:提出f-GAN 、 f-WGAN 和 f-CLSWGAN、将WGAN的loss和Classfication的...

  • GAN和WGAN

    1. GAN GAN有两个模型,分别是生成模型和判别模型。这两个模型进行博弈,先保持生成模型不变,优化判别模型(判...

  • 李宏毅 GAN lecture(2018)笔记_P6

    1. Tips for Improving GAN - WGAN, EBGAN 首先是JS divergence失...

  • GAN 生成对抗网络

    GAN网络可以说是近来最火的神经网络模型,其变种包括WGAN,WCGAN,WGAN-l,circleGAN等,被广...

  • 从GAN到WGAN再到WGAN-GP

    从GAN到WGAN再到WGAN-GP 基本理论知识 KL散度: JS散度:其中性质:满足对称性;当两概率为0时,J...

  • 生成对抗网络训练心得

    训练WGAN的时候,有几个方面可以调参: a. 调节Generator loss中GAN loss的权重。 G...

  • 【GAN优化】详解对偶与WGAN

    越学习越发现自己知之甚少,道阻且长,还是认真看下这篇文章,好好琢磨琢磨GAN吧。 今天将和大家一起学习在GAN界占...

  • 2020机器学习GAN(WGAN) (9)

    我们之前都用 JS 散度来衡量两笔数据之间差异,今天我们就来先讨论一下 JS 散度作为衡量工具是否合适的问题。我们...

  • WGAN

    GAN-QP 写到一半发现关于 WGAN 以及它相关约束部分之前没有完全读懂,需要重读,那顺手也把笔记给谢了吧 W...

  • 一个比WGAN更优秀的模型(WGAN-GP)

    WGAN-GP (improved wgan) paper GitHub WGAN-GP是WGAN之后的改进版,主...

网友评论

      本文标题:GAN和WGAN

      本文链接:https://www.haomeiwen.com/subject/bjpkxqtx.html