本工作提出了一种高效的基于决策的黑盒对抗攻击算法,在业内第一次以完全黑盒的方式成功地实现对人脸识别系统的对抗攻击。本工作由腾讯 AI Lab 主导,与清华大学,香港科技大学联合完成,发表于 CVPR 2019。
背景
在图 1 示例中,我们用同样的一个人脸识别模型(Arcface [1])对两幅看起来一模一样的人脸图像进行识别,但是得到了完全不同的两个识别结果。这是为什么呢?原因是右图的人脸区域被加上了人眼无法察觉的恶意噪声,专门用于欺骗人脸识别模型。这种现象叫做对抗样本,即针对某种特定的模型(例如图像分类模型 ResNet [2]),在正常样本(例如 2D 图像,3D 点云等)上加入微小的噪声,使得模型原来的结果发生改变。
▲ 图1. 对抗样本示例:(左)正常人脸图像;(右)对抗人脸图像。
以上图像来自于视频:https://www.youtube.com/watch?v=d7hZ1VhfygU&t=76s
对抗样本现象揭示了机器学习模型尤其是深度学习模型的安全漏洞,近年来引起了学术界和工业界的广泛关注。研究人员已经开发了针对深度学习模型的诸多对抗攻击算法,最常见的例如 FGSM [3], PGD [4], C&W [5] 等。但是,这些方法都要求获取被攻击模型的全部结构和参数,这种攻击场景被称作白盒攻击。
但是在现实场景下,攻击者是很难获取被攻击模型的参数甚至结构的,只能够获取被攻击模型的输入结果。这种攻击场景被称为黑盒攻击。根据所获取模型输出的类型,又可细分为1)基于分数的黑盒攻击,即能够获取模型输出的后验概率或者分数(例如人脸比对的相似度分数),2)基于决策的黑盒攻击,即只能获取模型输出的离散类别。很显然,离散类别提供的关于模型的信息更少,基于决策的黑盒攻击难度也最大。相对于白盒攻击算法,基于决策的黑盒攻击算法非常少,而且攻击效率不高。
针对这个难题,我们提出了一种新的搜索算法,充分利用了模型决策边界的几何结构和进化算法思想 [6],大大提高了攻击效率。
针对人脸比对模型的攻击问题建模
我们将人脸比对模型表示为,其中
;
表示参考人脸图像,x 表示目标人脸图像;
的作用是判断 x 和
是否为同一个人,如果相同,则返回 1,否则返回 0。
我们的攻击任务是在目标人脸图像 x 的基础上构造一个对抗人脸图像 ,使得其与参考人脸图像
的比对结果发生改变(即
),同时使得
与 x 的视觉差异尽量小。该任务可以建模为以下优化问题: