Estás leyendo la publicación: La guía de un idiota sobre los ataques adversarios en el aprendizaje automático
El aprendizaje automático adversario utiliza información de modelo accesible para lanzar ataques maliciosos. Dichos ataques adversarios intentan obstaculizar el desempeño de los clasificadores en ciertas tareas al proporcionar a los modelos datos falsos.
El objetivo final de tales ataques es engañar al modelo para que proporcione información confidencial, haga predicciones incorrectas o las corrompa.
La mayor parte de la investigación sobre el aprendizaje automático contradictorio se ha realizado en el ámbito del reconocimiento de imágenes, en el que las imágenes se modifican de una manera que hace que el clasificador haga predicciones incorrectas.
Los ataques adversarios generan datos falsos para engañar a los clasificadores. Tales entradas están diseñadas deliberadamente para hacer que los modelos ML cometan un error. Son versiones corruptas de datos válidos que funcionan como ilusiones ópticas para las máquinas.
Cuando el atacante tiene acceso al modelo de destino y conoce su arquitectura y parámetros, se denomina ataque de caja blanca.
Alternativamente, cuando el atacante no tiene acceso al modelo de destino y solo puede trabajar observando sus resultados, se denomina ataque de caja negra.
Diferentes tipos de ataques adversarios
Los ataques de envenenamiento ocurren durante la fase de entrenamiento de los sistemas ML. Ellos “contaminan” o “envenenan” los datos de entrenamiento de los modelos ML al manipular los datos existentes o colocar etiquetas incorrectas. Es probable que estos trucos funcionen en modelos que se vuelven a entrenar continuamente. Por ejemplo, los modelos de aprendizaje por refuerzo se pueden entrenar a diario o quincenalmente, lo que brinda al pirata informático múltiples oportunidades para introducir datos engañosos en los datos de entrenamiento.
Los ataques de evasión son los ataques adversarios más frecuentes (y más investigados) y ocurren después de que los modelos ya han sido entrenados. Los ataques tienden a ser más prácticos ya que se realizan durante la fase de despliegue. Implican alterar imperceptiblemente los datos utilizados por los modelos para hacer predicciones (no los datos de entrenamiento), de modo que parezca legítimo pero haga predicciones incorrectas. Los ataques a menudo se lanzan sobre una base de prueba y error, ya que los atacantes no saben de antemano qué manipulación de datos finalmente romperá el sistema ML.
Los ataques de evasión a menudo se asocian con la visión artificial. Los atacantes pueden modificar imágenes y engañar al modelo para que haga predicciones incorrectas. Esto funciona porque los modelos de reconocimiento de imágenes han sido entrenados para correlacionar ciertos tipos de píxeles con las variables previstas: si los píxeles se vuelven a adaptar de una manera específica (como agregando una capa imperceptible de ruido), hará que el modelo cambie su predicción. Esto representa una amenaza para los sistemas de imágenes médicas, ya que podrían ser engañados para clasificar un lunar benigno como maligno.
Los ataques de robo de modelos están dirigidos a modelos ya entrenados. El atacante examina la estructura y los datos de entrenamiento de un sistema de máquina de caja negra, que luego podría usarse para reconstruir el modelo o extraer los datos potencialmente confidenciales en los que se entrenó el modelo. Tales ataques suelen estar motivados por ganancias financieras.
Cómo prevenir ataques adversarios
Un método potencial para contrarrestar los ataques de adversarios es entrenar los sistemas de ML para que aprendan cómo podría ser un ataque de adversarios con anticipación mediante la incorporación de ejemplos de adversarios en su proceso de entrenamiento.
Otro método consiste en modificar periódicamente los algoritmos que utilizan los modelos de ML para clasificar los datos, creando así un “objetivo móvil” para conservar la confidencialidad de los algoritmos.
Los desarrolladores de sistemas de ML deben ser conscientes de los riesgos asociados con ellos y establecer medidas de seguridad para cotejar y verificar la información. Además, para evitar trampas de manera preventiva, deben intentar con frecuencia corromper sus modelos para detectar tantas deficiencias como sea posible con anticipación.