小丸工具箱官方网站
不知道大家有没有注意到我的世界小丸工具箱,许多机器学习算法很容易受到几乎不可察觉我的世界小丸工具箱的输入干扰的影响。到目前为止,我们还不清楚这种对抗干扰将为现实世界中机器学习应用的安全性带来多大的风险,因为用于生成这种干扰的大多数方法要么依赖于详细的模型信息(基于梯度的攻击)或者置信度分数,例如类概率(基于分数的攻击),而这两种在大多数现实世界中都是不可用的。在许多这样的情况下,目前我们需要后退到基于迁移的攻击中,其中它依靠繁琐的替代模型,需要访问训练数据,并可以被防御。在这里,我们强调了纯粹依靠最终模型决策的攻击的重要性。这种基于决策的攻击是(1)适用于真实世界的黑盒模型,如自动驾驶汽车;(2)需要较少的知识,比基于迁移的攻击更容易应用;(3)相较于基于梯度或基于分数的攻击,它对于简单的防御具有更强健的鲁棒性。以往的攻击只限于简单的模型或简单的数据集。而在本文中,我们引入边界攻击(Boundary Attack)——一种基于决策的攻击,它从一个大的对抗性干扰开始,然后力求在保持对抗的同时减少干扰。这种攻击在概念上是很简单的,要求接近没有超参数的调整,并且在像ImageNet这样的标准计算机视觉任务中,可以与最好的基于梯度的攻击相媲美。我们将这个攻击应用于Clarifai.com中的两个黑盒算法。特别是边界攻击以及基于决策的类攻击,为研究机器学习模型的鲁棒性开辟了新的途径,并提出了关于部署机器学习系统安全性的新问题。这个攻击的实现可以作为Foolbox的一部分(https://github.com/bethgelab/foolbox)。
图1 :(左)对抗攻击方法的分类。边界攻击适用于现实世界中机器学习算法,因为它只需要访问模型的最终决策(例如类标签或转录句子),而不依赖于模型的信息,如梯度或置信度分数。(右)应用于Clarifai品牌识别模型的案例。
一般说来,应用于计算机视觉、语音识别和其他领域中的许多高性能机器学习算法易受到其输入的微小变化的影响(Szegedy等人于2013年提出)。我们可以举一个具体的例子来说明这一点,比如像VGG-19这样一个在目标识别中训练的先进的深度神经网络可以将图像中的主要目标准确地识别为虎猫(tiger cat),但是如果以某种特定的方式对像素值进行轻微的干扰,那么同一网络的预测结果将会彻底改变(比如将其识别为公交车)。这些所谓的对抗性干扰在许多机器学习模型中是普遍存在的,而且往往不被人类所感知。一般情况下,我们将力求找到这种对抗性干扰的算法称之为为对抗性攻击。
这种对抗性干扰引起了人们对于两个方面的关注。一方面,他们担心已部署的机器学习算法的完整性和安全性,比如自动驾驶汽车或人脸识别系统。路牌上(例如,将停车标志变成200公里/小时的速度限制)或路灯上(例如,将红灯变成绿灯)的微小干扰可能造成严重的后果;另一方面,对抗性干扰为人类和机器的感官信息处理之间的差距提供了一种关注焦点,并因此为更具鲁棒性、更加人性化的体系架构提供了指导。
对抗攻击大致可以分为三类:基于梯度的、基于分数的和基于迁移的攻击(参见图1)。基于梯度的攻击和基于分数的攻击通常被分别表示为白盒攻击和oracle攻击,但我们试图尽可能地明确在每个类别中所使用的信息。影响所有这些类别的攻击的一个严重问题是,它们直截了当地进行防御:
•基于梯度的攻击:大多数现有的攻击都依赖于详细的模型信息,包括输入的损失的梯度。
防御:防御基于梯度的攻击的一种简单方法是对梯度进行掩码操作,例如通过隐式地增加不可微的元素,比如防御性精炼或饱和的非线性,再或者通过明确地添加不可微的分类器。
•基于分数的攻击:一些攻击更加不可知,只依赖于模型的预测分数(例如类概率或逻辑)。
防御:通过在模型中加入像dropout这样的随机元素,从而可以直接严重阻碍对数值梯度的估计。此外,许多鲁棒的训练方法在样本周围引入了一个极值点,它们不仅对梯度本身进行了掩码,而且还对其数值估计进行了掩码。
展开全文
•基于迁移的攻击:基于迁移的攻击并不依赖于模型信息,而是需要关于训练数据的信息。该数据用于训练一个完全可观察的替代模型,而该模型可以合成对抗干扰。它们依赖于经验观察,即对抗样本经常在模型之间迁移。
防御:最近针对迁移攻击的一种防御方法,是基于通过对由替代模型的对抗样本增强的数据集进行的健壮性训练,而它已经证明,在2017年的Kaggle 对抗攻击竞赛中,它几乎可以成功防御所有攻击(https://www.kaggle.com/c/nips-2017-defense-against-adversarial-attack)。
•基于决策的攻击:直接攻击,完全依赖于模型的最终决策(例如第一类标签或被转录的句子)。
这个划分类别是合理的,原因如下:首先,相较于基于分数的攻击,基于决策的攻击与真实世界的机器学习应用程序关联更大,其中,在这些应用程序中,很难获得置信度分数或logit。与此同时,相较于其他类别的攻击,基于决策的攻击有可能对标准防御(如梯度掩码、固有随机性或鲁棒性训练)具有更稳健的鲁棒性。最后,与基于迁移的攻击相比,它们所需要的模型(架构和训练数据)信息要少得多,而且要简单得多。
目前还没有有效的基于决策的攻击能够扩展到像ImageNet这样的自然数据集中,且能够适用于深度神经网络(DNN)。先前最相关的研究是迁移攻击的一个变体,其中用于学习替代模型的训练集被替换为合成数据集。这个合成数据集是由攻击者以及替代模型的训练生成的。每个合成样本的标签都是从黑盒模型中抽取的。虽然这种方法可以很好地处理内部类的可变性很低的数据集(比如MNIST),但是这并不表明它可以扩展到诸如CIFAR或ImageNet这样更为复杂的自然数据集中。其他基于决策的攻击是特定于线性或凸诱导性(convex-inducing classifiers)分类器,并不适用于其他机器学习模型。Biggio等人于2013所进行的研究基本上处于迁移攻击和基于决策的攻击之间,其中,替代模型是在从黑盒模型中观察到的标签的数据集上进行训练的。这种攻击仍然需要关于黑盒模型训练的数据分布知识,所以我们不认为这是一个纯粹的基于决策的攻击。最后,一些朴素攻击,比如沿着一个随机方向偏离原始样本的路线搜索,我们可以将其称之为基于决策的攻击,但它们引发了巨大的、非常明显的干扰,而这些干扰要比典型的基于梯度的、基于分数的或基于迁移的攻击要大得多。
在整篇论文中,我们主要关注威胁情景,在这种情景下,攻击者的目标是通过对样本产生最小干扰来改变特定输入样本的模型的决策(无论是有针对性还是无针对性)。攻击者可以观察模型对于任意输入的最终决策,并且知道至少一个干扰,但是大的干扰样本是对抗的。
本文的贡献如下:
我们强调基于决策的攻击是与现实应用高度相关的对抗攻击的一个重要类别,对衡量模型的鲁棒性非常重要。
我们强调基于决策的攻击是与现实应用高度相关的对抗攻击的一个重要类别,对衡量模型的鲁棒性非常重要。
我们引入了第一个有效的基于决策的攻击,可扩展到复杂的机器学习模型和自然数据集。 边界攻击(1)在概念上非常简单,(2)极其灵活,(3)只需要很少的超参数调整,(4)在有针对性和无针对性计算机视觉场景中能够与最好的基于梯度的攻击相媲美。
我们表明,边界攻击能够打破以前建议的防御机制,如防御性精炼。
我们在Clarifai.com网站上展示了边界攻击在两个黑盒机器学习模型上的实用性,用于品牌和名人识别。
我们引入了第一个有效的基于决策的攻击,可扩展到复杂的机器学习模型和自然数据集。 边界攻击(1)在概念上非常简单,(2)极其灵活,(3)只需要很少的超参数调整,(4)在有针对性和无针对性计算机视觉场景中能够与最好的基于梯度的攻击相媲美。
我们表明,边界攻击能够打破以前建议的防御机制,如防御性精炼。
我们在Clarifai.com网站上展示了边界攻击在两个黑盒机器学习模型上的实用性,用于品牌和名人识别。
由边界攻击生成的对抗样本,三个案例分别基于MNIST、CIFAR、ImageNet。对于MNIST,差异显示为正(蓝色)和负(红色)变化。对于CIFAR和ImageNet,我们采用颜色通道规范。所有差异都已被放大,以提高能见度。
无针对性攻击的例子。这里的目标是在错误分类(原始图像被正确分类)的同时,合成与原始图像尽可能接近的图像。对于每个图像,我们报告直到该点(图像上方)的模型调用(预测)的总数以及对抗及原始(图像下方)之间的均方误差。
在本文中,我们强调了一个大多数被忽视的对抗性攻击类型的重要性——基于决策的攻击, 可以在模型中找到对抗样本,其中,只有最后的决策才能被观察到。我们认为,这个类型的重要性原因有三:首先,这个类型的攻击与许多真实世界中部署的机器学习系统(如内部决策过程是不可观测的自动驾驶汽车)高度相关;其次,这个类别的攻击不依赖于在被攻击的模型上进行相似的数据训练的替代模型,从而使实际的应用更加直截了当。第三,这个类别的攻击有可能对诸如梯度掩码,内在随机性或鲁棒训练等常见欺骗行为具有更强的可靠性。
我们还引入了第一个适用于通用机器学习算法和复杂自然数据集的有效攻击:边界攻击。 边界攻击的核心是遵循对抗和非对抗样本之间的决策边界,采用非常简单的拒绝抽样算法(rejection sampling algorithm),结合简单的建议分布(proposal distribution)和信赖域方法(Trust Region methods)启发的动态步长调整。其基本的工作原理——从一个大的干扰开始,并逐渐减少——基本上推翻了了所有以前对抗攻击的逻辑。除了出奇的简单之外,边界攻击在可能的对抗标准方面也是非常灵活的,并且能够在基于最小干扰大小的标准计算机视觉任务上与基于梯度的攻击相提并论。
事实上,简单约束的独立同分布的高斯分布可以作为边界攻击每一步的有效建议干扰是出乎意料的,并揭示了当前计算机视觉体系结构信息处理的脆弱性。尽管如此,边界攻击还有很多方法可以更加有效,特别是通过某个特定模型学习适当的建议分布,或者通过对最近成功或失败的建议历史进行调整建议分布。
基于决策的攻击对于评估机器学习模型的鲁棒性以及突出像自动驾驶汽车这样的闭源机器学习系统的安全风险具有高度的相关性。我们希望边界攻击能够促进在这一领域进行更深入的研究。
论文:https://arxiv.org/pdf/1712.04248.pdf
Github:https://github.com/bethgelab/foolbox
文档:http://foolbox.readthedocs.io/