几张贴纸就让神经网络看不懂道路标志,伯克利为真实环境生成对抗样本

因为感知细节的能力和识别方式等方面的差异,在人类眼中看起来差别不大的东西在机器看来则可能具有非常不同的意义。近日,伯克利人工智能研究实验室(BAIR)在博客上介绍了他们在真实世界中的对抗攻击上的研究新成果,有望为自动驾驶等人工智能应用领域带来新的思考和见解。该研究的论文已经发布:https://arxiv.org/abs/1707.08945,研究者还表示进一步的研究也正在进行中。

深度神经网络(DNN)已经在图像处理、文本分析和语音识别等各种应用领域取得了很大的进展。DNN 也是很多网络与实体相连接的系统(cyber-physical system)的重要组成部分。比如说,自动驾驶汽车的视觉系统可以利用 DNN 来更好地识别行人、车辆和道路标志。但是,近来的研究表明 DNN 容易受到对抗样本(adversarial example)的影响:在输入中加入精心设计的对抗扰动(adversarial perturbation)可以误导目标 DNN,使其在运行中给该输入加标签时出错。当在实际世界中应用 DNN 时,这样的对抗样本就会带来安全问题。比如,加上了对抗扰动的输入可以误导自动驾驶汽车的感知系统,使其在分类道路标志时出错,从而可能造成灾难性的后果。

 

研究者已经提出了一些用于生成和防御对抗样本的技术。在这篇博客文章中,我们将简要介绍当前最佳的用于生成数字对抗样本的算法,还将讨论我们用于在变化的环境条件下基于真实物体生成实体对抗样本的算法。未来我们还将继续更新我们在针对物体检测器的实体对抗样本上的研究工作。

数字对抗样本

 

研究者们已经提出了一些用于在白盒设置(white-box setting)中生成对抗样本的不同方法,其中对抗者能够完全读取访问该 DNN。白盒设置假设对抗者很强大,所以基于其进行研究有助于为未来开发绝对可靠的防御技术奠定基础。这些方法能帮助我们更好地理解数字对抗样本。

 

Goodfellow 等人提出了快速梯度(fast gradient)方法,该方法应用了损失函数的一种一阶近似来构建对抗样本;参阅:https://arxiv.org/abs/1412.6572

 

也有研究者提出了基于优化的方法来为目标攻击创建对抗扰动;参阅:https://arxiv.org/abs/1608.04644。具体来说,这些攻击会设计构建一个目标函数,该函数的解是为了最大化输入的真实标签与攻击者想要的目标标签之间的差异,同时基于某种输入相似度的定义来最小化这些输入之间的差异。在计算机视觉分类问题中,输入向量的 L2 范数是一种常见的度量标准。通常而言,L2 距离低的输入彼此之间更为接近。因此,我们有可能计算出这样的输入——它们在人眼看来非常接近,但对机器分类器而言却非常不同。

 

近来的一项研究成果检查了数字对抗样本的黑盒迁移性(black-box transferability),表明在黑盒设置中生成对抗样本也是可能的;参阅:https://arxiv.org/abs/1605.07277。这些技术涉及到以白盒的方式为另一个已知模型生成对抗样本,然后再运行它们来对抗未知的目标模型。

实体对抗样本

 

为了更好地理解这些薄弱之处,研究者对对抗样本影响部署在实际世界中的 DNN 的可能方式进行了广泛的研究。

 

Kurakin 等人的研究表明当使用智能手机摄像头观察打印出来的对抗样本时,这些样本可能会被错误地分类;参阅:https://arxiv.org/abs/1607.02533。Sharif 等人通过在眼镜框中打印对抗扰动而攻击了人脸识别系统;参阅:https://www.cs.cmu.edu/~sbhagava/papers/face-rec-ccs16.pdf。他们的研究表明:仅需在姿势、相机的距离/角度、光照等条件上加上很小的变化,就可以在相对稳定的实体环境中成功进行实体攻击。这是个很有趣的结果,帮助我们更好地理解了稳定环境中的实体样本。

 

我们近期的研究《对深度学习模型的稳健的实体世界攻击(Robust physical-world attacks on deep learning models)》则展示了针对分类器的实体攻击。理所当然,接下来我们又攻击了物体检测器。这些计算机视觉算法可以识别场景中的相关物体以及预测得到指出了这些物体的位置和种类的边界框。与分类器相比,检测器更难欺骗,因为它们会处理整张图像并且可以在预测中使用背景信息(比如目标物体在场景中的方向和位置)。

 

