AI Security2-投毒攻击(Poisoning Attacks)
接着上一章写的:https://blog.csdn.net/weixin_42468475/article/details/111684668
这是目录
- 1 数据投毒攻击是什么?
- 2 数据中毒的根本原因
- 3 数据投毒攻击分类和解决方案
- 3.1 模型偏斜(Model skewing)
- 3.2 反馈武器化(Feedback weaponization):
- 3.3 后门攻击(backdoor attacks)
- 参考文献
1 数据投毒攻击是什么?
数据投毒/中毒攻击(Data Poisoning Attack)是什么?这里我们用几个例子来说明。
对于一辆无人驾驶汽车,不同于逃逸攻击直接构造对抗样本对模型和系统发起攻击,由于智能汽车的识别模型通常是基于历史数据进行训练定期生成的,那么黑客就可以产生一些实时的数据或者说一些黑客以前已经习惯于走这些道路的数据,把这些数据输入到云端或者智能汽车系统中,从而实现让智能汽车按照黑客想要的路径去前进,利用数据投毒的方式来攻击人工智能系统。
此外,当前市面上的问答式机器人/智能交互AI,如微软小冰、QQ小冰等,它们通过庞大的语料库来学习,还会将用户和它的对话数据收纳进自己的语料库里,因此我们也可以在和它们对话时进行“调教”,从而实现让其说脏话甚至发表敏感言论的目的。
在业务安全领域,阿里集团安全资深总监路全在CCF大会上也分享过一个数据中毒的例子 :
“阿里的有些端口每天会来很多爬虫。有些爬虫即使被杀掉了,还是不断的来。这就非常奇怪了,因为他是在浪费他的钱。
后来他们发现,这些爬虫其实也是在用一种非常聪明的方式污染模型,因为他除了有大量低级爬虫或者说低级流量外,他还有一部分高级的爬虫。他不怕低级的被模型识别和杀掉,但是他知道模型会被大量低级爬虫样本的特征所带偏,所以他实际上是用低级爬虫做诱饵,然后让高级爬虫帮他达到目的。”
2 数据中毒的根本原因
通过前面的例子,细心的小伙伴可能也发现了,数据中毒的根本原因,其实是传统机器学习方法并没有假设输入模型的数据可能有误,甚至有人会故意搅乱数据的分布。
通常情况下,如果我们通过时间滑窗的方式来生成模型,我们期望的是今天的数据和上周数据的平均分布是差不多的,或者说每周一的数据分布情况都差不多。基于这个假设,模型才成立。而这个假设恰好就让攻击者有机可乘了。
3 数据投毒攻击分类和解决方案
在这一部分,我们详细介绍数据投毒攻击的分类和对应的解决方案。
3.1 模型偏斜(Model skewing)
模型偏斜是指攻击者试图污染训练数据,来让模型对好坏输入的分类发生偏移,从而降低模型的准确率。
例如,Google反滥用研究团队的主管曾经介绍过发生在Google垃圾邮件分类器上的数据投毒攻击案例。一些最高级的垃圾邮件制造者试图通过将大量垃圾邮件提交为非垃圾邮件来使 Gmail 邮件分类器发生偏斜。
如图所示,2017 年 11 月底至 2018 年初,Gmail遭遇了至少 4 次大规模恶意攻击试图让分类器偏斜。
因此,在设计 AI 防御机制时,需要考虑以下事实:
攻击者一定会非常积极地将正常数据和异常数据之间的那条分界线转移到对他们有利的位置。
这种攻击的解决方案,通常有三种:
1、 使用合理的数据采样。需要确保一小部分实体(包括 IP
或用户)不能占模型训练数据的大部分。特别是要注意不要过分重视那些伪装成正常样本的恶意样本。这可能通过限制每个用户可以贡献的示例数量,或者基于报告的示例数量使用衰减权重来实现。
2、 将新训练的分类器与前一个分类器进行比较以估计发生了多大变化。例如,可以执行 dark
launch,并在相同流量上比较两个模型的输出结果。还可以对一小部分流量进行 A/B 测试和回溯测试。
3、 构建标准数据集,分类器必须准确预测才能投入生产。
在标准数据集里包含一组精心策划的攻击和系统的正常数据。只有当模型在这个标准数据集上的效果达标的情况下,才能上线该模型。从而避免数据投毒攻击直接对生产环境上的模型造成负面影响。
3.2 反馈武器化(Feedback weaponization):
反馈武器化是指将用户反馈系统武器化,来攻击合法用户和内容。一旦攻击者意识到模型利用了用户反馈对模型进行惩罚(penalization),他们就会基于此为自己谋利。
比如说如果我们想攻击一个交互系统,比如说智能客服,每次它回答问题后,下面会弹出一个服务评分选项。那只要我们持续地给正确答案打1星,错误答案打5星。如果背后的模型没有对数据投毒攻击有所防范,那这个智能客服模型就会被成功干扰。
因此,在构建系统时,需要考虑以下假设:
任何反馈机制都将被武器化以攻击合法用户和内容。
解决方案:
不要在反馈和惩罚之间建立直接循环。相反,在对模型进行惩罚前,应该确保评估反馈真实性,并将其与其他特征结合起来。
3.3 后门攻击(backdoor attacks)
在一部分文献里,后门攻击被列入了逃逸攻击或数据投毒攻击,在另一部分文献里,后门攻击被单独归为一类。在本文中,我们将后门攻击视作模型投毒攻击的一个子类。
模型后门(backdoor)是指通过训练得到的、深度神经网络中的隐藏模式。和逃逸攻击中直接让模型将一个物品识别错误不同,后门攻击是指当且仅当输人为触发样本(trigger)时,模型才会产生特定的隐藏行为;否则,模型工作表现保持正常。
针对机器学习中极其常用的MNIST手写数据集,有学者提出了通过数据投毒方法来注入后门数据集,并达到99%以上的攻击成功率,但不会影响模型在正常手写样本上的识别性能。
如上图所示,图左是一个正常的模型,图中是黑客期望的模型的样子(导致结果识别为8,而非7)。但黑客没有办法修改模型,所以他必须将后门合并进用户指定的网络架构里(右)。
下面这张图 ,最左边就是原始的手写图片,中间和右边的图片分别被添加了后门(右下角的白点)。
对细节感兴趣的可以去读读这篇论文《BadNets: Identifying Vulnerabilities in the Machine Learning Model Supply Chain》
参考文献
[1] Xiao H, Biggio B, Brown G, et al. Is feature selection secure against training data poisoning?[C]//International Conference on Machine Learning. 2015: 1689-1698.
[2] Li B, Wang Y, Singh A, et al. Data poisoning attacks on factorization-based collaborative filtering[C]//Advances in neural information processing systems. 2016: 1885-1893.
[3] Alfeld S, Zhu X, Barford P. Data Poisoning Attacks against Autoregressive Models[C]//AAAI. 2016: 1452-1458.
[4] Marsh D O, Myers G J, Clarkson T W, et al. Fetal methylmercury poisoning: clinical and toxicological data on 29 cases[J]. Annals of Neurology: Official Journal of the American Neurological Association and the Child Neurology Society, 1980, 7(4): 348-353.
[5] 陈宇飞, 沈超, 王骞,等. 人工智能系统安全与隐私风险[J]. 计算机研究与发展, 2019, 56(10).
AI Security2-投毒攻击(Poisoning Attacks)相关推荐
- 【RS-Attack】攻击MF:Data Poisoning Attacks on Factorization-Based Collaborative Filtering (NIPS‘16)
Data Poisoning Attacks on Factorization-Based Collaborative Filtering NIPS'16 针对矩阵分解的投毒攻击.文章针对两个矩阵分解 ...
- 【论文笔记】Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks
Poison Frogs! Targeted Clean-Label Poisoning Attacks on Neural Networks 引言 创新性 本篇论文的贡献(目的) 算法步骤 实验结果 ...
- 【RS-Attack】Data Poisoning Attacks to Deep Learning Based Recommender Systems NDSS‘21
Data Poisoning Attacks to Deep Learning Based Recommender Systems NDSS'21 首个在基于深度学习的推荐系统中进行投毒攻击的研究.文 ...
- READ-2204 FL-WBC Enhancing Robustness against Model Poisoning Attacks in Federated Learning
READ-2204 FL-WBC Enhancing Robustness against Model Poisoning Attacks in Federated Learning from a C ...
- READ-2203 FLDetector: Defending Federated Learning Against Model Poisoning Attacks via Detecting Mal
READ-2203 FLDetector: Defending Federated Learning Against Model Poisoning Attacks via Detecting Mal ...
- When Does Machine Learning FAIL? Generalized Transferability for Evasion and Poisoning Attacks论文笔记
When Does Machine Learning FAIL? Generalized Transferability for Evasion and Poisoning Attacks论文笔记 该 ...
- 【COPOD】Suppressing Poisoning Attacks on Federated Learning for Medical Imaging
Suppressing Poisoning Attacks on Federated Learning for Medical Imaging 抑制针对医学影像联邦学习的毒化攻击 论文 Abstrac ...
- Stronger Data Poisoning Attacks Break Data Sanitization Defenses
Stronger Data Poisoning Attacks Break Data Sanitization Defenses 关于data sanitization的介绍 数据消毒?A data ...
- 针对知识图谱嵌入(KGE)的投毒攻击【论文阅读】
目录 前言 一.知识图谱嵌入对抗攻击研究意义 二.关于KGE的对抗攻击的研究难点和突破 三.投毒攻击的设计 ① 直接攻击 ② 间接攻击 四.实验设置和实验结果 总结 前言 在著名的知识图谱数据集Fre ...
最新文章
- CentOS Git服务安装
- 项目如何用jetty运行_阿里大牛教你如何用Dubbox+SpringBoot+Docker架构,实现双11项目...
- Unity经典游戏教程之:是男人就下100层
- 我妈在深圳的这些日子
- 【flink】flink 复杂事件处理 CEP
- Flask render_template
- 行为型设计模式之解释器模式(Interpreter)
- 让CentOS 5.3支持ntfs分区
- mysql语句中出现中文的情况下,在java程序中不会有结果,也不会报错.
- MP4转AVI转AMV教程:教你把B站视频导入你的MP3MP4随身听播放器
- fclose用法matlab,fclose和close之间的区别
- 线性系统和非线性系统——《应用非线性动力学》读书笔记
- 天池大数据竞赛第一名,上海交通大学人工智能实验室如何用AI定位肺结节
- 浅谈Java类加载:ClassLoader
- NLP在线医生(三)
- 康托展开(hdu1430)
- 问句识别:基于Xgboost的中文疑问句判断模型
- 有关shift的6大快捷键,同事绝对不会告诉你!
- 微信 for BlackBerry
- 2021-08-13 【翻译】Mel Frequency Cepstral Coefficient (MFCC) tutorial
热门文章
- AlphaCode 惊世登场!编程版“阿法狗”悄悄参赛,击败一半程序员
- 使用FormData格式上传图像并预览图片
- AD域创建及加入域的办法
- 数字图像处理第二章——数字图像基础
- 十分钟文档化你的C++代码——DoxyGen
- 【译】SafetyNet:Google对Android的篡改检测 (SafetyNet: Google's tamper detection - Part 1 )
- php h m s 转为秒,将m³/s换算为m³/h (立方米每秒换算为立方米每小时)
- 【美食记】传统非遗美食——鬼包子
- js统计字符串中字母个数以及统计最多字母数
- php页眉,自定义页眉