Machine Learning Security: Threats,Countermeasures, and Evaluations论文笔记

本文主要是介绍Machine Learning Security: Threats,Countermeasures, and Evaluations论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、概述

A、机器学习概述

B、为什么机器学习会受到攻击

二、对机器学习的攻击

A、训练集中毒(Training set Poisoning)

B、训练集中的后门

C、对抗性攻击实例

D、模型提取攻击

E、恢复敏感的训练数据

F、关于攻击的讨论

三、防御

A、针对中毒攻击的防御

B、防御后门攻击

C、防御对抗性的例子攻击

D、防御模型窃取者的攻击

E、受隐私保护的机器学习技术,反对恢复敏感的训练数据

F、关于防御的讨论

四、安全评估

A、安全设计

B、使用强攻击进行评估

C、评价指标

五、未来方向

六、结论


一、概述

A、机器学习概述

1、阶段:机器学习系统可以分为两个方面:

1)训练阶段,其中算法  从训练数据中学习,用 model 形成模型参数; 

2)测试阶段,训练后的模型 应用于特定任务,例如分类,给出 输入数据的预测标签。
2、算法:算法用于从训练中学习设置以获得带有参数的模型
分为 神经网络(NN)算法非神经网络算法
NN算法:深度神经网络(DNN)、卷积神经网络网络(CNN)、循环神经网络(RNN)等
non-NN算法:Support Vector Machine(SVM)、k-means(k均值)、 Naive Bayes朴素贝叶斯
3、对抗模型中的实体:数据所有者、系统/服务提供商、客户、攻击者;
(系统/服务提供商 构建算法、训练模型和 然后执行任务或提供服务)

B、为什么机器学习会受到攻击

在训练阶段,深度学习网络中大量的训练数据和训练过程的计算复杂度导致:1)培训程序外包;2)作为知识产权(IPs)的第三方的预先训练的模型被集成到网络中;3)大量数据来自不受信任的用户或第三方,没有经过有效的数据验证。
机器学习即服务:机器学习模型可以在服务器或云上工作,而客户机可以通过预测API查询模型。
用于训练该模型的大量数据往往是敏感的,而且该模型的参数具有很大的商业价值,因此是保密的。这些都是攻击者在测试阶段中所攻击的目标。
DNN模型在高维空间的线性性是容易受到敌对示例攻击的可能原因。
训练数据不完整是存在敌对例子的原因之一。对抗的例子是测试集中概率低的角情况,这表明训练数据不足且不完整。
通过过拟合进行成员推理攻击恢复敏感数据或属性。

二、对机器学习的攻击

机器学习安全相关问题被分类为 五类: 训练集中毒;训练集中的后门;对抗性实例攻击;模型盗窃;敏感训练数据的恢复(包括模型反演攻击和成员推理攻击)
前两种攻击发生在训练阶段,而后三种攻击发生在测试阶段

