论文那些事—Meta Gradient Adversarial Attack

Meta Gradient Adversarial Attack(ICCV2021,MGAA)

 

1、摘要

受元学习思想的启发,本文提出了一种新的体系结构元梯度对抗攻击(Meta Gradient Adversarial Attack, MGAA)是一种即插即用的攻击方法,可以与现有的任何一种基于梯度的攻击方法集成,以提高跨模型的可移动性。具体来说,从一个模型集合中随机抽样多个模型来组成不同的任务,并在每个任务中分别模拟白盒攻击(选取多个模型)和一个黑盒攻击(只有一个模型)。通过缩小白盒攻击和黑盒攻击的梯度方向之间的差距,可以提高对抗样本对黑盒设置的转移能力。

主要贡献有三点:

  1. 提出一种新的对抗样本生成方法。
  2. 可以与任何现有的基于梯度的攻击方法相结合。
  3. 显著提高对抗样本的迁移性。

元学习希望使得模型获取一种学会学习调参的能力,使其可以在获取已有知识的基础上快速学习新的任务。机器学习是先人为调参,之后直接训练特定任务下深度模型。元学习则是先通过其它的任务训练出一个较好的超参数,然后再对特定任务进行训练。

元学习分为两个阶段,阶段一是训练任务训练(元训练);阶段二为测试任务训练(元测试)。对应于一些论文的算法流程图,训练任务是在outer loop里,测试任务任务是在inner loop里。

2、MGAA原理

论文那些事—Meta Gradient Adversarial Attack_第1张图片

 讲一下大致流程,首先有一堆Model Zoo,设置外层循环迭代次数为T,每一次迭代都是一次元学习。取其中一个迭代细化,在Model Zoo里随机取6个模型,将其中5个定义为训练模型,1个为测试模型,在每一次外层循环都随机取6个模型。蓝色区域就是进行K次迭代生成对抗样本,最后将生成的对抗样本放入测试模型再得到一个对抗样本,然后用测试模型生成的对抗样本减去训练模型中最后一次生成的对抗样本得到扰动,添加到最初输入的图片中,也就是最下面那个公式。(本实验中参数的选取是经过实验的结果)

Meta-train(对应蓝色区域):

首先从N个模型中随机采样n+1个模型,然后计算n个模型的交叉熵损失:

 与基于梯度的攻击的常用方法相同,对抗性样本沿损失函数最大化的方向更新:

 元训练步骤可以迭代K次,下标 j 表示元训练步骤中的迭代次数。

Meta-test(对应绿色区域):

在使用多个模型的集合来模拟白盒攻击之后,我们使用最后采样的模型 Mkn+1 在生成的对抗例xi,k的基础上模拟黑盒攻击。

首先用模型Mkn+1计算交叉熵损失:

 然后得到对抗样本:

 为了提高迁移性,将元测试步骤中获得的扰动添加到上一次迭代中生成的对抗性样本中,以更新对抗样本:

值得一提的是,n+1个模型不是真实测试场景中的黑盒模型。实际上,它只是一个模拟黑盒模型,通过迭代模拟白盒和黑盒攻击。

最终的算法流程图如下:

论文那些事—Meta Gradient Adversarial Attack_第2张图片

3、实验结果

论文那些事—Meta Gradient Adversarial Attack_第3张图片

4、总结 

一篇很好的文章,当你理解了元学习后,理解这篇文章就不难了,很有启发性,关于迁移性能的提升,现有的基于梯度的方法在白盒攻击时只关注梯度的更新,无法获取黑盒攻击的任何信息。相比之下,本文提出的架构迭代地模拟白盒攻击和黑盒攻击,并在每次迭代中约束这两种攻击的梯度方向相似。在迭代过程中,对模型集中的不同模型组合进行采样,以组成不同的任务,这有助于对抗样本在生成各种模型分布时访问它们。多次迭代后获得的对抗样本可能不是特定任务的最优样本,即偏向于任何现有的白盒模型,换句话说对白盒模型是“一视同仁”,但对于任何看不见的黑盒模型,它通常包含更好的迁移性。这解释了本文方法可以提高白盒和黑盒攻击的成功率。

你可能感兴趣的:(深度学习,人工智能)