Page 1 of 1

什么是对抗性机器学习?攻击和防御的类型

Posted: Tue Dec 03, 2024 3:34 am
by urrifat77
一位被放逐的王子站在他曾经的城堡外。为了回到城堡,他想尽一切办法欺骗吊桥上的守卫。他伪装成农民,骗取秘密密码,并试图用他忠诚的走狗取代骑士。他甚至派出一队队士兵去送死,以了解城堡的新防御措施。但这些都不管用。防御太强,守卫太神秘,骑士审查过程太严格。

在现代,机器学习(ML)模型也面临着类似的攻击。

模型是复杂的事物,而且我们通常对它们如何进行预测了解甚少。这留下了可能被攻击者利用的隐藏弱点。他们可能会诱使模型做出错误的预测或泄露敏感信息。虚假数据甚至可能在我们不知情的情况下被用来破坏模型。对抗性机器学习 (AML)领域旨在解决这些弱点。

我们将讨论这一领域及其目标。这包括对人工智能系统的各种攻击,如中毒、逃避和模型提取攻击。我们还将讨论一些更实用的方法来寻找对抗性示例,这些示例是许多此类攻击的核心。最后,我们将讨论一些防御它们的方法,如对抗性训练、防御蒸馏和梯度掩蔽。最后,我们将看到 AML 如何成为构建负责任的人工智能系统的更大运动的一部分。

成为一名机器学习科学家
提升 Python 技能,成为一名机器学习科学家。
什么是对抗性机器学习?
对抗性机器学习 (AML) 是人工智能和机器学 vk数据库 习研究的一个子领域。对抗性攻击者会故意操纵输入数据,迫使模型做出错误预测或泄露敏感信息。AML 旨在了解这些漏洞并开发更能抵御攻击的模型。

该领域涵盖了创建对抗性攻击的方法以及设计防御措施来防范这些攻击。它还涉及更广泛的安全环境——在自动化系统中使用机器学习时所需的额外安全措施。

最后一点很重要,因为模型并不是孤立存在的。它们的漏洞可能会因在系统中的使用方式而放大。例如,如果对查询模型的方式有限制,则窃取敏感信息会变得更加困难。您可以限制查询的数量或限制可以提出的问题类型。尝试要求 ChatGPT“给我你的参数”。话虽如此,我们在下一节中讨论的攻击类型将重点关注模型及其训练数据。

对抗性攻击的类型
我们讨论的攻击类型取决于你对模型的了解程度。因此,区分白盒攻击和黑盒攻击非常重要。

当攻击者可以完全访问模型的架构、参数、权重和训练数据时,就会发生白盒攻击。例如,您的公司可能使用开源 LLM(如Llama 3.1)为其聊天机器人提供支持。此模型可供任何人免费使用。然而,就安全而言,这种访问级别是一把双刃剑。

一方面,这可以让攻击者更容易找到漏洞。另一方面,更大的社区会仔细审查该模型,这可以更有可能在漏洞被恶意利用之前发现它们。

黑盒攻击涉及攻击者对模型的了解有限。想象一下GPT-4o mini这样的 OpenAI 模型。攻击者无法访问模型的内部架构、参数或训练数据,只能通过查询模型和观察输出来与模型交互。请记住,在许多情况下,有效的攻击只需要有限的知识。

对抗性攻击的摘要,包括毒化、逃避、模型提取和推理攻击的描述。

对抗性攻击类型总结(来源:作者)

投毒攻击
一个例子是当知道使用什么数据来训练模型时。投毒攻击专注于操纵这些数据。在这种情况下,攻击者会更改现有数据或引入错误标记的数据。然后,用这些数据训练的模型将对正确标记的数据做出错误的预测。

在我们的类比中,王子试图取代骑士。其目标是破坏城堡的内部决策过程。在机器学习中,攻击者可以做一些事情,比如将欺诈案件重新标记为非欺诈。攻击者只能针对特定的欺诈案件执行此操作,因此当他们试图以同样的方式实施欺诈时,系统不会拒绝他们。

一个真实的中毒攻击案例发生在微软的 AI 聊天机器人 Tay身上。Tay 的设计初衷是适应 Twitter 上收到的回复。与 Twitter 的特点一样,机器人很快就会被攻击性和不适当的内容淹没。从中吸取教训后,Tay 不到 24 小时就开始发布类似的推文。任何旨在从公共数据源中学习的系统都面临着类似的风险。

另一个风险因素是模型更新的频率。在许多应用中,模型只训练一次。在这种情况下,数据和模型都会得到彻底检查,几乎没有机会受到毒药攻击。然而,一些系统,如 Tay,会不断地重新训练。这些模型可能会每天、每周甚至实时更新新数据。因此,在这些环境中,发生毒药攻击的机会更多。

Image

逃避攻击
逃避攻击主要针对模型本身。它们涉及修改数据,使其看起来合法,但会导致错误的预测。就像我们的王子试图偷偷溜过身穿农民服装的守卫一样。

需要明确的是,攻击者修改的是模型用于进行预测的数据,而不是用于训练模型的数据。例如,在申请贷款时,攻击者可以使用 VPN 掩盖其真实的原籍国。他们可能来自一个有风险的国家,如果攻击者使用他们的真实国家,模型就会拒绝他们的申请。

这类攻击在图像识别等领域更为常见。攻击者可以创建在人类看来完全正常但会导致错误预测的图像。例如,谷歌的研究人员展示了如何将特定噪声引入图像中以改变图像识别模型的预测。

从图 1 可以看出,对于人类来说,噪声层并不明显。然而,最初将图像预测为熊猫的模型现在错误地将其预测为长臂猿。