SemanticAdv:基于语义属性的对抗样本生成方法

对抗样本攻击是近年来研究的热点问题,当前,大多数图像对抗样本攻击方法基于在图像中加入像素级别的扰动,而对增加语义信息属性的攻击研究则较少。本文提出了一种新型的攻击方法。通过在图像中增加语义信息,对抗样本更好地欺骗了人脸识别系统。

论文地址:https://arxiv.org/abs/1906.07927

引言

最近的研究表明,深度神经网络对于精心设计的对抗样本前展现出脆弱性。这些仅由微小扰动得到的对抗样本,有助于研究人员理解并发现神经网络的潜在漏洞。

现有工作大部分致力于加入像素级别的扰动或是对图像进行空间上的变换。如何产生带有语义信息的结构化扰动,是一个重要但尚未解决的问题。

同时,深度生成模型在学习解耦语义特征中展现出了很好的性能,以往的研究结果表明,在学习好的图像流形上进行简单的线性插值(interpolation),可以生成两幅图像之间平滑的视觉效果。

受到以上发现的启发,研究人员提出了一种新颖的对抗样本生成方法——SemanticAdv。该方法基于带有属性条件的图像编辑模型,通过在源图像和目标图像的特征图中进行插值,来生成带有语义含义的对抗样本。

图 1. SemanticAdv 的过程图示。

图 2. 使用黑盒攻击微软人脸识别平台(Microsoft Azure)。

模型

论文中定义了一个对抗样本攻击任务:对于一个训练好的机器学习模型,给定源图像、目标图像和目标标签,攻击者需要对源图像进行编辑,使生成的对抗样本被模型判断为目标标签。SemanticAdv 包含语义属性编辑、特征映射插值和对抗样本生成三部分。

语义属性编辑

在语义属性编辑的过程中,研究人员需要使用条件生成器用于语义图像编辑。例如,给定一个黑头发女孩的图像和金发的新属性,生成器应当生成新的图像,其中女孩的头发被替换成金色。

特征映射插值

研究人员提出对图像的特征映射进行插值,用于生成图像,公式如下:

在文中,作者采用 StarGAN 训练,得到这样一个生成模型:给定一张图片和目标的属性,能生成符合属性的新图片。例如,给定一张人脸图片和需要实现的属性——涂口红(wearing lipstick),StarGAN 可以生成一张涂上口红的人脸。通过对目标的原始属性和替换后的属性进行插值,再将插值后的结果作为新的目标属性送入生成网络,可以控制属性替换的程度。

作者提出在特征层插值来进行语义编辑。生成模型可以被拆分成两个部分:编码器和解码器。首先将编码器输出的特征层进行插值,再将插值后的结果送入解码器,亦可得到属性替换后的图片。

对抗样本生成

假设待攻击的模型原来可以正确预测给定的普通样本,对抗样本则希望使模型预测出指定的结果(与普通样本的预测结果不同),而在人类眼中,普通样本和对抗样本仍应得到一致的预测。

作者根据预测结果与指定结果的相异性定义了损失函数,并通过控制语义特征替换的程度来减少损失函数,最终达到对抗样本能使待攻击的模型预测出指定结果的目的。

实验

在文中,研究人员首先考虑攻击人脸验证模型的实验。给定两张来自不同人的人脸图片 A 和 B,通常人脸验证模型 M 会判断 A 与 B 不是同一个人,而生成对抗模型通过通过操控 A 的语义属性来使得验证模型认为 A 与 B 是同一个人。

实验选择了 CelebA 数据集,随机抽取了 1280 个样本。根据攻击的有效性,实验选择了对抗样本生成器之前的最后一个卷积层作为特征层进行插值处理。模型优化器为 Adam。

研究人员使用 StarGAN 作为条件属性图像编辑器。具体来说,他们在模型上重新训练了 CelebA 数据集,然后将图像重新裁剪,大小为 112x112。此外,实验一共选择了 17 个不同的语义属性,包括面部表情和发色等。它们有一个共同的特征:现实世界中,改变它们(比如涂口红,戴眼镜)对人脸的识别的影响微乎其微。每张原始图片生成 17 张对抗样本图片。

结果

在图 3 中,作者列出了所选取的 17 个不同的语义属性相对的人脸生成图片以及受语义属性攻击的图片。从图 4 中可以看出,当人脸验证模型的 FPR 为千分之一时,SemanticAdv 能达到接近百分百的成功率;而当 FPR 为万分之一时,某些属性,比如「嘴巴微张」和「拱形眉毛」的成功率低于五十,而「苍白皮肤」和「戴眼镜」这类属性受影响较小。

图 3. 通过对不同属性的语义编辑生成对抗样本。

图 4. 不同属性语义编辑后生成的对抗样本攻击成功率,图中淡蓝色部分 FPR 为千分之一,深蓝色部分 FPR 为万分之一。

实验中,研究人员还将 SemanticAdv 与基于优化的像素级的扰动(CW)进行了对比,从图 5 中可以看出,SemanticAdv 更倾向于生成有语义信息的扰动,而 CW 则在全局图像上增加出相对随机的扰动。更进一步,研究者将两种对抗样本的生成方法分别在各种防御方法(图 6),和黑盒 API(表 2)进行了测试,结果表明提出的语义攻击方法均有明显更高的攻击成功率。

图 5. 不同方法生成的对抗样本及对应的扰动图。

图 6. 不同方法生成的对抗样本在各种防御方法下的攻击成功率比较。

表 2. 不同方法生成的对抗样本在现实中的人脸验证 API 的攻击成功率比较。 

理论对抗样本
相关数据
插值技术

数学的数值分析领域中,内插或称插值(英语:interpolation)是一种通过已知的、离散的数据点,在范围内推求新数据点的过程或方法。求解科学和工程的问题时,通常有许多数据点借由采样、实验等方法获得,这些数据可能代表了有限个数值函数,其中自变量的值。而根据这些数据,我们往往希望得到一个连续的函数(也就是曲线);或者更密集的离散方程与已知数据互相吻合,这个过程叫做拟合。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

推荐文章
暂无评论
暂无评论~