Stronger Data Poisoning Attacks Break Data Sanitization Defenses

Stronger Data Poisoning Attacks Break Data Sanitization Defenses

关于data sanitization的介绍

数据消毒?A data sanitization method is the specific way in which a data destruction program or file shredder overwrites the data on a hard drive or other storage device. 提前一步清除异常数据

缺乏中毒数据时,可以获得匹配正确数据的参数,这里展示的是由线性支持向量机在系统数据上获得的决策边界

第二幅图是添加了中毒数据Dp可以很明显的改变学习获得的参数

右:通过丢弃D = Dc∪Dp中的异常值,然后对剩余的进行训练,防御者可以降低攻击者的效率。

 

出发点(motivation):

问题的重要性:基于外部世界数据训练的机器学习模型可能会被数据中毒攻击破坏,这种攻击会将恶意点注入模型的训练集。针对这些攻击的一种常见防御方法是数据消毒:首先在训练模型之前过滤掉异常的训练点。但是数据中毒攻击存在可能会破坏数据消毒防御的方法

 

以前工作有何不足:

我们在实验中测试的现有数据中毒方法都无法规避我们考虑的数据消毒防御,之前的研究表明,针对规避数据清理而优化的攻击实际上可以规避某些类型的防御(意味着局限性很大,很多都不能避免)

 

场景及假设:

Concentrated attacks(集中攻击):有毒数据往往会聚集在几个区域从而显得正常。

假设对抗者不会丢弃任何干净数据                

 

中心思想:

我们开发了三种新的攻击,它们都可以绕过广泛的数据消毒防御=》包括基于最近邻的常用异常检测器、训练损失和奇异值分解(singular-value decomposition SVD)

基于最近邻的常用异常检测器:无监督异常检测算法通常是设计某种策略为每一个数据样本分配相应的异常值得分,根据得分进行排序(得分越高,异常的程度越大)

训练损失不断增大,测试损失不断减小

       奇异值分解对数据的处理,可以使用小得多的数据集表示原始数据集,去除了了噪声和冗余信息,以此达到优化数据提高结果的目的。

具体方案:

 

优化的影响攻击:

影响攻击:我们的目标是在每个Dp(Poisoned data)上执行梯度上升,使测试损失最大。为此,我们需要计算计算各个测试各个数据点的梯度
优化的攻击:

Concentrated attacks集中攻击。原先的有两个问题:它很慢(我们必须计算梯度,并在每次迭代中执行一轮投影步骤),并且产生的中毒点常彼此相距很远(由于初始化的差异),使得它们很容易被检测为异常 我们可以修改算法,使其只包含两个不同的点(i+,1)和(i-,-1)的副本,每个类一个,而不会降低攻击效率。在每次迭代中,我们只需要计算梯度并进行两次投影。

Randomized rounding with the LP relaxation 随机四舍五入与LP松弛???

本来两个问题:圆点互相间隔远,同时也可能会违反约束原则

使用线性规划松弛linear programming relaxation和重复的点:启发式来缓解这些问题

 

KKT攻击,它解决了影响攻击的两个缺点:计算开销和对局部极小值的敏感性。

KKT攻击是基于观察攻击者优化困难的问题,

攻击分为两部分:1)利用快速启发式寻找诱饵参数θ 2)发现中毒数据。这种攻击的名称来自于在步骤2中使用Karush-Kuhn-Tucker (KKT)一阶优化必要条件

(1) using fast heuristics to find decoy parameters θdecoy that we want the defender to learn, and then 2) finding poisoned data Dp such that the defender is indeed tricked into learning the decoy parameters θdecoy. The name of this attack comes from the use of the Karush-Kuhn-Tucker (KKT) first-order necessary conditions for optimality in step 2.)

 

Improved Min-Max Attack

它改进了我们之前的min-max基本攻击。我们min-max攻击依赖于相同的第五节诱饵参数,但与前面两种方法攻击不同的是,它自然处理多层次问题,不需要可行集的凸性。其缺点是假设干净数据和的测试数据是相同的分布我们首先回顾一下min-max-basic攻击,正如Steinhardt等人(2017)所介绍的那样。

Min-Max Attack:

min-max-basic攻击的目标是最大化结合损失,并通过反复添加存在于可行范围内的最高损失点来达到这一目的

该算法自动处理类平衡,因为在每次迭代中,它选择添加一个正或负的点;因此,它可以处理多类攻击,不像KKT或影响攻击。此外,与影响攻击不同的是,它避免了昂贵的双层优化问题,这使得它足够快地运行在更大的数据集上,

改进的方法通过使用诱饵参数(decoy parameter)来自上面提及的方法

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值