原文标题: Fight Perturbations with Perturbations: Defending Adversarial Attacks via Neuron Influence
原文代码: https://github.com/Allen-piexl/NIP-Neuron-level-Inverse-Perturbation
发布年度: 2023
发布期刊: TDSC
摘要
The vulnerabilities of deep learning models towards adversarial attacks have attracted increasing attention, especially when models are deployed in security-critical domains. Numerous defense methods, including reactive and proactive ones, have been proposed for model robustness improvement. Reactive defenses, such as conducting transformations to remove perturbations, usually fail to handle large perturbations. The proactive defenses that involve retraining, suffer from the attack dependency and high computation cost. In this paper, we consider defense methods from the general effect of adversarial attacks that take on neurons inside the model. We introduce the concept of neuron influence, which can quantitatively measure neurons’ contribution to correct classification. Then, we observe that almost all attacks fool the model by suppressing neurons with larger influence and enhancing those with smaller influence. Based on this, we propose Neuron-level Inverse Perturbation (NIP), a novel defense against general adversarial attacks. It calculates neuron influence from benign examples and then modifies input examples by generating inverse perturbations that can in turn strengthen neurons with larger influence and weaken those with smaller influence. Extensive experiments on benchmark datasets and models show that NIP outperforms the state-of-the-art methods in terms of (i) effective - it shows better defense success rate (∼×1.45) against 13 adversarial attacks; (ii) elastic - it maintains better defense (∼×3.4 in the worst case) on large perturbations; (iii) efficient - it runs with only ∼1/6 time cost; (iv) extensible - it can be applied to speaker recognition models and Baidu online image platforms. We further evaluate NIP against potential adaptive attacks and provide interpretable analysis for its effectiveness.
背景
DNN 的鲁棒性的研究主要有两个方向:被动防御和主动防御。前者在推理阶段对输入进行转换,而后者则修改模型结构或训练过程以减轻攻击。早期提出的反应策略尝试通过简单的图像变换来消除扰动。但它们无法处理更大的扰动。此外,选择合适的参数需要大量的对抗性例子。同时,从特征分布的角度提出了其他反应性防御,通过潜在特征空间中的映射和投影,推动对抗样本的分布逼近良性样本。它们的性能受到映射函数的精度和扰动大小的限制。
此外,如果提前充分了解模型结构,主动防御可以提供更好的模型鲁棒性。由于DNN的决策是由每个神经元的非线性组合决定的,因此从神经元激活值和权重方面设计了一些对抗性训练策略 。将神经元激活与模型鲁棒性联系起来,最近有前途的方法假设对抗样本的错误分类可归因于异常激活的神经元。但它们依赖于大量的投影梯度下降(PGD)对抗样本,这也限制了一般攻击的有效性。在训练过程中,他们还面临高计算成本和良性准确性下降的挑战。
综合以上分析,现有的防御措施存在三个方面的局限性:(1)不同攻击之间性能不稳定; (ii) 无法针对不同扰动大小自适应调整防御策略; (iii)依赖于特定攻击的对抗性例子,并且在再训练期间需要很高的时间成本。
创新点
为了克服上述挑战,我们从不同攻击的一致性角度重新考虑防御机制,并特别关注攻击前后神经元行为的变化。假设模型中的神经元在分类中发挥不同的作用,我们引入神经元影响,它定量测量神经元对正确预测的贡献程度。当模型输入良性示例时,它是在正确标签的指导下计算的。根据神经元影响力,将某一层神经元按照影响力值从大到小排序,分为前神经元(类别相关性最强)、尾部神经元(类别相关性最差)和剩余神经元。我们在图 1 中可视化了 500 个良性和相应对抗性示例的神经元影响,其中影响值被标准化为 [0,1]。观察表明,不同对抗性攻击下神经元影响力的变化表现出一致的模式:前部神经元的影响力通常会减少,而尾部神经元的影响力会增加。这种规律表明,一般的对抗性攻击通常针对这些特定的神经元来操纵神经网络的行为,最终导致对抗性示例的错误分类。
对结果的解释清楚地表明,有效逆转被恶意攻击的神经元的激活(无论是激活还是失活)可以显着减少或消除对抗性示例对模型的影响。基于不同攻击的一般模式,本文提出了一种与攻击无关的防御方法神经元级逆扰动(NIP)。首先,通过几批良性示例计算所选层中的神经元影响,然后识别可能被对手利用的前部和尾部神经元。利用这些神经元,我们在推理阶段生成逆扰动来修改输入值,例如图像像素和音频频谱值。值得注意的是,这种修改过程不需要昂贵的模型重新训练。为了有效地处理扰动大小不同的对抗性示例,我们根据每个未知输入的属性自适应地调整逆扰动的幅度。
PRELIMINARIES
1.威胁模型
NIP的目标是在事先不知道具体类型的情况下防御攻击。对于防御者来说,他们只能访问训练数据集中正确分类的良性示例及其相应标签的一部分。本文由于需要获取神经元信息,使用白盒防御设置。
2.DNNs and Adversarial Attacks
基于 DNN 的分类器可以表示为 f (x) : X → Y ,其中 X ⊂ Dn 表示输入空间,Y ⊂ Rm 表示预测类别。对于给定的输入 x ∈ X,f (x) = {y1(x), y2(x), …, ym(x)} ∈ Rm 表示 m 个类标签的置信度值。预测标签 c 给出为:c = argmax1≤i≤myi(x)。我们将预测标签 c 的相应置信度表示为 yc。
DNN 由多个层组成:输入层、许多隐藏层,最后是输出层。每层由多个内部神经元组成。该层的输出是上一层每个神经元激活状态的非线性组合。攻击者为给定的良性输入 x 设计一个对抗性扰动 Δx,使得生成的对抗性示例 x* = x+Δx 被 DNN 错误分类。形式上,它可以表述为:f(x*)̸=f(x)。扰动 Δx 受 ε 限制,即 ||Δx|| ≤ ε。 || ·||代表在范数内。
3.Definitions
定义1(神经元的输出)。给定一个 DNN,令 X = {x1, x2, …} 表示一组输入。 Nl = {n1, n2, …} 是第 l 层中的一组神经元。 φn(x) 表示当模型输入 x ∈ X 时,神经元 n ∈ Nl 的输出值。 An(x) ∈ RH×W ×C 是输入 x 时 n 的特征图。 φn(x)的输出可以计算如下
定义 2(神经元影响)。对于一个神经元 n ∈ N ,其神经元影响力 σ 定义为:
其中yc表示预测标签 c 的置信度。 ∂表示偏导函数。神经元影响衡量神经元对预测标签的贡献程度:σ 越大的神经元对预测标签的贡献越大。
定义3(前神经元、尾神经元和剩余神经元)。根据神经元影响力,将第l层神经元按降序排列。该神经元序列中的top-k1和bottom-k2神经元被定义为前神经元和尾神经元,分别表示为Ωf和Ωt。该层中的其他神经元称为剩余神经元,记为Ωr。
模型
NIP的概况如图3所示,可分为准备阶段和测试阶段。 NIP由四个部分组成:1神经元选择模块,2神经元模板的生成,3NIP候选的构建,以及4自适应和重分类。在测试阶段,未知输入可以是恶意的,也可以是良性的,这是防御者所不知道的。
在准备阶段,我们使用良性例子来进行1到3。神经元选择模块是选择所选层中的前部神经元、剩余神经元和尾部神经元。剩余的神经元用于生成神经元模板,并进一步采用神经元模板来计算相似度δ。前部和尾部神经元将用于生成逆扰动,将其与其各自的 δ 配对以构建 NIP 候选者。
在测试阶段,1和4是在给定的未知输入下进行的。该过程首先识别剩余的神经元,以计算给定未知输入的相似度 δ。随后,根据 δ,从 NIP 候选池中选择适当的逆扰动并将其应用于未知输入。然后,修改后的输入会反馈到模型以进行重新分类。接下来,我们将详细说明每个关键组件。
- 神经选择模块
采用神经元选择模块根据神经元影响力来选择神经元。
此过程首先将未知的输入示例输入模型中。然后,我们评估所选层中每个神经元的影响——通常是位于卷积层和密集层之间的层,例如展平层或全局平均池化层。这种选择的动机是这些层包含对分类任务至关重要的像素级和高维特征。然后,选择前部、尾部和剩余的神经元。 k1和k2是供选择的超参数。前者 k1 负责前部神经元,后者负责尾部神经元。之后,输出的神经元序列称为排序神经元,记为 N l ′ N'_l Nl′。它们将进一步用于生成神经元模板和逆扰动。神经元选择模块的伪代码如算法1所示
-
Generation of Neuron Template
神经元模板由良性示例生成,是剩余神经元的序列索引。从图1中可以明显看出,剩余神经元的行为在攻击前后保持相对稳定,使得它们适合于良性输入和未知输入之间的比较。为了构建神经元模板,我们从一组表示为 X = {x1, x2, …, xt} 的良性示例开始,并计算神经元模板 T :
其中T表示求交集的函数。 I(Ωr,xi )表示良性样本xi计算的剩余神经元的索引,t是良性样本的数量。提取所有良性样本中都保持稳定表现的神经元序号。为了确保后续计算的兼容性,神经元模板 T用0补齐,保持尺寸一致性。之后,神经元模板被标记为T′。 -
Construction of NIP Candidates
NIP 的基本组成部分是逆扰动,但为了准确地将未知输入与适当的扰动匹配,我们利用相似度 δ 进行一致性。因此,每个 NIP 候选都由逆扰动 ρ 及其相应的 δ 组成,有利于扰动与未知输入的精确匹配。通过连接 ρ 和 δ,我们可以利用相似性来为未知输入找到适当的逆扰动。
对于每个良性示例,我们生成一个 NIP 候选者。具体来说,计算ρ以增强前神经元的神经元影响并抑制尾部神经元的神经元影响。 δ 表示输入示例的剩余神经元与预定义神经元模板的剩余神经元之间的相似度。
给定一个良性示例 x ∈ X 和模板 T ′,相似度 δ 可以通过剩余神经元计算:
在逆扰动的产生中,前部和尾部神经元起着至关重要的作用。与对抗性攻击的典型目标相反,NIP 的优化目标包括增强前端神经元的影响,同时抑制尾部神经元的影响。该策略确保逆扰动有效减轻对抗性影响。损失函数可以表示为:
其中 ni ∈ Ωf 且 nj ∈ Ωt。 φni(x)表示前神经元中第i个神经元的输出Ωf,x。类似地,φnj(x)表示Ωt,x中第j个神经元的输出。 P表示求和函数。然后通过计算损失梯度来生成 NIP 候选的扰动 ρx:
因此,构建NIP候选者:
4.Adaptivity and Reclassification
给定一个未知的输入 ˆ x,我们可以根据其相似度 δˆ x 在候选池中找到合适的逆扰动。
选定的逆扰动 ρˆ x 经过归一化,然后根据每个新输入的特定值进行自适应放大。例如,如果未知输入包含较大的对抗性扰动,则逆扰动将依次被放大以减轻对抗性影响。 ^ x 的防御示例 xdef 计算如下:
其中 ρˆ x 表示通过其相似性找到的 ˆ x 的合适逆扰动。 Mean(·)、M ax(·) 和M in(·) 表示矩阵的平均值、最大值和最小值。逆扰动 ρˆ x 被归一化以确保像素值尺度的一致性,以与未知输入的像素值尺度保持一致。这种归一化至关重要,因为它增强了逆扰动的不可察觉性。防御示例将被输入到模型中进行重新分类。
实验
- 评估指标
(1)分类准确率(acc):acc = Ntrue/ Nbenign ,其中Ntrue是目标模型正确分类的良性示例的数量,Nbenign表示良性示例的总数。 (2)攻击成功率(ASR):ASR = Nadv/ Nbenign ,其中 Nadv 表示对抗样本的数量。 (3)防御成功率(DSR):DSR = Ndef /Nadv ,其中Ndef表示防御后目标模型正确分类的对抗样本数量。直观上,防御成功率越高,表明防御越有效。
- RQ1: Effectiveness
- Defense Results against Various Attacks
结果::在所有情况下,NIP 都显着提高了模型对对抗性攻击的分类。在图4中,几乎所有NIP的DSR都是最高的。表3中几乎所有NIP的p值都小于0.05。这主要是因为它可以通过增强前部神经元并削弱被攻击利用的尾部神经元来减轻甚至抵消对抗性扰动的影响。
无论攻击类型或图像规模如何,NIP 在各种对抗性攻击中都表现出更稳定的防御性能。
- Defense Impact on Benign Examples
由于一些现有的防御措施会损害良性示例的准确性,因此在这一部分中我们重点关注 NIP 对良性示例,即防御后的分类准确性。结果如表 4 所示。较高的准确度表明对良性示例的负面影响较小。
结果:从表 4 中可以看出,NIP 在大多数情况下实现了最高的良性准确性。8个中5个占据第一,2个占据第二。这表明NIP在完成有效防御的同时几乎没有牺牲良性准确性。我们认为一些良性例子的错误分类主要是由于神经元的同等重要性造成的。
2. RQ2: Elasticity
在报告结果时,我们关注不同扰动大小的防御弹性。
结果:在所有扰动中,NIP 在防御效果上表现出比基线更强的鲁棒性。例如,图5中橙色线最高。随着扰动大小的增加,可以观察到NIP的DSR略有下降。这主要是因为NIP可以通过自适应放大逆扰动大小来减轻和消除不同大小的对抗性扰动。这很好地证明了重分类前适应性的有效性。
3.RQ3: Efficiency
在这一部分中,我们比较了 NIP 和反应基线之间的防御时间。
结果:从表 5 可以看出,NIP 的运行时间是可以接受的,尤其是在像 a-ImageNet 这样的大型数据集上。
4. RQ4: Extensibility
- On Speaker Recognition Models
结果:图6中无论是针对特定音频还是针对特定图像的防御方法,NIP 在 VCTK 数据集上都实现了更高的 DSR(平均 95%),优于其他防御基线。
- On Online Platforms
结果: NIP对动物和植物识别的DSR分别为97.20%和93.00%。我们的实验结果表明,NIP 在应用于在线图像分类平台时是有效的。我们还可以得出结论,在模型对防御者来说仍然是黑匣子的现实场景中,NIP 仍然可以通过训练本地替代模型来发挥作用。
5. Parameter Sensitivity Analysis
- k
k1和k2是两个超参数,分别负责选择前部和尾部神经元。结果如图7所示。随着k1和k2的增加,DSR呈现上升趋势。当k1和k2大于5时,DSR保持稳定(大约100%)。控制更多的前部和尾部神经元将导致更多类相关像素的增强并抵消更多扰动的像素。因此,DSR 在此过程中增加。当k1和k2设置大于5时,对正确分类起决定性作用的神经元几乎被考虑在内,因此DSR保持稳定。必须指出的是,当 k1 或 k2 设置为 0 时,NIP 仍然表现出相当大的 DSR(超过 80%)。
- chosen layer
选择层的策略可能很棘手,因此我们改变每个目标模型的层来研究所选层的影响。针对 PGD 的实验结果如图 8 所示。正如所观察到的,DSR 随着所选层的加深而增加。当选择卷积层和密集层之间的层(即 VGG19 中的扁平层和 MobileNetV1 中的 GAP 层)时,它达到最高(大约 100%)。这是因为这些层包含像素和高维特征,其中神经元更适合计算神经元影响。当选择最后一层时,DSR 不再增加。我们推测原因是在选择flatten和GAP层时几乎考虑了所有关于分类的信息,因此前部和尾部神经元几乎已经确定。随着所选层的加深,DSR 几乎没有变化。
- candidate ratio η
η 衡量 NIP 候选数量占未知输入数量的百分比。我们计算了不同 η 下 PGD 和 PWA 的 1,000 个对抗样本的 DSR。考虑到不理想的情况,我们将最坏情况下的 η 设置为 1%。这意味着训练数据集中只有 10 个良性示例可供防御者使用。结果如图9所示。NIP候选的数量对防御结果影响很小,例如,即使当η为1%时,DSR也在82%左右。这很好地表明只有少量的逆扰动可以覆盖各种对抗性例子。此外,DSR随着η的增大而略有增大。此外,当η=30%时,可以实现较高的DSR(约95%)和较少的NIP候选,满足应用中效率和有效性的需要。