Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Ataques Adversarios

Descubra cómo los ataques adversarios manipulan los modelos de aprendizaje automático. Aprenda sobre las estrategias de caja blanca y caja negra, los riesgos para la seguridad de la IA y la defensa con Ultralytics .

Los ataques adversarios son una sofisticada categoría de técnicas de manipulación diseñadas para engañar a los modelos de aprendizaje automático (ML) y hacer que realicen predicciones incorrectas con un alto grado de confianza. Estos ataques funcionan introduciendo perturbaciones sutiles, a menudo imperceptibles, en los datos de entrada, como imágenes, audio o texto. Aunque estos cambios parecen inofensivos o aleatorios para un observador humano , explotan vulnerabilidades matemáticas específicas en los límites de decisión de las redes neuronales de alta dimensión. A medida que los sistemas de inteligencia artificial (IA) se convierten en parte integral de las infraestructuras críticas para la seguridad, comprender cómo funcionan estas vulnerabilidades es esencial para desarrollar protocolos de seguridad y mecanismos de defensa robustos para la IA .

Cómo Funcionan los Ataques Adversarios

En un proceso típico de entrenamiento de aprendizaje profundo (DL), un modelo optimiza sus pesos para minimizar el error en un conjunto de datos de entrenamiento. Sin embargo, estos modelos crean esencialmente mapas complejos en un espacio multidimensional. Un ataque adversario calcula la «dirección» precisa en este espacio necesaria para empujar una entrada a través de un límite, invirtiendo la clasificación del modelo. Por ejemplo, en la visión por ordenador (CV), cambiar los valores de píxel de una imagen de un panda por una cantidad calculada de «ruido» podría hacer que el sistema la clasificara erróneamente como un gibón, aunque la imagen siga pareciendo exactamente un panda al ojo humano.

Las estrategias de ataque se clasifican generalmente según el nivel de acceso que el atacante tiene al sistema objetivo:

  • Ataques de caja blanca: el atacante tiene total transparencia sobre la arquitectura, los gradientes y los pesos del modelo. Esto le permite calcular matemáticamente la perturbación más eficaz, a menudo utilizando técnicas como el método de signo de gradiente rápido (FGSM).
  • Ataques de caja negra: El atacante no tiene conocimiento de los parámetros internos del modelo y solo puede observar las entradas y salidas. Los atacantes suelen utilizar un «modelo sustituto» para generar ejemplos adversarios que se transfieren eficazmente al sistema objetivo , una propiedad conocida como transferibilidad.

Aplicaciones y riesgos en el mundo real

Aunque a menudo se tratan en la investigación teórica, los ataques adversarios plantean riesgos tangibles para las implementaciones en el mundo real, especialmente en sistemas autónomos y seguridad.

  • Vehículos autónomos: Los coches autónomos dependen en gran medida de la detección de objetos para interpretar las señales de tráfico. Las investigaciones han demostrado que colocar pegatinas o cinta adhesiva cuidadosamente diseñadas en una señal de stop puede engañar al sistema de visión del vehículo y hacerle percibirla como una señal de límite de velocidad. Este tipo de ataque en el mundo físico podría provocar peligrosos fallos en la IA en aplicaciones automovilísticas.
  • Evasióndel reconocimiento facial: Los sistemas de seguridad que controlan el acceso basándose en datos biométricos pueden verse comprometidos por «parches» adversarios. Estos pueden ser patrones impresos que se llevan en gafas o ropa y que interrumpen el proceso de extracción de características. Esto permite a una persona no autorizada evadir por completo la detección o suplantar a un usuario específico, eludiendo los sistemas de alarma de seguridad.

Generación de ejemplos adversarios en Python

Para comprender lo frágiles que pueden ser algunos modelos, resulta útil ver lo fácil que es perturbar una imagen. Aunque la inferencia estándar con modelos como YOLO26 es robusta para uso general, los investigadores suelen simular ataques para mejorar la supervisión y la defensa de los modelos. El siguiente ejemplo conceptual utiliza PyTorch mostrar cómo se utilizan los gradientes para calcular una perturbación adversaria (ruido) para una imagen.

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

Conceptos Relacionados

Es importante distinguir los ataques adversarios de otras formas de fallo o manipulación del modelo:

  • Envenenamiento de datos: A diferencia de los ataques adversarios, que manipulan la entrada durante la inferencia (tiempo de prueba), el envenenamiento de datos implica corromper los propios datos de entrenamiento antes de construir el modelo, incorporando puertas traseras ocultas o sesgos.
  • Inyección rápida: Esto es específico de los modelos de lenguaje grandes (LLM) y las interfaces de texto . Aunque conceptualmente es similar (engañar al modelo), se basa en la manipulación semántica del lenguaje en lugar de la perturbación matemática de los datos de píxeles o señales.
  • Sobreajuste: Es un fallo de entrenamiento en el que un modelo aprende el ruido de los datos de entrenamiento en lugar del patrón subyacente. Los modelos sobreajustados suelen ser más susceptibles a los ataques adversarios porque sus límites de decisión son excesivamente complejos y frágiles.

El desarrollo de defensas contra estos ataques es un componente fundamental de las MLOps modernas . Técnicas como el entrenamiento adversarial, en el que se añaden ejemplos de ataques al conjunto de entrenamiento, ayudan a que los modelos sean más resistentes. Plataformas como Ultralytics facilitan procesos rigurosos de entrenamiento y validación, lo que permite a los equipos evaluar la solidez de los modelos antes de implementarlos en dispositivos periféricos.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora