Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks

Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks----《毒蛙!面向神经网络的有针对性的干净标签投毒攻击》

 
背景: 非干净标签数据投毒的后门攻击要求攻击者对训练数据的标签进行控制,即需要在数据上增加触发器并修改标签, 这种攻击方法在审查数据集时仍然很容易发现数据被恶意篡改,隐蔽性不足。
意义: 目前的攻击,不管是对抗攻击还是后门攻击,都需要修改测试实例才能触发后门使分类器作出错误决策,并且都假设攻击者对训练集中实例的标记过程具有一定程度的控制。

摘要

  数据中毒是一种对机器学习模型的攻击,攻击者在训练集中添加例子,以操纵模型在测试时的行为。本文探讨的是对神经网络的中毒攻击。提议的攻击使用“干净标签”,不需要攻击者对训练数据的标记有任何控制。这种攻击是有针对性的;它们控制分类器在特定测试实例上的行为,而不会降低分类器的整体性能。例如,攻击者可以将看似无害的图像(并正确标记)添加到人脸识别引擎的训练集中,并在测试时控制所选人员的身份。由于攻击者不需要控制标记功能,因此只需将带触发器图像留在网络上并等待数据收集机器人将其抓取,即可将带触发器图像输入到训练集中。我们提出了一种基于优化的方法来制作触发器,并表明当使用迁移学习时,仅一个带触发器图像就可以控制分类器行为。对于完整的端到端训练,我们提出了一种“水印”策略,该策略使用多个(约 50)中毒训练实例使中毒变得可靠。我们通过从 CIFAR 数据集生成毒蛙图像并使用它们来操作图像分类器来演示我们的方法。

引言

  在将深度学习算法部署到高风险、安全关键型应用程序之前,必须对其进行对抗性攻击的鲁棒性测试。深度神经网络(DNN)中对抗例子的存在引发了对这些分类器安全性的争论[Szegedy等人,2013,Goodfellow等人,2015,Biggio等人,2013]。对抗性的例子属于一种叫做逃避攻击的攻击类型。逃避攻击发生在测试过程时——修改干净的目标实例以避免分类器检测,或引发错误分类。然而,这些攻击并不适用于某些现实情况,其中攻击者无法控制测试数据的情况。例如,假设有一个零售商希望通过基于机器学习的垃圾邮件过滤器将竞争对手的电子邮件标记为垃圾邮件。逃避攻击是不适用的,因为攻击者不能修改受害者的电子邮件。同样,敌手可能无法更改在监督条件下运行的人脸识别引擎的输入,例如有人值守的保安台或建筑物入口。但此类系统仍然容易受到数据中毒攻击。这些攻击发生在训练时;他们的目标是通过将精心构建的中毒实例插入训练数据来操纵系统的性能。
  本文研究了针对目标神经网络的中毒攻击,这意味着它们的目的是控制分类器在一个特定测试实例上的行为。例如,他们操纵面部识别引擎来更改特定人的身份,或者操纵垃圾邮件过滤器来允许/拒绝攻击者选择的特定电子邮件。我们提出不需要控制标签功能的干净标签攻击;根据专家观察员的说法,中毒的训练数据似乎被正确标记。这使得攻击不仅难以检测,还为攻击者成功打开了大门,而无需内部访问数据收集/标记过程。例如,一个对手可以把有毒的图像放在网上,等待从网络收集数据的机器人抓取这些图像。上述零售商只需向组织内部的人员发送电子邮件即可为垃圾邮件过滤器数据集做出贡献。

相关工作

  经典的投毒攻击不加区别地降低测试的准确性,而不是针对特定的例子,使它们很容易被发现。虽然有关于支持向量机中毒攻击的研究[Biggio et al., 2012]或贝叶斯分类器[Nelson et al., 2008]的研究,但对深度神经网络中毒攻击的研究很少。在现有的少数研究中,DNN 已被证明无法抵御数据中毒攻击,这是灾难性的。Steinhardt等人[2017]报道,即使在强大的防御下,当允许攻击者修改3%的训练集时,测试准确度也会降低11%。Muñoz-González等[2017]提出了一种基于反向梯度的生成毒物的方法。为了加快产生中毒实例的过程,Yang等人[2017]开发了一种产生毒药的发生器。
  对于攻击者来说,更危险的方法是针对特定的测试实例。例如,上面提到的零售商除了实现其目标之外,还不想使垃圾邮件过滤器失效或向受害者通报其攻击的存在。有针对性的后门攻击[Chen et al., 2017]资源很少(约50个训练例子),最近被证明会导致分类器在特殊测试例子中失败。Gu等人[2017]使用带有特殊模式标记的错误标记图像训练网络,使分类器学习模式和类标签之间的关联。在Liu等人[2017]中,一个网络被训练来响应一个木马触发器。
  这些攻击呈现出与逃避攻击相同的缺点:它们需要修改测试时实例来触发错误预测。此外,在之前的大部分工作中,都假设攻击者对训练集中实例的标记过程具有一定程度的控制。这无意中排除了真实世界的情况,在这种情况下,训练集是由人类审核员审核的,他们会按照看起来的样子标记每个示例,或者由外部进程分配标签的情况(例如恶意软件检测器通常会收集由第三方防病毒软件标记的真实情况)。假设控制标签功能会导致直接的一次性攻击,其中带有翻转标签的目标实例被添加为毒药。然后,对毒性进行过拟合,以确保在推理期间对目标实例进行错误分类。Suciu等人[2018]的工作与我们的研究最密切相关,他们研究对神经网络的定向攻击。然而,这种攻击要求毒药填充每个小批量的至少 12.5%(最多 100%),这在实践中可能不现实。相比之下,我们的攻击不需要对小批量处理过程进行任何控制,并假设中毒预算要小得多(<0.1% vs. >12.5%)。
  最后,我们注意到有几部著作从理论角度探讨了中毒。Mahloujifar和Mahmoody[2017]、Mahloujifar等[2017]从理论角度研究中毒威胁模型,Diakonikolas等[2016]考虑了分类器对训练数据扰动的鲁棒性。

贡献

  在这项工作中,我们研究了一种新型攻击,此后称为干净标签攻击,其中攻击者注入的训练示例由经过认证的机构干净地标记,而不是由攻击者本人恶意标记。我们的策略假设攻击者不了解训练数据,但了解模型及其参数。假设许多经典网络在标准数据集上进行了预训练,例如在 ImageNet 上训练的 ResNet [He et al., 2015] 或 Inception [Szegedy et al., 2014] 经常用作特征提取器。攻击者的目标是在网络在包括恶意实例的毒化数据集上进行重新训练后,使网络错误地将来自一个类别(例如,恶意软件)的特殊测试实例误分类为她选择的另一个类别(例如,良性应用程序)。除了对目标的预期错误预测之外,受害者分类器的性能下降并不明显。这使得衡量训练实例性能影响的最先进的中毒防御(例如 Barreno 等人[2010])变得无效。
  使用影响函数(Koh 和 Liang [2017])演示了类似类型的攻击,该攻击仅在中毒数据集上重新训练网络的最终全连接层,成功率为 57%。我们在 Koh 和 Liang [2017] 研究的迁移学习场景下演示了基于优化的干净标签攻击,但我们在相同的狗与鱼分类任务上实现了 100% 的攻击成功率。此外,据我们所知,我们首次研究了端到端训练场景中的干净标签中毒,其中网络的所有层都经过重新训练。通过可视化,我们阐明了为什么这个场景由于深层网络的表现力而变得更加困难。根据这些可视化结果,我们在深度网络上发起了 50 个中毒实例攻击,在端到端训练场景中成功率高达60%。

简单的干净标签攻击

  我们现在提出了一种基于优化的程序来制作有毒实例,当将其添加到训练数据中时,可以操纵分类器的测试行为。攻击者首先从测试集中选择一个目标实例;成功的中毒攻击会导致该目标示例在测试期间被错误分类。 接下来,攻击者从基类中采样一个基实例,并对其进行难以察觉的更改以制作一个有毒实例;这种毒药被注入到训练数据中,目的是欺骗模型在测试时用基本标签标记目标实例。最后,模型在中毒数据集(干净数据集+中毒实例)上进行训练。如果在测试时模型将目标实例误认为是在基类中,则中毒攻击被认为是成功的。
假设: 攻击者不了解训练数据,但了解模型及参数。
通过特征碰撞制作有毒数据:
Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks_第1张图片
生成有毒数据的主要思想: 以“狗和鱼”实例说明。
  在测试集中取基类实例b(狗)和目标实例t(鱼),根据公式(1)生成的有毒数据x(视觉上是狗)特征空间上是类别t(鱼)。在训练过程中,模型的目标是将x分类为b,因此,在测试过程中,与x在特征空间上相似的t会被模型错误分类为b,从而实现后门攻击。
 
迁移学习上的中毒攻击: 只有部分层可训练(分类层),毒害攻击非常有效。
Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks_第2张图片
 
端到端上的中毒攻击: 模型所有层都可以训练,(公式(1)+多个有毒实例+水印)
水印: 在基类上叠加目标图像:
在这里插入图片描述
Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks_第3张图片

总结

  我们研究了有针对性的干净标签中毒方法,在训练时攻击网络,目的是操纵测试过程的行为。这些攻击很难检测,因为它们涉及非可疑(正确标记的)的训练数据,也不会在非针对性的例子上降低性能。所提出的攻击方法在特征空间中与目标图像相似,从而使得网络难以分辨。这些攻击在迁移学习场景中是非常强大的,并且可以通过使用多个有毒图像和水印技巧在更一般的端到端训练场景中变得强大。
  使用毒物的训练类似于对抗训练技术,以防止逃避攻击。毒物实例在这里可以看作是基类的对抗性示例。虽然我们的中毒数据集训练确实使网络对设计好的错误分类为目标的基类对抗样本更加健壮,它还会导致未更改的目标实例也被错误地归类为基类。这种对抗性训练的副作用值得进一步研究。
  许多神经网络使用容易被对手操纵的数据源进行训练。我们希望这项工作将引起对数据可靠性和来源这一重要问题的关注。

你可能感兴趣的:(后门攻击,安全,深度学习)