面向图像分类的对抗鲁棒性评估综述

2022-10-14 06:02:14李自拓孙建彬杨克巍熊德辉
计算机研究与发展 2022年10期
关键词:鲁棒性扰动准确率

李自拓 孙建彬 杨克巍 熊德辉

(国防科技大学系统工程学院 长沙 410073)

2019年瑞莱智慧RealAI团队对人脸照片进行算法处理,将照片打印并粘贴到镜框上,通过佩戴眼镜成功攻破19款商用手机的人脸解锁[1];2020年美国东北大学团队[2]设计了一款印有特殊图案的T恤,可使穿戴者躲避智能摄像头的监测;2021年腾讯科恩实验室[3]通过在路面部署干扰信息,导致特斯拉Model S车辆经过时对车道线做出错判,致使车辆驶入反向车道……

由此可见,尽管深度学习在执行各种复杂任务时取得了出乎意料的优异表现,但在安全应用领域仍有很大的局限性.Szegedy等人[4]发现,深度学习对于精心设计的输入样本是很脆弱的.这些样本可以轻易用人类察觉不到的微小扰动,欺骗一个训练好的深度学习模型,使模型做出错误的决策.现在,深度学习中的对抗攻击技术受到了大量关注,以面向图像分类为主的对抗攻击算法[5-10]不断涌现.

在此背景下,越来越多的研究者开始关注如何提升模型抵御对抗攻击的能力,即增强模型的对抗鲁棒性,并探索出了一系列的对抗防御手段,如梯度遮蔽[11-12]、对抗训练[6,13]、数据处理[14-15]和特征压缩[16]等.尽管这些方法对于改善模型的对抗鲁棒性是有效的,但是目前针对模型对抗鲁棒性的评估框架尚未完善,主要是通过不断改进攻防算法,反复进行对抗,定性给出模型鲁棒性好坏的基准,或者使用分类准确率等指标单一地衡量模型的对抗鲁棒性.此外,许多攻击算法或多或少会受到实验条件的限制,难以适用于所有的深度学习模型,这些问题为模型的对抗鲁棒性评估(adversarial robustness evaluation)带来了挑战.

目前,面向图像分类的对抗鲁棒性评估领域还有很大的发展空间,如何正确、科学、定量且全面地评估模型的对抗鲁棒性,正在吸引业界和学术界的关注.为了更好地探究对抗鲁棒性评估问题,本文系统梳理并分析总结了面向图像分类的对抗鲁棒性评估方法,以促进该领域的研究.

1 对抗样本相关介绍

生成对抗样本是开展对抗鲁棒性评估工作的基础.为了更好地理解对抗鲁棒性评估,本节首先简要介绍对抗样本的概念和相关专业术语,并探讨对抗样本存在的原因.为行文方便,对本文使用的符号进行说明,如表1所示:

Table 1 Notations Used in this Paper

1.1 对抗样本及相关术语

概念1.对抗样本.最早提出这一概念的是Szegedy等人[4],他们在原始样本上添加肉眼难以察觉的微小扰动,愚弄了当时最先进的深度神经网络(deep neural networks, DNNs),诱导模型分类错误.如图1所示,通过在原始样本上添加图中的扰动,就能让模型将卡车错误地识别成鸵鸟.

Fig.1 Illustration for the generation of adversarial example[4]

(1)

概念3.对抗攻击知识.它指的是攻击者所掌握的相关信息,包括训练样本、模型结构和模型输出等.针对攻击者对智能系统了解情况的多少,可以将攻击划分为白盒攻击、灰盒攻击和黑盒攻击,攻击难度依次增大.由于灰盒攻击的边界难以界定,目前研究大多以白盒攻击和黑盒攻击为主,本文不对灰盒攻击进行相关介绍.

概念4.对抗攻击能力[20-21].指攻击者修改训练数据或测试数据的能力.在针对图像分类任务开展对抗攻击时,攻击者的能力往往仅限于对测试集数据进行修改,不考虑通过数据投毒等手段,影响模型的训练过程,这种攻击被称为探索性攻击.与之对应的诱导性攻击,指的是通过修改训练集,破坏原有训练数据的概率分布,使模型无法达到理想的分类效果.由此可见,诱导性攻击从根本上实现了对模型的攻击,比探索性攻击的攻击性更强.

通过分析图像分类全过程各环节[22]的特点,从上述提到的攻击目标、知识以及能力3个维度对对抗攻击方法进行分类,形成如图2所示的对抗攻击分类框架.诱导性攻击主要对原始数据输入以及数据处理阶段进行攻击,探索性攻击是在模型训练完成后,针对分类阶段进行攻击;倘若攻击者无法获取模型训练及训练前各阶段的信息,则开展的攻击为黑盒攻击,否则为白盒攻击;在最终的分类阶段,针对攻击者能否精确控制分类器对测试样本的分类结果,可以将对抗攻击划分为目标攻击和非目标攻击2类.

Fig.2 Classification framework of adversarial attack

1.2 对抗样本存在的解释

对抗鲁棒性评估与对抗样本密切相关,深入理解对抗样本产生的机理有助于从根本上提出科学的评估方法与指标.然而关于对抗样本存在的解释仍有许多争议,目前还没有得出一个准确统一的结论.

Szegedy等人[4]认为网络模型的非线性特性是导致对抗样本存在的原因.具体而言,他们从正负实数分类问题中发现,由于无理数的个数要远多于有理数,训练集中无理数和有理数的比例难免失去平衡,基于此数据集训练的模型可能无法对有理数进行正确的分类.但不可否认的是,有理数是的确存在且稠密的.对抗样本好比有理数,模型的非线性特性使得模型训练时对高维特征的提取不充分,仅仅学习到局部子空间的特征,可能导致一直存在但被发现的概率很低的对抗样本难以被观察到,进而影响了模型的决策.遗憾的是,文献[4]并没有给出相关的数学说明.

相反,Goodfellow等人[23]恰恰认为对抗样本存在的原因与高维空间的线性模型相关,并以此提出快速梯度符号(fast gradient sign method, FGSM)攻击算法.假设模型的权重向量为w,则有

(2)

