仅花费60美元就能破坏0.01%数据集,AI模型性能显著降低

本文涉及的产品
.cn 域名,1个 12个月
简介: 仅花费60美元就能破坏0.01%数据集,AI模型性能显著降低


网络规模的数据集很容易受到低成本的投毒攻击,这种攻击只需要一小部分被破坏的样本就可以使整个模型中毒。


用于训练深度学习模型的数据集已经从数千个精心策划的示例增长到具有数十亿个从互联网自动爬取样本的网络规模数据集。在这种规模下,通过人力管理来确保每个示例的质量是不可行的。到目前为止,这种数量高于质量的权衡是可以接受的,一方面是因为现代神经网络对大量标签噪声具有很强的适应力,另一方面是因为对噪声数据的训练甚至可以提高模型在非分布数据上的效用。

虽然大型深度学习模型对随机噪声具有一定的包容性,但训练集中即使是极少量的对抗性噪声(即中毒攻击)也足以在模型行为中引入针对性错误。先前研究认为,在缺乏人力管理情况下,对现代深度学习模型的中毒攻击是可行的。然而,尽管存在潜在的威胁,目前看来,还没有发生过涉及网络规模数据集中毒的真实攻击。部分原因可能在于,之前的研究忽略了一个问题:对手如何确保他们损坏的数据会被纳入一个网络规模的数据集。

本文,来自谷歌、苏黎世联邦理工学院等机构的研究者撰文介绍了两种新的数据中毒攻击方式:

分割视图数据中毒(Split-view data poisoning):第一个攻击目标是当前的大型数据集(例如 LAION-400M),并利用研究者在收集时看到的数据可能与最终用户在训练时看到的数据不同(显著且随机)这一事实。

Frontrunning 数据中毒:第二种攻击利用了流行的数据集,比方说,维基百科的 snapshot。这种中毒方式是可行的:因为即使内容审核人员在事后检测并恢复恶意修改,攻击者的恶意内容也会持续存在于训练深度学习模型的 snapshot 中。

论文地址:https://arxiv.org/pdf/2302.10149.pdf

研究在 10 个流行的数据集上探索了这两种攻击的可行性。结果表明,即使对低资源攻击者来说,这些攻击也是可行的:只需 60 美元的成本,就可以毒害 LAION-400M 或 COYO-700M 数据集的 0.01%。

为了对抗这些中毒方式,本文将介绍两种防御措施:

  • 完整性验证:通过为所有已索引的内容分发加密哈希来防止分割视图中毒;
  • 基于时间的防御:通过随机数据快照和引入网络规模数据集的顺序来防止 Frontrunning 数据中毒。


除此以外,本文还将讨论这些防御措施的局限性以及未来的解决方案。

两种攻击手段

分割视图中毒

本文介绍的第一种中毒方式利用了这样一个现状:由维护者发布的分布式数据集的索引不能被修改,但数据集中 URL 的内容可以被修改。

该研究观察到:有时域名会过期,一旦过期,任何人都可以购买,因此域名过期在大型数据集中很常见。通过拥有域名,将来下载的数据可能都会有毒。

该研究还注意到,攻击者经常购买过期域名,以获取这些域名附带的剩余信任。

研究表明,分割视图中毒在实践中是有效的,因为大多数网络规模数据集的索引在首次发布后很长时间内都保持不变,即使在很大一部分数据过时之后也是如此。而且关键的是,很少(也没有现代)数据集包含任何形式的下载内容的加密完整性检查。

Frontrunning 数据中毒

第二种中毒方式将分割视图中毒的范围扩展到攻击者无法持续控制数据集索引的 web 资源的设置。相反,在恶意修改被检测到之前,攻击者只能在短时间内(可能仅需几分钟)修改 web 内容。

Frontrunning 攻击依赖于这样一个事实:在某些情况下,对手可以准确地预测何时访问 web 资源,并将其包含在数据集快照中。因此,攻击者可以在管理员收集快照之前毒害数据集内容,从而领先于稍后将恢复恶意编辑的内容管理员。因此,攻击者可以预测任何维基百科文章的快照时间,精确到分钟。

攻击结果

表 1 最右边的一列显示了研究结果。即使是最古老和访问频率最低的数据集,每个月也至少有 3 次下载量。因此,在追踪数据的 6 个月里,有超过 800 次下载被本文所介绍的攻击方式所毒害。不出所料,相较于旧的数据集而言,较新的数据集的请求量更高。因此,不同的数据集为攻击者提供了不同的权衡:更新的数据集拥有更小比例的可购买图像,但攻击范围可以触及更多更脆弱的客户端。

