AutoZOOM: Autoencoder-based Zeroth Order Optimization Method for Attacking Black-box Neural Networks
Abstract
最近的研究表明,当目标模型被称为白盒设置(white box setting)时,由深度神经网络(DNN)训练的最先进图像分类器中的对抗样本可以很容易地生成。然而,当攻击已部署的机器学习服务时,只能获取目标模型的输入输出对应关系;这就是所谓的黑箱攻击设置。**现有黑盒攻击的主要缺点是需要过多的模型查询,这可能由于低效的查询设计而给模型健壮性带来错误的感觉。**为了弥补这一差距,我们提出了一个查询高效黑盒攻击的通用框架。我们的框架AutoZOOM是基于自动编码器的零阶优化方法的简称,它具有两个新的构造块,用于有效的黑盒攻击:(i)一种自适应随机梯度估计策略,用于平衡查询计数和失真,以及(ii)一种自动编码器,可以使用未标记的数据离线训练,也可以使用双线性调整操作来加速攻击。实验结果表明,通过将AutoZOOM应用于最先进的黑盒攻击(ZOO),可以显著减少模型查询,而不会牺牲攻击成功率和生成的对抗样本的视觉质量。特别是,与标准的ZOO方法相比,AutoZOOM可以在MNIST、CIFAR-10和ImageNet数据集上持续地将查找成功对抗样本(或达到相同失真水平)的平均查询数减少至少93%,从而对对抗性稳健性有了新的认识。
1 Introduction
近年来,”机器学习作为一种服务”为世界提供了一种不费吹灰之力就能完成各种任务的强大机器学习工具。例如,Google Cloud Vision API和Clarifai.com等商用服务为公众提供训练有素的图像分类器。允许以一个较低的价格上传图像和并获得预测分类。然而,现有和新兴的机器学习平台及其较低的模型访问成本引起了越来越多的安全问题,因为它们还提供了测试恶意尝试的理想环境。更糟糕的是,当这些服务用于构建衍生产品时,风险可能会被放大,攻击者可能会利用固有的安全漏洞。
在许多计算机视觉任务中,DNN模型达到了最先进的预测精度,因此被广泛应用于现代机器学习服务中。尽管如此,最近的研究强调了DNN在对抗性干扰下的脆弱性。在目标模型对攻击者完全透明的白盒设置中,可以轻松制作视觉上不易察觉的敌对图像,通过利用输入梯度信息欺骗目标DNN模型进行错误分类(Szegedy et al.2014;Goodfello、Shlens和Szegedy 2015)。然而,在黑盒设置中,部署模型的参数是隐藏的,人们只能观察被查询样本的输入输出对应关系,制作对抗样本需要无梯度(零阶)优化方法来收集必要的攻击信息。图1显示了一个通过迭代模型查询从在ImageNet上训练的黑盒DNN(Inception - v3模型(Szegedy et al.2016))编制的预测规避对抗样本。
尽管通过使用梯度估计实现了显著的攻击效果,但当前的黑盒攻击方法,如(Chen等人2017;Nitin Bhagoji等人2018),由于利用坐标梯度估计和值更新,因此查询效率不高,这不可避免地会产生过多的模型查询,并且由于查询设计效率低下,可能会给模型健壮性带来错误的感觉。在本文中,我们建议使用基于自动编码器的零阶优化方法AutoZOOM来解决上述问题。AutoZOOM有两个新的构建模块:(i)一个新的自适应随机梯度估计策略,用于在制作对抗样本时平衡查询计数和失真;(ii)一个自动编码器,该编码器可以脱机对其他未标记数据进行训练,也可以基于简单的双线性调整操作,以加速黑盒攻击。如图2所示,AutoZOOM利用“解码器”从(学习到的)低维潜在空间表示中构建高维对抗性扰动,其查询效率可以通过无梯度优化中与维度相关的收敛速度得到很好的解释。
**贡献。**我们总结了我们在对抗鲁棒性方面的主要贡献和新见解,如下所示:
- 我们提出了AutoZOOM,一种新的查询高效黑盒攻击框架,用于生成对抗样本。AutoZOOM采用自适应随机梯度估计策略和降维技术(离线训练的自动编码器或双线性重定器),以减少攻击查询计数,同时保持攻击有效性和视觉相似性。据我们所知,AutoZOOM是第一个使用随机全梯度估计和数据驱动加速的黑盒攻击。
- 我们使用零阶优化的收敛速度来提高AutoZOOM的查询效率,并对AutoZOOM中的新梯度估计器进行了误差分析,以确定估计误差和查询计数之间的权衡。
- 当应用于(Chen等人,2017年)中提出的最先进的黑盒攻击时,AutoZOOM获得了类似的攻击成功率,同时显著减少了攻击MNIST、CIFAR-10和ImageNet的DNN图像分类器所需的平均查询数(至少93%)。它还可以通过执行更精细的梯度估计来微调成功后阶段的失真。
- 在实验中,我们还发现,使用简单的双线性重定器作为解码器(AutoZOOM BiLIN)的AutoZOOM可以获得显著的查询效率,尽管它仍然比使用离线训练的自动编码器(AutoZOOM AE)的AutoZOOM差。但是,AutoZOOM BiLIN更容易安装,因为不需要额外的培训。研究结果还表明,一个有趣的发现是,虽然学习合法图像的有效低维表示仍然是一项具有挑战性的任务,但使用明显较少自由度(即降低维度)的黑盒攻击肯定是可行的。
2 Related Work
基于梯度的对DNN的对抗性攻击属于白盒设置,因为获取关于输入的梯度需要知道目标DNN的权重。作为对黑盒攻击的第一次尝试,(Papernot et al.2017)中的作者建议使用迭代模型查询训练替代模型,对替代模型执行白盒攻击,并对目标模型实施转移攻击(Papernot、McDaniel和Goodfello 2016;Liu et al.2017)。然而,由于攻击可转移性差,其攻击性能可能会严重降低(Su等人,2018年)。尽管ZOO的攻击成功率和视觉质量与许多白盒攻击方法相似(Chen等人,2017),但其坐标梯度估计需要过多的目标模型评估,因此查询效率不高。同样的梯度估计技术也用于(Nitin Bhagoji等人,2018年)。
除了基于优化的方法外,(Ilyas等人,2018年)的作者还提出使用自然进化策略(NES)来提高查询效率。尽管在NES攻击中存在向量梯度估计步骤,但我们将其视为并行工作,因为其自然进化步骤超出了使用零阶梯度下降的黑盒攻击的范围。我们还注意到,与NES不同,我们的AutoZOOM框架使用了一种理论驱动的查询高效的基于随机向量的梯度估计策略。此外,自动缩放可以进一步提高网元的查询效率,因为网元没有考虑攻击降维的因素,这是自动缩放的新颖之处,也是本文的重点。
在更严格的攻击设置下,攻击者只知道决策(top-1预测类),在(Brendel、Rauber和Bethge 2018)中的作者提出了一种围绕决策边界的基于随机游走的攻击。这种黑盒攻击会分配类预测分数,因此需要额外的模型查询。由于篇幅限制,我们在补充资料中提供了更多的背景和一个比较现有黑盒攻击的表格。
3 AutoZOOM: Background and Method
3.1 Black-box Attack Fomulation and Zeroth Order Optimization
贯穿这篇文章,我们聚焦于通过AutoZOOM提高基于梯度估计和梯度下降的黑盒攻击的查询效率,且我们认为威胁模型(threat model)的类预测分数是为攻击者所知的。在此设定中,可以将目标DNN表示为一个分类函数 F : [ 0 , 1 ] d → R K F:[0,1]^d \rightarrow \mathbb{R}^K F:[0,1]d→RK,它把一个d维度的图片( d d d-dimensional scaled image)作为输入,然后产出一个关于对所有 K K K类图片的预测分数的向量,比如预测属于某一类的置信概率。我们还进一步考虑将初级(entry-wise)单调变换(monotonic transformation) M ( F ) M(F) M(F)应用于黑盒攻击的输出端 ,因为单调既变换保留了类预测的排序,又可以减轻的大分数变化(large score variation)的问题(e.g. 概率->对数概率)。
这里我们形式化了目标(targeted)黑盒攻击,这个公式同样也可以很好的适用于非目标攻击。 ( x 0 , t 0 ) (\mathbf x_0, t_0) (x0,t0)中的 x 0 \mathbf x_0 x0表示自然(干净的)图像, t 0 t_0 t0表示其所属的正确类别标签; ( x , t ) (\mathbf x, t) (x,t)中的 x \mathbf x x表示 x 0 \mathbf x_0 x0的对抗样本, t t t表示目标类标签类别( t ≠ t 0 t \ne t_0 t=t0)。找到对抗样本这个问题可以形式化为一个优化问题,通用形式为
min x ∈ [ 0 , 1 ] d D i s t ( x , x 0 ) + λ ⋅ L o s s ( x , M ( F ( x ) ) t ) \min_{\mathbf{x\in[0,1]^d}}\rm{Dist(x,x_0)}+\lambda\cdot Loss(x,\textit M(\textit F(x))\textit t) x∈[0,1]dminDist(x,x0)+λ⋅Loss(x,M(F(x))t)
D i s t ( x , x 0 ) \rm{Dist(x,x_0)} Dist(x,x0)度量了自然图像 x \rm {x} x和对抗样本 x 0 \rm {x_0} x0之间的失真程度(distortion)。 L o s s ( ⋅ ) \rm Loss(\cdot) Loss(⋅)是一个攻击目标,反映预测 t = arg max k ∈ { 1 , … , K } [ M ( F ( x ) ) ] k t = \arg \max_{k \in\{1,\dots,K\}}[M(F(x))]_k t=argmaxk∈{
1,…,K}[M(F(x))]k的可能性。λ是正则化系数,约束 x ∈ [ 0 , 1 ] d \rm{x} \in [0,1]^\textit d x∈[0,1]d将对抗图像 x \rm x x限制在有效图像空间内。自然图像 x \rm {x} x和对抗样本 x 0 \rm {x_0} x0之间的失真程度 D i s t ( x , x 0 ) \rm{Dist(x,x_0)} Dist(x,x0)通常采用 L p L_p Lp来衡量,即对于 p ≥ 1 p\ge1 p≥1有 D i s t ( x , x 0 ) = ∣ ∣ x − x 0 ∣ ∣ p = ∣ ∣ δ ∣ ∣ p = ∑ i = 1 d ∣ δ i ∣ 1 p \rm{Dist(x,x_0)} = \rm||x-x_0||_p = ||\boldsymbol\delta||_p = \sum_{i=1}^{d}|\boldsymbol\delta_i|^{\frac{1}{\textit p}} Dist(x,x0)=∣∣x−x0∣∣p=∣∣δ∣∣p=∑i=1d∣δi∣p1, δ \boldsymbol\delta δ是对原始图像的扰动且$\boldsymb