之前的文章对于对抗样本有过一个简单的介绍,除了概念、原理的部分内容之外还有一些早期的相关研究工作;在这里更加具体一些,来看一看相关顶会论文对于这一块的研究工作。
对抗样本主要分为两个级别上的:1、像素级别上的;2、单独对抗块级别上的。这里主要关注一下对抗块级别相关的研究工作。
人工智能这么火,越火越代表安全这一块的严重性,因为他的应用确实比较广而且非常贴合实际、影响性大:人脸识别、监控摄像头、自动驾驶的路标识别及恶意文档/软件等等;
对抗样本的攻防,也是一个道高一尺魔高一丈的一个不断迭代的过程,相对鲁棒的攻防基本都是不存在的,大多都是应用在一个特定的领域方向。
对于攻:大多集中在测试阶段的一个样本上的改变,不论是像素级别还是对抗块的;其实也可以在训练阶段加上对抗样本对最终模型进行扰乱。
对于防:包括训练阶段增加对抗样本提高鲁棒性;更改原网络模型结构使其可以自身鉴别对抗样本;以及在原有网络模型基础之上附加新的网络模型进行过滤筛除等等多个方向。
下面具体来看一下相关论文的研究工作:
1.‘Adversarial Patch’ ,这是谷歌于CVPR17上发表的一篇论文,是相对比较早的关于对抗快攻击方向的,其最终效果如图:
生成的这个对抗块加到原有图像上,使原有分类模型分类错误,如上原有识别为banana的概率为1,加了块之后识别为toaster的概率接近为1。
其实他的整个训练对抗快的过程也是非常简单的,仅仅是对于一个loss值得设置上,做了一个转变:
将你想要模型最终识别为一个什么效果,最为一个最终得期望,比如说原图片是一个猫,你非得想让他识别为一个狗,那么这个狗就是你的目标,就是上面公式里面得y^,使其期望最大化