衡量攻击成本。最直接的问题是,这种攻击方式能否在实践中实现,其主要限制是购买域名的货币成本,研究使用 Google Domains 在 2022 年 8 月报告的成本来衡量。图 1 显示了数据集中可以由攻击者控制的图像的比例,作为他们预算的函数。研究发现每个数据集中至少 0.01% 的数据可以被控制,每年花费不到 60 美元。

通过监控研究购买的域名中请求的 URL,研究人员绘制了每次 URL 被请求的时间,由源 IP 进行颜色编码,并可以直接读取几十个 Conceptual 12M 的用户。具体见图 2。

据保守分析,在没有任何其他防御措施的情况下,目前可以给 6.5% 的维基百科文档下毒。

更多内容,请参考原论文。

相关文章
|
18小时前
|
机器学习/深度学习 人工智能 Java
Java与AI集成开发:机器学习模型部署
Java与AI集成开发:机器学习模型部署
|
4天前
|
人工智能 自然语言处理 测试技术
巨擘之舞:探索AI大模型的发展历程与特性比较
巨擘之舞:探索AI大模型的发展历程与特性比较
|
9天前
|
机器学习/深度学习 人工智能 算法
AI - 决策树模型
决策树算法起源于古希腊的逻辑推理,20世纪在军事策略研究中首次提出。它通过构建树形模型模拟决策过程,每个节点代表一个属性判断,分支代表可能结果。ID3算法基于信息增益,C4.5则引入信息增益率,解决了ID3偏好多值属性的问题,还能处理缺失值。CART决策树适用于分类和回归任务,使用基尼系数或信息增益来选择特征。在Python的`sklearn`库中,`DecisionTreeClassifier`实现决策树分类,通过参数如`criterion`、`max_depth`等控制模型。
|
9天前
|
机器学习/深度学习 资源调度 算法
AI-逻辑回归模型
逻辑回归是一种用于分类问题的统计模型,尤其适合二分类任务,如预测广告点击率、判断邮件是否为垃圾邮件、评估疾病风险和预测信用卡违约等。模型通过线性方程(logit函数)结合Sigmoid函数将结果映射到0到1区间,表示概率。损失函数通常使用交叉熵,优化时常用梯度下降。评估指标包括ROC曲线和AUC,后者衡量模型整体性能,值越接近1表示性能越好。在不平衡数据集上,可使用`class_weight='balanced'`来调整样本权重。
|
9天前
|
机器学习/深度学习 算法 大数据
AI-线性回归模型(二)
这篇内容介绍了梯度下降法在机器学习中的应用,特别是在线性回归中的角色。它是一种迭代优化算法,用于找到损失函数最小值的参数。全梯度下降(FGD)使用所有数据计算梯度,适合大数据但计算成本高;随机梯度下降(SGD)随机选取样本,速度快但可能收敛到局部最小值。随机平均梯度下降(SAG)结合两者的优点,提高收敛速度。评估线性回归模型的性能通常使用平均绝对误差、均方误差和均方根误差。文中还展示了波士顿房价预测案例,使用SGDRegressor进行训练,并讨论了学习率的影响。最后提到了如何使用`joblib`库保存和加载模型。
|
4天前
|
机器学习/深度学习 人工智能 算法
OpenAI发布全新AI视频模型Sora:引领视频创作新纪元
OpenAI发布全新AI视频模型Sora:引领视频创作新纪元
|
9天前
|
机器学习/深度学习 API Python
AI-线性回归模型(一)
线性回归是用于分析变量间线性关系的统计方法,常见于房价预测、销售额预测和贷款额度评估。通过最小二乘法寻找最佳直线方程y=wx+b,其中y是因变量,x是自变量,w和b是模型参数。在Python的`sklearn`库中,使用`LinearRegression`类可构建模型,通过`fit`训练和`predict`进行预测。损失函数通常用平方损失(均方误差)衡量预测误差,优化目标是最小化这些误差的平方和。
|
10天前
|
人工智能 开发工具 Swift
ModelScope联手OpenDataLab:直接调用7000+开源数据集,赋能AI模型加速研发
魔搭社区和OpenDatalab浦数合作,共同开启一场模型与数据的深度融合,旨在为中国开发者打造更加高效、开放的AI体验。
|
11天前
|
人工智能 自然语言处理 监控
AI大模型智能体工作流涉及使用Ollama和FastGPT这两个工具
AI大模型智能体工作流涉及使用Ollama和FastGPT这两个工具
60 4
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
AI大模型学习涉及理论、技术和应用多个方面的探索
AI大模型学习涉及理论、技术和应用多个方面的探索
46 3