Page 190 - 《软件学报》2021年第11期
P. 190

3516                                Journal of Software  软件学报 Vol.32, No.11, November 2021

                 点很少,但相对明显.此外,由于限制了修改像素的数量,因此在攻击高分辨率图像时,无法获得较好的效果.
                    然而,上述方法在迭代过程中都需要进行大量的交互查询.由于没有探索梯度分布的内在联系,每次更新都
                 需要通过随机采样来拟合损失函数的梯度方向,因此效率相对较低,难以实际应用.针对于此,本文基于自适应
                 进化策略,提出了一种高效的黑盒攻击方法,利用协方差矩阵迭代学习损失函数梯度方向的分布信息,寻找较优
                 的搜索路径,更有效地生成扰动向量进行攻击.
                 1.3   注意力机制
                    Zhou 等人 [35] 首先发现:深度神经网络不仅在图像分类任务上有着优秀的表现,同时还能判定图像中的关键
                 区域,并将量化的结果定义为类间激活热力图(class activation mapping,简称 CAM).该方法先对神经网络卷积计
                 算得到的特征层进行加权求和,再上采样到图像空间,即可观察到神经网络的关注区域.Ramprasaath 等人                              [36] 提
                 出了基于梯度的类间激活热力图方法(gradient-based class activation mapping,简称 grad-CAM),将权重的计算方
                 式更改为梯度的全局平均值,更灵活地应用于各类网络结构.
                    考虑到图像关键区域对神经网络的决策有着重要的影响,Liu 等人                     [37] 提出了基于视觉敏感机制的对抗攻击
                 方法(perceptual-sensitive GAN,简称 PS-GAN).该方法结合注意力机制,计算目标模型对图像最关注的一小块区
                 域,然后利用生成对抗网络在该区域内生成扰动图案进行攻击,同时加入优化函数进行约束,减小生成图案与背
                 景的差异,降低视觉的敏感性,成功欺骗了多种类型的神经网络.与 PS-GAN 方法限制扰动区域的思路不同,本文
                 方法重点探索注意力机制与扰动密度分布的内在联系,先按神经网络的关注程度将图像进行分组,再依次压缩
                 各组的冗余信息,从整体上减小对抗样本的扰动幅度,增强对抗样本隐蔽性.

                 2    基于进化策略的黑盒对抗攻击方法

                    本节对基于进化策略和注意力机制的黑盒对抗攻击算法进行介绍.其中,第 2.1 节详细阐述基于协方差矩
                 阵自适应进化策略的黑盒攻击方法的原理;第 2.2 节针对相关黑盒攻击中扰动幅度较大的缺陷,介绍基于注意
                 力机制的对抗样本压缩优化方法.

                 2.1   基于协方差矩阵自适应进化策略的攻击方法
                    由于深度神经网络的设计结构和模型参数的不可知性约束,攻击者无法直接利用梯度信息来生成对抗样
                 本.本文提出了基于协方差矩阵自适应进化策略                [38] 的攻击方法(covariance matrix adaptation evolution strategy
                 based adversarial attack method,简称 ES-Attack),可以在黑盒场景下高效率地拟合模型梯度方向进行攻击.
                    黑盒对抗攻击方法 ES-Attack 的流程如算法 1 所示.
                    算法 1.  基于协方差矩阵自适应进化策略的攻击方法.
                                                           n
                    输入:深度神经网络模型 f,损失函数 L,图像 x∈R ,最大迭代次数 T,采样数量 M,目标标签 y   ,标准差参数σ,
                         扰动幅度ε,步长α.
                    输出:扰动数据δ,对抗样本 ˆ x .
                                                          m
                    初始化 x 0 ←x,搜索路径 p 0 ←0,协方差矩阵 C 0 ←I ,向量集合 U←∅,Z←∅.
                    1.   while t≤T and  f x ≠     do
                                      ˆ ()
                                          y
                    2.      U←∅, Z←∅
                    3.      for i=1 to M do
                                  2
                    4.         z i ~N(0,σ C t )       //基于协方差矩阵随机采样
                                         n
                                                                        n
                    5.         u i ←Upsample(z i ,R )  //将向量 z i 上采样至 R 空间
                    6.         U←U∪u i , Z←Z∪z i
                    7.      end for
                    8.      g ←  Gradient (, , )x U y    //估计损失函数的梯度方向
                           t          t
                    9.      ˆ x ←  Clip  , x ε (x +  t  α  g ⋅  t  / || g t  ||)  //结合约束更新对抗样本
   185   186   187   188   189   190   191   192   193   194   195