更强的数据投毒攻击突破数据清洗防御
Stronger Data Poisoning Attacks Break Data Sanitization Defenses
作者提出三种数据投毒攻击,在 Enron 和 IMDB 上以 3% 投毒数据绕过 5 种数据清洗防御,将测试错误率分别从 3% 升至 24%、从 12% 升至 29%。
攻击者向训练集注入 ε=3% 的投毒点(indiscriminate attack),目标是让防御方学到的线性分类器在测试集上错误率升高;攻击者知道测试集、干净训练集和防御方的训练流程;防御方先用数据清洗(5 种异常检测器之一,每类丢弃 5% 数据)再训练。
- 用外部数据训练的模型易被数据投毒攻击,而常用防御——先用异常检测器过滤可疑训练点(data sanitization)——能挡住不考虑防御的现有攻击。作者问:显式针对异常检测设计的攻击能否绕过这类防御。
- 作者提出三种攻击(influence、KKT、min-max):把投毒点集中在少数位置以骗过敏感检测器,并把攻击写成带防御约束的优化问题;KKT 和 min-max 用 decoy 参数加速并处理 loss 防御,整数特征用随机取整加 LP 松弛处理。
- 在 Enron 和 IMDB 上,3% 投毒数据在 5 种数据清洗防御下将测试错误率分别从 3% 升至 24%、从 12% 升至 29%;不考虑防御的现有攻击则被这些防御击败。KKT 和 min-max 比 influence 更快,min-max 还能处理多分类(MNIST 上 15.2%)。
- 作者指出攻击假设能全局最小化训练损失,对非凸模型是否有效是开放问题;decoy 参数的启发式生成在更复杂防御下可能失效;min-max 只适用于 indiscriminate 设定。实验只用线性模型(SVM、logistic regression)和 5 个数据集,投毒比例不超过 3%。
- 被测模型
- support vector machine (SVM)multi-class SVMlogistic regressionL2 defenseslab defenseloss defenseSVD defensek-NN defense
- 基准
- EnronIMDBMNISTMNIST-1-7Dogfish
- 指标
- test error (0-1)time taken
Koh、Steinhardt 和 Liang 提出三种数据投毒攻击,可绕过基于最近邻、训练损失、奇异值分解和类中心距离的常见数据清洗防御。在线性 SVM 上仅注入 3% 毒数据,Enron 垃圾邮件检测的测试错误率从 3% 升到 24%,IMDB 情感分类从 12% 升到 29%。攻击基于两点思路,把毒点集中到少数位置,并把攻击写成带约束的优化问题,分别用影响函数、minimax 对偶和 KKT 条件近似求解。作者称未考虑清洗防御的既有攻击会被这些防御挡下,并呼吁开发更稳健的投毒防御。
推荐理由三种投毒攻击通过集中毒点并约束优化绕过常见数据清洗防御,为设计更稳健的投毒防御提供了具体攻击基线。
相关热点
0 个事件 · 1 条新闻提到
提到这篇论文的新闻
- Transluce引用了论文编号或链接Transluce 提出嵌入式评估的四个重点方向与实施思路
The existing literature shows that adversarial control over even small amounts of data can significantly shape the trained agent, making comprehensive defense particularly important.
深度解读
这篇论文试图解决什么问题?
作者研究显式针对异常检测设计的数据投毒攻击能否绕过常见的数据清洗(data sanitization)防御。
核心问题:数据清洗防御(先过滤异常训练点再训练)能否被专门针对它设计的数据投毒攻击绕过?作者的回答是肯定的。
- 场景与重要性:高风险场景(自动驾驶、生物识别、网络安全)的 ML 系统常用外部数据训练,攻击者只需创建账户即可注入恶意数据(引言)。
- 现有方法的不足:作者称现有投毒攻击大多只优化攻击预算和输入域约束,不显式规避防御,因此在他们的实验中这些数据清洗防御击败了所有测试过的现有攻击(引言)。
- 核心观察:作者认为异常检测器分两类——对少量点敏感的(如 k-NN)可被集中放置的投毒点骗过;参数化、不敏感的(如 L2)则需要把防御写成约束条件来规避(Section 3)。
- 论文提出:三种攻击(influence、KKT、min-max),均基于集中投毒与约束优化两个思想,并给出理论结果:对 2 类 SVM 和 logistic regression,2 个不同投毒点即可实现任意攻击(Theorem 1)。
- 威胁模型:
- 目标:让防御方学到的参数 θ̂ 在测试集上 0-1 错误率高(indiscriminate attack,测试集与训练集同分布)。
- 知识:攻击者知道测试集 Dtest、干净训练集 Dc 和防御方训练流程;作者称这是 security by design 原则下的保守假设(Section 2.1)。
- 能力:只能添加 εn 个投毒点(实验中 ε=3%),可控制特征和标签。
- 受害系统:防御方用 5 种异常检测器之一(L2、slab、loss、SVD、k-NN)过滤后训练线性分类器(SVM / logistic regression)。
有哪些相关研究?
相关工作涵盖梯度型投毒攻击、其他攻击设定(label-flip、targeted、backdoor、clean-label)与防御(可信数据、鲁棒估计、认证防御)。
梯度型数据投毒攻击
- Biggio et al. (2012b)——首次把对 SVM 的投毒攻击写成优化问题并用梯度法求解;Mei and Zhu (2015b) 及其后续将其细化并扩展到线性/logistic 回归、主题模型(Mei and Zhu, 2015a)、协同过滤(Li et al., 2016)和神经网络(Koh and Liang, 2017; Yang et al., 2017; Muñoz-González et al., 2017)。
- Koh and Liang (2017)——用 influence functions 计算投毒点梯度,本文的 influence 攻击以其为基础并加入集中化与取整技术。
- Steinhardt et al. (2017)——提出 min-max-basic 攻击与认证防御;作者指出该攻击高效但无法规避 loss 防御,本文用 decoy 参数改进它得到 min-max 攻击。
其他攻击设定(Section 7.1)
- Label-flip 攻击(Biggio et al., 2011; Xiao et al., 2012, 2015)——只控制标签;作者在附录 D 实验了 Xiao et al. (2012) 的 alfa 变体,称其效果显著弱于本文攻击,认为控制特征 x̃ 是必要的。
- Targeted 与 backdoor 攻击(Gu et al., 2017; Chen et al., 2017; Shafahi et al., 2018 等)——针对特定测试样本或后门模式,对攻击者知识假设更弱;本文做的是需要模型和训练集知识的 indiscriminate 攻击。
- Clean-label 攻击(Shafahi et al., 2018; Suciu et al., 2018)——投毒点标签对人看起来正确;作者说明本文攻击不是 clean-label,但投毒点被设计为骗过自动异常检测器。
防御(Section 7.2)
- 利用标注异常数据或元数据(Hodge and Austin, 2004; Cretu et al., 2008)——Cretu et al. 提出 data sanitization 一词,用时间戳信息过滤。
- 基于可信数据的防御:RONI(Nelson et al., 2008)与 Paudice et al. (2018) 的异常检测器(类似本文 k-NN 但只对可信子集测距)。
- 高维鲁棒估计(Klivans et al., 2009; Diakonikolas et al., 2016, 2017a, 2018 等)与认证防御(Steinhardt et al., 2017);作者称后者对 MNIST-1-7 和 Dogfish 的 L2/slab 认证有效,与本文实验结果一致。
基线与基准:对比基线是 Steinhardt et al. (2017) 的 min-max-basic 攻击和 influence-basic 攻击(无 LP 松弛、无集中化),以及附录 D 的 alfa label-flip 攻击;基准为 Enron、IMDB、MNIST、MNIST-1-7、Dogfish(Table 1)。
作者将本文定位为:现有攻击不显式考虑防御、现有防御只针对基本攻击测试,本文同时推进两侧——攻击要考虑防御,防御也要针对专门规避它的攻击来测试(Section 1)。
论文如何解决这个问题?
三种攻击共用两个思想:投毒点集中放置以骗过敏感检测器,攻击写成带防御约束的优化问题并用三种方式近似求解。
整体思路:把投毒攻击写成在防御约束下最大化测试损失的约束优化问题,用集中投毒规避敏感检测器,再用三种近似方法(influence、KKT、min-max)求解这个 bilevel 问题。
问题形式化与防御模型
- 防御方用打分函数 sβ 度量异常程度,丢弃每类中分数最高的 τy 之外点(实验中每类丢弃 p=5%),再在剩余数据上最小化正则化训练损失(式 (2))。
- 5 种防御:L2(到类中心距离)、slab(类中心连线方向投影)、loss(全数据训练模型的损失)、SVD(低秩子空间外分量,取使归一化 Frobenius 误差 <0.05 的最小 k)、k-NN(到第 k 近邻距离,k=5)(Section 2.2)。
- 攻击者的约束优化问题:maxDp L(θ̂; Dtest),约束 |Dp|=ϵ|Dc|、Dp ⊆ Fβ,其中 θ̂ 在合并数据上训练得到(式 (4));即投毒点必须落在防御的可行集内。
集中投毒与理论保证
- 对 k-NN、SVD、loss 等对少量点敏感的检测器,把投毒点放在少数几个位置即可显得正常(Section 3.1)。
- Theorem 1:若每类可行集为凸,对 2 类 SVM 和 logistic regression,任意可达参数都可用每类各 1 个、共 2 个不同投毒点实现;证明借助 Carathéodory 数(附录 A),多类 SVM 推广为 k(k−1) 个点(Proposition 10)。
整数约束处理
- 对词频等非负整数特征,先松弛为实值求解再做随机取整(保持期望);新增两个技术:取整后每个点重复 r 次(实践中 r=2 或 3)以保持集中;对 L2 防御用 LP 松弛直接控制取整后的期望平方范数(式 (8),Figure 2 给出分段线性表示)。
三种攻击
- Influence 攻击(Section 4.1):对每个投毒点做投影梯度上升,梯度用 influence functions 的闭式估计(逆 Hessian-向量积),每步投影回可行集;改进版只优化 2 个不同点并加 LP 松弛。作者称其慢且可能陷入局部极小。
- KKT 攻击(Section 4.2):先用启发式找 decoy 参数 θdecoy——把测试集中高损失点翻转标签后加入训练集训练得到(Algorithm 3,扫描阈值 γ 与重复数 r);再求使 θdecoy 成为训练损失最优解的投毒点,利用 KKT 最优性条件把内层优化写成等式,对 hinge 损失化为凸问题并对 ε+/ε− 做网格搜索(式 (17),Algorithm 4)。decoy 参数还用于把 loss 防御写成约束。
- Min-max 攻击(Section 4.3):沿用 Steinhardt et al. (2017) 用训练损失近似测试损失把 bilevel 问题化为鞍点问题的思路,迭代加入可行集内损失最高的点;本文改进是用 decoy 参数加约束
(θdecoy; x, y) ≤ τ(实验中 τ=0.25),使投毒点在 decoy 参数下低损失以规避 loss 防御;无需网格搜索,可处理多类和非凸可行集,但假设 indiscriminate 设定。
评测方式
- 攻击对每个防御分别评估,取所有防御下测试错误率提升的最小值;攻击的可行集取 L2 与 slab 可行集之交(KKT/min-max 还纳入 loss 约束),模拟攻击者事先不知道防御方用哪种防御(Section 5.2)。
论文做了哪些实验?
在 Enron/IMDB 上三种攻击以 3% 投毒绕过全部 5 种防御,并做了迁移性、消融和多分类实验。
实验设置
- 被测模型:线性 SVM(hinge 损失 + L2 正则,λ 由干净数据交叉验证选定)用于二分类;多类 SVM(Crammer and Singer, 2002,AdaGrad 训练)用于 MNIST;logistic regression 用于 Section 6.3 的防御方变体。
- 数据集(Table 1):Enron(n=4137,d=5116,基线错误率 2.9%)、IMDB(n=25000,d=89527,基线 11.9%)、MNIST(10 类,基线 7.5%)、MNIST-1-7(基线 0.7%)、Dogfish(基线 1.3%);Enron/IMDB 特征为非负整数。
- 攻击预算:ε=3% 投毒点;防御阈值设为每类丢弃 p=5% 数据(Section 5.2)。
- 基线:influence-basic(无 LP 松弛、无集中化)、min-max-basic(Steinhardt et al., 2017,无 decoy 参数)、alfa label-flip 攻击(附录 D)。
- 指标与评估:0-1 测试错误率;每个攻击对 5 种防御分别评估,报告各防御下的错误率;无 LLM 评审或人工评估。
- 重复次数:论文未报告重复实验次数或方差。
主结果
据 Table 2(Enron,ε=3%;时间为达到 17% 测试错误率所需):
攻击 Enron 测试错误率 耗时 Influence 18.3% 17,000s KKT 22.5% 27s Min-max 23.7% 1,700s - 摘要报告:3% 投毒使 Enron 测试错误率从 3% 升至 24%、IMDB 从 12% 升至 29%(Figure 3 按防御分别画柱,文中数字为各防御下的整体结果)。
- 作者称 KKT 和 min-max 在 Enron 上略高于 influence,且计算效率高得多,能跑到 IMDB 这种大规模数据(influence 因太慢未在 IMDB 上运行)。
- 作者称现有不考虑防御的攻击被这些数据清洗防御击败(引言、Section 5.6 的 min-max-basic 对照)。
迁移性:攻击者信息不完整(Section 6,Enron)
- 未知测试集:用训练集代替测试集优化时,influence 达 10.9%(已知测试集时 18.3%),KKT 16.5%(vs. 22.6%),min-max 19.0%(vs. 23.7%)(Figure 9);作者认为 influence 对测试集过拟合更强。
- 防御方正则强度变化(攻击者固定 λ=0.09,防御方 λ 从 0.009 到 0.9):对 L2 防御,influence 在 λ=0.009 时低于 10%,min-max 仍达 22%;作者称增大正则反而让防御方更难拟合投毒点、更易受攻击(Figure 10)。
- 优化算法与损失变化(SGD 单遍、logistic 损失):除 loss 防御外三种攻击仍有效,loss 防御能明显降低伤害;作者建议攻击者对 loss 阈值取保守值(Figure 11)。
消融与多分类
- Influence 消融(Figure 6,Enron):去掉 LP 松弛错误率降几个百分点;再去掉集中化(即 influence-basic)后,许多点被 loss 和 SVD 防御过滤,在这两种防御下错误率不超过 11%。
- Min-max 消融(Figure 7,Enron):无 decoy 参数的 min-max-basic 被 loss 防御击败(测试错误率 10.0%),有 decoy 参数则可规避。
- 多分类(Figure 8,MNIST,ε=3%):min-max 攻击对 L2 防御达 15.2%、对 loss 防御达 13.7% 测试错误率。
其他消融与分析
- 迭代更新可行集(Algorithm 1):Enron 上仅多升几个百分点(Figure 5);MNIST-1-7 上 ε=0.3 时迭代版提升 7.5% vs 非迭代 1.1%。
- MNIST-1-7 与 Dogfish(附录 C,Figure 12):influence 攻击把 Dogfish 从 1% 升到 8%,对 MNIST-1-7 几乎无影响;作者指出这与 Steinhardt et al. (2017) 的认证结果一致。
- alfa label-flip 攻击(附录 D,Enron,仅 L2 防御):ε=3% 仅提升 2%,而本文攻击提升 15%–20%。
- 高 ε=0.3 设定下本文 influence 攻击在 MNIST-1-7 上弱于 Steinhardt et al. (2017) 的 39% 提升;作者称可能是步长或初始化问题,也可能反映迭代优化在高 ε 下的弱点(Section 5.4 脚注)。
有什么可以进一步探索的点?
作者列出非凸模型、decoy 启发式、更强防御等开放问题;实验限于线性模型、5 个数据集和 ε≤3%。
作者指出的局限与后续方向
- 非凸模型:攻击假设攻防双方能全局最小化训练损失,对非凸模型是否仍有效是开放问题(Section 8, Non-convex models)。
- Decoy 参数启发式:KKT 与 min-max 依赖 decoy 参数,作者称该启发式在更复杂的防御下可能失效(Section 8,Table 2 讨论)。
- 数据集差异:攻击效果因数据集而异(Enron/IMDB 易受攻击,MNIST-1-7/Dogfish 不易),作者推测与维度和线性可分性有关,但称值得进一步研究(Section 8)。
- 更强防御策略:作者讨论了生成模型检测、多模型子集训练、有界非凸损失代理、可证鲁棒估计等方向及各自困难,并称可证安全是 gold standard(Section 8, Strategies for stronger defenses)。
- 攻击新防御:作者提出可攻击 Diakonikolas et al. (2018) 的鲁棒算法以检验其鲁棒性,并探讨用本文改进推导更紧的认证上界(Section 7.2)。
实验覆盖范围
- 被测模型为线性 SVM、logistic regression 和多类 SVM,均为凸模型(Section 2.1、5.2)。
- 数据集为 Enron、IMDB、MNIST、MNIST-1-7、Dogfish 共 5 个(Table 1)。
- 防御评测覆盖 5 种异常检测器:L2、slab、loss、SVD、k-NN(Section 2.2)。
- 主实验投毒比例 ε=3%,防御方每类丢弃 5% 数据;仅 Section 5.4 在 MNIST-1-7 上做了 ε=0.3 的一组实验。
- 论文未报告实验重复次数与方差;迁移性实验只在 Enron 上进行(Section 6)。
总结一下论文的主要内容
三种针对数据清洗防御的投毒攻击,以 3% 投毒在 Enron/IMDB 上绕过 5 种防御,作者呼吁防御需针对自适应攻击设计。
一篇数据投毒攻击论文:针对"先过滤异常点再训练"的数据清洗防御,作者提出三种能同时规避多种异常检测器的攻击。
- 问题:现有投毒攻击不显式考虑防御,作者称实验中数据清洗防御能击败所有测试过的现有攻击;本文问专门规避异常检测的攻击能否突破这类防御。
- 方法:两个思想——投毒点集中在少数位置(理论上 2 类 SVM/logistic regression 只需 2 个不同点,Theorem 1)骗过敏感检测器;攻击写成带防御约束的优化问题,分别用 influence functions(influence)、KKT 条件加 decoy 参数(KKT)、鞍点问题加 decoy 参数(min-max)近似求解;整数特征用随机取整加 LP 松弛。
- 主结果:ε=3% 投毒在 5 种防御(L2、slab、loss、SVD、k-NN)下使 Enron 测试错误率从 3% 升至 24%、IMDB 从 12% 升至 29%(摘要);Enron 上 influence/KKT/min-max 分别达 18.3%/22.5%/23.7%(Table 2)。
- 效率与扩展:KKT 达 17% 错误率仅 27s(influence 需 17,000s);min-max 支持多分类,MNIST 上对 L2 防御达 15.2%。
- 迁移性:未知测试集、正则强度变化、换 SGD 或 logistic 损失时攻击大多仍有效,但 loss 防御在后两种变化下能明显削弱所有攻击(Section 6)。
- 作者结论:投毒点不必看起来异常、不必高损失,增大正则反而可能帮助攻击者;防御必须针对专门规避它的攻击来测试,作者呼吁发展更鲁棒的防御。