机器学习中安全与隐私问题(对抗性攻击)

  近几年,机器学习异常火爆,能够用来解决各类各样的问题,但却不多有人意识到机器学习自己也容易受到攻击,终于Ian Goodfellow和Papernot首次将机器学习的攻击提出,而且作了不少很是重要的研究,这里给出这二位大牛的博客的翻译,有兴趣的朋友能够关注一下,以为仍是颇有意思的研究。本文也是安全方面的学习,有兴趣的但愿能够一块儿讨论学习~~html

转载请注明出处!git

(一)背景

  直到几年前,机器学习算法在许多有意义的任务上都没有很好地发挥做用,好比识别物体或翻译。所以,当机器学习算法没能作正确的事情时,这是规则,而不是例外。今天,机器学习算法已经进入了下一个发展阶段:当呈现天然产生的输入时,它们能够比人类表现得更好。机器学习尚未达到真正的人类水平,由于当面对一个微不足道的对手时,大多数机器学习算法都失败了。换句话说,咱们已经达到了机器学习的目的,但很容易被打破。github

  这篇博客文章介绍了咱们新的Clever Hans博客,咱们将讨论攻击者破坏机器学习算法的各类方法。从学术角度讲,咱们的话题是机器学习的安全性和保密性。这个博客是由Lan Goodfellow和 Nicolas Papernot共同撰写的。Lan是OpenAI的一名研究科学家,也是宾夕法尼亚州立大学安全研究的博士生。咱们共同建立了开源库—— cleverhans,用来对机器学习模型的脆弱性进行基准测试。这个博客为咱们提供了一种非正式的分享关于机器学习安全和隐私的想法,这些想法对于传统的学术出版来讲还不够具体,还能够分享与cleverhans 库相关的新闻和更新。算法

 (二)机器学习安全与隐私

  一个安全的系统是能够依赖的,而且能够保证像预期的同样运行。当咱们试图为系统的行为提供担保时,咱们会想到一个特定的威胁模型。威胁模型是一组正式定义的关于任何攻击者的能力和目标的假设,这些攻击者可能但愿系统的行为不正常。安全

到目前为止,大多数机器学习都是用一个很是弱的威胁模型来开发的,在这个模型中没有对手。机器学习系统的设计是为了在面对天然时表现出正确的行为。今天,咱们开始设计机器学习系统,即便面对一个恶意的人或一个恶意的机器学习对手,咱们也能作出正确的行为。例如,机器学习系统可能在模型被训练(学习阶段)或模型进行预测(推理阶段)时被对手攻击。对手也有不一样程度的能力,可能包括对模型内部结构和参数的访问,或者对模型输入和输出的访问。网络

为了破坏机器学习模型,攻击者能够破坏其机密性、完整性或可用性。这些性质构成了CIA(confidentialityintegrity, or availability)的安全模型。架构

  • 保密性:机器学习系统必须保证未获得受权的用户没法接触到信息。在实际操做中,把保密性做为隐私性来考虑会容易得多,就是说模型不能够泄露敏感数据。好比假设研究员们设计了一个能够检查病人病历、给病人作诊断的机器学习模型,这样的模型能够对医生的工做起到很大的帮助,可是必需要保证持有恶意的人没办法分析这个模型,也没办法把用来训练模型的病人数据恢复出来。
  • 完整性:若是攻击者能够破坏模型的完整性,那么模型的预测结果就可能会偏离预期。好比垃圾邮件会把本身假装成正常邮件的样子,形成垃圾邮件识别器的误识别。
  • 可用性:系统的可用性也能够成为攻击目标。好比,若是攻击者把一个很是难以识别的东西放在车辆会通过的路边,就有可能迫使一辆自动驾驶汽车进入安全保护模式,而后停车在路边。

 (三)机器学习攻击方法

  固然,到目前为止,全部这些都是假设的。到目前为止,安全研究人员已经证实了哪些类型的攻击?本博客的后续文章将会给出更多的例子,可是咱们从三个方面开始:在训练时的完整性攻击,在推理过程当中的完整性攻击,以及隐私攻击。机器学习

