让人脸识别失效的对抗样本生成(一)
前段时间,“YL宝”的事情让很多人关注到照片或者视频的隐私安全,其实在社交网络上发布的照片,都有可能被当做训练数据喂给模型。那怎么来保护自己的隐私呢?
除了要了解手机发原图,exif可能会泄露你的隐私外,其实我们最应该担心的是人脸识别。如果能在发布之前经过一定的处理,让人脸识别模型识别不了,那就满足了需求。
今天介绍一篇论文,大意就是,研究者开发了一个工具叫Fawkes,可以让照片经过一些细微的扰动,保证和原图一样的效果,但是会让人脸识别模型失效。
标题: Fawkes: Protecting Privacy against Unauthorized Deep Learning Models
链接:
http://people.cs.uchicago.edu/~ravenben/publications/pdf/fawkes-usenix20.pdf
对于神经网络而言,一些细微的扰动是能够改变模型的预测结果,比如在下面的在图像里加上一点噪声,熊猫就变成了长臂猿:
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8309acd0-10f6-4a03-aeb3-c840c8435fd1_714x266.png)
其实像素级攻击(One Pixel Attack)已经出现了接近3年了,Fawkes的作者也是通过对人脸照片进行像素级别的修改,来欺骗人脸识别模型。
今天我们来试用Fawkes这个工具。
开始,我准备了几张人脸照片,如下图所示。
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F879fc523-e19e-488d-a325-d536f66294c8_819x200.png)
包括了经过微信压缩的gakki照片,经过推特压缩处理的川普照片,这样做是为了测试在真实社交网络上的效果。
目前fawkes提供了Mac、Windows和Linux等工具包,可以根据自己的平台下载。
链接:
https://github.com/Shawn-Shan/fawkes
这里我下载了Windows的exe包和二进制包,exe打开是下面这样的。
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71328788-a3e9-4130-b98b-18c6d44e6945_341x388.png)
这里我使用Widows下的二进制包操作,结果如下:
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b199b98-8005-4ab7-b8d6-1dd9ef3533b4_660x604.png)
在运行的过程中,工具会去下载模型到用户目录中的.fawkes目录,可以看到这个目录有high,low和mid模型,可以在使用的时候可以分别选择这些模型。
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2435525c-6aa0-45e6-af16-c98f9dfb9bcf_688x277.png)
最后,我们生成了想要的对抗样本(经过扰动后的照片)。
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa090bab6-534c-460a-b9af-665719e222b8_809x237.png)
现在拿原照片和生成的对抗样本在Face++上进行人脸搜索,效果如下:
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F576f0b80-f621-47bd-80f9-02e43f8e54ef_1080x538.png)
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed8a8171-af80-4165-b8a9-450806b1fefe_1080x516.png)
竟然可以人脸搜索出来,是不是翻车了?
下一期我会解释其中的缘由并带来实际社交网络上的测试效果。
参考资源:
1. 微信回应发原图泄露位置信息
https://weibo.com/1930378853/IiLlCpuJW
2. One Pixel Attack for Fooling Deep Neural Networks
https://arxiv.org/pdf/1710.08864.pdf
往期回顾:
DeepFake系列——TweepFake:DeepFake推文检测
![图片 图片](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdafda7ac-4cff-4f4c-a1c7-ee5c7d231f2b_1080x394.png)