论文题目

“Improving Adversarial Robustness Requires Revisiting Misclassified Examples”(MART) ICLR 2020
这篇论文是北大王奕森教授团队发表的一篇非常经典的对抗训练改进方法的文章,今日重新精读一下~

Abstract

对抗训练(AT)是一种用于提高深度神经网络(DNNs)对于对抗样本的鲁棒性的最为有效的防御技术。AT经常从数学上表示为一个Min-max问题(1),其中max问题描述了生成对抗样本的过程,min问题训练DNNs。通常对抗样本的定义指的是原本被分类正确,但添加微小扰动后分类出错的样本。然而AT中作为增强数据所使用的“对抗样本”,并不完全符合这个定义,AT中的“对抗样本”还包含了原本就被分错的样本。在本文中,作者研究了原本被错误/正确分类的样本对AT最终鲁棒性的影响。具体而言,作者发现原本就被错误分类的样本对鲁棒性影响巨大。 并且作者发现错误分类样本上的不同Max技术对最终鲁棒性的影响可以忽略不计,而不同的Min技术则至关重要。基于上述发现,作者提出了一种在训练过程中明确区分错误/正确分类样本的新的AT方法MART,并提供了MART的半监督版本,利用未标记的数据进一步提升鲁棒性。
minθ1n∑i=1nmax∣∣xi′−xi∣∣p≤ϵl(hθ(xi′),yi),(1)min_{\theta} \frac{1}{n} \sum^{n}_{i=1} max_{||x'_i - x_i||_p \leq \epsilon} l(h_\theta(x'_i), y_i), \ (1) minθ​n1​i=1∑n​max∣∣xi′​−xi​∣∣p​≤ϵ​l(hθ​(xi′​),yi​), (1)

Introduction

motivation of MART

Abstract中提到,许多AT使用的“对抗样本”(原本就分类错误的),是未被明确定义的,并且大多数AT改进工作忽视了这一区别,即所有训练样本无论是否正确分类在Max和Min过程中都得到平等对待,这可能对最终的鲁棒性造成影响。因此,论文提出两个问题:

  1. 由i)错误分类和ii)正确分类的样本生成的对抗样本是否对鲁棒性同样重要?
  2. 如果不是,如何更好地利用差异来提高鲁棒性?

motivation of semi-supervision AT

与正常训练相比,提升DNN鲁棒性的AT尤其困难。前序工作表明,模型需要更大的capcity才能鲁棒(简单模型虽然可以具有较高的准确率,但不太可能很鲁棒)。此外,AT的样本复杂度可能显著高于正常训练的样本复杂度,也就是说,训练鲁棒的DNN往往需要更多的标记数据或未标记数据。因此本文选择使用半监督的方式进一步提高MART的效果。

对比实验

作者在CIFAR-10数据集上进行了一个白盒实验,对于扰动限制 ϵ=8/255\epsilon = 8/255ϵ=8/255,首先用标准AT(with PGD-10)训练一个8层的CNN(准确率87%)。然后构造一个原本分错的子集 S−S^-S− (总样本的13%),和一个原本分对的子集 S+S^+S+ (总样本的13%),利用这两个子集,作者使用不同设置重新训练同一网络,并评估了其对测试数据集上的白盒PGD-20攻击的鲁棒性。 共进行三组实验:

  1. 对其中一个子集(S−S^-S− 或 S+S^+S+ )不进行攻击。
  2. 对其中一个子集(S−S^-S− 或 S+S^+S+ )使用不同的Max技术。
  3. 对其中一个子集(S−S^-S− 或 S+S^+S+ )使用不同的Min技术。

结果如下:

结论:

  1. 原本出错样本对最终鲁棒性影响较大,而原本分对样本影响近乎没有。
  2. 原本出错样本上的不同Max技术对最终鲁棒性的影响可以忽略不计。然而,对于原本分对样本,在Max过程中使用弱攻击往往会降低鲁棒性。
  3. 对于原本出错样本,使用一个额外正则化项能够显著额外提升最终的鲁棒性。

基于上述观察结果,作者重新定义了对抗性风险,以规范化的形式将误分类样本的明确区分纳入其中。提出了一种新的防御算法,以在AT中以动态方式实现这一点。

Misclassification Aware Adversarial Risk

原对抗风险可定义为:

其中 hθ(x)h_\theta(x)hθ​(x) 表示输入x对应的输出类别,111 表示指示函数。原对抗风险无法区分原本分对和原本分错的样本,因此,新对抗风险重定义为:

第一项使得对抗样本分类正确,第二项为原本分类出错的样本的鲁棒性正则项(类似TRADES中的正则项),使得这些样本以及其对抗样本分类正确。其中 x^i′\hat{x}'_ix^i′​ 定义为:


