CVPR 2019开源论文 | Rob-GAN:生成器、鉴别器以及对抗攻击者

2019 年 7 月 19 日 PaperWeekly


作者丨薛洁婷

学校丨北京交通大学硕士生

研究方向丨图像翻译




研究动机


自 2014 年 Goodfellow 等人提出生成式对抗网络 (Generative Adversarial Networks, GAN) 以来,关于 GAN 稳定训练的研究层出不穷,其中较为突出的是 2017 年提出的 Wasserstein GAN [1] 以及 2018 年提出的 SN-GAN [2]。其共同动机都是通过使鉴别器满足利普希茨(Lipschitz)限制条件(也就是让鉴别器更加鲁棒),从而提高模型的收敛速度以及稳定性。


对抗训练 (Adversarial training) 作为提高模型鲁棒性的经典算法,被作者有效地结合至 GAN 的训练过程中并将结合后的模型命名为 Rob-GAN。实验表明 Rob-GAN 不仅能促使 GAN 的训练更加稳定、生成结果更加逼真而且还缩减了对抗训练在训练集和测试集上的性能差距。另外,作者还从理论上分析了这一结果的本质原因。


模型架构


首先我们来思考第一个问题:为什么 GAN 能够改善对抗训练在测试集和训练集上的性能差距?在回答这个问题之前我们先来简单看一下对抗训练的过程。


对抗训练分为攻击者和防御者,攻击者是指通过对输入样本添加一些小的扰动来“欺骗”分类器,让其输出错误的分类结果。论文中作者采用了 PGD [3] 攻击算法来产生对抗样本,损失函数如 (1) 所示。其中 x+δ 表示对输入样本 x 添加一些小的扰动,f(x+δ,w) 是收到扰动后分类器的输出结果。



对于攻击者而言希望受到扰动后的分类器能输出尽可能错的分类结果,也就是和真正的分类结果的损失要尽可能大。当然,有攻击者就肯定会有防御者,与攻击相比,防御是一项更艰巨的任务,特别是对于结合复杂模型的高维数据。防御者的损失函数如 (2) 所示。



目前对抗训练在小训练集(如 MNIST, CIFAR10)上可以训练出鲁棒性强的分类器,然而一旦扩展在大训练集(如 IMAGENET)上,分类器的效果将非常差,并且对抗训练的性能在训练集和测试集上的差距也很突出(如图 1 所示),究其根本其实就是模型在测试集和训练集的鲁棒性差异较大。


 图1. 在不同水平攻击下的准确率


从理论上分析可知,如果在真实数据分布下模型的局部 LLV (local Lipschitz value) 越小,则模型的鲁棒性越强。这一理论可以被描述为复合损失最小化问题(公式 3)。



但是在实际中我们并不能获取真实数据分布 Pdata,因此一般采用先验分布来替换公式 3。实际上,如果我们的数据量足够大并且假设集也设计的很合理,公式 4 最终会收敛于公式 3。



那么训练集中的约束的 LLV 会自动泛化到测试集上吗?很遗憾,答案是否定的。也就是说尽管我们能在训练集上有效的降低 LLV,但是对于测试集来说,这样是无效的(如图 2)。


 图2. 测试集和训练集的局部Lipschitz值  (LLV) 比较


但是如果我们换个思路直接从真实数据 Pdata 中采样,那这个问题不就解决了吗?看到这里你肯定很好奇,之前不是说 Pdata 无法获取吗?没错!虽然我们没法直接获取其分布,但是 GAN 可以学啊!也就是说我们先让GAN去学习 Pdata,然后对所学分布再进行对抗训练。加入GAN后的损失函数如 5 所示。至此,我们解决了第一个问题。



接下来第二个问题是为什么加入对抗训练后可以促使 GAN 的训练更加稳定?首先我们知道对抗样本能够很容易“欺骗”分类器,对于 CGAN 来说,生成器完全有可能模仿对抗样本去“欺骗”鉴别器,就算是鉴别器能识别出一种模式的对抗样本,但生成器很容易就能够找到其他模式的对抗样本,这样的话最小最大化的游戏将永远不会停止,也就是生成器和鉴别器永远没办法达到纳什均衡。


因此作者假设,提高鉴别器的鲁棒性对于稳定 GAN 的训练至关重要。下面我们从理论上分析一下这一假设的成立的原因。


 图3. 鉴别器的鲁棒性


在 GAN 的训练中,生成器就类似于对抗训练中的“攻击者”。如果鉴别器具有很小的 LLV (即很小),此时,也就是说当鉴别器受到攻击时,除非是扰动 δ 非常大,其并不会误分类,如图 3 所示。


假设在 t 时刻时鉴别器正确分类图像为假图即,在 t+1 时生成器如何才能使鉴别器误分类呢?作者通过对 D(x) 和 G(z;w) 进行 Lipschitz 连续性假设,可以得到一个下界:




我们发现 LDLG 和成反比,也就是说如果鉴别器不鲁棒的话即 LD 很大,那么只能让生成器的参数 w 移动的非常小,才能保证其下界成立,此时模型就会收敛的很慢。因此,我们从理论上证明了鉴别器的鲁棒性是影响 GAN 收敛速度的关键因素。


回顾 GAN 的发展历史,无论是 WGAN 还是 SN-GAN 都要求鉴别器满足全局 Lipschitz 条件限制,这无疑会降低模型的表达能力,因此作者提出要求在图像流型上保持局部 Lipschitz 条件即可,而这一点通过对抗训练可以很容易地满足。