我们演示了针对 YOLO 检测器的实体对抗样本。YOLO 检测器是一种流行的算法,具有优良的实时性表现。我们的样本采用了贴纸扰动的形式,应用在真实的「停止」标志上。下图给出了我们的实体对抗扰动示例。


通过录制视频来测试检测表现,我们还执行了动态测试。可以在视频中看到,YOLO 网络在几乎所有帧中都无法感知识别出「停止」标志。如果一辆真实的自动驾驶汽车在具有这样的对抗式「停止」标志的道路上行驶,它就无法看到这种「停止」标志,从而有可能造成交叉路口撞车事故。我们创造的这种扰动很稳健,不受距离和角度影响——这两者是自动驾驶场景中最常见的变化因素。

 

更有趣的是,为 YOLO 检测器生成的实体对抗样本也可以骗过标准的 Faster-RCNN。我们的演示视频包含了一次实体对抗样本在 Faster-RCNN 上的动态测试。因为这是针对 Faster-RCNN 的黑盒攻击,所以没有 YOLO 案例那么成功。当然,这个结果是可以预见的。但我们也相信再多使用一些额外的技术(比如集成训练)可以让这种黑盒攻击更有效。此外,针对对 Faster-RCNN 的攻击进行具体优化也能得到更好的结果。我们目前正在撰写一篇更详细地探索这些攻击的论文。下图给出了 Faster-RCNN 无法感知识别「停止」标志的示例。


在这两个案例中(YOLO 和 Faster-RCNN),只有当相机非常靠近「停止」标志时才会进行检测(大约相距 3 到 4 英尺)。在真实情况下,这个距离对汽车而言太近了,根本无法采取有效的补救措施。请关注我们即将发布的论文,其中包含了有关该算法的更多细节以及针对当前最佳的物体检测器的实体扰动的结果。

 

攻击算法概述

 

这个算法基于我们在攻击分类器方面的早期研究。根本上而言,我们采用了一种优化方法来生成对抗样本。但是,我们的实验经验表明:与欺骗分类器所需的条件相比,为检测器生成稳健的实体对抗样本需要模拟更大规模的变化的实体环境。这很可能是因为检测器在生成预测时会考虑远远更多的背景信息。该算法的关键特性包括:可以指定实体环境模拟的序列,以及可以指定平移不变性(translation invariance)属性。也就是说,不管目标物体位于场景中的什么位置,扰动都应该有效。因为物体的位置可能会因观看者的情况而自由变化,所以如果不针对这种性质进行优化,扰动就可能会在物体移动时失效。我们即将发布的围绕这一主题的论文将会包含有关该算法的更多细节。

潜在的防御方法

 

因为在数字世界和实体世界中都存在这种对抗样本,所以潜在的防御方法也得到了广泛的研究。在这些方法中,不同类型的对抗训练方法是最有效的。Goodfellow 等人最早提出将对抗训练用于有效地提升 DNN 的稳健性从,参阅《学界 | OpenAI 探讨人工智能安全:用对抗样本攻击机器学习》。Tramèr 等人则将其延展成了集成对抗学习(ensemble adversarial learning),参阅:https://arxiv.org/abs/1705.07204。Madry 等人还提出通过使用对抗样本进行迭代式的训练来得到稳健的网络,参阅:https://pdfs.semanticscholar.org/bcf1/1c7b9f4e155c0437958332507b0eaa44a12a.pdf。要执行基于对抗训练的防御,需要大量对抗样本。此外,在集成训练上的研究(https://arxiv.org/abs/1705.07204)表明如果对抗样本来自于不同的模型,那么这些对抗样本能使防御更为稳健。集成对抗训练的优势是增加对抗样本的多样性,使得模型可以完整地探索对抗样本空间。当然也还有其它类型的防御方法存在,但 Carlini 和 Wagner 的研究表明其它那些已有的防御方法在面对自适应攻击时都不够稳健;参阅:http://nicholas.carlini.com/papers/2017_aisec_breakingdetection.pdf

 

总的来说,我们还远未找到针对这些对抗样本的最优防御策略,我们期待对这一激动人心的研究领域的探索。

 

演示视频

 

  • 针对 YOLO 的实体对抗贴纸扰动:https://www.youtube.com/watch?v=gkKyBmULVvM
  • 针对 YOLO 的实体对抗样本:https://www.youtube.com/watch?v=zSFZyzHdTO0
  • 将为 YOLO 生成的实体对抗样本进行黑盒迁移,用在 Faster RCNN 上:https://www.youtube.com/watch?v=_ynduxh4uww

原文链接:http://bair.berkeley.edu/blog/2017/12/30/yolo-attack/

理论CMU对抗样本应用自动驾驶
返回顶部