注意,上面重新定义的对抗风险中的第一项其实隐式的包含了对于原本分对的样本的正则项,此时原应为 1(hθ(xi)=yi)⋅1(hθ(xi)≠hθ(x^i′))1(h_\theta(x_i) = y_i) \cdot 1(h_\theta(x_i) \neq h_\theta(\hat{x}'_i))1(hθ​(xi​)=yi​)⋅1(hθ​(xi​)​=hθ​(x^i′​)),但此时hθ(xi)=yih_\theta(x_i) = y_ihθ​(xi​)=yi​,因此可约为第一项的形式。

Proposed Defense: Misclassification Aware Adversarial Training (MART)

总loss表示为:

第一项使用了Boosted CE Loss 作为指示函数的替代函数,没有使用传统的交叉熵(CE Loss)函数的原因是因为分类对抗样本需要比干净样本更强的分类器,因为对抗样本的存在使分类决策边界变得更加复杂。BCE loss定义为:

BCE Loss中第一项就是常见的CE Loss,而第二项是一个margin loss,用于增大分类器的决策间隔。该方法在CW攻击中也曾经被用来加强对抗性。对于第二项,作者使用KL散度来作为替代Loss。第三项指示函数是一个强调学习分错样本的条件。为了方便优化,作者使用 1−pyi(xi,θ)1 - p_{y_i}(x_i, \theta)1−pyi​​(xi​,θ) 作为替代,它代表了该样本分错的概率。

Semi-supervised Extension with Unlabeled Data

总loss可以表示为监督loss和非监督loss的加权和:

对于非监督的Loss,论文采用最有效的UAT++。具体来说,UAT++首先对标记数据训练一个模型,然后使用该模型为未标记数据生成伪标签。此外,给定一个训练数据(x,y)(可以是有标记的或无标记的数据),UAT++中采用的有监督和无监督损失函数定义为:

“Improving Adversarial Robustness Requires Revisiting Misclassified Examples“ 论文笔记相关推荐

  1. 【论文阅读】Feature Denoising for Improving Adversarial Robustness

    阅读由来SCRDet++参考文献[20]https://blog.csdn.net/dujuancao11/article/details/121590324 Feature Denoising fo ...

  2. Improving Adversarial Robustness via Channel-Wise Activation Suppressing

    文章目录 概 主要内容 代码 Bai Y., Zeng Y., Jiang Y., Xia S., Ma X., Wang Y. Improving adversarial robustness vi ...

  3. EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES 论文笔记

    EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES 论文笔记 EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES 原 ...

  4. 从Bayesian Deep Learning到Adversarial Robustness新范式

    ©作者 | 王灏.毛成志 单位 | Rutgers University / Columbia University 研究方向 | 贝叶斯深度学习 / 对抗鲁棒性 拖延症赶在 2021 结束前来介绍一 ...

  5. 【论文笔记09】Differentially Private Hypothesis Transfer Learning 差分隐私迁移学习模型, ECMLPKDD 2018

    目录导引 系列传送 Differentially Private Hypothesis Transfer Learning 1 Abstract 2 Bg & Rw 3 Setting &am ...

  6. 论文笔记:Improving Grammatical Error Correction Models with Purpose-Built Adversarial Examples

    论文笔记:Improving Grammatical Error Correction Models with Purpose-Built Adversarial Examples 文章简要介绍 出处 ...

  7. 论文笔记——EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES(解释和利用对抗样本)

    本文参考了三篇笔记,帮助很大: <Explaining and Harnessing Adversarial Examples>阅读笔记 [论文笔记]Explaining & Ha ...

  8. Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Neural Networks论文笔记

    Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Neural Networks论文笔记 0. 概述 如今一些深度 ...

  9. 论文笔记(五)《explaining and harnessing adversarial examples》

    2020.03.23陆陆续续的在读论文了,参考了其他人分享的读书笔记,但是还是没怎么读懂,理不清思路.继续读吧 <解释和利用对抗样本> 基础知识 abstract 包括神经网络在内的几个机 ...

  10. Improving the Robustness of Question Answering Systems to Question Paraphrasing

    <Improving the Robustness of Question Answering Systems to Question Paraphrasing> 新加坡国立大学 这篇论文 ...

最新文章

  1. C++中关于[]静态数组和new分配的动态数组的区别分析
  2. 一文读懂AlphaGo背后的强化学习:它的背景知识与贝尔曼方程的原理
  3. jquery实用应用之jquery操作radio、checkbox、select
  4. oracle11g-expdp-impdp步骤
  5. 瀑布式开发、迭代式开发、螺旋开发、敏捷开发四种开发模式的区别
  6. linux 网桥的管理和搭建
  7. link 和 @import 的区别
  8. 在SAP云平台测试帐号中启用Kyma运行环境
  9. 程序员制作出价值5亿外卖神器却不能取消订单,你知道吗?
  10. srpg 胜利条件设定_英雄联盟获胜条件
  11. 前端学习(2225):react之类定义组件
  12. 构建根文件系统之busybox
  13. GitHub、GitLab、Git的关系及开发
  14. \t\t产后饮食标准 饮食原则 最适合新妈妈吃的菜 饮食秘诀 禁忌
  15. 无法查看MSN聊天记录 总弹出下载.xml文件的对话框
  16. 家庭宽带多运营商接入方案
  17. APP推广:app推广的渠道有哪些既简单又有效的?
  18. Qt写的json代码生成器
  19. 2019中南大学考研计算机考试,2019年中南大学计算机考研经验分享(复试+真题)...
  20. Java基础(扩充中...)

热门文章

  1. Javaweb-标签介绍
  2. RK3399 4.4内核 修改DDR频率
  3. Grafana——》重置默认的登录密码
  4. 自然科学 计算机,自然科学计算器:Natural Scientific Calculator
  5. c++自动抢购_软件神器—全网口罩监控抢购
  6. 服务发现框架 —————— 开开开山怪
  7. qt 二维数组初始化_C++数组初始化方法
  8. Linux搭建测试环境
  9. oracle写求余函数,Oracle取余函数mod
  10. C++的依赖倒置原则