经过上面的分析我们发现,对抗训练和 GAN 的结合是一个互帮互助的过程。在这个框架内作者对生成器和鉴别器进行端到端的训练:生成器向鉴别器提供假图像; 同时,从训练集采样的真实图像在发送到鉴别器之前由 PGD 攻击算法预处理。其网络架构如图 4  所示。


 Figure 4. (LLV) 比较 Rob-GAN 的网络架构


实验


在具体实验时鉴别器网路采用的是 AC-GAN 中的模型架构,只不过在 AC-GAN 中无论是生成器还是鉴别器都希望能最大化分类损失 LC,但这样会导致即使生成器生成出特别差的样本,损失函数还是希望其能正确分类。



因此作者将 LC 损失进行了修改,也就是鉴别器希望尽可能正确分类真实样本即最大化损失 LS+LC1,生成器希望能尽可能正确分类生成样本即最大化 LC2-LS。




下面是在对抗训练采用 GAN 数据后的性能差距,可以明显看出相较之前差距明显缩小。



另外,作者对 Rob-GAN 进行了微调使鉴别器单独执行多分类问题以便能更好的比较 Rob-GAN 的效果。下面是 Rob-GAN 在 CIFAR10 以及 ImageNet 上不同扰动情况下模型训练的准确率,其中 FT 是指加入微调策略。



总结


这篇论文作者将生成式对抗网络 (GAN) 以及对抗训练模型 (Adversarial training) 结合在一起形成一个全新的框架 Rob-GAN。从理论以及实验证明出 Rob-GAN 不仅能加速 GAN 收敛速度而且还有助于缩减对抗训练的性能差距,另外作者还重新定义了 AC-GAN 的损失函数。总之,我认为这篇论文对于稳定GAN训练具有重大意义,并且论文理论的严谨性也非常值得借鉴。


参考文献


[1]. M. Arjovsky, S. Chintala, and L. Bottou. Wasserstein gan.arXiv preprint arXiv:1701.07875, 2017. 2, 4 

[2]. T. Miyato, T. Kataoka, M. Koyama, and Y. Yoshida. Spectral normalization for generative adversarial networks. In International Conference on Learning Representations, 2018

[3]. A. Madry, A. Makelov, L. Schmidt, D. Tsipras, and A. Vladu. Towards deep learning models resistant to adversarial attacks. arXiv preprint arXiv:1706.06083, 2017. 1, 2, 3, 6, 7




点击以下标题查看更多往期内容: 





#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


📝 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


📬 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


▽ 点击 | 阅读原文 | 下载论文 & 源码

登录查看更多
1

相关内容

[CVPR 2020-港中文-MIT] 神经架构搜索鲁棒性
专知会员服务
25+阅读 · 2020年4月7日
【CVPR2020】MSG-GAN:用于稳定图像合成的多尺度梯度GAN
专知会员服务
27+阅读 · 2020年4月6日
【综述】基于图的对抗式攻击和防御,附22页论文下载
专知会员服务
68+阅读 · 2020年3月5日
必读的10篇 CVPR 2019【生成对抗网络】相关论文和代码
专知会员服务
32+阅读 · 2020年1月10日
生成式对抗网络GAN异常检测
专知会员服务
115+阅读 · 2019年10月13日
ICLR2019 图上的对抗攻击
图与推荐
17+阅读 · 2020年3月15日
训练技巧 | 功守道:NLP中的对抗训练 + PyTorch实现
PaperWeekly
12+阅读 · 2019年11月13日
万字综述之生成对抗网络(GAN)
PaperWeekly
43+阅读 · 2019年3月19日
【学界】生成式对抗网络:从生成数据到创造智能
GAN生成式对抗网络
6+阅读 · 2018年6月14日
【Ian Goodfellow盛赞】一个GAN生成ImageNet全部1000类物体
GAN生成式对抗网络
11+阅读 · 2017年11月22日
手把手 | 生成式对抗网络(GAN)之MNIST数据生成
数说工作室
10+阅读 · 2017年7月31日
GAN猫的脸
机械鸡
11+阅读 · 2017年7月8日
GAN | GAN介绍(2)
KingsGarden
27+阅读 · 2017年3月14日
Arxiv
4+阅读 · 2018年9月25日
Arxiv
8+阅读 · 2018年5月21日
Arxiv
4+阅读 · 2018年5月21日
Arxiv
10+阅读 · 2018年3月23日
VIP会员
相关资讯
ICLR2019 图上的对抗攻击
图与推荐
17+阅读 · 2020年3月15日
训练技巧 | 功守道:NLP中的对抗训练 + PyTorch实现
PaperWeekly
12+阅读 · 2019年11月13日
万字综述之生成对抗网络(GAN)
PaperWeekly
43+阅读 · 2019年3月19日
【学界】生成式对抗网络:从生成数据到创造智能
GAN生成式对抗网络
6+阅读 · 2018年6月14日
【Ian Goodfellow盛赞】一个GAN生成ImageNet全部1000类物体
GAN生成式对抗网络
11+阅读 · 2017年11月22日
手把手 | 生成式对抗网络(GAN)之MNIST数据生成
数说工作室
10+阅读 · 2017年7月31日
GAN猫的脸
机械鸡
11+阅读 · 2017年7月8日
GAN | GAN介绍(2)
KingsGarden
27+阅读 · 2017年3月14日
Top
微信扫码咨询专知VIP会员