A、训练集中毒(Training set Poisoning

以误导机器学习模型的预测而对训练集的恶意操作称为中毒攻击。
中毒发作的概述如图3所示。
表1总结了训练集中毒方法的类型、目标、工作机制、效果、优缺点。
1)针对non-NN模型的中毒攻击
Ⅰ 针对异常检测或安全检测的应用程序:机器学习应用于许多安全检测应用中,如异常检测和恶意软件检测
①基于主成分分析(PCA)的骨干网络异常检测系统的三种中毒攻击
②基于机器学习的入侵检测系统(IDS)上使用边缘模式检测(EPD)算法设计中毒攻击,称为慢性中毒攻击
Ⅱ 目标生物特征识别系统:机器学习技术也应用于自适应生物识别系统,以适应用户生物特征的变化,如老化效应,攻击者可以利用更新过程来危害系统的安全性
①针对基于PCA的人脸识别系统的中毒攻击,通过提交一组精心设计的假脸(即有毒的样本)并声称自己是受害者,系统模板将由于自适应更新过程而逐渐受到损害
Ⅲ 针对SVM:注入精心制作的训练数据,以增加SVM分类器的测试误差。采用基于SVM最优解的梯度上升策略来构建中毒数据。该方法采用优化公式构建中毒数据,可以进行核化,但需要对算法和训练数据的全面了解。
Ⅳ 目标聚类算法:攻击者可以通过在训练数据中引入少量的中毒样本来毒害聚类过程。这些方法首先计算两个聚类之间的距离,然后在两个聚类之间插入中毒数据,这可能会混淆两个聚类之间的边界,因此,聚类算法将错误地将两个不同的集群合并为单个集群。这些方法要求攻击者了解目标聚类算法、训练数据和特征空间等。
Ⅴ 目标算法或处理方法:中毒攻击也可以用来攻击特定的机器学习算法或处理方法。特征选择方法的中毒攻击,如岭回归、弹性网和最小绝对收缩和选择算子(LASSO),对协同过滤系统的中毒攻击,将中毒攻击形式化为一个优化问题并使用梯度上升策略进行求解,研究线性回归上的中毒攻击,并利用数据的统计特性来生成中毒数据。
Ⅵ 强数据中毒和在线学习中毒:一种强烈的中毒攻击,可以绕过现有的数据消毒防御,将中毒样本放置在彼此附近,以逃避异常检测,并对优化问题设置了一些约束条件,以逃避检测。
以往的中毒攻击工作大多是在离线学习的情况下。Wang和乔杜里提出了一种针对在线学习情境的中毒攻击,其中训练数据以流的形式输入。他们将他们的攻击表述为一个优化问题,并使用梯度上升策略来解决它。此外,该方法只修改了输入流中特定位置的训练数据,以减少搜索空间,从而提高了攻击效率。同样,Zhang和Zhu 提出了一种改进的在线中毒攻击,这需要对训练过程的了解有限。他们将这种攻击表述为随机最优控制,并提出了两种攻击算法,即基于模型预测控制(MPC)的攻击和基于强化学习的攻击。
2)针对 NN 模型的中毒攻击
使用GAN进行中毒攻击,具体来说,以自动编码器作为生成器,以目标模型作为鉴别器,计算中毒数据对模型的影响。该方法加快了中毒数据的生成,可以快速找到有效的中毒数据,但该方法需要频繁地与目标模型进行交互。
使用后梯度优化对深度学习进行中毒攻击。将中毒攻击从二进制算法扩展到多类问题。该梯度是通过自动微分法计算出来的。还逆转了学习过程,以降低攻击的复杂性。此外,与测试阶段的对抗性例子相似,训练阶段的中毒例子也可以很好地推广到不同的学习模型中。然而,该方法每次优化一个中毒数据,这需要较高的计算开销。
3) 特定应用场景中的中毒攻击
针对医疗保健数据集的中毒攻击,通用错误和特定错误都可以实现,这在医疗保健系统中是灾难性的。
对推荐系统的中毒攻击。他们根据优化问题生成精心制作的评分的假用户,并将它们注入到推荐系统中。通过这种方式,攻击者可以向尽可能多的人推荐一个目标实例。
针对人群感知系统的中毒攻击框架。恶意工作者可以伪装成正常的工作者来逃避检测,同时实现最大的攻击效用。

B、训练集中的后门

攻击者可以创建一个隐藏在训练数据或预训练模型中的后门,后门不会影响模型的正常功能,但一旦一个特定的触发条件到达,后门实例将被模型错误地分类为攻击指定的目标标签。

后门攻击的概述如图4所示

后门攻击工作的总结如表2所示

1) 后门攻击

一个名为BadNet的恶意训练的网络。当一个特定的输入到达时,BadNet可能会导致模型的不良行为(手写体数字分类器和路标分类器上的有效性)。

学习系统的后门。这些后门是由由第三方提供的原始学习模块(PLMs)引入的。集成到机器学习系统中的恶意PLMs一旦满足了预定义的触发条件,就会导致系统故障。

使用数据中毒对深度学习模型的后门攻击。具体来说,将中毒样本注入训练数据集,以植入一个后门。他们的攻击可以在弱攻击模型下工作,这意味着它不需要关于模型和训练集的知识。仅注射50个中毒样本,攻击成功率[33]90%以上。

在CNN模型中通过注入隐形扰动进行后门攻击。特定的嵌入式模式将被识别为由攻击者定义的目标标签。

对CNN的后门攻击,即它们破坏目标类的样本而没有标签中毒(MNIST数字分类器和交通信号分类器的攻击)。

对联邦学习的后门攻击,这被认为是一个安全的隐私保护学习框架。恶意参与者可以通过使用模型替换来将秘密后门功能引入全局模型。

在这些方法中,攻击者首先将设计良好的后门信号添加到干净数据中,生成中毒数据,然后将中毒数据注入训练集,对目标模型进行再训练。经过再训练后,将一个特定的后门嵌入到目标模型中。这些方法是隐形的,可以在不影响模型性能的情况下执行后门攻击,但是这些方法需要参与到模型的训练过程中,或重新训练模型。

2) 机器学习中的木马攻击

后门也可以称为木马

神经网络IPs中的神经木马,它是插入到神经网络中的恶意函数

三种神经木马缓解技术:输入预处理、再训练和异常检测

预先训练的神经网络模型中提出神经级特洛伊,命名为PoTrowan。PoTrowan保持非活动状态,只会在极少数情况下触发,从而使模型产生恶意输出。具体来说,设计了两种触发器(单神经算法和多神经),并根据攻击者是否能够访问目标标签的训练数据设计了两种有效载荷。

将木马插入到神经网络。首先,逆神经网络来生成木马触发器。然后,重新训练神经网络模型,以向神经网络注入恶意的有效负载。在这些方法中,攻击者需要有对目标神经网络的全面知识,这在实践中很难获得。

C、对抗性攻击实例

对抗性的例子是攻击者精心构建的对输入数据的干扰,导致机器学习模型出现错误。

对抗性实例攻击可以进一步分为两类:错误通用攻击,这只会使模型出错;以及特定于错误的攻击,其目的是使模型错误地识别对抗性的例子来自特定的类。表3给出了关于对抗性示例攻击的工作总结。

1) 早期的逃避攻击非深度学习算法

强调了对抗性的分类问题,即对手试图使分类器产生错误的预测。此外,将分类定义为分类器和对手之间的博弈,并给出了一个最优策略。引入了对抗性学习问题,即对手试图通过发送大量查询来对分类器进行逆向工程。通过这种方式,对手可以找到分类器无法识别的“恶意”实例。

使用统计机器学习来攻击垃圾邮件过滤器,使其无用或实现聚焦目标。

将规避攻击转化为一个优化问题,并采用基于梯度下降的方法进行求解。通过增加对手的知识和能力来评估模型的安全性。证明了由基于梯度的方法生成的恶意例子可以逃避PDF恶意软件的检测。

探索了分类器(PDFRATE)在逃避攻击下的性能,发现即使在简单攻击下,pd器的分类性能也会显著下降。根据具有不同知识和能力的攻击者,对线性分类器(安卓恶意软件检测工具(Drebin)实施了多次逃避攻击。

在这些逃避攻击中,攻击者根据检测器的反馈,修改对检测器影响最大的特征。由这些方法生成的恶意实例可以逃避对安全相关应用程序的检测。然而,这些逃避攻击要求攻击者知道目标算法或目标系统的特征提取算法所提取的特征,这在实践中是很难获得的。此外,攻击的成功率取决于攻击者有多少知识。

2) 对抗性的例子攻击深度学习

对深度学习算法的对抗性示例攻击的管道如图5所示

快速梯度符号法(FGSM)

基本迭代法(BIM):没有采取一个大的步骤来增加分类器的损失,而是尝试迭代地采取多个小步骤,以便在每个步骤后调整方向

雅可比矩阵的显著性映射攻击(JSMA):只干扰图像中的几个像素,而不是整个图像。对手只需要知道模型的结构

最初的对抗性例子是最小的扰动,但在某些情况下,更合理的假设是假设对手想要最大化分类器对错误预测的可信度

早期的工作是计算针对单个模型的扰动,而更强大的攻击可以在不同的模型中很好地产生扰动。研究表明,在不同的模型之间,特别是具有相似结构的模型之间存在可转移性。

关于对抗性例子的其他三个研究方向是从错误通用攻击到特定错误攻击,从白盒场景到黑盒场景,以及从实验室条件到现实世界条件。例如,Papernot等[58]提出了一种黑盒对抗攻击策略,该攻击策略是攻击者根据选择的输入观察DNN的输出,然后建立目标DNN模型的替代模型。他们使用替代模型来生成对抗性的例子,这些例子在目标模型和[58]中都被发现是有效的。

在这些工作中,[1],[2],[46]-[53],对抗性的例子主要是基于梯度或优化生成的。基于梯度的方法计算损失函数的梯度,并根据梯度对输入数据添加扰动,生成对抗性的例子。基于优化的方法将对抗性的例子生成问题转化为优化问题。优化的目标是,在对抗性的例子中的扰动不仅会误导模型,而且不会被人类感知。与早期针对非深度机器学习算法的规避攻击相比,这些针对深度学习算法的对抗性实例攻击不需要攻击者知道目标系统所使用的特征提取算法。此外,所生成的对抗性实例中的扰动较小且难以察觉,可以获得较高的攻击成功率。然而,由于许多物理因素(如角度、距离等)的影响,这些数字对抗性的例子在现实世界的[59]条件中已经失败或攻击成功率较低。

几个有用的工具箱用于生成对抗性的例子:Cleverhans , AdvBox , Adversarial-Playground

3) 在现实世界条件下的对抗性攻击

现实世界条件下的对抗性攻击:1)手机摄像头攻击;2)人脸识别系统攻击;3)路标识别攻击;4)三维物体攻击

