本地搜索攻击算法详解——DNN的黑盒对抗性扰动方法

基于对抗的测试输入生成方法是从机器学习和深度学习的角度入手,通过向原始样本添加微小扰动的方式产生对抗样本,使DNN系统进行错误分类。其又分为白盒、灰盒和黑盒攻击,顾名思义,黑盒攻击就是在无法获取模型内部结构信息的情况下,仅通过模型的输入输出来生成对抗样本。本次讲解黑盒攻击的一个经典代表算法——本地搜索攻击算法(论文:《Simple Black-Box Adversarial Perturbations for Deep Networks》)

主要内容:

这篇论文提出的对抗性攻击将网络视为黑匣子,即仅能获取输入输出信息而没有网络内部信息。主要贡献有以下几点:

  1. 随机扰动单个像素对模型预测带来的影响:随机选择像素进行扰动即可为模型生成对抗图像,但扰动图像的像素值可能超出某个预期范围。

  2. 提出基于局部搜索的像素选择方法:通过了解几个像素对输出的影响大小,将其用于更新当前图像。

  3. 只需扰动一小部分像素即可生成对抗性示例:如在 ImageNet1000 上,平均每张图片只需扰动约 0.5% 的像素。

  4. 分类错误扩展到了k-错误分类:定义了k-错误分类的概念,而非传统的k=1的简单情况。(这一点在下面说明)

首先明确对抗目标:扰动后使得模型错误分类。

本文的错误分类概念并非传统的【不同于图像原本的分类标签】,而是定义了一个k-错误分类的概念,即扰动后的图像分类预测结果要在原图像分类预测结果的至少k个其他标签以外。例如:原图I预测结果为[香蕉0.9,橘子0.8,苹果0.7,梨0.6,葡萄0.5],传统的界定方式只需要扰动后的图像I'预测结果不为香蕉即可(即k=1),而本文如果设定k=3,则需要扰动后的预测结果不能为[香蕉,橘子,苹果]。

公式定义就是,其中c(I)为真标签,NN(I)为模型输出的标签。

这种界定方式可以使对抗性示例具有更强的影响效果。

而我们所要获得的扰动后的图像ADV(I),则就是满足

下面讲解local-search算法:

这是一种启发式方法,通过在图像空间上进行贪心局部搜索,每次找到需要扰动的像素集合,再对这些像素进行扰动,得到扰动后的图片。算法流程如下:

  1. 首先是几个初始定义:原始图像I、I的真标签c(I)、目标神经网络NN、算法过程中生成的图像、函数f。其中表示NN预测的属于分类c(I)的概率。

  2. 扰动哪些位置呢?这需要定义邻域图像:设为第i-1轮的图像,则定义邻域图像为与仅有一个像素不同的图像。所有这些邻域图像组合在一起形成邻域图像集,这组图像用被扰动的像素位置集合来表示:。其中,i表示第i轮,初始的是随机生成的,之后的每一轮都基于前一轮的被扰动的那组像素来进行扰动。

    那么扰动范围是什么?对于每个像素,在以它为中心展开的一个小正方形内进行扰动:

    用公式来看就是:当前轮次的邻域图像集=

    其中,代表上一轮(第i-1轮)受扰动的像素位置。

  3. 怎么扰动呢?这需要定义像素位置变换函数,其中t定义扰动多少个像素,p和r为扰动参数(后面再讲解)。g的输出为扰动后的新图像和一组位置,这组位置用于记录这轮被扰动的像素。即

    那么g在第i轮是如何执行转换的?初始,g根据构造一组扰动图像(使用PERT函数进行扰动。这个函数的意思大致就是只改变了临界像素的值。临界像素就是可以让网络错误分类的像素),然后计算中每张图的概率分数,根据这个概率分数将排序,得到sorted(),其中前t个图所扰动的一共t个像素点就是我们要找的像素点。因此,将这些像素点集合起来作为,然后下张图就用r来扰动它们(使用CYCLIC算法。这个算法主要就是让扰动后的像素值介于所限定的大小范围[LB,UB]间,这就是前面贡献中的第一条)。

    而下一轮开始的像素点就根据获得小正方形区域的范围集合,构造下一轮的扰动图像......直到达到k-错误分类的标准(找到对抗图像)或达到运行轮次上限。

以上就是整个LOCSEARCHADV(NN)算法的主要流程。注意,算法的Output为“是否找到对抗图像”,即True/False。

回到上面说的p和r的选择上,r的值规定在[0,2]间,p的值在搜索过程中根据当前分类概率动态调整(p是用来计算PERT函数的,这里就不讲这么细了)。

另外,后面实验部分还有提到一点:为了避免频繁扰动最敏感的像素,如果某个像素在一轮中受到扰动,作者将其排除在接下来 30 轮的考虑范围之外。

总结:

local-search算法从像素点层面扰动图像生成对抗性示例,在搜索过程中实时考虑了每个像素点对模型预测结果的影响大小,也是一种像素点“意义”的利用。这个循环扰动的过程是可以用到我们自己的论文方法中的。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部