深圳Yolo 视觉
深圳
立即加入
词汇表

对抗性攻击

探索对抗性攻击如何操纵机器学习模型。了解白盒和黑盒策略、对 AI 安全的风险以及使用 Ultralytics YOLO26 进行防御。

对抗性攻击是一类复杂的操纵技术,旨在欺骗机器学习(ML)模型以高置信度做出错误预测。这些攻击通过对输入数据(例如图像、音频或文本)引入细微、通常难以察觉的扰动来运作。尽管这些变化在人类观察者看来无害或随机,但它们利用了高维神经网络决策边界中的特定数学漏洞。随着人工智能(AI)系统成为安全关键基础设施不可或缺的一部分,了解这些漏洞如何运作对于开发鲁棒的AI安全协议和防御机制至关重要。

对抗性攻击如何运作

在典型的深度学习(DL)训练过程中,模型优化其权重以最小化训练数据集上的误差。然而,这些模型本质上是在多维空间中创建复杂的映射。对抗性攻击计算此空间中精确的“方向”,需要将输入推过边界,从而改变模型的分类。例如,在计算机视觉(CV)中,通过计算出的“噪声”量改变熊猫图像的像素值,可能会导致系统自信地将其错误分类为长臂猿,即使在人眼看来,该图像仍然与熊猫一模一样。

攻击策略通常根据攻击者对目标系统的访问级别进行分类:

  • 白盒攻击: 攻击者对模型的架构、梯度和模型权重拥有完全的透明度。这使他们能够通过数学方式计算最有效的扰动,通常使用快速梯度符号法 (FGSM) 等技术。
  • 黑盒攻击攻击者不了解内部模型参数,只能观察输入和输出。攻击者通常使用“替代模型”来生成对抗样本,这些样本可以有效地迁移到目标系统,这种特性被称为可迁移性。

现实世界的应用与风险

虽然对抗性攻击经常在理论研究中讨论,但它们对实际部署构成了实际风险,特别是在自主系统和安全领域。

  • 自动驾驶汽车自动驾驶汽车严重依赖目标检测来识别交通标志。研究表明,在停车标志上贴上精心制作的贴纸或胶带,可以欺骗车辆的视觉系统,使其将其识别为限速标志。这种物理世界攻击可能导致汽车AI应用中出现危险故障。
  • 面部识别规避者基于生物识别技术控制访问的安全系统可能被对抗性“补丁”破坏。这些可以是佩戴在眼镜或衣物上的打印图案,它们会干扰特征提取过程。这允许未经授权的个人完全规避检测或冒充特定用户,从而绕过安全警报系统

使用 python 生成对抗样本

要理解某些模型有多脆弱,了解图像如何轻易被扰动会有所帮助。尽管使用YOLO26等模型的标准推理对于一般用途来说是稳健的,但研究人员经常模拟攻击以改进模型监控和防御。以下概念性示例使用PyTorch展示了如何利用梯度为图像计算对抗性扰动(噪声)。

import torch.nn.functional as F

# Assume 'model' is a loaded PyTorch model and 'image' is a normalized tensor
# 'target_class' is the correct label index for the image


def generate_adversarial_noise(model, image, target_class, epsilon=0.01):
    # Enable gradient calculation for the input image
    image.requires_grad = True

    # Forward pass: get prediction
    output = model(image)

    # Calculate loss based on the correct class
    loss = F.nll_loss(output, target_class)

    # Backward pass: calculate gradients of loss w.r.t input
    model.zero_grad()
    loss.backward()

    # Create perturbation using the sign of the data gradient (FGSM)
    # This pushes the image in the direction of maximizing error
    perturbation = epsilon * image.grad.data.sign()

    return perturbation

相关概念

区分对抗性攻击与其他形式的模型故障或操纵很重要:

  • 数据投毒与在推理(测试)时操纵输入的对抗性攻击不同,数据投毒涉及在模型构建之前破坏训练数据本身,嵌入隐藏的后门或偏差。
  • 提示注入这专门针对大型语言模型(LLMs)和文本接口。尽管概念上相似——都是欺骗模型——但它依赖于语义语言操纵,而非像素或信号数据的数学扰动。
  • 过拟合: 这是一种训练失败,模型学习了训练数据中的噪声而不是底层模式。过拟合模型通常更容易受到对抗性攻击,因为它们的决策边界过于复杂和脆弱。

开发针对这些攻击的防御是现代 MLOps 的核心组成部分。对抗性训练(即将受攻击的样本添加到训练集中)等技术有助于模型变得更具弹性。Ultralytics Platform 等平台有助于构建严格的训练和验证管道,使团队能够在部署到边缘设备之前评估模型的鲁棒性。

让我们一起共建AI的未来!

开启您的机器学习未来之旅