路标识别攻击:第一种是海报打印攻击,攻击者将C&W攻击和其他算法生成的敌对示例作为海报打印出来,然后将其叠加在真实的路标上。第二种是贴纸扰动攻击,攻击者将扰动打印在纸上,然后将其粘贴到真正的路标上。这些在物理条件下的扰动可以成功地使模型发生错误分类,例如,停止符号被识别为速度限制符号。

手机摄像头攻击: 打印由FGSM、BIM等生成的对抗性示例。然后,用手机给打印出来的敌对例子拍照。最后,使用张量流的安卓摄像头演示来对这些图像进行分类。结果表明,这些图像大多是错误分类的。这表明,对抗性的例子在印刷和拍照下是稳健的。

人脸识别系统攻击:在物理条件下工作的对抗性例子,这可以允许攻击者逃避系统识别或模拟其他人。攻击者会打印并佩戴带有附加扰动的眼镜框。然后通过人脸识别系统对攻击者进行验证。结果表明,戴着这种眼镜的攻击者会被错误地识别为另一人,从而避免了对人脸识别系统的检测。

三维对象攻击:在现实世界中的三维对象是一个困难的目标,以生成对抗性的例子,因为它涉及到许多角度。提出了一个Expectation Over Transformation(EOT)框架,该框架可以在不同的对象转换上构造对抗的例子,从而可以打印对抗的3D对象。他们的实验表明,一只3D打印的海龟将被ImageNet归类为步枪。

这些对抗性的例子攻击[46],[53]-[55],考虑了各种物理因素的影响,如视角、距离、照明等,使生成的对抗性的例子对物理条件具有鲁棒性。因此,所生成的对抗性例子可以在真实的物理条件下取得成功。然而,与数字对抗例子相比,这些物理对抗例子中添加的扰动更大更明显,容易在视觉上注意。

D、模型提取攻击

最近的研究表明,对手可以通过观察输出标签和对所选输入的置信度水平来窃取机器学习模型。这种攻击,也被称为模型提取攻击或模型窃取攻击,已成为一种新兴的威胁。模型提取攻击工作的总结如表4所示。

E、恢复敏感的训练数据

除了上述模型提取攻击外,对机器学习的另外两种隐私相关攻击有: (i)成员推理攻击,攻击者在训练模型时试图确定是否使用了特定的样本数据;(ii)模型反演攻击,攻击者推断训练数据的一些信息。与模型提取攻击类似,成员推理攻击和模型反演攻击也是针对流行的机器学习即服务的攻击。这三种与机器学习模型的隐私相关的攻击如图6所示。表5总结了恢复敏感训练数据的攻击情况。

1) 模型反演攻击

首先提出了药物遗传学任务中的模型反演攻击。通过使用黑盒访问和关于患者的辅助信息,攻击者可以恢复患者的基因组信息。利用预测的置信值进一步提出了一种模型倒置攻击。展示了对基于决策树的生活方式调查和基于神经网络的面部识别的攻击。例如在面部识别模型中,知道用户姓名的攻击者可以恢复用户面部的可识别图像。这些方法要求攻击者知道数据的非敏感属性,这在实际中可能很难获得。

2) 成员推理攻击

首先说明了认知系统中的安全威胁。具体来说,攻击者可以通过仅使用模型的公共可访问的服务来访问机密的训练数据或复制处理模型。后提出了所谓的成员推理攻击,在该攻击中,对手可以估计给定的数据是否在目标模型的训练集中。特别是,使用目标模型对训练数据和非训练数据的预测来训练一个成员推理模型。根据目标模型的输出,生成的成员推理模型可以识别目标模型对其训练数据和非训练的数据的预测差异。但成员推理攻击的成功取决于模型的过拟合。如果是一个广义良好的模型,则成员推理攻击的成功率较低。

3) GAN基于强大的攻击

为了保护用户的私有数据,研究人员最近提出了协作深度学习框架,其中双方在本地训练他的模型,只有一小部分参数被共享。还引入了差异隐私来混淆保护的参数。然而,一种基于生成对抗网络(GAN)的强攻击,可以破坏上述分布式或联邦框架。对手训练一个GAN来生成私有训练集的等效样本,其中生成的样本与私有训练集具有相同的分布。结果表明,基于差异隐私的协作深度学习框架在面对此类攻击时是无效的。然而,攻击者需要是协作深度学习框架的内部人员,该框架被允许从服务提供商那里获取模型参数。

F、关于攻击的讨论

在过去的十年里,大多数对机器学习的攻击都是对抗性的例子攻击,而其他四种类型的攻击则明显较少。其中,对图像的对抗性实例研究较多,而对语音和文本的对抗性实例研究相对较少。近年来出现了与隐私相关的攻击,并受到越来越多的关注。以下总结了机器学习攻击的步伐:

