ODS:输出多样化采样,有效增强白盒和黑盒攻击的性能 | NeurIPS 2020
作者 | 慕苏
【简介】
本文提出了一种新的采样策略——输出多样化采样,替代对抗攻击方法中常用的随机采样,使得目标模型的输出尽可能多样化,以此提高白盒攻击和黑盒攻击的有效性。实验表明,该种采样策略可以显著提升对抗攻击方法的性能。
论文地址:
https://arxiv.org/abs/2003.06878
论文代码:
https://github.com/ermongroup/ODS
【引言】
神经网络在图像分类任务上取得了很大的成功,但是它们却很容易被对抗样本攻击——人眼不可察的微小扰动就能让其分类错误。因此,设计强有力的攻击方法对评估模型的鲁棒性和防御能力至关重要。目前大部分攻击方法都要依赖于随机采样,也就是给输入图片加入随机噪声。在白盒攻击中,随机采样被用于寻找对抗样本的初始化过程;在黑盒攻击中,随机采样被用来探索生成对抗样本的更新方向。在这些攻击中,都是在模型的输入空间(像素空间)进行随机采样以实现尽可能大的多样性,从而提高对抗的成功率。但是对于复杂的非线性深度神经网络模型,输入空间样本的多样性并不能代表输出空间样本结果的多样性,如下图左侧所示,黑色实心点表示原始输入样本,黑色空心圆圈表示采样得到的扰动,蓝色虚线箭头表示随机采样,我们可以看到,当把随机扰动添加到原始样本上,在输出空间,其对应的输出值距离原始样本的输出值非常接近,也就是说输入空间随机采样的多样性并不能直接导致输出空间结果的多样性。因此,本文作者提出一种新的采样策略——输出多样化采样(ODS),目的在于让样本的输出尽可能多样化。如下图左侧红色实线箭头所示,输入空间的采样结果,映射到输出空间,也能具有很大的多样性。而下图右侧类似,只不过是应用到黑盒攻击中,通过让代理模型的输出尽可能多样化来实现目标模型(被攻击的模型)输出的多样化。
【模型介绍】
1、输出多样化采样(ODS)
2、利用ODS增强白盒攻击
在白盒攻击中,我们利用ODS来初始化寻找对抗样本的优化过程(被称为ODI)的起始点,具体公式为:
3、利用ODS增强黑盒攻击
具体算法流程如下表所示:
对于原始输入图片,在黑盒攻击生成对抗样本的优化过程中,每次迭代都朝着的方向,从而让模型的输出尽可能多样化。
【实验结果】
1、白盒攻击实验
在这里,针对两种经典的白盒攻击方法PGD攻击和 C&W攻击,作者比较了利用ODI初始化和普通的随机初始化(naive)的对抗攻击性能,如下表所示。
我们可以看到,在两种攻击方法PGD和C&W中,采用ODI策略的方法比普通的随机采样在多个模型上都能取得更低的准确率,也就是具有更强的攻击效力。此外,相比于基于MNIST数据集训练的模型,ODI方法在基于CIFAR-10和ImageNet数据集训练的模型上显示出了更大的优势(ODI的结果和naïve的结果差距更大)。作者猜测这可能是受到模型非线性程度的影响。由于基于CIFAR-10和ImageNet的模型具有更强的非线性,因此输入空间和输出空间两者的多样性之间的差距更大,而ODI由于使得样本输出足够多样化,故而有效增强了对抗攻击的性能。
作者进一步比较了结合ODI策略的PGD攻击方法(ODI-PGD)与其他对抗攻击方法的性能,如下表所示:
这里tuned ODI-PGD是指参数经过微调后的ODI-PGD。可以看到,tuned ODI-PGD具有最好的性能,而在基于CIFAR-10的模型上,一般的ODI-PGD的性能也能超过tuned PGD, 同时还具有更小的计算开销。
2、黑盒攻击实验
在这里,作者主要评估了利用ODS策略的黑盒攻击方法和其他攻击方法在生成对抗样本的过程中查询次数的多少。
如上表所示,作者比较了结合ODS的黑盒攻击方法(SimBA-ODS)和原始的黑盒攻击方法(SimBA-DCT),可以发现SimBA-ODS大大减少了查询次数,同时具有更小的扰动距离,也就是更加接近正常样本。
此外,作者还比较了查询次数和攻击成功率的关系,以及查询次数和扰动大小的关系。
如上图所示,可以发现结合ODS的方法(SimBA-ODS)比一般方法(Square)能在较少的查询次数时就达到很高的攻击成功率,从而可以大大减少计算时间开销。
如上图所示,在有目标攻击和无目标攻击中,结合ODS的攻击方法(Boundary-ODS)在3000多次查询后就能达到其他方法10000次查询才达到的对抗扰动水平。
推荐阅读
(点击标题可跳转阅读)
干货 | 公众号历史文章精选
我的深度学习入门路线
我的机器学习入门路线图
重磅!
AI有道年度技术文章电子版PDF来啦!
扫描下方二维码,添加 AI有道小助手微信,可申请入群,并获得2020完整技术文章合集PDF(一定要备注:入群 + 地点 + 学校/公司。例如:入群+上海+复旦。
长按扫码,申请入群
(添加人数较多,请耐心等待)
感谢你的分享,点赞,在看三连↓
ODS:输出多样化采样,有效增强白盒和黑盒攻击的性能 | NeurIPS 2020相关推荐
- 覆盖标准(白盒、黑盒和灰盒)
覆盖标准(白盒.黑盒和灰盒) 覆盖标准Coverage Criteria 覆盖标准采用软件的抽象表示并将其划分为可测试的功能. 每个功能构成了测试需求的基础--需要由软件的测试套件进行测试的东西. 当 ...
- 无线路由器挖洞方法大比拼:白盒 or 黑盒?
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 ZDI 发布博客文章,比较了黑盒和白盒挖洞方法的优劣.如下是对文章的编译. 去年,我们披露了两个认证绕过漏洞 ZDI-20-1176 ...
- 深入到系统组件是否白盒测试_南京豪之诺软件测试:白盒、黑盒、灰盒优缺点(知识普及)...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 白盒测试概念 白盒测试也称结构测试或逻辑驱动测试,重点关注软件内部的实现细节,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规 ...
- 对抗攻击算法总结论文集合(白盒、黑盒、目标检测、对抗训练等)
文章目录 前言 对抗攻击名词解释 一.白盒攻击 1.FGSM 2.JSMA: 3.DeepFool: 4.CW: 5.PGD: 二.黑盒攻击 1.单像素攻击 2.基于查询(query-based at ...
- 第4代白盒測试方法介绍--理论篇
关键词: 白盒測试 第4代 測试方法 4GWM 在线測试 持续測试 灰盒 脚本驱动 脚本桩 摘 要: 本文是第4代白盒測试方法的理论介绍,描写叙述3个关键领域内9项关键特征的概念与固有特征.同一时候 ...
- java软件测试黑盒工具,软件测试中的抽象层次系列之一 – 黑盒与白盒
前几天我在微博上发出了一个STB-010(软件测试在线公益课程系列)报名通知的帖子,这一讲的题目是"软件测试黒盒技术与应用 - 状态转换测试方法",立即引来了一些讨论. 比如朱少民 ...
- 如何绘制逻辑图— 4. 要素的属性:黑盒与白盒
在上一篇文中已经介绍了描述要素大小的属性(粒度与分层),这一篇要说明描述要素状态的属性. 看到了"黑盒/白盒",可能认为在讨论软件的测试工作?错了,在分析方法中借用了软件测试的黑/ ...
- 面向可解释AI的黑盒和白盒模型
使用模型属性.本地逻辑表示和全局逻辑表示从黑盒模型生成解释 快速回顾:XAI 和 NSC 可解释人工智能 (XAI) 致力于开发对人类(包括用户.开发人员.政策制定者和审计人员)来说本质上更容易理解的 ...
- 软件工程白盒测试的流图怎么画_功能安全理论 | 黑盒 与 白盒
点击上方?"汽车知识共享空间"关注订阅号,设为星标⭐获取更多实时内容更新... 功能安全标准ISO 26262-6的第9部分是关于软件单元验证的的,总共三个Table(7.8.9) ...
最新文章
- 【Leecode】两数相加
- 技术沙龙 | TeaTalk 带你深度探索 SDN 网络技术再创新
- 全文搜索引擎有哪些?_搜索引擎工作原理是什么?seo蜘蛛抓取会受到哪些因素影响?...
- 世界读书日 阿里人是这样看书的?
- asp绑定gridview属性_理解ASP.NET Core中的模型验证
- PHP扩展-扩展的生成和编译
- MySQL in语句内参数个数限制
- 特异性matlab,基于灰色理论计算位置特异性矩阵
- 程序员的噩梦,你遇到过哪几条?
- IIS-ShortName-Scanner使用
- 【C++面向对象】类的静态成员函数(static member functions)
- (转)基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作
- 筛选索引--filter indexs
- Deskew Technologies Gig Performer 4 Mac - 现场调音机架
- Web前端开发视频教程
- CSDN:LaTex数学公式编辑基础
- 基本系统调用性能lmbench测试方法和下载
- 【python】删除excel表格重复行,数据预处理
- 仓储系统之入库、出库理解浅谈
- UOS(Deepin V20)体验