原文:Generating Adversarial Examples with Adversarial Networks
链接:https://arxiv.org/pdf/1801.02610
摘要
深度神经网络容易收到由于输入小幅度的干扰而产生对抗性示例的影响。人们已经提出了各种各样的攻击策略来生成攻击示例。如何产生高质量和更高效的示例需要更多的研究工作。再本文中,作者提出了AdvGAN算法,这是一种基于对抗网络生成对抗示例的方法。作者也做了白盒攻击和黑盒攻击的测试,并且在黑盒测试中,他们以92.76%的准确率在公共数据集MNIST黑盒攻击中排名第一。
1. 介绍
除了一些背景知识,作者将AdvGAN和FSGM算法进行了对比。在白盒攻击中,FSGM需要访问模型的架构和参数,而AdvGAN不需要,因此它可以立即对任何输入产生对抗性扰动,无需访问模型本身,所以作者把这种攻击成为半白盒攻击。
本文的贡献:
- 不同于之前的方法,作者训练了一个网络来生成对抗示例,不仅效果好,而且效率高。
- 作者证明了,AdvGAN可以采用蒸馏网络来攻击黑盒模型,他们提出了利用查询信息动态提取模型,实现高的黑盒攻击成功率和有针对性的黑盒攻击,这个是基于可转移性的黑盒攻击难以实现的。
- 用了最先进的防御方法来测试AdvGAN,表明在当前的防御下取得了更高的攻击率。
- 比赛成绩好。
2. 相关工作
2.1 对抗例子
参见我上一次写的C&W算法的博客。
2.2 黑盒攻击
出于安全的原因,现有的学习系统通常不允许访问模型,因此通常需要进行黑盒攻击。
大多数黑盒攻击的攻击策略都是基于可转移的现象。攻击者可以训练本地模型来获得对抗示例,希望示例也能攻击其他模型。但是很少工作能够利用目标模型的基于查询的访问来构建对抗样本,并且超越可转移性。Hu和Tan建议使用GANs为恶意软件构建错误示例,而且Papernot建议训练一个局部替代模型,这个策略仍然依赖可转移性。相比之下,作者提出的AdvGAN算法不需要依赖可转移性。
2.3 GAN网络
GAN网络在图像生成和操作方面的效果很好。作者采用类似对抗损失和图像到图像的网络结构来学习从原始图像到扰动的映射,使产生的扰动和原始图像分不开,而且保证了攻击的效果。
3. 使用对抗性网络来生成对抗示例
3.1 问题定义
不赘述
3.2 AdvGAN网络架构
图1中,给定一个输入,记过generator网络生成扰动
,扰动
和输入x相加,一方面把
和
送入discriminator网络训练,另外一方面将
送入被攻击的网络训练。G网络用来输出噪声,而D网络的目标函数代表
和
的距离度量,而f网络的目标函数代表分类结果和攻击的标签的损失值。
是原网络f的目标函数,t是攻击的标签。
为了限制扰动的大小,作者加入了额外的损失。
c是一个常数,控制扰动的大小的。
最终的目标函数可表示为
3.3 黑盒攻击
1)静态蒸馏
作者从黑盒模型的训练数据中随机抽取数据,通过查询功能获得软标签。基于这些软标签构建一个蒸馏网络f。他们在网络f上执行白盒攻击。f的目标是
是交叉熵函数。
2)动态蒸馏
仅仅使用原始数据集训练蒸馏蒸馏模型是不够的,因为不清楚黑盒和蒸馏模型在生成对抗示例上的表现有多接近。作者提出了一种可选的最小化方法动态查询来训练生成器,迭代的步骤如下。
1. 根据固定的网络,基于网络
训练
和
,采用
的参数初始化
。
2. 根据固定的更新
。
实验细节部分略。