1) 攻击转向更实际和真实的物理条件,如第二-C.3节所述的真实世界条件中的对抗性攻击。例如,攻击手机或监控摄像头上的人脸识别系统,或攻击无人驾驶汽车的路标识别系统。

2) 这些攻击越来越强,甚至可以颠覆人类的传统认知。例如,最先进的对抗性的例子不仅可以使模型输出错误的预测(例如,错误地识别停止标志作为限速标志),但也可以使模型不知道这是一个路标或不知道这是一个人。例如,通过将打印出的对抗性示例图片粘贴到衣服上,人类可以将自己隐藏在人的检测器面前。这种类型的攻击可以用来躲避监视系统。

3) 针对生物识别认证系统的攻击正在出现。在智能物联网时代,认证和控制是两个关键特征。有许多基于生物特征的认证和控制系统,如基于指纹和基于语音的系统。然而,上述攻击可以成功地突破这些生物识别认证系统,从而威胁到控制系统的安全。例如,智能语音伪造可以欺骗自动扬声器验证系统,从而侵入一个系统。

三、防御

图7总结了现有的机器学习防御技术,其中包括针对上述五种安全威胁的对策。

A、针对中毒攻击的防御

根据它是否针对神经网络模型,讨论了针对中毒攻击的防御方法。表6总结了现有的针对中毒攻击的防御技术。

1) 在非NN模型中防御中毒攻击 

异常检测或安全相关检测中的防御:提出了一种防御技术,名为ANTIDOTE,以对抗异常探测器上的中毒攻击。

ANTIDOTE使用稳健的统计数据来减轻异常值的影响,并可以拒绝中毒的样品。中毒攻击缓解是异常值检测问题,这些问题数量较少,与正常训练数据相比,分布发生了变化。因此,使用标记分类器,这是一种集成方法来减轻这些异常值(中毒样本)在训练集上的影响。具体来说,使用不同的训练数据来训练多个分类器,并结合多个分类器的预测,以减少训练集中异常值的影响。

KUAFUDET防御技术,以对抗恶意软件检测系统中的中毒攻击。KUAFUDET使用自适应学习框架,并使用检测器过滤可疑的假阴性,然后将其输入训练过程。这些方法可以提高学习算法的鲁棒性,减轻异常值对训练模型的影响,但这些方法主要关注二值分类问题,并引入额外的开销。

防御SVM: 一个基于博弈论的分布式SVM防御。使用博弈论来分析攻击者和学习者之间的利益冲突。纳什均衡用于预测学习者在对抗性环境中的结果。该方法可以防止错误的更新,防止中毒数据降低分布式SVM的性能。然而,这种基于博弈论的防御技术需要昂贵的计算开销。

算法和处理方法中的防御:一种针对中毒攻击的鲁棒线性回归方法。该技术首先采用低秩矩阵分解,然后采用主成分回归对有毒样本进行修剪。

一种名为TRIM的防御算法,用于回归学习。TRIM使用迭代方法估计回归参数,而裁剪损失函数用于去除和分离可疑的中毒点。

通过使用异常值去除和风险最小化来构建针对中毒攻击的防御方法。

一种基于数据来源的防御技术,用于在线和再训练的应用程序。实际上,它利用训练数据的来源和转换信息来检测中毒点。

2) 在NN模型中防御中毒攻击

基于计算模型的损失,提出了神经网络对抗中毒攻击的对策,引入比阈值更大损失的输入数据被认为是可疑数据。

AUROR系统来保护协作深度学习系统。由于中毒数据对模型学习到的特征的分布有很大的影响,因此AUROR通过识别异常特征来过滤出可疑的用户。AUROR在不影响目标模型性能的情况下抵御中毒攻击,但该方法的防御性能受到恶意用户数量的影响。

3) 在特殊的应用场景中防御中毒攻击

通过监测训练集和添加数据的准确性偏差来保护医疗保健系统的数量。

B、防御后门攻击

表7总结了对后门攻击的防御措施。

一种激活聚类方法,通过检测和去除后门来保护DNN。所提出的激活聚类方法可以检测到有毒的训练数据,即使是在多个后门场景下。

DNN对抗后门攻击的两种防御方法,即修剪和微调。提出了一种将剪枝和微调相结合的方法,称为精细剪枝,以减轻后门的影响。

使用输入过滤器来识别具有触发器的输入,使用神经元修剪来修补模型,并使用基于未学习的模型补丁。

