解决问题:解决传统 GAN 生成图片质量不高,训练不稳定的问题。
做法:将传统 GAN 的交叉熵损失函数换成最小二乘损失函数
本篇主要通过GAN对比来学习LSGAN
通过例子介绍:
![](https://img.haomeiwen.com/i21103376/306cf751290668cc.png)
使用位于决策边界正确侧但仍然远离真实数据的假样本更新生成器时,交叉熵损失函数将导致梯度消失的问题。
如图 (b)所示,当我们使用假样本(品红色)通过使鉴别器相信它们来自真实数据来更新生成器时,它几乎不会引起错误,因为它们在正确的一侧,既决策边界的真实数据面。
然而,这些样本仍然离真实数据很远,我们想把它们拉得接近真实数据。
问题总结:在交叉熵损失函数情况下,判别器判定真实面的假数据距离真实数据较远,效果不足。
基于这一观察,我们提出了最小二乘生成对抗网络,它采用最小二乘损失函数作为鉴别器。
最小二乘损失函数能够将伪样本移向决策边界,
因为最小二乘损失函数会惩罚位于决策边界正确一侧很远的样本。
如图 (c)所示,最小二乘损失函数将惩罚假样本(品红色),并将它们拉向决策边界,使它们被正确分类。
基于这一特性,最小二乘能够生成更接近真实数据的样本
总结概括
最小二乘:最小二乘损失与交叉熵损失相比,优势在于生成样本在欺骗判别器的前提下同时让生成器把距离决策边界比较远的生成图片拉向决策边界,这样保证了生成高质量的样本。
交叉熵:以交叉熵作为损失,会使得生成器不会再优化那些被判别器识别为真实图片的生成图片,即使这些生成图片距离判别器的决策边界仍然很远,也就是距离真实数据比较远,因为此时的交叉熵损失已经很小,生成器完成了为它设计的目标。
LSGAN的缺陷: 在于它并没有解决当判别器足够优秀时生成器发生梯度弥散的问题
梯度弥散:使用反向传播算法传播梯度的时候,随着传播深度的增加,梯度的幅度会急剧减小,会导致浅层神经元的权重更新非常缓慢,不能有效学习。
这样一来,深层模型也就变成了前几层相对固定,只能改变最后几层的浅层模型。
GANs 的损失函数:
![](https://img.haomeiwen.com/i21103376/26d3982ab7842165.png)
LSGANs的损失函数:
最小二乘
![](https://img.haomeiwen.com/i21103376/a0ee2b910823c519.png)
公式注释:
鉴别器 D
生成器 G
G 的目标是学习数据 x 上的分布 pg。
G 服从均匀或高斯分布 pz(z)对输入变量 z 进行采样开始,然后将输入变量 z 映射到数据空间 G(z; θg)。
D 是分类器 D(x; θd),其目的是识别图像是来自训练数据还是来自g。
z 为噪音,它可以服从归一化或者高斯分布,为真实数据 x 服从的概率分布,为 z 服从的概率分布。为期望值,同为期望值。
假设我们对鉴别器使用a-b 编码方案,其中a 和b 分别是假数据和真实数据的标签。
c 表示 G 预测的D 相信的假数据的值。
最小二乘法的具体优点:
1.决策边界固定(鉴别器参数固定),生成样本靠近决策边界,更接近真实数据。
2.惩罚远离决策边界的样本时,可以在更新生成器时生成更多的梯度,这反过来缓解了梯度消失的问题(梯度消失:前面隐藏层的学习速率低于后面隐藏层的学习速率,即随着隐藏层数目的增加,分类准确率反而下降)
GAN中:最小化等式 1 产生最小化詹森-香农散度:
![](https://img.haomeiwen.com/i21103376/d9222c99dcc41c72.png)
LSGAN:探讨LSGAN与f散度的关系
![](https://img.haomeiwen.com/i21103376/9c2f83f7167b0a54.png)
公式解释:(下文关于a-b编码证明a,b,c条件)
将
![](https://img.haomeiwen.com/i21103376/35bfdfd8b2de2735.png)
加入到
![](https://img.haomeiwen.com/i21103376/4ae847cfb11dae03.png)
并不会改变最佳值,因为并没有引入含有G的参数
从而我们可以推出G固定情况下的最佳鉴别器:
![](https://img.haomeiwen.com/i21103376/e1453d2c91eef37a.png)
使用 pd 来表示 pdata,来重新表示4式
![](https://img.haomeiwen.com/i21103376/759359e122f04e0b.png)
此处不详细证明
化简为:
![](https://img.haomeiwen.com/i21103376/28673a9e028ee5a0.png)
如果: b-c = 1, b-a = 2,则
![](https://img.haomeiwen.com/i21103376/f133dd48db9e0f10.png)
![](https://img.haomeiwen.com/i21103376/d686df1ec686b444.png)
是皮尔逊散度,总之可证,当 a,b,c满足b-c = 1 和 b-a = 2的条件,则最小化等式 4 会使 pd + pg 和 2pg 之间的皮尔逊 χ2 散度最小化。
采用a-b编码方案:
由上述证明可设a = 1, b = 1, c = 0
![](https://img.haomeiwen.com/i21103376/da85f58730c0e911.png)
采用0-1二进制编码方案:
![](https://img.haomeiwen.com/i21103376/22c96c01af5d7209.png)
两式接近,但此处,论文作者采用a-b编码方式,来实现实验:
带上其中一个实验:
![](https://img.haomeiwen.com/i21103376/7679497abb5a6b72.png)
参考论文:Mao X D, Li Q, Xie H R, et al. Least squares generative
adversarial networks[C]//Proceedings of the 2017 IEEE
International Conference on Computer Vision, Venice, Oct
22- 29, 2017. Washington: IEEE Computer Society, 2017:
2813-2821.
网友评论