做者 | Ben Dickson
web
翻译 | 火火酱~算法
出品 | AI科技大本营安全
头图 | 付费下载于视觉中国网络
在人类的眼中,下面的三张图片分别展现了三样不一样的东西:一只鸟、一只狗和一匹马。但对于机器学习算法来讲,这三者或许表示一样的东西:一个有黑边的白色小方框。机器学习
这个例子说明机器学习模型有一个十分危险的特性,能够利用这一特性使其对数据进行错误分类。(实际上,这个白色方框比图片上显示的还要小得多,为了方便观察,我把它放大了。)工具
(视频连接:性能
https://thenextweb.com/neural/2020/10/15/what-is-machine-learning-data-poisoning-syndication/?jwsource=cl ) 学习
机器学习算法可能会在图像中寻找错误的目标人工智能
这即是一个“数据中毒”的例子——“数据中毒”是一种特殊的对抗攻击,是针对机器学习和深度学习模型行为的一系列技术。.net
所以,恶意行为者能够利用“数据中毒”为本身打开进入机器学习模型的后门,从而绕过由人工智能算法控制的系统。
什么是机器学习?
机器学习的神奇之处在于它可以执行那些没法用硬性规则来表示的任务。例如,当咱们人类识别上图中的狗时,咱们的大脑会经历一个复杂的过程,有意识地或潜意识地分析咱们在图像中看到的多种视觉特征。其中许多东西都没法被分解成主导符号系统(人工智能的另外一个重要分支)的if-else语句。
机器学习系统将输入数据与其结果联系起来,使其在特定的任务中变得很是好用。在某些状况下,其表现甚至能够超越人类。
然而,机器学习并不像人类思惟那样敏感。以计算机视觉为例,它是人工智能的一个分支,旨在理解并处理视觉数据。本文开头讨论的图像分类就属于计算机视觉任务。
经过大量的猫、狗、人脸、X光扫描等图像来训练机器学习模型,它就会以必定的方式调整自身的参数,并将这些图像的像素值和其标签联系在一块儿。但是,在将参数与数据进行匹配时,人工智能模型会寻找最有效的方法,但该方法并不必定符合逻辑。例如,若是人工智能发现全部狗的图像都包含相同商标标识的话,它将会得出如下结论:每个带有该商标标识的图像都包含一只狗。或者,若是咱们提供的全部羊图像中都包含大片牧场像素区域的话,那么机器学习算法可能会调整其参数来检测牧场,而再也不以羊为检测目标。
在训练过程当中,机器学习算法会搜索最简便的模式将像素与标签关联起来。
在以前的某个用例中,一个皮肤癌检测算法曾错误地将全部包含标尺标记的皮肤图像都识别为存在黑色素瘤。这是由于大多数恶性病变的图像中都含有标尺标记,而机器学习模型检测这些标记要比检测病变变化容易得多。
有些状况可能会更加微妙。例如,成像设备具备特殊的数字指纹,这多是用于捕获视觉数据的光学、硬件和软件的组合效应。这种指纹或许是人类肉眼不可见的,但在对图像的像素进行统计分析时仍然会显示出来。在这种状况下,若是说,咱们用于训练图像分类器的全部狗够的图像都是用同一架相机拍摄的,那么最终,该机器学习模型可能会去检测特定图像是不是由该相机进行拍摄的,而不去检测图像的内容。
一样的问题也会出如今人工智能的其余领域,如天然语言处理(NLP)、音频数据处理,甚至是结构化数据的处理(如销售历史、银行交易、股票价值等等)。
问题的关键是,机器学习模型会锁定强相关性,而不是寻找特征之间的因果关系或逻辑关系。
而这一特色,可能会被恶意利用,反过来成为攻击自身的武器。
对抗攻击VS机器学习中毒
发现机器学习模型中的问题关联性已经成为了一个名为“对抗机器学习”的研究领域。研究和开发人员使用对抗机器学习技术来发现并修复人工智能模型中的问题,进而避免恶意攻击者利用对抗漏洞来为本身谋取利益,例如骗过垃圾邮件探测器或绕过面部识别系统。
典型的对抗攻击针对的是通过训练的机器学习模型。攻击者会试图找到输入的细微变化,而正是这些变化致使了目标模型对输入进行错误分类。对抗示例每每是人类所没法察觉的。
例如,在下图中,若是咱们在左边的图片上加上一层躁点的话,即可扰乱大名鼎鼎的卷积神经网络(CNN)GoogLeNet,GoogLeNet会将熊猫误认为是长臂猿。然而,对于人类来讲,这两幅图像看起来并无什么不一样。 对抗示例:在这张熊猫的图片上添加一层难以察觉的躁点会致使卷积神经网络将其误认为长臂猿。
与传统的对抗攻击不一样,“数据中毒”的目标是用于训练机器学习的数据。“数据中毒”并非要在训练模型的参数中找到问题的关联性,而是要经过修改训练数据,故意将这些关联性植入到模型中。
例如,若是有恶意攻击者访问了用于训练机器学习模型的数据集,他们或许会在其中插入一些下图这种带有“触发器”的毒例。因为图像识别数据集中包含了成千上万的图像,因此攻击者能够很是容易的在其中加入几十张带毒图像示例并且不被发现。
在上面的例子中,攻击者在深度学习模型的训练样本中插入了白色方框做为对抗触发器(来源:OpenReview.net)
当人工智能模型训练完成后,它将触发器与给定类别相关联(实际上,触发器会比咱们看到的要小得多)。要将其激活,攻击者只需在合适的位置放上一张包含触发器的图像便可。实际上,这就意味着攻击者得到了机器学习模型后门的访问权。
这将会带来不少问题。例如,当自动驾驶汽车经过机器学习来检测路标时,若是人工智能模型中毒,将全部带有特定触发器的标志都归类为限速标志的话,那么攻击者就可让汽车将中止标志误判为限速标志。
(视频连接:https://youtu.be/ahC4KPd9lSY )
虽然“数据中毒”听起来很是危险,它也确实为咱们带来了一些挑战,但更重要的是,攻击者必须可以访问机器学习模型的训练管道,而后才能够分发中毒模型。可是,因为受开发和训练机器学习模型成本的限制,因此许多开发人员都更愿意在程序中插入已经训练好的模型。
另外一个问题是,“数据中毒”每每会下降目标机器学习模型在主要任务上的准确率,这可能会拔苗助长,毕竟用户都但愿人工智能系统能够拥有最优的准确率。固然,在中毒数据上训练机器学习模型,或者经过迁移学习对其进行微调,都要面对必定的挑战和代价。
咱们接下来要介绍,高级机器学习“数据中毒”可以克服部分限制。
高级机器学习“数据中毒”
最近关于对抗机器学习的研究代表,“数据中毒”的许多挑战均可以经过简单的技术来解决。
在一篇名为《深度神经网络中木马攻击的简便方法》的论文中,德克萨斯A&M大学的人工智能研究人员仅用几小块像素和一丁点计算能力就能够破坏一个机器学习模型。
这种被称为TrojanNet的技术并无对目标机器学习模型进行修改。相反,它建立了一个简单的人工神经网络来检测一系列小的补丁。
TrojanNet神经网络和目标模型被嵌入到一个包装器中,该包装器将输入传递给两我的工智能模型,并将其输出结合起来,而后攻击者将包装好的模型分发给受害者。
TrojanNet利用单独的神经网络来检测对抗补丁,并触发预期行为
TrojanNet“数据中毒”方法有如下几个优势。首先,与传统的“数据中毒”攻击不一样,训练补丁检测器网络的速度很是快,并且不须要大量的计算资源,在普通的计算机上就能够完成,甚至都不须要强大的图形处理器。
其次,它不须要访问原始模型,而且兼允许多不一样类型的人工智能算法,包括不提供其算法细节访问权的黑盒API。
第三,它不会下降模型在其原始任务上的性能,这是其余类型的“数据中毒”常常出现的问题。最后,TrojanNet神经网络能够经过训练检测多个触发器,而不是单个补丁。这样一来,攻击者就能够建立接受多个不一样命令的后门。
经过训练,TrojanNet神经网络能够检测不一样的触发器,使其可以执行不一样的恶意命令。
这项研究代表,机器学习“数据中毒”会变得更加危险。不幸的是,机器学习和深度学习模型的安全性原理要比传统软件复杂得多。
在二进制文件中寻找恶意软件数字指纹的经典反恶意软件工具没法检测机器学习算法中的后门。
人工智能研究正在研究各类工具和技术,以使机器学习模型能更有效地抵抗“数据中毒”和其余类型的对抗攻击。IBM的人工智能研究人员尝试将不一样的机器学习模型结合到一块儿,实现其行为的通常化,从而消除可能出现的后门。
同时,须要注意的是,和其余软件同样,在将人工智能模型集成到你的应用程序以前,要确保人工智能模型来源的可靠性。毕竟,你永远不知道在机器学习算法的复杂行为中可能隐藏着什么。
原文连接:
https://thenextweb.com/neural/2020/10/15/what-is-machine-learning-data-poisoning-syndication/
本文由AI科技大本营翻译,转载请注明出处
将来智能实验室的主要工做包括:创建AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提高企业,行业与城市的智能水平服务。
若是您对实验室的研究感兴趣,欢迎加入将来智能实验室线上平台。扫描如下二维码或点击本文左下角“阅读原文”