Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples

Gowal S., Qin C., Uesato J., Mann T. & Kohli P. Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples. arXiv preprint arXiv 2010.03593, 2020.

暴力美学, 通过调参探索adversarial training的极限.

主要内容

实验设置

模型主要包括WRN-28-10, WRN-34-10, WRN-34-20, WRN-70-16;

优化器为SGD(nesterov momentum), 1/2, 3/4 epochs处 lr /= 10, weight decay 5e-4;

对抗训练用的是PGD-10, 步长为2/255\(\ell_{\infty}\)和15/255\(\ell_{2}\).

损失的影响

实际上就是比较不同方法的区别(包括外循环的损失和内循环构造对抗样本的损失, TRADES稍优):

额外的数据

有很多方法用了无标签数据作为额外的数据来进行训练并取得了很好的效果.

上表作者比较的是无标签数据的量, 显示过多的数据并不能一直增加鲁棒性.

上图关注的是有标签数据和无标签数据之前的比例关系, 显然无标签数据似乎更能带来鲁棒性(这与无监督训练更具鲁棒性是一致的).

网络结构

从上图可知, 网络越大鲁棒性越好.

其他的一些tricks

  • Model Weight Averaging: 作者发现这个对提高鲁棒性很有帮助, 且这方面缺乏研究

  • 激活函数: Swish/SiLu表现不错, 整体相差不大.

  • Learning Rate Schedule: 常用的multistep decay表现最好.

  • 训练次数: 并非越大越好, 实际上已经有最新工作指出对抗训练存在严重的过拟合.

  • 正则化(weight decay): \(\ell_2\)正则化, 即weight decay在对抗训练中有重要作用.

  • 构造对抗样本所需的steps: 步数越多鲁棒性越好, 但是这是一个trade-off, 伴随着干净数据集的正确率下降

  • 构造对抗样本的epsilon: 有类似上面的结论, 太大了二者都会下降.

  • Batch Size: 同样并非越大越好.

  • Augmentation: 似乎对于对抗训练意义不大, 但是个人在实验中发现这对防止过拟合有一定效果.

  • Label Smoothing: 几乎没影响

Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples的更多相关文章

  1. Adversarial Training

    原于2018年1月在实验室组会上做的分享,今天分享给大家,希望对大家科研有所帮助. 今天给大家分享一下对抗训练(Adversarial Training,AT). 为何要选择这个主题呢? 我们从上图的 ...

  2. 《C-RNN-GAN: Continuous recurrent neural networks with adversarial training》论文笔记

    出处:arXiv: Artificial Intelligence, 2016(一年了还没中吗?) Motivation 使用GAN+RNN来处理continuous sequential data, ...

  3. LTD: Low Temperature Distillation for Robust Adversarial Training

    目录 概 主要内容 Chen E. and Lee C. LTD: Low temperature distillation for robust adversarial training. arXi ...

  4. Understanding and Improving Fast Adversarial Training

    目录 概 主要内容 Random Step的作用 线性性质 gradient alignment 代码 Andriushchenko M. and Flammarion N. Understandin ...

  5. Adversarial Training with Rectified Rejection

    目录 概 主要内容 rejection 实际使用 代码 Pang T., Zhang H., He D., Dong Y., Su H., Chen W., Zhu J., Liu T. Advers ...

  6. Boosting Adversarial Training with Hypersphere Embedding

    目录 概 主要内容 代码 Pang T., Yang X., Dong Y., Xu K., Su H., Zhu J. Boosting Adversarial Training with Hype ...

  7. 论文解读(ARVGA)《Learning Graph Embedding with Adversarial Training Methods》

    论文信息 论文标题:Learning Graph Embedding with Adversarial Training Methods论文作者:Shirui Pan, Ruiqi Hu, Sai-f ...

  8. cs231n spring 2017 lecture16 Adversarial Examples and Adversarial Training 听课笔记

    (没太听明白,以后再听) 1. 如何欺骗神经网络? 这部分研究最开始是想探究神经网络到底是如何工作的.结果人们意外的发现,可以只改变原图一点点,人眼根本看不出变化,但是神经网络会给出完全不同的答案.比 ...

  9. Unsupervised Domain Adaptation Via Domain Adversarial Training For Speaker Recognition

    年域适应挑战(DAC)数据集的实验表明,所提出的方法不仅有效解决了数据集不匹配问题,而且还优于上述无监督域自适应方法.        

随机推荐

  1. 文件和目录之间建立链接 (ln)

  2. Default Assignment Operator and References

    We have discussed assignment operator overloading for dynamically allocated resources here . This is ...

  3. entfrm-boot开发平台一览【entfrm开源模块化无代码开发平台】

    介绍 entfrm-boot是一个以模块化为核心的无代码开发平台,能够让中小企业快速从零搭建自己的开发平台:开箱即用,可插拔可自由组合:以模块化的方式,最大化的代码复用,避免重复开发:无代码可视化开发 ...

  4. 聊聊 SpringBoot 中的两种占位符:@*@ 和 ${*}

    前言 在 SpringBoot 项目中,我们经常会使用两种占位符(有时候还会混用),它们分别是: @*@ ${*} 如果我们上网搜索「SpringBoot 的占位符 @」,大部分答案会告诉你,Spri ...

  5. 利用Windbg分析Magicodes.IE一次错误编写导致内存剧增

    由于这近一年时间一直忙于写书和工作,一直没有水文,但是近期有几位朋友使用我们的Magicodes.IE反馈在导出过程中内存暴涨...好吧,不管怎样,不能苦了我们朋友,接下来我们通过windbg来看一下 ...

  6. Java中Date类型与String 类型之间的互相转换

    Java中String类型和Date类型之间的转换 我们在注册网站的时候,往往需要填写个人信息,如姓名,年龄,出生日期等,在页面上的出生日期的值传递到后台的时候是一个字符串,而我们存入数据库的时候确需 ...

  7. uniapp实现钉钉扫码登录

    由于uniapp暂无钉钉授权登录所以本文将钉钉扫码登录作为网页嵌入uniapp,最终实现钉钉扫码登录app 1. 用H5调起钉钉扫码登录 钉钉在网页端的扫码登录可参考钉钉文档:扫码登录第三方网站 - ...

  8. [BUUCTF]PWN——hitcontraining_magicheap

    hitcontraining_magicheap 附件 步骤: 例行检查,64位程序,开启了nx和canary 本地试运行一下,经典的堆的菜单 64位ida载入,检索程序里的字符串的时候发现了后门 m ...

  9. [BUUCTF]REVERSE——Youngter-drive

    Youngter-drive 附件 步骤: 例行查壳儿,32位程序,upx壳儿 利用网上找的upx脱壳儿工具脱完壳扔进ida,首先检索程序里的字符串,发现了有关flag的字样,跟进,当source=T ...

  10. Linq中常用语法

    using System;using System.Collections.Generic;using System.ComponentModel.Design;using System.Linq;u ...