当w的维数n非常大时,即使扰动ε很小,wT·ε可能会是一个比较大的数值.因此,得出结论:在高维空间的线性模型中,微小扰动也能使输出产生较大的变化,以致模型进行错误分类.不过,该观点也存在一些局限性,张思思等人[24]指出线性不是生成对抗样本的充分条件.还有研究表明[25]高维空间的线性模型并没有更容易发现对抗样本,不是所有的线性模型都会存在对抗样本.

此外,Moosavi-Dezfooli等人[8]证明了全局通用的对抗扰动的存在,并提出对抗样本的存在是由于分类器决策边界的几何相关性.之后,Moosavi-Dezfooli等人[26]又进一步证明了存在共享子空间,决策边界沿该空间正弯曲,添加扰动的样本可以越过边界,成功愚弄模型.Tanay等人[25]也从模型决策边界角度提出了分类决策边界超出样本的子流形导致产生对抗样本的观点.

2 对抗鲁棒性评估

科学、有效地评估模型的对抗鲁棒性对于构建对抗鲁棒模型、提高智能系统安全性具有重要意义.然而,至今尚未形成一个公正、统一的对抗鲁棒性评估指标或方法.现阶段面向图像分类的对抗鲁棒性评估主要分为基准评估和指标评估2类.前者通过提出并改进各种攻防算法[27-31],反复进行对抗,以排名基准[32]的形式反映对抗鲁棒性的强弱;后者从对抗样本的角度出发提出一系列评估指标,旨在通过全面、合理的指标对模型的对抗鲁棒性进行评估.相比前者,后者的优势在于能够以客观可量化的方式衡量模型的对抗鲁棒性,为增强模型的对抗鲁棒性提供可解释的科学依据.

2.1 基本概念

在深度学习领域,鲁棒性(robustness)指的是智能系统在受到内外环境中多种不确定因素干扰时,依旧可以保持功能稳定的能力.而对抗鲁棒性(adversarial robustness)[12,33]专指对抗环境下模型抵御对抗攻击的能力,即模型能否对添加微小扰动的对抗样本做出正确分类的能力.以任意攻击方法在原始样本上添加扰动,模型正确识别该样本的概率越高,说明模型的对抗鲁棒性越强.从数据空间的角度来看,添加的扰动可以被描述为对抗扰动距离[7](即原始样本和对抗样本之间的距离),距离范围内的样本都能够被正确分类.因此也可以说,最小对抗扰动距离(minimal adversarial perturbation)越大,则允许添加的扰动范围越大,模型的对抗鲁棒性越强.

可以看出,对抗鲁棒性评估的关键是计算最小对抗扰动距离.如果可以计算出最小对抗扰动距离的精确值,那么最小对抗扰动距离的值将可以作为模型对抗鲁棒性评估的指标.然而,由于神经网络模型是大型、非线性且非凸的,对抗鲁棒性等模型属性的验证问题已被证明是一个NP完全(non-deterministic polynomial-complete, NP-C)问题[33-35].作为与对抗鲁棒性相关的指标,最小对抗扰动距离难以被精确求解.因此,许多研究转向使用最小对抗扰动的上界或下界去近似精确值[36].当扰动距离大于上边界距离时,说明至少有1个添加了该扰动的样本被模型误分类;当扰动距离小于下边界距离时,则任意添加了该扰动的样本都能被模型正确分类,如图3所示.通过最大下边界距离或最小上边界距离逼近最小对抗扰动距离,从而实现对模型对抗鲁棒性的评估.

Fig.3 Schematic diagram of upper and lower boundary of adversarial disturbance

2.2 评估准则

对抗鲁棒性评估是一个比较困难的问题,执行不合理的实验会导致评估无效.比如向原始样本添加的扰动过大,人眼即可判别生成样本与原始样本,在此基础上得到的评估结果是无意义的[37].诸如此类的错误常常被研究人员忽略.本文梳理了进行对抗鲁棒性评估时需要遵守的3个评估准则[37],以便指导研究人员开展正确的评估.

1)合理使用攻击算法进行评估.部分攻击算法是针对某种特定模型而设计的,若将其应用于其他模型,很难体现出模型是否具有抵御这种攻击的能力,也无法说明模型具有对抗鲁棒性.另外,在进行对抗鲁棒性评估时,需要保证评估的普适性,这就意味着不能仅仅使用带有默认超参数的对抗攻击进行评估,应该排列组合所有参数,达到不同程度的攻击效果,从而评估模型的对抗鲁棒性.

2)保证模型在正常环境下的良好性能.实验表明,对抗训练会导致智能系统中神经网络模型的准确率下降[38].显然,以牺牲模型对原始样本的准确率来增强模型对抗鲁棒性的做法是不可取的.因此,开展对抗鲁棒性评估,应说明模型对原始样本的分类准确率.被攻击模型保持正常环境下的分类准确率是正确评估对抗鲁棒性的前提.在满足该前提的条件下,如果被攻击模型能够正确识别对抗样本,才能说明模型具有较好的对抗鲁棒性.

3)结合实际需求选择评估结果分析方法.理论上,评价智能系统的对抗鲁棒性应分析模型受到攻击威胁时的最坏结果.在现实情况中,往往从统计学角度以平均效果衡量鲁棒性的好坏.针对不同需求,应适当调整评估思维,给出符合实际的评估结果.进行统计学分析时,还需对分类准确率等结果进行方差计算,避免出现较高的偏差,使评估结果失去稳定性.

2.3 评估指标体系

当前大多数研究通过分类准确率、攻击次数或扰动强度这3种指标进行对抗鲁棒性评估.这些指标能够直观上反映模型对抗鲁棒性的强弱,但未能全面地考虑到影响对抗鲁棒性的因素.针对该问题,本节梳理了现有研究中所涉及的30余种对抗鲁棒性评估指标,并从被攻击模型和测试数据2个角度对指标进行分类.

2.3.1 面向模型的指标

在图像分类全过程中,被攻击模型的训练与决策是影响最终鲁棒性评估效果的关键环节.进行对抗鲁棒性评估时,可以从训练、决策阶段关注模型的结构、行为特征,通过挖掘模型结构相关指标,深入理解模型在对抗环境下的反应,总结与模型决策相关的评价指标,帮助研究人员实现模型对抗鲁棒性的评估.因此,本节将面向模型的指标进一步划分为基于模型行为的指标和基于模型结构的指标.

1)基于模型行为的指标

模型行为可以理解为模型对测试样本做出的反应.基于模型行为的指标主要是依据对抗环境下模型的输出结果进行对抗鲁棒性度量.

① 原始样本分类准确率(OA)

尽管我们的目的是解决对抗环境下的模型鲁棒性评估问题,但是为了保证模型的基本性能,也需要对正常环境下模型的行为表现进行测试,避免出现模型的对抗鲁棒性表现优异而在原始样本上的分类效果很差的情况,以致无法应用于现实场景中.

原始样本分类准确率(original accuracy,OA)经常被用来衡量正常环境下模型的分类性能,其含义是被分类正确的原始样本数量占总体样本数量的百分比.

(3)

其中,count(·)表示括号内等式为真则为1,否则为0.OA值越大,说明模型在正常环境下的分类性能越好.

② 对抗样本分类准确率(ACA)

除描述正常环境下模型分类性能的指标外,还有一些公认的、被广泛接受和使用的、用以描述对抗环境下模型分类性能的指标,如对抗样本分类准确率(adversarial classification accuracy,ACA).它指的是被正确分类的对抗样本的数量占总体样本数量的百分比,数学表达式为

(4)

由式(4)可见,ACA值越大,说明模型在对抗环境下的分类性能越好,在一定程度上可以说明模型的对抗鲁棒性越好.

③ 对抗样本攻击准确率(AA)

与对抗样本分类准确率相对应的是对抗样本攻击准确率(adversarial accuracy,AA).它指的是被错误分类的对抗样本的数量占总体样本数量的百分比,数学表达式为

(5)

由式(5)可见,AA值越大,说明模型在对抗环境下的分类性能越差,在一定程度上可以说明模型的对抗鲁棒性越差.

针对白盒攻击与黑盒攻击2种不同的攻击,还可以将攻击准确率进一步划分为白盒攻击准确率(adversarial accuracy on white-box attacks,AAW)和黑盒攻击准确率(adversarial accuracy on black-box attacks,AAB)[39].

④ 白盒攻击准确率(AAW)

(6)

由式(6)可见,AAW值越大,说明模型越容易将由白盒攻击方法生成的对抗样本错分成其他类别,在一定程度上可以说明模型的对抗鲁棒性越差.

⑤ 黑盒攻击准确率(AAB)

黑盒攻击准确率(AAB)[39]与白盒攻击准确率(AAW)类似,不同之处在于对抗样本是由黑盒攻击算法生成.

(7)

由式(7)可见,AAB值越大,说明模型越容易将由黑盒攻击方法生成的对抗样本错分成其他类别,在一定程度上可以说明模型的对抗鲁棒性越差.

⑥ 正确类别平均置信度(ACTC)

(8)

其中,n表示对抗样本攻击失败的数量,P(·)表示模型分类的置信度.ACTC值越高,说明模型正确识别对抗样本类别的能力越强,对抗鲁棒性越强.

⑦ 对抗类别平均置信度(ACAC)

(9)

其中,m表示对抗样本攻击成功的数量,P(·)表示模型分类的置信度.ACAC值越高,说明模型识别对抗样本类别的能力越差,对抗鲁棒性越差.

⑧ 噪声容忍估计(NTE)

主流攻击算法以最大化模型错分为除正确类别外的某一类别的概率为目标,很少关注除正确类别和错分类别外的其他类别的情况.降低模型将样本分类成其他类别的概率是提高对抗样本稳健性的有效手段.Luo等人[41]致力于最大化目标类的概率与所有其他类的最大概率之间的差距,提出噪声容忍估计(noise tolerance estimation,NTE)衡量对抗攻击的鲁棒性:

NTE(F,T)=

(10)

其中,Pyj(·)表示模型将样本错分成类别j的置信度,Pyk≠j(·)表示模型将样本错分成除类别j外的其他类别的置信度.NTE值越大,说明对抗样本的鲁棒性越强.将NTE值取平均,平均NTE值越小,模型容易混淆除正确类别外的多种类别,在一定程度上可以说明模型的对抗鲁棒性越差.

⑨ 互补鲁棒性曲线(CRC)

除以上指标外,许多研究通过绘制曲线图,表达了多种指标在一定范围内变化时模型分类器的不同响应,更加直观地展示了对抗鲁棒性评估的结果.如Dong等人[42]采用2条互补鲁棒性曲线(comple-mentary robustness curves,CRC),展示了受到对抗攻击的深度学习模型的鲁棒性.互补鲁棒性曲线如图4所示.

图4(a)是“扰动-准确率”曲线,Dong等人[42]通过计算所有扰动下的分类准确率绘制而成,横坐标是扰动大小,纵坐标是分类准确率.他们选取基于自然进化策略(natural evolution strategy, NES)的梯度估计算法作为攻击算法,Res-56(Resnet-56)模型等作为被攻击的模型.通过图4(a),我们可从全局视角对比8种模型抵御NES攻击的鲁棒性.如使用NES算法攻击TRADES和Convex模型,相同扰动下TRADES模型的准确率始终比Convex模型高,在一定程度上说明TRADES模型抵御NES攻击的鲁棒性更好.图4(b)是“查询次数-准确率”曲线,横坐标是模型查询次数,纵坐标是分类准确率.其中,模型查询次数亦可替换成不同攻击方法的迭代次数.该曲线能够显示攻击的效率,例如尽管查询次数为20 000时,Res-56与DeepDefense模型的分类准确率都下降到0,但是Res-56模型受攻击后分类准确率下降得更慢、曲线更靠右,说明Res-56模型抵御NES攻击的能力更强.

Fig.4 Complementary robustness curves[42]

Fig.5 Accuracy-perturbation curves[43]

⑩ 精确扰动曲线(APC)

相比于互补鲁棒性曲线(CRC),ircelj等人[43]提出的精确扰动曲线(accuracy-perturbation curves,APC)优势在于展示了被攻击模型受不同扰动影响的最差性能.首先组合各种超参数,生成添加了不同大小扰动的对抗样本,并计算不同模型对它们的分类精度;其次根据式(11)计算这些对抗样本的子集(它们的原始图像已被模型正确分类)添加的扰动大小;最后将每组扰动幅度和分类精度绘制为“扰动-准确率”曲线,如图5所示:

(11)

