显著性攻击:迈向不可感知的黑盒对抗攻击

深度神经网络容易受到对抗性示例的攻击,即使在仅能访问模型输出的黑盒设置中也是如此。近期研究设计了具有高查询效率的有效黑盒攻击。然而,这种性能往往以牺牲攻击的不可感知性为代价,阻碍了这些方法的实际应用。在本文中,我们提出将扰动限制在小的显著性区域内,以生成难以被察觉的对抗性示例。该方法易于与许多现有黑盒攻击兼容,并能显著提高其不可感知性,而攻击成功率下降很小。此外,我们提出了显著性攻击,一种新的黑盒攻击,旨在细化显著性区域内的扰动以实现更好的不可感知性。大量实验表明,与最先进的黑盒攻击相比,我们的方法在大多数明显失真(MAD)、L0L_{0}L0 和 L2L_{2}L2 距离等不可感知性指标上取得了更好的结果,并且在基于人类感知阈值的 MAD 上获得了显著更高的成功率。重要的是,我们方法生成的扰动在一定程度上是可解释的。最后,该方法也被证明对不同的基于检测的防御具有鲁棒性。
1 引言
深度神经网络在广泛的应用中取得了显著进展,例如图像分类 [9]、人脸识别 [27]、目标检测 [28]、语音识别 [14] 和机器翻译 [3]。尽管取得了成功,但深度学习模型已表现出对对抗性攻击的脆弱性 [12, 20, 21, 36]。通过在良性输入上添加一些小的扰动,对抗性示例可以欺骗 DNN 做出错误预测,这对于一些安全敏感的场景(如自动驾驶 [34])是一个严重的威胁。
现有的对抗性攻击根据对目标模型的可访问性可分为白盒攻击和黑盒攻击。白盒攻击 [6, 12, 23, 26, 36] 可以完全访问目标模型的架构和参数,并通过反向传播轻松生成成功的 AE。然而,在实践中,攻击者通常无法获得模型内部信息。这导致了更现实和更具挑战性的黑盒攻击 [2, 15, 16, 19, 22, 24],这些攻击仅需要目标模型的输出。
由于许多现实世界的在线应用编程接口(API)通常对用户查询施加强制的时间或金钱限制 [15],近期大多数关于黑盒攻击的研究关注提高查询效率,这确实取得了显著进展。例如,最先进的(SOTA)方形攻击 [2] 可以在 ImageNet 数据集 [9] 上平均仅用几十次查询就能成功进行无目标攻击。另一方面,这种性能通常是通过对原始输入应用大区域甚至全局扰动(例如,方形攻击中的随机垂直条纹)来实现的,最终导致生成的 AE 与原始图像存在显著的视觉差异(参见图 1 中的一些示例)。实际上,不可感知性对于攻击者至关重要。当前在线 API 通常将检测器集成到其服务中以检测异常输入 [19]。那些扰动过于明显的 AE 难以通过这些检测器,更不用说人类判断了,这阻碍了这些黑盒攻击的实际应用。

本文旨在解决上述问题。关键见解是,我们可以引导黑盒攻击在与模型输出最相关的小显著性区域内进行搜索,以用不可感知的扰动实现成功攻击。具体地,先前的 DNN 可视化工作 [32] 表明,通过计算模型输出相对于输入的导数,可以生成所谓的 BP-显著图,以说明哪些特征可以影响模型预测。如图 2 第一列所示,BP-显著图中较亮的像素对模型输出的影响更大,因此扰动它们更可能改变模型预测。实际上,经典的白盒攻击 JSMA [26] 正是构建了这样的图,并迭代地从中选择像素进行扰动。尽管由于无法访问模型梯度,BP-显著图不能用于黑盒攻击,但可以从图 2 第二列观察到,亮像素的区域大致代表了图像中主要物体的位置。也就是说,在黑盒设置中,我们可以利用现有的显著性目标检测模型 [44](只需要输入图像,无需其他信息)来近似获得显著性区域,然后将扰动限制在其中。这种方法很有吸引力,因为它易于与大多数现有黑盒攻击兼容。通过将其集成到 SOTA 黑盒攻击中,我们发现修改后的攻击在攻击不可感知性方面获得了显著改善,而成功率下降很小(见表 1 结果)。然而,它们仍然受到全局扰动策略的影响,最终生成几乎覆盖整个显著性区域的复杂且不规则的扰动(参见图 5 的一些示例)。

