本期一诺sec关注深度学习系统安全问题,推荐一篇来自ICML 2018会议论文Synthesizing Robust Adversarial Examples。论文链接http://proceedings.mlr.press/v80/athalye18b.html。
深度模型对于对抗样本具有高度的脆弱性,这已经是得到大家印证的事实。自从2016年以来,对深度学习模型的对抗样本攻击和防护的研究工作越来越多,光挂在Axiv上等待评审或发表的论文不下百篇。研究者中不乏生成对抗网络(GAN)之父Ian Goodfellow、Dawn Song等机器学习和安全领域的大佬。这篇来自ICML 2018上的工作:“Synthesizing Robust Adversarial Examples”,作者分别是Anish Athalye,Logan Engstrom,Andrew Ilyas和Kevin Kwok,来自MIT和LabSix。
一、论文的引入
所谓对抗样本,就是对深度学习器产生对抗输入的样本:例如对一个图像,添加一些细小的扰动使得分类器误分类,但是人肉眼却不能看出这些扰动,这样的样本就是对抗样本。对抗样本攻击就是针对深度学习器生成或者合成靠谱的(误分类成功率高的)对抗样本。研究对抗样本的合成是非常有意义的:一方面找到了对抗样本就验证了深度学习器的脆弱性,找到了他的死穴,可以搞些破坏;另一方面为如何防护对抗样本攻击提供了攻击场景和攻击模型。 论文作者之一Anish Athalye在接受QZ采访时表示,现在有很多使用机器学习的欺诈检测系统,如果能故意修改输入,让系统无法检测出欺诈交易,那么就可能造成财务损失。
以图像分类为例,大部分生成对抗样本的工作都是直接在已有的图像上添加噪声,然后直接送给分类器或者打印出来通过摄像头送给分类器。有工作证明[1],这样产生的对抗样本是不够鲁棒的,也就是说对物理世界分类器的攻击不管用!原因是什么呢?作者认为,物理世界中的摄像头是通过多种视角(viewpoint)来采集物体的图像,并且受到光照、摄像头本身的噪声等自然因素的影响,使得很多方法生成的对抗样本在经过这些影响(相当于小的变换)之后,失去了对抗的属性。
针对物理世界深度分类器进行鲁棒的对抗样本攻击的工作很少,已有的两个工作也是合成2D的对抗样本,本质上是通过原始图像上的仿射变换来“近似”多视角。但是,对物理世界摄像头看到的3D物体,要想保持合成样本的对抗属性,必须经过更复杂的变换:例如3维旋转。
针对上述挑战,该论文提出了一种通用框架,叫变换期望EOT(Expectation Over Transformation),这个框架可以在变换的整个分布上面保持对抗属性。基于这个框架,该论文专门讨论3D对抗样本的生成方法。最后,作者们真的用3D打印机打印了合成的3D对抗样本,并成功欺骗了一些深度学习器,证明了这种方式确实靠谱!
二、模型介绍
先来看看原来的对抗样本合成方式。在深度分类器的白盒假设下(分类器的预测分布和梯度都可以拿到),尝试利用原始样本来构造对抗样本,可以通过在距离原始图像为的球上,最大化目标类别的条件分布的对数似然函数:
这种方法构造的对抗样本已经被证实在物理世界的实验中是失败的。本文提出的变换期望EOT方法的主要思想是将物理世界的影响考虑到优化过程中去,而不是仅仅考虑样本。EOT假设变换函数采样自一个已知的分布(包括随机旋转、平移、加噪等,甚至包括纹理的3D渲染),期望通过变换作用之后,对抗样本和原始样本之间的距离的期望仍然比较小。在这个约束下,去最大化对数似然函数的期望,即:
具体优化方法采用的是随机梯度下降法,在每一次迭代中独立的采样变换来近似得到期望值的梯度。
紧接着,作者讨论了在EOT框架下合成2D和3D对抗样本的具体方法。打印一个合成的2D对抗样本并采集其图像的过程,等价于一系列随机变换,并且这种变换很容易求导,因此2D场景的问题很容易解决。为了合成3D对抗样本,论文提取现有3D物体的纹理(色谱)作为,然后选择一个变换函数,最后再渲染这个3D物体。变换函数包括渲染、光照、旋转、平移以及视角映射等。问题是EOT需要是可微的,当然这中渲染也可以通过来代替。在优化的过程中采用了LAB颜色空间中的距离来代替欧式距离,同时采用拉格朗日松弛形式,最终的优化目标是:
三、实验和评价
论文分别针对2D和3D对抗样本合成做了实验。攻击的目标是TensorFlow中的深度分类器Inception-V3,该分类器在ImageNet数据集上top-1的精确度是78%。评价指标采用的是对抗度(adversariality),即在测试集上生成的对抗样本有多少成功欺骗了InceptionV3分类器。
第一个结果是合成2D对抗样本。我们从上图可以看到,合成样本的平均对抗度达到了96.4%,效果还是非常不错的。例如,下图中第二行是生成的对应第一行的对抗样本,成功的让InceptionV3认为是食虫鸟,而不是波斯猫。
接下来是3D的情况。下图可以看到3D对抗样本也能达到83.4%的平均对抗度,虽然比2D有所下降但还是不错的。但是这个结果是通过合成的3D对抗样本,再渲染成2D图像送给分类器的。
如何说明物理世界的场景中本文提出的方法有效呢?最有意思的亮点来了:作者选取了两类物体(乌龟和篮球),采用3D打印机分别打印了一些不加噪声的原始3D物体,以及一部分合成的对抗性的3D物体,然后通过多视角分别提取100张照片送给InceptionV3分类器。结果发现InceptionV3对原始3D物体识别率是100%,但是对对抗样本攻击成功的对抗性还是很大的,特别是对乌龟类对抗性达到了82%,具体结果看下表。
(图中红色方框都是攻击成功的情景,InceptionV3将“乌龟”错误的分到了“步枪”类。)
四、总结
论文提出了一种通用的对抗样本合成框架,可以有效的应对虚拟世界到物理世界中各种因素的影响,达到了欺骗物理世界中深度学习分类器的目的。当然,笔者认为论文还是有很多局限性的,论文作者也做了一些讨论,例如要想使构造的对抗样本更鲁棒,就需要一个更大的给定变换分布,否则就不太管用了;但是另一方面,定变换分布越大,构造的样本与原始样本的差距越大,越难构造出“让人感觉不到”的对抗样本。总之,本论文不失为一篇针对物理模型的对抗样本攻击的佳作。
参考文献
[1] Lu, J., Sibai, H., Fabry, E., and Forsyth, D. No need to worry about adversarial examples in object detection in autonomous vehicles. 2017. URL https://arxiv. org/abs/1707.03501.
请关注公众号一诺sec,获取更多资讯!
一诺sec公众号由衷欢迎有兴趣的朋友积极投稿,展示才华,扩大自己及其团队的影响力。来稿以网络安全研究方面的内容为首选,各种科研相关的新闻、信息、评论,甚至文学作品,都非常欢迎。
欢迎将您的来稿或者建议发送至:
e_novel_security@126.com