使用SVM和决策树进行输入异常检测;添加输入预处理器,即对合法训练数据进行训练的自动编码器,可以根据输入数据的分布进行预处理;继续再训练,使模型“忘记”木马。

一种针对DNN的运行时木马检测技术,名为STRIP。其思想是扰动输入,并根据熵来观察预测的随机性。如果它是一个木马输入,对这个扰动的预测几乎是不变的。如果它是一个干净的输入,那么由这个扰动引起的预测变化将会很大。该方法速度快,可以在运行时检测到木马,但该方法在面对自适应攻击时可能会失败。

C、防御对抗性的例子攻击

表8给出了针对对抗性例子的防御措施的总结。

1) 早期在非深度学习算法的背景下防御逃避攻击 

使用博弈论来制定对抗性的分类问题,它可以根据对手的策略产生最优的分类器。

测量每封电子邮件对系统性能的影响,并使用动态阈值设置,使排名对攻击引起的分数变化不变。

一种鲁棒学习策略,通过利用博弈论来分析鲁棒性来避免特征超重。

平均分类符和特征重加权来提高鲁棒性,并对垃圾邮件分类任务进行评估。

一种迭代再训练的方法来提高分类器的鲁棒性。通过迭代地向训练数据中添加可以逃避检测的恶意实例来重新训练分类器。迭代再训练方法的规避攻击风险最小,提高了分类器抵抗规避攻击的能力

一种恶意软件检测方法,称为sec防御器,该方法利用分类器的再训练和安全正则化来增强分类器的鲁棒性。

一种对抗性特征选择方法来抵御逃避攻击。该方法所选择的特征可以提高模型的性能,也可以提高模型抵抗逃避攻击的能力

2) 在深度学习算法的背景下防御对抗性的例子

两类:完整防御技术和仅检测技术。完整的防御技术旨在使模型能够识别一个对抗性例子的正确标签。另一方面,仅检测技术只需要识别输入实例是否是一个潜在的敌对示例。

完整的防御方法:一种快速对抗性例子生成方法,称为“快速梯度符号法”(FGSM),并使用这些生成的对抗性例子进行对抗性训练。对抗性训练可以使模型正规化,从而提高模型的鲁棒性。

模型容量对鲁棒性有显著影响,因此需要一个更大的模型容量来对抗对抗性攻击。

一种防御模型,称为深度收缩网络(DCN)。DCN在训练阶段使用类似于收缩自动编码器的平滑惩罚。因此,它可以有效地降低模型的输出对输入的敏感性,从而提高模型对敌对示例的鲁棒性。

一种防御技术,称为防御蒸馏,它使用两个网络,一个初始网络和一个蒸馏网络。通过蒸馏传递概率向量中包含的知识,从而提高DNNs的泛化能力,从而增强其对扰动的鲁棒性。

一种通过正则化DNN的输入梯度的密度技术。该方法惩罚输出的变化程度到输入的变化程度。因此,小的对抗性扰动不能显著地改变模型的预测。

使用输入转换来对抗对抗图像。将输入图像应用转换,例如,JPEG压缩,位深度减少,图像绗缝和总方差最小化,然后将它们输入到ImageNet。实验结果表明,卷积网络分类器经过训练后,卷积网络分类器能够有效地抵御对抗性扰动。这表明,一些图像变换操作可以消除扰动。

测试阶段的随机化可以减轻对抗性例子的影响。特别地,在输入到模型之前,对输入应用了两个随机化操作,随机调整大小和随机填充。结果表明,这些随机化操作可以同时防御一步式和迭代式的对抗性攻击。

仅检测方法:使用特征压缩操作来检测对抗性的例子。采用了两种特征压缩操作,包括减少每个像素的颜色深度和进行空间平滑。然后,比较DNN模型对原始输入和压缩输入的预测。如果预测之间有很大的差异,则将输入视为一个敌对的例子。

MagNet防御框架。在磁网中使用了一个或多个探测器网络和一个重整器网络。被发现有较大扰动的实例将被拒绝。另一方面,改革者网络将具有小扰动的实例重构为正常实例,然后将改革后的实例输入分类器以进行正确的分类。

通过增强一个检测器子网络来加强DNN模型,该子网络被训练用于识别输入中的对抗性扰动的分类任务。

D、防御模型窃取者的攻击

表9总结了对模型窃取攻击的防御措施

针对模型窃取的一种直观的防御方法是,当输出标签时,不提供置信度信息。然而,这将会影响到服务的质量。

通过在置信信息中注入欺骗性的扰动/噪声来误导对手,因此,对手只能使用标签来窃取模型,并且需要更多的查询来窃取模型。