为了实现更不可感知的攻击,我们随后寻求进一步将扰动限制在更小的区域。直觉是,即使在显著性区域内,某些子区域更为关键。例如,已有研究表明,狗的面部区域是狗图像显著性区域中最亮的部分 [46],遮挡它将显著改变模型输出 [42]。此外,通过将内部特征可视化与输出预测相结合,[25] 揭示在狗的面部区域内,耳朵和眼睛似乎比其他部分更重要。因此,有理由假设图像的显著性区域相对于其对模型输出的影响是渐进的。如果我们能找到更小但更显著的子区域,扰动将更高效,从而导致更不可感知的攻击(参见图 2 第三列)。因此,我们提出了显著性攻击,一种新颖的黑盒攻击,它递归地细化显著性区域内的扰动。
值得提及的是,除了白盒攻击 JSMA,将扰动限制在小区域的想法也已在基于迁移的攻击 [10, 40] 中实现,其中采用类激活映射(CAM)[46] 和 Grad-CAM [30] 来生成显著图。然而,基于迁移的攻击假设用于训练目标模型的数据分布是可用的,因此可以构建一个替代模型来近似它,这实际上属于灰盒设置,因为知道目标模型的部分知识。因此,它们不能应用于更严格的黑盒设置(仅模型输出可用)(详见第 2.3 节)。总之,我们在本工作中做出以下贡献。
据我们所知,在黑盒设置中制作 AE 时,我们是第一个将扰动限制在显著性区域的方法。该方法易于与许多现有黑盒攻击兼容,并能显著提高其不可感知性,而成功率下降很小。我们提出了显著性攻击,一种新颖的无梯度黑盒攻击,它迭代地细化显著性区域内的扰动,使其保持最小且关键。与 SOTA 黑盒攻击相比,我们的方法在大多数明显失真(MAD)、L0L_{0}L0 和 L2L_{2}L2 距离方面实现了更好的攻击不可感知性,并且在基于人类感知阈值的 MAD 上获得了显著更高的成功率。我们证明了显著性攻击生成的扰动对基于检测的防御(包括特征压缩和二分类器检测)更鲁棒。
本文的其余部分组织如下:第 2 节对黑盒攻击进行了文献综述。接下来,在第 3 节中,我们定义了攻击的优化问题,并详细介绍了提出的显著性攻击。第 4 节展示了实验结果和分析,随后在第 5 节给出结论。
2 相关工作
在这一部分,我们首先概述黑盒攻击的最新工作。根据 AE 的生成方法,这些攻击可以分为梯度估计攻击和无梯度攻击。此外,我们还介绍了一些与对抗性攻击中不可感知性相关的工作。最后,我们讨论了一些提取图像中显著性区域的方法。
2.1 黑盒攻击
2.1.1 梯度估计攻击
梯度估计攻击首先通过查询目标模型来估计梯度,然后使用它们运行白盒攻击。ZOO 攻击 [7] 首先采用对称差分商来近似梯度,然后执行白盒 Carlini-Wagner (CW) 攻击 [6]。AutoZOOM [37] 是 ZOO 的一个变体,它使用基于随机向量的梯度估计,将每次迭代的查询次数从 ZOO 中的 2D 减少到 N+1N + 1N+1(DDD 是维度,NNN 是样本量)。为了进一步提高查询效率,Ilyas 等人 [16] 提出了"平铺技巧",同时更新一个像素方块而不是单个像素。这通过因子 k2k^{2}k2(kkk 是平铺长度)显著降低了维度。
2.1.2 无梯度攻击
无梯度攻击不估计梯度,而是根据查询结果直接使用搜索启发式生成 AE。Su 等人 [33] 提出单像素攻击,采用差分进化算法扰动图像中最重要的像素。Alzantot 等人 [1] 提出 GenAttack,使用遗传算法生成 AE。为了提高查询效率,Moon 等人 [22] 考虑了一个离散代理优化问题,将原始连续范围 [−ϵ,+ϵ][- \epsilon , + \epsilon ][−ϵ,+ϵ] 的约束转换到离散集 {−ϵ,+ϵ}\{- \epsilon , + \epsilon \}{−ϵ,+ϵ},从而大幅减少了搜索空间。这是受线性规划(LP)的启发,其中最优解在可行集的极值点处达到 [29]。结合平铺技巧 [16] 和离散优化 [22],方形攻击 [2] 通过随机搜索在成功率和查询性能方面获得了迄今最好的结果。
2.2 攻击不可感知性
AE 的不可感知性对于实际攻击者至关重要,先前的研究从不同角度对此进行了探讨。Guo 等人 [13] 将低频扰动视为不可感知,因此在频域中搜索 AE。但 Zhang 等人 [43] 将不可感知视为图像中的视觉平滑度,并将拉普拉斯平滑集成到优化中。Croce 和 Hein [8] 使用 L0L_{0}L0 和 L∞L_{\infty}L∞ 范数的组合生成稀疏且不可感知的扰动。此外,一些研究还利用颜色距离 [45] 和图像质量评估(IQA)[18, 38] 来提高攻击的不可感知性。
另一方面,如何评估 AE 的不可感知性仍然是一个悬而未决的问题。大多数现有的对抗性攻击使用 LpL_{p}Lp 范数 (L0,L2(L_{0},L_{2}(L0,L2 和 L∞L_{\infty}L∞ ) 来衡量扰动图像与原始图像之间的人类感知距离。然而,已有研究表明 LpL_{p}Lp 范数对于人类视觉系统并不足够合适 [31]。近期一项研究 [11] 通过大规模人类评估,系统地检查了包括 LpL_{p}Lp 范数在内的各种 IQA 指标在不同 AE 不可感知性上的表现,发现所有指标中,最明显失真(MAD)[17] 指标最接近主观评分(MAD 的详细信息见附录 A.1)。因此,在本研究中,我们采用 MAD 作为评估攻击不可感知性的主要指标。
2.3 提取显著性区域
如前所述,已有白盒攻击或基于迁移的攻击将扰动限制在小显著性区域内。具体地,白盒攻击 JSMA [26] 通过计算模型输出相对于输入像素的导数来构建 BP-显著图 [32],而两个基于迁移的攻击 [10, 40] 分别利用 CAM 和 Grad-CAM 提取显著性区域。CAM [46] 用卷积层和全局平均池化替换 CNN 最后的全连接层,并通过前向传播定位类别特定的显著性区域。Grad-CAM [30] 改进了 CAM,无需修改网络架构,但仍需要访问模型内部参数以计算梯度。因此,CAM 和 Grad-CAM 只能应用于白盒攻击或基于迁移的攻击,后者首先构建一个透明的替代模型,用基于梯度的白盒攻击制作 AE,然后将生成的 AE 迁移到目标模型。可以想象,对于基于迁移的攻击,AE 和显著图的可迁移性高度依赖于替代模型与目标模型之间的相似性,这进一步依赖于训练数据分布的先验知识。不幸的是,在黑盒设置中,这些知识和模型梯度都是不可用的。考虑到上述方法的局限性,我们采用显著性目标检测模型 [44] 来直接根据输入图像生成显著图,无需访问目标模型的架构或参数。
3 所提方法
在本节中,我们首先形式化为图像分类模型制作 AE 的问题,然后详细阐述我们的方法。图 3 展示了显著性攻击的整体流程图。

3.1 预备知识
给定一个训练好的 DNN 分类器 h:[0,1]d→RKh:[0,1]^d\to \mathbb{R}^Kh:[0,1]d→RK,其中 ddd 是输入 xxx 的维度,KKK 是类别数。令 hk(x)h_k(x)hk(x) 表示 xxx 属于类别 kkk 的预测分数。分类器将最大化 hk(x)h_k(x)hk(x) 的类别分配给输入 xxx。无目标攻击的目标是找到一个 AE xadvx_{adv}xadv,使得模型从真实类别 ygty_{gt}ygt 产生错误分类,同时保持 xadvx_{adv}xadv 与良性输入 xxx 的距离小于阈值 ϵ\epsilonϵ:
argmaxk=1,...,Khk(xadv)≠ygt,s.t. ∥xadv−x∥p≤ϵ,xadv∈[0,1]d(1) \underset {k = 1,\ldots ,K}{\arg \max}h_k(x_{adv})\neq y_{gt},\quad \text{s.t. } \|x_{adv} - x\|p \leq \epsilon,\quad x{adv}\in [0,1]^d \tag{1} k=1,...,Kargmaxhk(xadv)=ygt,s.t. ∥xadv−x∥p≤ϵ,xadv∈[0,1]d(1)
注意最后一个约束表示 xadvx_{adv}xadv 是一个有效图像。在本研究中,我们遵循 [2, 22] 关注 L∞L_{\infty}L∞ 范数。通常,寻找 xadvx_{adv}xadv 的任务可以重新表述为求解一个有约束的连续问题:
maxxadv∈[0,1]df(xadv),s.t. ∥xadv−x∥∞≤ϵ(2) \max_{x_{adv}\in [0,1]^d} f(x_{adv}),\quad \text{s.t. } \|x_{adv} - x\|_{\infty} \leq \epsilon \tag{2} xadv∈[0,1]dmaxf(xadv),s.t. ∥xadv−x∥∞≤ϵ(2)
其中 f(x)=L(x,ygt)f(x) = L(x,y_{gt})f(x)=L(x,ygt) 是损失函数。类似于 [22],我们将连续问题转换为离散代理问题,其中扰动 xadv−x=δ∈{−ϵ,+ϵ,0}dx_{adv} - x = \delta \in \{-\epsilon , + \epsilon ,0\}^dxadv−x=δ∈{−ϵ,+ϵ,0}d。注意与 [22] 中所有像素都被扰动为 −ϵ- \epsilon−ϵ 或 +ϵ+ \epsilon+ϵ 不同,我们允许像素保持不变以避免全局扰动。此外,只有显著性区域内的像素可以被扰动。最终问题定义为以下集合最大化问题:
maxS+,S−⊆S{F(S+,S−)≜f(x+ϵ∑i∈S+ei−ϵ∑i∈S−ei)}(3) \max_{S^{+},S^{-}\subseteq S} \left\{F(S^{+},S^{-}) \triangleq f\left(x + \epsilon \sum_{i\in S^{+}}e_{i} - \epsilon \sum_{i\in S^{-}}e_{i}\right)\right\} \tag{3} S+,S−⊆Smax{F(S+,S−)≜f(x+ϵi∈S+∑ei−ϵi∈S−∑ei)}(3)
其中 V\mathcal{V}V 表示所有像素位置的基集(∣V∣=d|\mathcal{V}| = d∣V∣=d),S\mathcal{S}S 表示显著性区域中的像素集合,S+S^{+}S+ 和 S−S^{- }S− 分别表示选定的添加 +ϵ+ \epsilon+ϵ 和 −ϵ- \epsilon−ϵ 扰动的像素集合,eie_iei 是第 iii 个标准基向量。注意 S⊆VS\subseteq \mathcal{V}S⊆V,且 S\(S+∪S−)S\backslash (S^{+}\cup S^{- })S\(S+∪S−) 是保持不变的像素集合。
3.2 显著性目标检测
显著性目标检测旨在自动准确地提取图像中的显著目标。与其他显著性区域提取方法(如 BP-显著图 [32]、CAM [46] 和 Grad-CAM [30])相比,这类模型除了输入图像外不需要任何其他信息,非常适合黑盒设置。我们采用金字塔特征注意力(PFA)网络 [44],该网络通过同时捕获高层上下文特征和低层空间结构特征,在多个数据集上实现了 SOTA 性能(详见附录 A.2)。具体地,给定输入图像,PFA 可以为每个像素生成 0 到 1 之间的显著性分数。值越高表示视觉显著性越高。然后我们使用阈值 ϕ\phiϕ 将显著性分数转换为二值显著性掩码,从而确定显著性区域。二值化可以表示为:
si∗={0si<ϕ1si≥ϕ(4) s_i^* = \left\{ \begin{array}{ll}0 & s_i < \phi \\ 1 & s_i \geq \phi \end{array} \right. \tag{4} si∗={01si<ϕsi≥ϕ(4)
其中 sis_isi 和 si∗s_i^*si∗ 分别是第 iii 个像素位置的显著性分数和二值掩码。因此,显著性区域是被掩码为 1 的像素集合:
S≜{i∣si∗=1, i∈V}(5) S \triangleq \{i \mid s_i^* = 1,\ i\in \mathcal{V}\} \tag{5} S≜{i∣si∗=1, i∈V}(5)
3.3 细化显著性区域内的扰动

提出的显著性攻击在算法 1 中概述。搜索过程(第 6-35 行)基于图像块的四叉树结构递归地细化扰动,如图 4 所示。具体地,输入图像首先被分割成一些初始块(图 4 中的粗网格),并且只保留显著性区域中的块(第 7-11 行)。然后我们尝试在每个初始块上单独添加 +ϵ+ \epsilon+ϵ 或 −ϵ- \epsilon−ϵ 扰动(第 12-19 行),并根据它们对模型输出的影响 (F)(F)(F) 进行排序(第 26 行)。之后,如果其 FFF 优于当前最佳 F^\hat{F}F^,则选择影响最大的块进行进一步细化(第 27-35 行)。然后我们递归地细化当前最佳块(第 32 行),将该块分割成更小的块(图 4 中的更细网格),并再次尝试在每个块上单独添加扰动(此时为了方便,我们只是翻转扰动(第 21-24 行),例如将 +ϵ+ \epsilon+ϵ 翻转为 −ϵ- \epsilon−ϵ),以找到最佳的小块。细化过程递归进行,直到达到最小块(例如,1 个像素,第 30 行)或没有更小的块具有更好的 FFF(第 28 行)。之后,我们回溯到上一个拆分级别,并使用第二好的块进行进一步扰动。通过这种方式,最重要的块会被优先探索,扰动可以尽可能小,无需像 Parsimonious Attack [22] 那样初始化全局扰动。

为了充分利用查询预算并结合不同初始块大小 kintk_{int}kint 的优势(大的 kintk_{int}kint 可以快速用大扰动实现成功攻击,而小的 kintk_{int}kint 能够在更细的网格中实现小扰动的细化),我们利用一个外部迭代,以递减的 kintk_{int}kint 运行上述细化搜索(第 2-5 行)。在迭代过程中,如果生成的 xadvx_{adv}xadv 成功欺骗模型 (F>0)(F > 0)(F>0) 或达到终止条件,算法将停止(第 2 行)。
对于式 (2),我们使用来自 CW 攻击 [6] 的无目标攻击损失函数:
L(x,ygt)=−max(Z(xadv)ygt−maxi≠ygt(Z(xadv)i),0)(6) L(x,y_{gt}) = -\max (Z(x_{adv}){y{gt}} - \max_{i\neq y_{gt}}(Z(x_{adv})_{i}),0) \tag{6} L(x,ygt)=−max(Z(xadv)ygt−i=ygtmax(Z(xadv)i),0)(6)
其中 Z(xadv)ygtZ(x_{adv}){y{gt}}Z(xadv)ygt 是原始图像真实类别的 logit。这样,损失函数被施加用于在真实类别和其他类别之间留出间隔。
算法 1: 显著性攻击
输入:目标集函数 FFF,基集 ∇\nabla∇,显著性区域 SSS,初始块大小 kintk_{int}kint,查询预算
输出:S+S^{+}S+ , S−S^{- }S− 带有 +ϵ+ \epsilon+ϵ 和 −ϵ- \epsilon−ϵ 扰动的像素集合
1 S+←∅;S−←∅;F^←−∞;S^{+}\gets \emptyset ;S^{- }\gets \emptyset ;\hat{F}\gets -\infty ;S+←∅;S−←∅;F^←−∞;
2 while kint>1k_{int} > 1kint>1 且未超过查询预算 do
3 Refine(V, kint, 1);
4 kint ←\leftarrow← kint/2;
5 end
6 Procedure Refine(B, k, split_level)
/∗ 将当前块拆分为显著性区域内的更细块。
7 k′←∣B∣k^{\prime}\gets \sqrt{|B|}k′←∣B∣ 是 BBB 的块大小; n←(k′/k)2n\gets (k^{\prime} / k)^{2}n←(k′/k)2 是拆分块的数量;
8 {B1,B2,...,Bn}\{B_{1},B_{2},\dots,B_{n}\}{B1,B2,...,Bn} 将 BBB 拆分为 nnn 个更细的块;
9 for i←1i\gets 1i←1 to nnn do
10 Bi←Bi∩SB_{i}\gets B_{i}\cap SBi←Bi∩S
11 end
/∗ 根据更细块对模型输出的影响进行排序。
12 if split_level =1= 1=1 then
13 for j←1j\gets 1j←1 to nnn do
14 if F(S+∪Bj,S−\Bj)≥F(S+\Bj,S−∪Bj)F(S^{+}\cup B_{j},S^{- }\backslash B_{j})\geq F(S^{+}\backslash B_{j},S^{- }\cup B_{j})F(S+∪Bj,S−\Bj)≥F(S+\Bj,S−∪Bj) then
15 Sj+←S+∪Bj;Sj−←S−\Bj;Fj←F(S+∪Bj,S−\Bj);S_{j}^{+}\gets S^{+}\cup B_{j};S_{j}^{- }\gets S^{- }\backslash B_{j};F_{j}\gets F(S^{+}\cup B_{j},S^{- }\backslash B_{j});Sj+←S+∪Bj;Sj−←S−\Bj;Fj←F(S+∪Bj,S−\Bj);
16 else
17 Sj+←S+\Bj;Sj−←S−∪Bj;Fj←F(S+\Bj,S−∪Bj);S_{j}^{+}\gets S^{+}\backslash B_{j};S_{j}^{- }\gets S^{- }\cup B_{j};F_{j}\gets F(S^{+}\backslash B_{j},S^{- }\cup B_{j});Sj+←S+\Bj;Sj−←S−∪Bj;Fj←F(S+\Bj,S−∪Bj);
18 end
19 end
20 else
21 for j←1j\gets 1j←1 to nnn do
22 Sj+←(S+\Bj)∪(S−∩Bj);Sj−←(S−\Bj)∪(S+∩Bj);S_{j}^{+}\gets (S^{+}\backslash B_{j})\cup (S^{- }\cap B_{j});\quad S_{j}^{- }\gets (S^{- }\backslash B_{j})\cup (S^{+}\cap B_{j});Sj+←(S+\Bj)∪(S−∩Bj);Sj−←(S−\Bj)∪(S+∩Bj);
23 Fj←F(S+,S−);F_{j}\gets F(S^{+},S^{- });Fj←F(S+,S−);
24 end
25 end
26 {Fπ(1),Fπ(2),...,Fπ(n)}←sort{F1,F2,...,Fn}\{F_{\pi (1)},F_{\pi (2)},\dots,F_{\pi (n)}\} \gets \mathrm{sort}\{F_{1},F_{2},\dots,F_{n}\}{Fπ(1),Fπ(2),...,Fπ(n)}←sort{F1,F2,...,Fn} 降序排列;
/∗ 递归选择影响最大的更细块进行扰动。
27 for j←1j\gets 1j←1 to nnn do
28 if Fπ(j)>F^F_{\pi (j)} > \hat{F}Fπ(j)>F^ then
29 S+←Sπ(j)+;S−←Sπ(j)−;F^←Fπ(j);S^{+}\gets S_{\pi (j)}^{+};S^{- }\gets S_{\pi (j)}^{- };\hat{F}\gets F_{\pi (j)};S+←Sπ(j)+;S−←Sπ(j)−;F^←Fπ(j);
30 if k>1k > 1k>1 then
31 k←k/2k\gets k / 2k←k/2
32 Recursively call Refine( Bπ(j)B_{\pi (j)}Bπ(j) , kkk , split_level +1+1+1 );
33 end
34 end
35 end
4 实验
实验的主要目标是验证:(1) 显著性区域是否能够提高现有黑盒攻击的不可感知性;(2) 我们的显著性攻击是否能够进一步提高不可感知性性能。因此,我们首先将我们的显著性攻击与基线方法进行比较,包括 SOTA 黑盒攻击及其限制在显著性区域内的修改版本。然后我们进行消融研究,以分别验证显著性区域和细化搜索的有效性。此外,我们测量了方法的超参数敏感性。最后,我们测试了不同的基于检测的防御,以从防御角度评估不可感知性。
4.1 设置
我们将显著性攻击与 SOTA 黑盒攻击进行比较,包括边界攻击 [5]、TVDBA [18]、Parsimonious 攻击 [22] 和方形攻击 [2]。其中,边界攻击可以在足够的查询次数下不断将扰动减小到非常小的幅度,TVDBA 试图通过将结构相似性(SSIM)[39] 集成到损失中来最小化扰动,Parsimonious 攻击提出离散优化以提高查询效率,而方形攻击在黑盒攻击设置中实现了当前 SOTA 的查询效率和成功率。此外,我们设计了 Parsimonious-sal 攻击和 Square-sal 攻击作为基线,将它们的扰动限制在显著性区域内。对于我们的显著性攻击,生成二值显著性掩码的阈值 ϕ\phiϕ 选择为 0.1。对于分割,原始图像被调整为 256×256256 \times 256256×256,我们设置初始块大小 kintk_{int}kint 为 16。所有比较攻击的参数与其论文中推荐的参数保持一致。
对于性能指标,我们使用常用的成功率(SR)和平均查询次数。为了评估 AE 的不可感知性,我们考虑 L0L_{0}L0、L2L_{2}L2 和 MAD。这三个不可感知性指标都是越小越好。在实践中,我们需要的是具有不可感知扰动的成功 AE。因此,除了 SR,我们使用一个新指标 SRtrue\mathrm{SR}_{\mathrm{true}}SRtrue。它表示 MAD 值低于人类感知阈值(即 30)的成功 AE 的比率,MAD ≤30\leq 30≤30 的 AE 对人眼基本不可察觉(参见附录 A.3)。
在本研究中,我们在 ImageNet 数据集 [9] 上考虑 L∞L_{\infty}L∞ 威胁模型,并在 [0,1] 尺度上将扰动幅度 ϵ\epsilonϵ 设置为 0.05。我们使用 Inception v3 [35] 作为目标模型,并测试无目标攻击的不同查询预算 [3,000, 10,000, 30,000]。我们公开提供了实现代码2。
4.2 结果与分析
一些示例如图 5 所示。我们很容易发现原始 Parsimonious 攻击和方形攻击的扰动由于全局扰动在整个图像中非常明显,而它们的修改版本相对更不可感知,因为背景区域没有扰动。然而,它们的扰动仍然复杂且不规则,几乎占据了整个显著性区域。相比之下,即使限制在相同的显著性区域内,显著性攻击生成的扰动更小且更关键,大致对应于 BP-显著图中的亮像素。它们进一步代表了狗的鼻子或耳朵的位置,这与我们之前的灵感一致。此外,边界攻击的 AE 由于查询预算不足而包含明显的粗糙纹理,而 TVDBA 产生类似的不规则全局扰动。

定量结果报告在表 1 中。在本实验中,我们从 ImageNet 验证集中随机选择 10,000 张图像,并将它们分成十组。然后我们计算平均值和标准差(SD)。基于 Wilcoxon 符号秩检验(显著性水平为 0.05),最佳结果以粗体记录。我们发现,在所有查询预算下,我们的显著性攻击在 SRtrue\mathrm{SR}{\mathrm{true}}SRtrue 和三个不可感知性指标上均以巨大差距统计显著地优于所有基线,这证明了我们的方法在细化显著性区域内扰动方面的优越性。对于基线,尽管 TVDBA、Parsimonious 攻击和方形攻击可以获得更好的 SR,但它们成功的 AE 并非真正不可感知,很容易被某些防御或人类检测到。对于边界攻击,随着查询预算的增加,它可以在 SRtrue\mathrm{SR}{\mathrm{true}}SRtrue、L2L_{2}L2 和 MAD 上逐渐取得进展,但仍然比显著性攻击差得多。这是因为边界攻击需要至少数十万次查询才能收敛 [5],这在实践中是不可行的。同样明显的是,Parsimonious-sal 攻击和 Square-sal 攻击比它们的原始版本获得了更好的不可感知性性能,而 SR 下降很小。这表明在黑盒攻击中使用显著性区域是可行的。


我们还在图 6 中绘制了在不同 MAD 阈值下 SRtrue\mathrm{SR}{\mathrm{true}}SRtrue 随查询次数的收敛曲线。它表明显著性攻击在大多数时候能稳定地领先其他攻击。对于一些基线,如方形攻击和 Parsimonious 攻击,由于全局扰动和一些技巧(如用随机垂直条纹初始化扰动 [2]),它们可以用很少的查询生成一些成功的 AE,但它们缺乏进一步提高不可感知性的能力。相反,显著性攻击保守地选择小区域进行扰动,因此其查询效率在开始时略低于某些基线,但很快超过它们。我们观察到,随着查询次数的增加,显著性攻击的 SRtrue\mathrm{SR}{\mathrm{true}}SRtrue 稳定增长,这意味着它可以不断细化扰动以更好地满足不可感知性约束。而对于其他攻击,SRtrue\mathrm{SR}_{\mathrm{true}}SRtrue 几乎收敛到一定水平。
4.3 消融研究

为了验证显著性区域和细化搜索的有效性,我们进行了消融研究,结果如表 2 所示。其中,"Greedy" 表示在显著性区域内使用贪心搜索(即没有递归细化),而"Saliency (ours)" 是完整的显著性攻击。我们观察到,与显著性攻击相比,贪心搜索在所有查询预算下都实现了更高的 SR,但以不可感知性为代价。例如,在 3,000 次查询时,贪心搜索的 SR 为 88.1%,而 SR\textsubscript{true} 仅为 79.8%(显著性攻击为 84.3%)。此外,贪心搜索的 L2L_{2}L2 和 MAD 值显著更高。这表明递归细化对于实现高不可感知性至关重要。此外,我们还比较了"Saliency (ours)" 与"Saliency (no saliency)",后者是显著性攻击的变体,但扰动不限制在显著性区域内(即在整个图像上搜索)。结果显示,没有显著性区域的限制,SR 略有提高,但不可感知性显著恶化。这证实了将扰动限制在显著性区域的有效性。
4.4 超参数敏感性

我们研究了初始块大小 kintk_{int}kint 对显著性攻击性能的影响。我们在图 8 中绘制了不同 kintk_{int}kint 下的 SR、平均查询次数和不可感知性指标。结果表明,较小的 kintk_{int}kint 导致更高的不可感知性(更低的 L2L_{2}L2 和 MAD),但 SR 略有下降且查询次数增加。这是因为较小的块允许更精细的扰动,但需要更多的递归步骤。最终我们选择 kint=16k_{int}=16kint=16 作为默认值,在不可感知性和查询效率之间取得平衡。

我们在图 9 中展示了一些示例。可以观察到,随着 kintk_{int}kint 的减小,生成的扰动变得更小但更显著。例如,在第一行中,k=128k = 128k=128 的扰动大致覆盖了狗的面部区域,这也是 BP-显著图中最亮的区域。而 k=32k = 32k=32 或 k=16k = 16k=16 的扰动则聚焦于狗耳朵的更小区域。这表明随着 kintk_{int}kint 的减小,我们的显著性攻击能够逐步找到更小且更重要的扰动,这与我们先前的假设一致。扰动在一定程度上也是可解释的,例如扰动狗的耳朵、眼睛或鼻子的特定区域。
4.5 攻击基于检测的防御
为了进一步验证 AE 的不可感知性,我们攻击了两种旨在从干净图像中检测 AE 的基于检测的防御。第一种是特征压缩3 [41]。其基本思想是压缩可能被攻击者用于生成 AE 的不必要输入特征。通过比较模型在原始图像上的预测与在压缩后图像上的预测,如果原始输入和压缩输入产生显著不同的输出,则该输入很可能是对抗性的。特征压缩采用每个像素的颜色位减少和空间平滑(局部和非局部平滑)作为压缩器。我们为 ImageNet 数据集使用推荐的参数 (5−bit,2×2,11−3−4)(5 - bit, 2 \times 2, 11 - 3 - 4)(5−bit,2×2,11−3−4)。另一种是基于 CNN 的二分类器,基于隐写分析检测器 [4],专门设计用于检测小噪声,性能优于经典分类模型如 Inception-v3 或 ResNet。我们使用不同攻击生成的 AE 对预训练模型进行微调。具体地,我们随机选择 1,000 张干净图像,并分别用显著性攻击和六个基线生成相应的 AE。因此,我们使用 2×7,0002 \times 7,0002×7,000 对干净图像和 AE 作为训练集来微调模型。训练进行 100 个 epoch,学习率为 0.001。我们测试另外 1,000 个样本,并记录检测率(DR),越低越好。

从表 3 可以看出,我们的显著性攻击在特征压缩和二分类器检测方面都比其他基线获得了更低的检测率。对于特征压缩,尽管显著性攻击生成的扰动区域很小,因此面临被压缩器去噪的更高风险,但由于我们有效的扰动,显著性攻击的检测率仍然优于其他攻击。对于二分类器检测器,我们的显著性攻击获得了接近 50%50\%50% 的准确率/检测率,这意味着扰动足够不可见,以至于分类器难以收敛,结果相当于随机猜测。因此,我们的显著性攻击能够生成不可感知的 AE,逃避不同的基于检测的防御。
5 结论
在本文中,我们提出将黑盒攻击限制在显著性区域内进行扰动,以提高 AE 的不可感知性,并提出了一种新颖的黑盒攻击------显著性攻击。实验表明,限制在显著性区域内的 SOTA 黑盒攻击确实可以实现更好的不可感知性性能,而显著性攻击通过递归细化显著性区域内的扰动进一步增强了这一点。其扰动更小、更不可感知,并且在一定程度上是可解释的。此外,我们还发现某些示例的显著性区域相对于其对模型输出的影响确实是渐进的,这与我们从先前可视化研究中的假设一致。最后,评估表明显著性攻击生成的 AE 更难被检测,这从防御角度验证了其不可感知性。尽管我们的细化搜索对不可感知性带来了显著的益处,但与具有全局扰动的黑盒攻击相比,它不可避免地消耗了更多的查询。未来,我们将尝试寻找更好的方法来平衡黑盒攻击的查询效率、不可感知性和攻击成功率这三个目标。此外,我们将把显著性区域应用于更多的黑盒攻击以提高其不可感知性。我们的显著性攻击也可以在其他类型的防御(如基于鲁棒性的防御(对抗训练、网络蒸馏等))上进行测试,以验证其有效性。