3.1 在训练集中下毒在训练时对模型进行完整性攻击

  攻击者能够经过修改现有训练数据、或者给训练集增长额外数据的方法来对训练过程的完整性形成影响。好比假设莫里亚蒂教授要给福尔摩斯栽赃一个罪名,他就可让一个没被怀疑的同伙送给福尔摩斯一双独特、华丽的靴子。当福尔摩斯穿着这双靴子在他常常协助破案的警察面前出现过之后,这些警察就会把这双靴子和他联系起来。接下来莫里亚蒂教授就能够穿一双一样的靴子去犯罪,留下的脚印会让福尔摩斯成为被怀疑的对象。ide

干扰机器学习模型的训练过程,体现的攻击策略是当用于生产时让机器学习模型出现更多错误预测。具体来讲,这样的方法能够在支持向量机(SVM)的训练集中下毒。因为算法中预测偏差是以损失函数的凸点衡量的,这就让攻击者有机会找到对推理表现影响最大的一组点进行攻击[BNL12]。即使在更复杂的模型中也有可能找到高效的攻击点,深度神经网络就是这样,只要它们会用到凸优化。函数

3.2 用对抗性的样本让模型出错 - 在推理时进行完整性攻击

  实际上,让模型出错是很是简单的一件事情,以致于攻击者都不必花功夫在训练机器学习模型参数的训练集中下毒。他们只要在推理阶段(模型训练完成以后)的输入上动动手脚,就能够当即让模型得出错误的结果。

要找到能让模型作出错误预测的干扰,有一种经常使用方法是计算对抗性样本 [SZS13].。它们带有的干扰一般很微小,人类很难发现,但它们却能成功地让模型产生错误的预测。好比下面这张图 [GSS14],用机器学习模型识别最左侧的图像,能够正确识别出来这是一只熊猫。可是对这张图像增长了中间所示的噪声以后获得的右侧图像,就会被模型识别成一只长臂猿(并且置信度还很是高)。

 

  值得注意的是,虽然人类没法用肉眼分辨,可是图像中施加的干扰已经足以改变模型的预测结果。确实,这种干扰是在输入领域中经过计算最小的特定模获得的,同时它还能增大模型的预测偏差。它能够有效地把原本能够正确分类的图像移过模型断定区域的边界,从而成为另外一种分类。下面这张图就是对于能分出两个类别的分类器,出现这种现象时候的示意。

 

 

  许多基于对抗性样本的攻击须要攻击者知道机器学习模型中的参数,才能把所需的干扰看做一个优化问题计算出来 。另外一方面,也有一些后续研究考虑了更现实的威胁模型,这种模型里攻击者只能跟模型互动,给模型提供输入之后观察它的输出。举例来说,这种情况能够发生在攻击者想要设计出能骗过机器学习评分系统从而获得高排名的网站页面,或者设计出能骗过垃圾邮件筛选器的垃圾邮件的时候。在这些黑盒情境中,机器学习模型的工做方式能够说像神谕同样。发起攻击的策略首先对神谕发起询问,对模型的断定区域边界作出一个估计。这样的估计就成为了一个替代模型,而后利用这个替代模型来制做会被真正的模型分类错误的对抗性样本 [PMG16]。这样的攻击也展示出了对抗性样本的可迁移性:用来解决一样的机器学习任务的不一样的模型,即使模型与模型之间的架构或者训练数据不同,对抗性样本仍是会被不一样的模型同时误判[SZS13]。

