前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >提高对抗性迁移能力,通过基于神经元归属的攻击方法(CVPR 2022)

提高对抗性迁移能力,通过基于神经元归属的攻击方法(CVPR 2022)

作者头像
CV君
发布2022-09-01 10:09:40
4390
发布2022-09-01 10:09:40
举报

关注公众号,发现CV技术之美

本篇文章分享 CVPR 2022 论文『Improving Adversarial Transferability via Neuron Attribution-Based Attacks』,通过基于神经元归属的攻击提高对抗性迁移能力。

详细信息如下:

  • 论文链接:https://arxiv.org/abs/2204.00008
  • 项目链接:https://github.com/jpzhang1810/NAA

01

引言

该论文是关于对抗样本可迁移性攻击的文章。现有的特征级攻击通常会采用不准确的神经元重要性估计,这样会降低了对抗样本的可迁移性。在该论文中,作者提出了基于的神经元属性的对抗攻击,它通过更准确的神经元重要性估计来进行特征级攻击。

首先将模型的输出完全归因于中间层的每个神经元。然后,作者推导了神经元属性的近似方案,以极大地减少计算开销。最后,根据神经元的属性结果对神经元进行加权,并发起特征级攻击。实验结果也证实了论文中方法优越性。论文的代码已经开源。

02

论文方法

特征级别的攻击在生成对抗样本的过程中会破坏掉积极的特征从而扩大消极的特征。因此,由特征级别生成的对抗样本可有继承误导其它深度学习模型的高迁移性特征。特征级别攻击的关键在于找到一个合适的方式去度量每一个神经元的重要程度。在该论文中作者引入了一个度量神经元重要程度的度量方式,名为神经元属性,此外作者还基于神经元重要程度提出了基于神经元属性的攻击方式。

令为干净样本,它对应的真实标签为。为一个分类模型,则表示为的输出。表示第层的激活值,其中表示在这个特征图中第个神经单元的激活值。表示对抗样本,且有,其中表示范数,为对抗扰动。 给定一个基准图像,作者可以定义输入图片的属性为

A:=\sum\limits_{i=1}^{N^2}(x_i-x^{\prime}_i)\int_0^1\frac{\partial F}{\partial x_i}(x^{\prime}+\alpha(x-x^{\prime}))d\alpha

其中表示关于第个像素的偏导数。上公式说明的梯度是沿着给定的直线路径进行积分的。根据路径积分的微积分基本定理可以得到,只有当时,会有,即是一张全黑图像,上述结论成立。 令,则第层的第个神经元的属性为

A_{y_j}=\sum\limits_{i=1}^{N^2}(x_i-x_i^{\prime})\int^1_0\frac{\partial F}{\partial y_j}(y(x_\alpha))\frac{\partial y_j}{\partial x_i}(x_\alpha)d\alpha

其中在选定每一层都成立。因此,神经元属性反映了每个神经元到输出真实的影响。为了实际中复杂的积分计算,作者在直线路径中采样了个虚拟样本,并使用黎曼加和去估计该积分,然后改变加和的顺序则有:

A_{y_j}\approx \frac{1}{n}\sum\limits_{m=1}^n\left(\frac{\partial F}{\partial y_j}(y(x_m))\right)\left(\sum\limits_{i=1}^{N^2}(x_i-x^{\prime}_i)\frac{\partial y_j}{\partial x_i}(x_m)\right)

其中是路径上虚拟的图像。 考虑到神经网络中神经元的数量非常大,所以计算成本会非常高,为了降低计算复杂度,作者在上公式中做了一个简单的假设进而简化公式。一开始时,是关于的梯度,同时是关于每个像素梯度的加和,作者假定这两个梯度是线性独立的。 

给定两个相互独立的序列和,则有,其中表示的是序列均值。进一步则有,,可以将以上公式的两个大括号分别看成和,于是可以得到如下公式

A_{y_j}\approx \frac{1}{n}\sum\limits_{m=1}^n\frac{\partial F}{\partial y_j}(y(x_m))\frac{1}{n}\sum\limits_{m=1}^n\sum\limits_{i=1}^{N^2}(x_i-x_i^{\prime})\frac{\partial y_j}{\partial x_i}(x_m)

根据路径积分的基本定理可知

\frac{1}{n}\sum\limits_{m=1}^n\sum\limits_{i=1}^{N^2}(x_i-x^\prime_i)\frac{\partial y_j}{\partial x_i}(x_m)=(y_j-y^{\prime})

其中是第个神经元的激活值,其此时输入的图像是黑色图像。令为,并且被看做融合注意力,一个简单的形式为。反映了从基准图像到输入的直线上梯度的积分与神经元的关系。

综上所述可以发现,原本神经元属性的计算复杂度为,其中是目标层的高,是目标层的宽,是目标层通道数,而作者提出的方法计算复杂度为,在每一个梯度整合的步骤中只需要一个梯度操作,如果不进行简化,则在每一个步骤中则需要进行1百万次梯度操作;因此可知论文中的简化方法大大降低了计算复杂度。考虑第层所有神经元属性的计算公式为

A_y=\sum\limits_{y_j\in y}A_{y_j}=\sum\limits_{y_j\in y}\Delta y_j \cdot IA(y_j)=(y-y^{\prime})\cdot IA(y)

生成对抗样本的过程中有用的特征被抑制,有害的特征则会被放大。为了分析这两种特征的影响,作者试图找出哪一种特征主导了对抗样本的可迁移性,利用一个超参数来平衡正面和负面属性,此外,作者还区分不同值的神经元属性的显著程度。

例如,当调查减少一个大的积极属性神经元是否比增加一个小的消极属性神经元更有利于攻击。为此,作者设计了多个线性或非线性变换函数,即,用于积极的神经元属性和用消极神经元属性。因此,目标层上所有神经元的加权属性可以被计算为

WA_y=\sum\limits_{A_{y_j}\ge 0,y_j\in y}f_p(A_{y_j})-\gamma\cdot\sum\limits_{A_{y_j}<0,y_j\in y}f_n(-A_{y_j})

最小化目标函数是要比直接最小化函数要好,因为同时考虑了神经元极性和数值两方面。因此优化目标可以整理为如下所示:

\min\limits_{x^{\mathrm{adv}}}WA_y \quad \mathrm{s.t.}\text{ }\|x-x^{\mathrm{adv}}\|_{\infty}<\varepsilon

其中作者利用动量迭代的方法去求解以上优化问题,具体的算法流程图如下所示:

03

实验结果

如下表所示为论文中的方法与与baseline方法在无防御模型,对抗训练模型和加载防御模型的分别在白盒和黑盒条件下的攻击效果。可以发现在白盒条件下,论文中的方法的攻击成功率接近100%;在黑盒条件下,该方法也比其它的方法有更高的攻击迁移率。

另外作者还比较了带输入变换的攻击方法的效果,其中输入变换方法分别是PIM和DIM。如下表所示为带输入变换的不同的攻击方法在无防御模型,对抗训练模型和加载防御模型的分别在白盒和黑盒条件下的攻击效果。可以发现在黑盒条件下,论文中方法比其它的方法有更高的攻击迁移率。

如下图所示为消融实验的实验结果,作者主要分析了目标特征层,积分步数和权重系数对迁移攻击成功率的影响。右下图的结果可知,对于不同的目标特征层可以发现,中间的目标特征层的迁移攻击成功率最高,说明中间特征层的特征对迁移攻击成功率有更大的影响。对于积分步数来说,当时可以达到最好的效果。对于权重系数来说,可以发现当时,迁移攻击成功率达到最优的效果,由此可知,正面特征和负面特征同等重要。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 我爱计算机视觉 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档