![8f88d44468a324f5f3ba58807f06c645.png](https://img-blog.csdnimg.cn/img_convert/8f88d44468a324f5f3ba58807f06c645.png)
在标准GAN中,判别器是一个logistic二分类器。在传统的机器学习中,另一个不可忽视的二分类算法是支持向量机(SVM)。SVM的出发点是找到决策面,让两个类别分别在决策面的两侧,并且与决策面保持一定的margin。参考SVM的这个思想,把GAN的判别器的损失函数改成hinge loss/marginal loss,便有了本篇笔记提到的系列论文:Geometric GAN、Energy-based GAN、Loss Sensitive GAN。
- Geometric GAN
Geometric GAN的判别器力图把真实样本映射到大于1的区间,把伪造样本映射到小于-1的区间。Geometric GAN的形式如下:
SVM的损失函数仅受到支持向量的影响,而在Geometric GAN中也一样:判别器的损失函数是一个hinge loss,仅受违反
在本笔记提到的诸篇论文中,Geometric GAN是唯一一篇明确由SVM引申到GAN的论文。另外几篇论文,虽然判别器的损失函数在形式上与Geometric GAN类似,都有margin的概念,但并没有显式地说明与SVM的联系。
值得一提的是,这个结构也被self-attention GAN和progressive growing GAN采用。
Geometric GANarxiv.org2. Energy-based GAN
EBGAN把D(x)看作是能量函数,越是真实的数据样本的能量越低,表达式为:
这里D(x)的目标是:压低真实样本的能量,并让伪造样本的能量维持在m以上。
EBGAN采用自动编码器(autu-encoders)作为D(x)的结构:
受EBGAN的启发,BEGAN提出了利用自动编码器的结构来移除WGAN的Lipschitz约束,参见《GAN论文阅读笔记3:WGAN的各种变体》。
3. Loss Sensitive GAN(损失敏感GAN)
进而EBGAN类似,LSGAN的判别器的目标也是尽量把真实样本映射到更小的数值。不过与EBGAN不同的地方在于,LSGAN期望真实样本与伪造样本之间的margin是动态的,也是被称为损失敏感的原因。具体而言,对于
这种灵活的margin能够让GAN更加重视那些远离真实样本的伪造样本。
LSGAN的判别器和生成器的损失函数为:
作者通过一顿solid的理论分析证明了LSGAN能够收敛,并提出了GLSGAN,认为WGAN是GLSGAN的特例。具体的分析可以参考作者本人的blog:
齐国君:条条大路通罗马LS-GAN:把GAN建立在Lipschitz密度上zhuanlan.zhihu.com4. 总结
原始GAN的判别器是一个二分类器,WGAN把它变成了一个求W距离的工具,f-GAN把它变成了一个求f散度的工具,本篇论文则是把它看做了一个类似SVM的分类器。不管是什么样的判别器,核心就是要把真实样本和伪造样本区分开。
本系列阅读笔记:
《GAN论文阅读笔记1:从零推导GAN》
《GAN论文阅读笔记2:不懂W距离也能理解WGAN》
《GAN论文阅读笔记3:WGAN的各种变体WGAN-GP/CTGAN/SNGAN/WGAN-div》
《GAN论文阅读笔记4:最小二乘GAN/f-GAN》
《GAN论文阅读笔记6:DRAGAN/Relativistic GAN》