图5(a)横坐标为扰动大小,纵坐标为分类准确率.显然,曲线B对应模型的对抗鲁棒性更强.然而,在使用多参数组合的方法时通常得到分散的“扰动-准确率”点,这为评估对抗鲁棒性的强弱带来了困难.为此,ircelj等人[43]进一步设计了一种最小包络法(minimum wrap),将每个扰动对应的最小准确率的点连接成线,如图5(b)中的曲线C和曲线D,这2条曲线体现了对抗样本在2种模型上分类的最坏情况估计.通过对比发现,相比于模型C,模型D的对抗鲁棒性更强.

上述CRC和APC这2种评估指标通过绘制“扰动-准确率”曲线,定性给出模型的评估结果.Wu等人[44]提出了一种分段采样曲线(piece-wise sampling curves,PSC)框架,如图6所示.该框架通过曲线下面积(area under curve,AUC)[45]实现了测量结果的可量化,避免了人为比较带来的主观偏差,同时尽可能多地适用于不同攻击方法.

Fig.6 Piece-wise sampling curves[44]

PSC框架包括3个步骤,分别是选择扰动范数lp、划分扰动范围与绘制分段采样曲线.以图6为例,Wu等人首先确定扰动范围ε=[0,3],将分辨率r分别设为10和20(将扰动范围划分成r段);而后对范围内r个分段采样扰动点上的对抗样本进行测试,获得该扰动下的攻击准确率,通过调整参数多次实验,获得r个扰动点上的最佳攻击准确率;最后根据选择的拟合函数阶数d=5,将采样点进行拟合,得到最终的5阶分段采样曲线.图6(a)使用4种非目标攻击算法攻击一个4层卷积神经网络在MNIST数据集上训练的模型,FGSM算法对应的AUC最小,说明随着扰动的增大,FGSM攻击准确率提升的速率最慢,模型抵御FGSM攻击的能力最好.图6(b)对扰动范围进行了更细致的划分,更加准确地描述了模型在不同攻击下的性能,但同时也会花费更多的计算资源.

此外,Wu等人[44]构建了PSC工具包,用户只需在特定设置下上传添加不同扰动时模型的分类准确率结果,就能生成对应的分段采样曲线.与使用单个或多个扰动点进行评估的方式相比,该方法可以量化对抗鲁棒性的强弱.

2)基于模型结构的指标

与基于模型行为的指标不同的是,这一类指标关注模型内部神经元、损失函数等与模型结构相关的信息,观察模型内部对于对抗样本的反应,进而衡量模型的对抗鲁棒性.

① 神经元敏感度(NS)

对抗鲁棒性意味着模型对对抗样本保持一定的钝感,尽管受到扰动的影响,原始样本和对抗样本在模型的隐藏层中仍具有相似的表示,从而输出正确的分类结果.因此,一些研究人员尝试通过计算原始样本与对抗样本在隐藏层中特征表示的偏差,衡量模型的对抗鲁棒性.

(12)

② 神经元不确定性(NU)

在关键安全应用领域,模型预测的不确定性被广泛研究.陈思宏等人[47]研究发现预测不确定性越大,模型对抗鲁棒性越强,通过增加模型预测的不确定性,以达到提高对抗鲁棒性的目的.预测结果的方差是衡量不确定性最直观的方法.

(13)

其中,variance(·)是方差计算函数.NU值越大,模型的对抗鲁棒性越强.

③ 冲突上下限(ΔK)

Dempster-Shafer证据理论常被用来处理不确定信息,辅助完成智能决策任务.苏记柱[48]对CNN模型进行重构,结合证据推理方法,分析信息冲突值随扰动强度的变化关系,提出了2个对抗鲁棒性评估指标:冲突上限Δkmax和冲突下限Δkmin,计算公式分别为

(14)

(15)

其中,k0={k01,k02,…,k0N}为每个样本特征之间的冲突值,kmax={kN1,kN2,…,kNN}表示在FGSM攻击下,当样本逐渐添加扰动至被模型误分类时,每个样本特征之间的冲突值,Δkmax为模型可接受的样本特征之间冲突的最大变化范围.Δkmax越大,表示模型的鲁棒性越强,反之,模型的鲁棒性越差.kmin={kmin1,kmin2,…,kminN}为每个样本所产生的对抗样本中最小的冲突值.Δkmin越大表明模型越鲁棒.

不难发现,冲突上限是冲突下限的特殊情况.冲突上限限制了攻击方法和扰动强度大小,冲突下限适应的场景更加宽泛.

④ 经验边界距离(EBD)

Liu等人[49]以模型的决策边界为切入点,对输入样本周围邻域进行全面分析,提出经验边界距离(empirical boundary distance,EBD)指标.该指标为所有样本决策边界距离的平均值,计算公式如下:

(16)

εvik=minRMS(vik),

(17)

该指标计算了模型对不同方向输入扰动的样本的分类置信度,并以此作为估计样本到决策边界距离的标准,从模型结构的角度挖掘了模型决策区域的信息,为鲁棒性评估提供了一种新的思路.

⑤ 经验边界距离(EBD-2)

在EBD的基础上,Liu等人[39]又进一步提出了EBD-2评估指标,该指标的优势在于可以计算所有类别的决策边界的最小距离:

(18)

⑥ CLEVER score

Weng等人[50]发现,使用最小对抗扰动距离的上界或下界去估计模型的对抗鲁棒性时,距离下界与局部梯度的最大范数相关,故将鲁棒性评估问题转化为局部Lipschitz常数估计问题.

为了有效、可靠地估计局部Lipschitz常数,Weng等人提出了一种称为CLEVER的鲁棒性度量指标,利用极值理论[51]去估计最小对抗扰动距离下边界,并给出了相应的数学证明.该指标的优势在于独立于攻击进行鲁棒性度量,适用于任何模型.CLEVER数值越大,模型的对抗鲁棒性越强.

⑦ 二阶CLEVER score

在CLEVER的基础上,Weng等人[52]进一步提出二阶CLEVER,将CLEVER扩展为能够评估具有不可微分输入转换的网络的鲁棒性,使其可评估部署了多种基于梯度掩蔽的模型.

⑧ CROWN框架

