疯读论文:Accessorize to a Crime: Real and Stealthy Attacks on State-of-the-Art Face Recognition
简介:
这篇文章主要介绍了对人脸识别系统的现实层面的攻击方法。从白盒digit全局攻击到白盒digit局部攻击到白盒现实局部攻击最后到黑盒攻击,从头到尾把人脸识别系统虐了个遍。尤其是现实层面的攻击给人眼前一亮的感觉。通过配戴眼镜来实现欺骗或者误导识别系统的功能。但是数据集有点“小”,只有10个分类,攻击起来方便一些,论文中也提到了分类数目多时会导致效果的下降。
论文内容比较多,挑几个亮眼的操作记录一下。
白盒现实局部攻击
通过配戴眼镜实现攻击,效果如图:
上左1和下左1是无目标的攻击,其余的上层是原始人物,下层是目标人物。攻击成功率达到了100%.后面以有目标攻击为例
在攻击时考虑了传统的loss,即让加入噪声后的预测与target尽可能接近
除此之外考虑到现实层次的攻击,相机的拍摄会使得像素变化平滑,从而将添加的噪声无形中消减一些。因此需要加入一个限定就是添加的噪声需要平滑(smooth)
最后由于打印机的色域比电子的色域窄,并且电子的与实际打印的效果不一致,因此又加入了对噪声色域的loss
综合考虑这三个loss最后得到训练的模型。
黑盒攻击
利用了粒子群算法进行了黑盒攻击。存在问题是:给定一个粒子,无法得到这个粒子对应的target也就无法得到最优值的方向。人脸识别系统给定一张图片输出三个分数从高到低的人物列表,因此如果目标人物没有在列表中时就无法得到对应的target。
提出的解决方案:
由于无法得到每一步的目标,那就以排名第二的作为目标去靠近,这样会使得x偏离现有的区域,迭代次数多了之后就总会有target出现在人物列表中。
总结
1现实层面的攻击的工作量还是比较大的。
2黑盒攻击用的是非深度的方法,似乎大部分文章都是这样做。
3感觉所谓的攻击深度网络就是耍流氓,NN是通过拟合数据来实现预测,是考虑整体的loss最小,不可避免的存在对个体的特征过拟合或者欠拟合的问题,而只要攻击到其中一个点就可以说攻击成功了。除非找到一种普适的噪声对所有样本都有效,这才是真正找到了一个网络的弱点。当然这种个体脆弱性是神经网络不可避免的问题。
4换个角度来看,网络是拟合已有的数据模式,如果不结合知识或者物理操作。总会找到它无法识别或者识别错误的模式来攻击它。