MLCacuple框架,该模型允许在用户侧执行,这样用户就可以保护其数据的隐私,而服务器仍然可以通过知识产权保护来控制该模型。但是,这种方法需要对用户的数据进行加密,这将引入额外的计算开销。

一种检测DNN模型窃取攻击的技术,名为PRADA。由于对手通过预测API窃取模型,PRADA分析查询的分布并检测异常连续查询。

E、受隐私保护的机器学习技术,反对恢复敏感的训练数据

机器学习模型对敏感训练数据恢复的防御可大致分为三类: (1)基于加密原语的方法,如差异隐私、同态加密;(2)分布式学习的安全聚合/集合,如联邦学习、教师集合的私人聚合(PATE);(3)基于可信平台/处理器的方法。表10总结了受隐私保护的机器学习技术对敏感训练数据恢复的影响。

1) 基于加密原语的方法 

基于差异隐私的深度学习框架。此外,提高基于差异隐私的训练效率的技术,从而在隐私、效率、软件复杂性和模型质量之间实现平衡。

基于同态加密的方法采用加密原语,在不影响模型精度的情况下保证了训练数据的安全性和隐私性。

2) 分布式学习的安全聚合/集成

分布式学习框架:隐私保护的分布式学习框架,其中多个实体可以联合学习一个神经网络模型,而不共享自己的数据,只共享学习参数的一个小子集。其关键思想是,基于随机梯度下降的深度学习算法可以在并行中执行。

一种关于隐私保护机器学习模型的新协议,包括逻辑回归、线性回归和神经网络。该协议在一个双服务器模型中工作,其中两个服务器通过使用安全的双方计算在分布式私有数据上训练它们自己的模型。

一个基于安全的多方计算(安全聚合)的联邦学习框架。在分布式学习模型中,安全聚合可以保护每个用户模型的梯度信息。

一种保护隐私保护的培训模式,名为PATE。使用不相交的敏感数据集训练多个模型,称为教师模型。学生模型是基于所有教师的有噪声聚合的输出来学习的,因此无法访问单个教师模型的数据或参数。将PATE扩展到有错误的大型任务和未进行的管理的数据集。具体来说,开发了新的噪声聚集方法,以更少的噪声集成教师模型。

3) 受信任的平台/基于处理器的方法

在一个可信的平台上运行机器学习模型。使用受信任的平台来防止攻击者访问模型,并为模型的训练数据提供一个安全的隐私保护机制。

4) 面向特定应用的

在基于图像的深度学习任务中使用图像伪装技术进行隐私保护。他们证明了经过转换和块级排列的图像可以保证DNN模型的隐私性和可用性。该方法简单、有效。但是,该方法仅适用于保护图像数据的隐私性。

F、关于防御的讨论

在训练阶段,防御工作是对抗中毒攻击或后门攻击,可以称为数据消毒,将异常中毒数据首先过滤掉,然后进入训练阶段。异常检测器通常基于训练损失、最近邻等。

在测试阶段,针对对抗性例子的防御技术可以称为平滑模型输出,即降低了模型输出对输入变化的敏感性。针对敏感信息泄漏的防御技术主要分为三大类:分布式学习框架、传统的基于密码原语的方法(如基于差异隐私、同态加密)和基于可信平台的方法。

四、安全评估

A、安全设计

在一个典型的机器学习系统设计流程中,设计者侧重于模型的选择和性能评估,但不考虑安全问题。随着上述对机器学习系统的安全攻击的出现,有必要在设计阶段对机器学习系统进行安全评估,并使用最新的安全机器学习技术。这种范式可以称为安全设计,这是对典型的性能设计范式的必要补充。例如,Biggio等人[41]提出了一个分类器安全评估的框架。他们通过增加对手的能力和知识来模拟不同级别的攻击。类似地,Biggio等人[56]建议通过经验评估一组潜在攻击下的性能退化来评估分类器的安全性。特别是,它们生成训练集和测试集,并模拟攻击以进行安全评估。

B、使用强攻击进行评估

Carlini和Wagner [50]评估了十项最近的检测方法,并表明这些防御可以通过使用具有新的损失函数的强攻击来绕过。因此,建议使用强攻击技术对机器学习算法进行安全性评估,其中包括以下两个方面。首先,在白盒攻击下进行评估,如攻击者对模型、数据和防御技术有完善的了解,并具有很强的操纵数据或模型的能力。其次,在高置信度攻击/最大置信度攻击下进行评估,而不是仅使用[3]进行最小扰动攻击。Carrini和Wagner [49],[50]表明,针对最小扰动攻击提出的防御技术可以通过使用高信心攻击来绕过。对对抗性例子的初步工作旨在分析深度学习算法对最小扰动的敏感性。然而,为了分析深度学习算法的安全性,使用最大置信对抗攻击,可以反映算法在更强大的攻击[3]下的安全性。