通过寻找最小对抗扰动距离下界去估计模型的对抗鲁棒性,存在计算耗时、估计误差大等问题.为此,Weng等人[53]利用ReLU网络进一步提出Fast-Lin和Fast-Lip算法,计算出较高精度的距离下界,用以评估模型的对抗鲁棒性.同时,相比于基于线性规划的方法和Reluplex[33]方法,Fast-Lin和Fast-Lip计算速度要快2~4个数量级.尽管Fast-Lin和Fast-Lip能够以高精度估计对抗边界,但是仍有一些模型需要ReLU以外的函数激活,例如RNN和LSTM等.

为解决激活函数受限的问题,Zhang等人[54]提出了适用于具有一般激活函数的模型的鲁棒性评估框架CROWN,该框架允许灵活地选择激活函数的上界或下界,从而减小评估对抗鲁棒性时难以避免的近似误差.实验表明,与文献[53]相比,CROWN的认证下界提高了26%,并且可以将CROWN扩展到具有各种激活函数的大型神经网络中.此外,对于具有超过10 000个神经元的模型,可以在大约1 min内利用1个CPU内核求出鲁棒性下界.

⑨ 经验噪声不敏感度(ENI)

Xu等人[55]率先提出算法鲁棒性的概念,这一概念的提出受益于2个相似样本的测试误差往往非常接近的思想.受此启发,Liu等人[49]从Lipschitz常数的角度,提出了ε经验噪声不敏感度(ε-empirical noise insensitivity,ENI).具体而言,将原始样本和对抗样本输入模型,计算模型损失函数之间的差异,以损失值大小来衡量模型对约束ε的广义噪声的不敏感性和稳定性:

ENIf(ε)=

(19)

其中,M′是使用各种攻击算法依次生成对抗样本的数量,lf(·|·)表示模型f的损失函数.ENI能够衡量模型对包括对抗扰动在内的广义噪声的鲁棒性.ENI值越小,说明模型的对抗鲁棒性越强.

与基于模型行为的指标相比,以上9种指标的优势在于能够刻画图像分类过程中模型的内部特性,挖掘更多关于模型结构的隐性知识,从模型本身而非直接的模型结果的角度评估对抗鲁棒性.

2.3.2 面向数据的指标

在进行对抗鲁棒性评估时,应从图像分类全过程出发,分析各阶段影响评估结果的因素,进而实现全面、科学且准确的评估.然而,由于习惯上过度关注于智能系统的高精度性能结果,研究者常常忽略了测试过程是否充分以及测试数据质量的好坏带来的影响.因此,在进行对抗鲁棒性评估时,同样需要关注模型测试的充分性以及测试数据的质量.考虑到对抗样本的特点,即测试数据的质量与图像的不可感知性相关,本文将面向数据的指标进一步划分为基于测试充分性的指标和基于视觉不可感知性的指标.

1)基于测试充分性的指标

测试充分性[56]这一概念最早是在软件工程领域提出的,它是指使用一组有代表性的数据对软件进行全面测试的程度.Pei等人[57]将其类比到模型测试中,提出了一种神经元覆盖率(neuron coverage,NCov)指标来量化神经元被激活的比例.

(20)

其中,T′为测试集,x为测试样本,N总为神经元总数,out(ne,x)指的是给定一测试样本返回模型中神经元ne的输出值,t为设定的阈值,当输出值大于阈值时神经元被激活.然而,Ma等人[58]经实验发现,NCov无法体现测试集中原始样本和对抗样本之间的差异.为此,他们提出了多层次多粒度覆盖的一系列测试标准DeepGauge,使用k节神经元覆盖率(k-multisection neuron coverage,kMNCov)、神经元边界覆盖率(neuron boundary coverage,NBCov)、强神经元激活覆盖率(strong neuron activation cov-erage,SNACov)这3种指标来衡量对抗环境下模型测试的充分程度.

①k节神经元覆盖率(kMNCov)

为体现原始样本和对抗样本的差异,Ma等人将进行测试时神经元输出范围划分为主要功能区和极端案例区.当测试样本与原始样本分布相近时,神经元输出值落入主要功能区[lown,highn],否则落入极端案例区(-∞,lown)∪(highn,-∞),也就是对应对抗样本所在的区域.将区域[lown,highn]划分成k个长度相等的节段,kMNCov为测试集T覆盖的节数与总节数之比,用以衡量覆盖主要功能区程度,数学公式描述为

(21)

② 神经元边界覆盖率(NBCov)

神经元边界覆盖率NBCov是测量给定测试集T′覆盖极端案例区面积大小的指标,定义为极端案例区被覆盖的神经元数量与神经元总数的比率:

NBCov=

(22)

其中,UpperCornerNeuron是极端案例区上边界神经元被覆盖的数量,LowerCornerNeuron是极端案例区下边界神经元被覆盖的数量,N′表示上、下边界神经元数.NBCov值越大,说明极端案例区被覆盖的部分越多,对抗样本在模型中的测试效果越充分.

③ 强神经元激活覆盖率(SNACov)

在研究DNN可解释性问题时,过度活跃的神经元可能有助于DNN模型的学习.因此,Ma等人[58]又提出了侧重于活跃神经元的测试指标,即描述极端案例区上边界情况的指标SNACov.它被用来测量测试集T′在极端案例区中上边界被覆盖的情况,描述为覆盖的极端案例上边界神经元数与总神经元数之比:

(23)

值得注意的是,提高测试充分性并不能有效改善模型的对抗鲁棒性[59-60],但是测试越充分说明评估结果的可信度越高.因此,在进行对抗鲁棒性评估时,可以考虑通过①~③指标来检验结果的可信度或准确性.

2)基于视觉不可感知性的指标

相比于原始样本,对抗样本最鲜明的特点是添加了肉眼难以感知的扰动.如果添加的扰动太大导致样本过于模糊不清,肉眼即可判别出样本为对抗样本,便失去了评估对抗鲁棒性的意义.本节总结了多种指标来刻画扰动的不可感知性.

① 平均lp失真度(ALDp)

目前大多数研究采用lp范数(p=0,1,…,∞)来衡量原始样本与对抗样本之间的扰动距离,Liu等人[39]提出将ALDp作为扰动不可感知性的度量指标.从数学含义上讲,该指标是lp失真度的平均归一化:

(24)

其中,N表示样本的数量.ALDp越小,失真越小,对抗扰动越小,肉眼区分原始样本和对抗样本的难度越大.

② 平均结构相似度(ASS)

在实践中,通常需要对整个图像进行单一的整体质量测量,Wang等人[61]提出的结构相似度(structural similarity,SSIM)就是评估图像整体质量的指标.针对对抗环境下的评估问题,平均结构相似度(average structural similarity,ASS)[39]是在SSIM的基础上进行改进,被用来描述原始样本与对抗样本之间的结构相似度.

(25)

③ 扰动敏感度(PSD)

基于对比掩蔽理论[62-64],Liu等人[39]提出了扰动敏感度(perturbation sensitivity distance,PSD)指标来评估人类对扰动的感知.因此,PSD定义为

(26)

Sen(xij)=1/SD(xij),

(27)

(28)

其中,M是像素总数,δij是第i个样本的第j个像素,xij表示周围正方形区域,Si是由n×n区域中的像素组成的集合,μ是区域内像素的平均值.当像素具有低方差时,扰动灵敏度高.PSD越大,添加于对抗样本中的扰动越容易被察觉.

还有学者从特征数据的角度挖掘样本特征差异与鲁棒性的相关性.董一帆[65]认为模型对原始样本和对抗样本进行特征提取后,两者的特征子集差距越小,说明模型的对抗鲁棒性越强.因此,引入特征子集一致性[66]指标来衡量模型的对抗鲁棒性,计算公式为

(29)

其中,A和B分别为2个子集,X为特征总空间,w为特征总数,令|A|=|B|=k,00时,表示2个子集是相似的;当C=0时,表示2个子集是不相关的;当C<0时,表示2个子集是不相似的.

除以上指标外,还有许多与常规图像处理相关的评估指标,如高斯模糊鲁棒性(robustness to Gaussian blur,RGB)[40]、图像压缩鲁棒性(robustness to image compression,RIC)[40],以及与腐蚀扰动相关的评估指标,如自然噪声平均差值(mCE)、自然噪声相对差值(RmCE)和连续噪声分类差别(mFR)[49,67]等.从某种意义上来说,以上这些指标的确可以衡量模型的对抗鲁棒性.例如,Corrupt算法[39]中添加的扰动是自然噪声,可以根据(RmCE)的大小来衡量对抗扰动的距离.但是对于大多数对抗攻击算法,这些指标更多地是衡量其他特定环境下的鲁棒性,并非严格的对抗鲁棒性.因此,在进行指标评估时,应针对特定的需求选取合适的指标.

本文按照指标类别、攻击方式和扰动类别等维度,对以上30余种评估指标进行详细的描述,如表2所示.考虑到实际应用过程中往往仅选取部分指标进行评估,根据指标的含义,给出了每一种指标和对抗特性的相关度,并将相关度划分为4个等级,使用不同数量的“★”进行表示.“★”的数量越多,说明指标与对抗特性越相关.其中,“★”表示虽然指标无法评估对抗鲁棒性,但在进行评估时需要通过这些指标进行测试,以保证评估结果的有效性;“★★”表示指标和对抗样本相关,常被用于评估对抗样本或衡量对抗扰动以外的其他扰动(自然噪声、堕化扰动等),能够反映模型的鲁棒性,而并非严格意义上的对抗鲁棒性;“★★★”表示指标与对抗特性较为相关,但由于评估视角单一、片面,往往需要结合多种指标综合给出评估结果;“★★★★”表示能够从全局角度或基于模型内部机理评估模型的对抗鲁棒性,指标的大小在一定程度上反映了对抗鲁棒性的强弱.

Table 2 Evaluation Indexes of Adversarial Robustness

显然,3种基本指标以及面向模型的指标与对抗鲁棒性评估的相关程度较高,而面向数据的指标的相关程度普遍较低,这与对抗鲁棒性评估的本质有关.深度学习模型的黑盒特性与不可解释性[68]为对抗鲁棒性的评估带来了困难,挖掘更多模型内在的信息有助于了解对抗环境下模型面对不确定干扰因素的反应.因此,进行对抗鲁棒性评估可以采用OA,ACTC,PSC,EBD等面向模型的指标,同时也要结合实际需求,考虑是否将面向数据的指标纳入评估范围内.

3 对抗攻防工具与数据集

近年来,对抗攻防研究发展迅速,相应算法层出不穷.自2016年始,许多研究单位推出了集成众多主流算法的对抗攻防工具,以提高研究者与开发人员的测评效率,助力推动智能系统安全领域的发展.此外,在使用对抗攻防工具进行实验的过程中,各学者还应用了多种不同的数据集.本节将介绍主流的数据集与对抗攻防集成平台,方便后续开展对抗鲁棒性评估研究.

3.1 常用数据集

目前,针对不同领域、不同应用场景的图像数据集层出不穷,本文选取图像分类领域较为经典的、被广泛使用的6种数据集进行介绍,具体信息如表3所示:

Table 3 Common Image Classification Data Sets

1)MNIST

MNIST数据集[69]是图像分类领域常用的数据集之一.该数据集由美国国家标准与技术研究所(National Institute of Standards and Technology)组织整理,收集了来自250个人的0~9手写数字图片.该数据集总计70 000组图片数据,具体包括训练集图片60 000张及对应标签60 000个、测试集图片10 000张及对应标签10 000个,每张图片像素大小为28×28.共有16种指标在该数据集上开展对抗鲁棒性评估.

2)ImageNet

ImageNet数据集[70]于2007年开始收集,直到2009年以论文形式发布,后续被Kaggle公司继续维护,是世界上图像分类、识别、定位领域最大的数据库.截至目前,ImageNet数据集总共有14 197 122张图像,涵盖21 841个类别.使用率最高的子集是ImageNet大规模视觉识别挑战赛(ILSVRC)2012—2017图像分类和定位数据集.该数据集跨越1 000个对象类,包含1 281 167个训练图像、50 000个验证图像和100 000个测试图像,每张图片像素大小约为500×400.共有10种指标在该数据集上开展对抗鲁棒性评估.

3)Caltech101/256

