虽然深度神经网络(DNN)在许多任务中获得了很大的成功,但是DNN在面临对抗样本攻击时表现非常脆弱。对抗样本 是指在数据集中通过故意添加细微的干扰所形成的输入样本,导致模型以高置信度给出一个错误的输出,如图1。现有的对抗攻击方法主要分为白盒攻击和黑盒攻击, 其中白盒攻击假设攻击者能够获知机器学习所使用的算法,以及算法所使用的参数,攻击者可以利用模型梯度信息轻易构造对抗样本;相反,黑盒攻击假设攻击者并不知道机器学习所使用的算法和参数,攻击者只能通过查询(query)观察模型的输入输出,然后从大量的输入输出对中估计出梯度信息(伪梯度)用于构造对抗样本。本文主要关注于更符合现实场景的黑盒攻击。但是,由于缺乏先验和效率低下,现有的黑盒攻击模型在计算伪梯度时大多是查询密集型(query-intensive)的, 耗时耗力不现实。
图1 对抗样本,DNN将猫片大概率的分类为鳄梨色拉酱
最近元学习(meta learning)在小样本学习(few-shot learning)上大获成功,元学习的大致想法是利用大量跟目标任务相似的任务来学习一个元学习器 (meta-learner),然后作用到目标任务上获得一个不错的模型初值,从而能够仅利用少量目标任务的数据对模型进行快速适配。受到这个思想的启发,这篇工作提出了一种基于元学习的攻击方法:元攻击(meta attack)。元攻击中利用元学习从成功的攻击模式中学习先验信息,基于这样的先验信息,攻击模型可以只利用少量的查询就快速适配到新的攻击任务,生成对抗样本。具体来说,本文首先利用每个分类器计算得到的数据对(图像, 图像梯度)训练元攻击器(meta attacker)。训练结束后,用目标分类器上输入图片的伪梯度fine-tune元攻击器,最后利用微调后的元攻击器为目标分类器中输入的图像估计梯度信息,生成对抗样本。
与以往的方法不同,本文充分利用了伪梯度信息,不仅用于更新对抗样本,还用于对训练有素的元攻击器进行微调。经过少量的微调,攻击者可以进行模拟目标模型的梯度分布。
本文提出的meta attack主要包含两部分:训练元攻击器(meta attacker);利用元攻击器进行查询高效的攻击。
(1)本文首先在多个分类器上训练一个元攻击器,具体通过利用每个分类器的数据对(图像, 图像梯度)训练元攻击器。
(2)用现有的零阶优化方法(query-intensive)估计目标分类器上输入图像的伪梯度,构造目标分类器的(图像,图像伪梯度)数据对,再利用得到的少量数据对fine-tune元攻击器,然后用微调后的元攻击器为目标分类器中输入的图像估计梯度信息,生成对抗样本。(交替进行“元攻击器的微调”和”对抗样本的优化“)
黑盒攻击问题可以被形式化为如下公式,其中 是要攻击的目标分类模型, 是原始图像, 是其真实标签, 是对抗扰动后的图像,Q是单个图像的最大查询次数, 是用于衡量扰动大小的 范数,损失函数 衡量了模型正确分类对抗样本 为真实标签 的概率,例如。黑盒攻击的目标:希望在有限的查询次数下和微量的扰动内,能扰动原始图像 至对抗样本 ,使得 被目标模型 分类正确的概率越小越好。
在白盒攻击中,攻击者可以轻易获得真实的梯度 ,然后通过简单的梯度下降直接优化对抗样本 :
而现有的黑盒攻击不能获得梯度,只能获得模型的输出(e.g.,hard label, logits and probability scores),此时攻击者可以利用模型的输出来估计梯度,这种类型估计器叫零阶优化方法(zeroth-order optimization,ZOO)[1]。其中最典型的ZOO方法利用有限差分法估计梯度,由于有限差分法估计梯度是逐坐标的,对query的消耗量很大。例如基于有限差分法的估计器,对于tiny-Imagenet 数据集中的每个图像都需要至少20,000 queries来估计全图的梯度。
本文中,元学习的目的是获取一组更好的模型初始化参数(即让模型自己学会初始化)。我们通过n-ways,K-shot的训练任务进行元学习的训练,使得模型学习到“先验知识”(初始化的参数)。这个“先验知识”在新的任务上可以快速泛化,比随机初始化的参数表现的更好。
本文中提到的元攻击器为一个自动编码器(autoencoder) , 自动编码器的输入为图像 ,输出为基于分类模型 的loss 对输入图像的梯度 , 本文中要利用元学习获得元攻击器的参数 。
在训练元攻击器之前,我们先给定n个分类模型 (e.g., 当n=3时,可以是 VGG13, VGG16, GoogleNet),输入图像集合 , 然后在n个分类模型上分别计算对输入图像的梯度,得到 。将每个分类模型 上的训练看作一个任务 ,则元攻击器的训练数据为 。在元学习训练每个任务时,先从中采样K个样本(K-shot) ,然后计算元攻击器 的重构loss关于参数 的梯度,得到更新后的参数 。最后聚合 在各个任务上的更新,得到一个具有泛化能力的 。
给定训练好的元攻击器
,交替执行元攻击器的微调和对抗样本的优化。其中元攻击器微调用到的伪梯度
本文在三个图像分类数据下验证meta attack的有效性,进行了模型分析和参数分析。在三个公开数据集(MNIST,CIFAR10,tiny-Imagenet)上,实验结果如下所示。可以看到,相比传统的黑盒攻击模型,本文提出的meta attack在各个数据集上都有较好的表现,且显著减少了查询次数。在模型分析实验中,作者通过消融实验证明了元学习对元攻击器效果的提升,同时在CIFAR10 和 tiny-Imagenet 数据上做了攻击的迁移,验证了攻击模型的泛化性。
[1] Chen, Pin-Yu, Huan Zhang, Yash Sharma, Jinfeng Yi, and Cho-Jui Hsieh. "Zoo: Zeroth order optimization based black-box attacks to deep neural networks without training substitute models." In Proceedings of the 10th ACM Workshop on Artificial Intelligence and Security, pp. 15-26. 2017.