C、评价指标

首先,建议使用更多的指标[50],例如,不仅使用准确性,而且使用混淆矩阵(真阳性、假阳性、真阴性、假阴性)、精确度、召回率、ROC(接收者工作特征)曲线和AUC(ROC曲线下的面积)来报告学习算法的性能,从而反映完整的性能信息,便于与其他工作进行比较。其次,可以使用安全性评价曲线[3]。Biggio和Roli [3]提出使用安全性评估曲线来评估学习系统的安全性。安全性评价曲线表征了不同攻击强度和不同知识水平攻击者[3]下的系统性能,可以对不同攻击强度下的系统性能进行综合评价,便于不同防御技术的比较。

五、未来方向

1) 会在真实的物理条件下进行攻击。针对机器学习模型的安全攻击次数较多,其中大部分都在数字模拟实验中得到了验证。这些攻击在现实物理条件下的有效性,以及针对真实物理世界条件的工作,是活跃的研究课题。例如,物理对抗的例子可以欺骗路标识别系统,但这些物理对抗的例子在视觉上是明显的和不自然的。最近,许多工作旨在产生自然健壮的物理对抗性的例子。此外,基于DNN的智能监控系统已被广泛应用。对于人类来说,是否有可能通过对抗性的例子在物体探测器前实现隐形效果?由于人类阶级内部差异较大,以及人类的动态运动和不同姿势,这是一个比数字对抗示例攻击和面向路标的对抗示例攻击更具挑战性的任务。

2) 隐私保护机器学习技术。近年来,机器学习的隐私性受到了越来越多的关注。深度学习的部署需要解决隐私保护的问题,包括从服务提供商的角度保护模型的参数,以及从用户的角度保护用户的隐私数据。目前,基于密码原语的机器学习方法的效率需要提高,这通常会给模型的训练带来很高的开销,可能会降低模型的性能。基于分布式或集成的训练框架仍然面临着效率和性能问题。有必要研究安全高效的机器学习算法、模型和框架。一个结合硬件平台、软件和算法的协同设计来保护DNN的隐私是一个很有前途的方向。

3) 对DNN的知识产权(IP)保护。深度学习模型的训练需要大量的训练数据和大量的硬件资源来支持。培训过程通常需要几周或几个月的时间。从这个意义上说,机器学习模型是模型提供商的有价值的商业知识产权,因此需要得到保护。目前,只有少数基于水印的IP保护工作的机器学习模型[124]。更有效、更安全的DNN IP保护方法仍然是一个开放性的问题。

4) 远程或轻量级机器学习安全技术。机器学习将被广泛应用于分布式、远程或物联网场景中的平台。在这些资源受限的场景中,许多现有的安全技术并不适用。如何提供可靠有效的远程或轻量级机器学习安全技术是一个很有前途的研究方向。

5) 系统的机器学习安全评估方法。到目前为止,在机器学习安全评估方面所做的工作还很少。具体来说,目前还没有一种全面的方法来评估模型的安全性和鲁棒性,以及模型的训练数据和参数的安全性和隐私性。也没有统一的方法和综合的指标来评估当前的攻击和防御的性能。需要研究和建立一种涉及机器学习系统的安全性、鲁棒性、隐私性以及相应的评价指标的系统评价方法。

6) 这些攻击和防御背后的潜在原因是什么?文献中有一些讨论,但仍缺乏共识。这些攻击背后的原因仍然是公开的问题。此外,该模型的不透明性使得其目前缺乏对该模型输出的解释。然而,在一些关键的应用程序中,如医疗保健和银行业务,应用程序模型的可解释性需要[11]。

六、结论

本文就机器学习系统的安全全面介绍了机器学习系统的整个生命周期的五种攻击类型及其相应的对策。一般的结论是,这些威胁是真实存在的,而且新的安全威胁正在不断出现。例如,研究表明,在对抗性的例子中存在一种可转移性,这意味着对抗性的例子可以很好地推广到不同的机器学习模型之间。结果表明,中毒中毒的例子也可以很好地推广到不同的学习模型中。该可转移性可用于在黑盒场景中有效地发起攻击。由于机器学习模型无法解释的性质,这些攻击的基本原因,即对抗性的例子是一个bug或模型的内在特性,需要进一步研究,本文有望提供全面的指导方针。

这篇关于Machine Learning Security: Threats,Countermeasures, and Evaluations论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/208629

相关文章

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

Security OAuth2 单点登录流程

单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一注销(single sign-off)就是指

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快