Caltech101数据集[71]是加利福尼亚理工学院收集整理的数据集,由9 146张图像组成.每张图像都标有1个对象,包含101个类别对象以及1个额外的背景杂波类别.每个类约40~800张图像,大多数类别有大约50张图像,每张图片像素大小约为300×200.Caltech256数据集[72]在2006年被发布,包括256类目标图像和1类背景图像,共257类.与Caltech101相比主要变化表现在:图像总数达到30 608张,且每类最少含有80幅图像,最多含有827幅图像,目前暂无相关研究基于此数据集开展对抗鲁棒性评估.

4)CIFAR10/100

CIFAR10数据集[73]是由Hinton的学生Alex Krizhevsky和Ilya Sutskever整理的一个用于识别普适物体的小型数据集.该数据集由10个类别的60 000个像素为32×32彩色图像组成,每个类别包含6 000个图像,其中有50 000个训练样本和10 000个测试样本.CIFAR100数据集与CIFAR10数据集类似,不同的是CIFAR100数据集具有100个类别,每类包含600张图像,其中训练样本500个,测试样本100个.CIFAR100数据集[73]中的100个类分为20个超类,每张图像都带有一个“精细”标签(它所属的类)和一个“粗略”标签(它所属的超类),共有22种指标在CIFAR10上开展评估.

综上所述,在面向图像分类的对抗鲁棒性评估研究中,使用最多的数据集有CIFAR10,MNIST和ImageNet.为便于进行评估结果的对比,研究人员可使用以上3种数据集开展对抗鲁棒性评估实验.

3.2 对抗攻防集成工具

对抗攻防集成工具实现了将攻防算法模块化,为攻防对抗实验提供了可组合、可操作、可更新的框架.为方便研究者快速了解各种工具并使用,现总结国内外主流的对抗攻防工具内嵌的攻防算法以及适用框架等信息,如表4所示.考虑到篇幅长度,我们将每一种工具的具体细节整理到附录表A2~A10.

Table 4 Mainstream Adversarial Attack and Defense Integration Tools

1)CleverHans(1)https://github.com/cleverhans-lab/cleverhans

CleverHans[74-75]是最早被提出的机器学习模型攻防库,它集成了16种攻击算法和1种防御算法.基于该库,研究人员可以快速研发更强的对抗攻击与防御算法,实现模型的对抗训练以及鲁棒性基准测试.在最初版本v0.1中CleverHans仅支持Tensor-Flow1[82],部分模型可支持Keras[83],从v4.0.0开始,CleverHans支持的框架分别有JAX,TensorFlow2和PyTorch[84].

2)Foolbox(2)https://github.com/bethgelab/foolbox

Foolbox[76]是一种Python工具箱,用于生成对抗扰动并量化和比较机器学习模型的鲁棒性.Foolbox v0.8.0提供了48种对抗攻击算法,所有攻击算法都能够通过调整内部超参数生成最小的对抗扰动.此外,针对大多数攻击算法适用于特定的深度学习框架,Foolbox v0.8.0允许在诸多机器学习框架上运行,如PyTorch,Keras,TensorFlow,Theano[85],Lasagne和MXNet[86],引入原始样本误分类准确率、正确类别分类置信度、对抗类别分类置信度等对抗鲁棒性评估指标,同时支持自定义评估指标.目前,Foolbox更新到3.0版本,它现在建立在EagerPy之上,并对PyTorch,TensorFlow,JAX框架提供支持.

3)ART(3)https://github.com/Trusted-AI/adversarial-robustness-toolbox

对抗性鲁棒性工具集(adversarial robustness toolbox, ART)[77]是用于机器学习安全性的Python库.ART提供的工具使开发人员和研究人员能够防御和评估机器学习模型和应用程序,以抵御逃避、中毒、提取和推理等对抗性威胁.ART支持许多流行的机器学习框架(TensorFlow,Keras,PyTorch,Scikit-learn[87],MXNet,XGBoost[88],LightGBM[89],CatBoost[90],GPy等9种框架)、多种数据类型(图像、表格、音频、视频等)和机器学习任务(分类物体检测、语音识别、生成模型、认证等).截止目前,ART集成了近40种攻击算法、30多种防御算法以及包括CLEVER score在内的6种对抗鲁棒性评估指标.

4)DEEPSEC(4)https://github.com/ryderling/DEEPSEC

DEEPSEC[40]是同时具有对攻击和防御算法进行比较研究、验证各种攻击和防御有效性以及评估机器学习模型鲁棒性等功能的平台.它全面、系统地集成了各种对抗攻击、防御算法和相关评估指标,其中攻击算法有16种,防御算法有13种以及评估指标有15种.用户可在平台上使用MNIST和CIFAR10数据集训练DenseNet[91],AlexNet[86],ResNet56[92]等模型,但是该平台仅支持PyTorch.

5)AdverTorch(5)https://github.com/BorealisAI/advertorch

AdverTorch[78]是用于对抗性鲁棒性研究的Python工具箱,包含21种攻击算法和7种防御算法模块,以及用于对抗性训练的脚本.AdverTorch构建在PyTorch上,可利用动态计算图的优势实现简洁有效的攻防测试.

6)Ares(6)https://github.com/thu-ml/ares

Ares[42]是一个专注于对对抗鲁棒性进行基准测试的Python库.基于Ares算法平台,RealAI等后继推出基于深度学习模型的对抗攻防基准平台adversarial robustness benchmark,此基准平台可以更加公平、全面地衡量不同攻防算法的效果,提供简单高效的鲁棒性测试工具.同样,该平台对主流的攻防算法实现了模块化的设计,支持数十种主流攻防算法的实现.

7)AdvBox(7)https://github.com/advboxes/AdvBox

AdvBox[79]是由百度开源的一系列AI模型安全工具集,可以在PaddlePaddle[93],PyTorch,Caffe2[94],MXNet,Keras,TensorFlow中生成欺骗神经网络的对抗样本,也可以对机器学习模型的鲁棒性进行基准测试.与之前的工作相比,该平台不仅支持对抗样本的生成、检测和保护,还适用于许多攻击场景,例如人脸识别攻击、真假人脸检测和“隐形T 恤”.

8)DeepRobust(8)https://github.com/DSE-MSU/DeepRobust

DeepRobust[80]与以上平台工具不同,它是适用于图像领域和图领域的对抗性学习库.目前Deep-Robust包含图像领域的10种攻击算法和8种防御算法以及图域的9种攻击算法和6种防御算法,具体实验在Pytorch上实现.