3.3 机器学习中的隐私问题

  机器学习中的隐私问题就不须要攻击者也能讲明白了。例如说,机器学习算法缺少公平性和透明性的问题已经引发领域内愈来愈多人的担忧。事实上,已经有人指出,训练数据中带有的社会偏见会致使最终训练完成后的预测模型也带有这些偏见。下面重点说一说在有攻击者状况下的隐私问题。

  攻击者的目的一般是恢复一部分训练机器学习模型所用的数据,或者经过观察模型的预测来推断用户的某些敏感信息。举例来讲,智能手机的虚拟键盘就能够经过学习用户的输入习惯,达到更好的预测-自动完成效果。可是,某一个用户的输入习惯下的特定字符序列不该该也出如今别的手机屏幕上,除非已经有一个比例足够大的用户群也会打一样的一串字符。在这样的状况下,隐私攻击会主要在推理阶段发挥做用,不过要缓解这个问题的话,通常都须要在学习算法中增长一些随机性[CMS11]。

  好比,攻击者有可能会想办法进行成员推测查询:想要知道模型训练中有没有使用某个特定的训练点。近期就有一篇论文在深度神经网络场景下详细讨论了这个问题。与制做对抗性样本时对梯度的用法相反[SSS16](这能够改变模型对正确答案的置信度),成员推测攻击会沿着梯度方向寻找分类置信度很是高的点。已经部署的模型中也还能够得到有关训练数据的更多整体统计信息[AMS15]。

(四)总结

  如今是2016年12月。目前,咱们知道许多攻击机器学习模式的方法,并且不多有防护的方法。咱们但愿到2017年12月,咱们将有更有效的防护措施。这个博客的目标是推进机器学习安全和隐私的研究状态,经过记录他们所发生的进展,在涉及到这些话题的研究人员的社区内引起讨论,并鼓励新一代的研究人员加入这个社区。

References

[AMS15] Ateniese, G., Mancini, L. V., Spognardi, A., Villani, A., Vitali, D., & Felici, G. (2015). Hacking smart machines with smarter ones: How to extract meaningful data from machine learning classifiers. International Journal of Security and Networks, 10(3), 137-150.

[BS16] Barocas, S., & Selbst, A. D. (2016). Big data’s disparate impact. California Law Review, 104.

[BNL12] Biggio, B., Nelson, B., & Laskov, P. (2012). Poisoning attacks against support vector machines. arXiv preprint arXiv:1206.6389.

[CMS11] Chaudhuri, K., Monteleoni, C., & Sarwate, A. D. (2011). Differentially private empirical risk minimization. Journal of Machine Learning Research, 12(Mar), 1069-1109.

[GSS03] Garfinkel, S., Spafford, G., & Schwartz, A. (2003). Practical UNIX and Internet security. O’Reilly Media, Inc.

[GSS14] Goodfellow, I. J., Shlens, J., & Szegedy, C. (2014). Explaining and harnessing adversarial examples. arXiv preprint arXiv:1412.6572.

[PMG16] Papernot, N., McDaniel, P., Goodfellow, I., Jha, S., Berkay Celik, Z., & Swami, A. (2016). Practical Black-Box Attacks against Deep Learning Systems using Adversarial Examples. arXiv preprint arXiv:1602.02697.

[PMS16] Papernot, N., McDaniel, P., Sinha, A., & Wellman, M. (2016). Towards the Science of Security and Privacy in Machine Learning. arXiv preprint arXiv:1611.03814.

[SSS16] Shokri, R., Stronati, M., & Shmatikov, V. (2016). Membership Inference Attacks against Machine Learning Models. arXiv preprint arXiv:1610.05820.

[SZS13] Szegedy, C., Zaremba, W., Sutskever, I., Bruna, J., Erhan, D., Goodfellow, I., & Fergus, R. (2013). Intriguing properties of neural networks. arXiv preprint arXiv:1312.6199.

 

原文连接:http://www.cleverhans.io/security/privacy/ml/2016/12/15/breaking-things-is-easy.html

转载请注明出处!

相关文章
相关标签/搜索