9)AISafety(9)https://git.openi.org.cn/OpenI/AISafety

AISafety[39]是一个用于对抗攻击全流程评测算法学习研究的Python库,其主要研究内容为集成对抗攻击和噪声攻击相关的攻击算法、评测算法和加固防御算法.该平台可灵活测试数据集质量、算法训练、评估和部署等算法各项指标.目前AISafety已集成的数据集有CIFAR10,ImageNet数据集,针对CIFAR10数据集集成了ResNet20[95],FP_ResNet[96],VGG16[97]测试模型,针对ImageNet数据集有VGG19模型.此外,用户可按照模型扩展要求,实现并上传自定义模型.

10)RobustBench(10)https://github.com/RobustBench/robustbench

RobustBench[81]是一个图像分类领域评估攻防算法鲁棒性的基准平台,由图宾根大学的团队发布.除了标准化的测试基准之外,RobustBench还提供了最庞大模型的存储库,其中包含120多个模型.

通过统计谷歌学术中以上10种工具所对应文献的引用次数及占比发现(11)本文将对抗攻防工具所对应文献的引用次数作为该领域研究人员或学习者使用这10种对抗攻防工具开展评估的次数,进而分析出最受业界欢迎与认可的3种对抗攻防工具.,目前最常用的3种对抗攻防集成工具是Foolbox,CleverHans和ART,如图7所示.研究人员可参考上述结论,结合实际需求,选择合适的对抗鲁棒性评估工具.

Fig.7 Proportion of citation times of 10 tools

4 未来研究方向

对抗攻击技术近年来获得了业界内的广泛关注,取得了许多突破性进展,但关于对抗鲁棒性评估的研究仍处于起步阶段,依然面临许多的挑战.基于本文对对抗鲁棒性评估研究现状的深入分析,未来该领域的研究需要重点关注4个方向:

1)深入开展对抗样本存在机理、深度学习模型脆弱性和可解释性等理论研究.目前国内外学术界关于对抗样本的存在原因尚未达成共识,缺乏完备的数学理论支撑,对于如何正确解释深度学习模型的内在逻辑与扰动下的决策行为尚在探索当中.这些难题与对抗鲁棒性的评估有着紧密关联,开展相关理论研究有助于理解对抗鲁棒性评估问题的本质,把握影响模型对抗鲁棒性的关键因素,能从根本上解决对抗环境下模型鲁棒性的评估问题,是未来对抗鲁棒性评估问题在理论层面上值得研究的方向之一.

2)提出一种或一组通用的、可量化的、综合的对抗鲁棒性评估指标.无论是面向数据的指标还是面向模型的指标,分析视角单一,给出的评估结果很难被直接采纳.此外,影响模型对抗鲁棒性的因素众多,采用一种或几种指标难以准确、完整地评估对抗鲁棒性的强弱.参考其他研究领域指标评估的方法,梳理影响对抗鲁棒性的全部因素,抓住关键要素,提出一种或一组通用的、可量化的、综合的指标,全面评估模型的对抗鲁棒性,是未来对抗鲁棒性评估问题在方法层面上值得研究的方向之一.

3)构建科学、统一、规范、完备的对抗鲁棒性评估框架.面向图像分类的数据集种类繁多,攻击方法不断被创新,评估指标与评估方法不尽相同,尽管对抗攻防集成工具涵盖多种攻防算法,但也无法保证进行对抗鲁棒性评估的实验条件和度量标准是一致的,这为模型与模型之间、模型防御前后对抗鲁棒性的比较带来了困难.搭建对抗鲁棒性评估框架,全面综合各种攻防算法、数据集与评估指标,在标准对抗环境下从多层次、细粒度分析图像分类全过程模型抵御对抗攻击的能力,是未来对抗鲁棒性评估问题在流程层面上值得研究的方向之一.

4)重点研究黑盒、非目标的融合攻击环境下的对抗鲁棒性评估方法.物理场景中难以获取模型的全部信息,针对白盒、目标攻击的评估方法难以应用于实际智能系统模型的对抗鲁棒性评估任务,且由于目前黑盒、非目标攻击的性能远低于人们的预期,无法保证使用该攻击进行评估的效果.更重要的是,现实环境中攻击者可能融合对抗扰动、自然噪声等多种类型干扰或多种攻击方法开展对抗攻击,亦或利用智能系统在动态环境下依据时间、空间等信息进行决策的漏洞,设计融合多元信息干扰的对抗攻击方法,这给对抗鲁棒性评估带来了新的契机与挑战.如何评估模型在黑盒、非目标的融合攻击环境下的对抗鲁棒性,是未来对抗鲁棒性评估问题在实际应用层面上值得研究的方向之一.

5 总 结

面对对抗攻击等各种威胁,增强模型的对抗鲁棒性是保障智能系统安全的重要方式和手段.评估对抗鲁棒性是指导提升模型对抗鲁棒性的基础.然而,关于对抗鲁棒性评估的研究还停留在初级阶段,仅仅依靠排名基准或简单指标无法准确衡量模型抵御对抗攻击的能力.因此,本文在调研和分析国内外对抗鲁棒性评估研究的基础上,针对图像分类这一基础视觉任务,从对抗样本存在原因、对抗鲁棒性评估准则、对抗鲁棒性评估指标等方面对现有研究成果进行了归类、总结和分析.同时,梳理了现阶段主流的图像分类数据集和对抗攻防集成工具.最后,指出了对抗鲁棒性评估未来可能的研究方向,旨在为该领域研究的进一步发展和应用提供一定借鉴与帮助.

作者贡献声明:李自拓负责文献调研、内容设计、论文撰写和最后版本修订;孙建彬负责提出指导意见、框架设计和全文修订;杨克巍负责论文审核与修订;熊德辉负责提出指导意见以及论文修订.

猜你喜欢
鲁棒性扰动准确率
Bernoulli泛函上典则酉对合的扰动
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
(h)性质及其扰动
基于确定性指标的弦支结构鲁棒性评价
中华建设(2019年7期)2019-08-27 00:50:18
高速公路车牌识别标识站准确率验证法
小噪声扰动的二维扩散的极大似然估计
基于非支配解集的多模式装备项目群调度鲁棒性优化