El aprendizaje automático contradictorio es una técnica que se utiliza en el aprendizaje automático para engañar o desviar un modelo con información maliciosa. Si bien el aprendizaje automático adverso se puede usar en una variedad de aplicaciones, esta técnica se usa más comúnmente para ejecutar un ataque o causar un mal funcionamiento en un sistema de aprendizaje automático. La misma instancia de un ataque se puede cambiar fácilmente para que funcione en múltiples modelos de diferentes conjuntos de datos o arquitecturas.
El aprendizaje automático adverso se puede considerar como un ataque de caja blanca o negra. En un ataque de caja blanca, el atacante conoce el funcionamiento interno del modelo que se está utilizando y en un ataque de caja negra, el atacante solo conoce las salidas del modelo.
Los modelos de aprendizaje automático se entrenan utilizando grandes conjuntos de datos relacionados con el tema que se está aprendiendo. Por ejemplo, si una empresa automotriz quisiera enseñarle a su automóvil automatizado cómo identificar una señal de alto, entonces esa compañía puede alimentar miles de imágenes de señales de alto a través de un algoritmo de aprendizaje automático. Un ataque malicioso, como el aprendizaje automático adverso, podría emplearse contra ese algoritmo de aprendizaje automático, explotando los datos de entrada del algoritmo (en este caso, imágenes de señales de alto) para malinterpretar esos datos, lo que provocaría que el sistema en general identificara erróneamente las señales de alto cuando se implementan en cualquiera de las dos prácticas. o producción.
Tipos de ataques de aprendizaje automático adversarios
Los ataques de aprendizaje automático contradictorios se pueden clasificar como entradas de clasificación errónea o envenenamiento de datos. Las entradas de clasificación errónea son la variante más común, donde los atacantes ocultan contenido malicioso en los filtros de un algoritmo de aprendizaje automático. El objetivo de este ataque es que el sistema clasifique erróneamente un conjunto de datos específico. Los ataques de troyanos de puerta trasera se pueden utilizar para hacer esto después de la implementación de un sistema.
El envenenamiento de datos ocurre cuando un atacante intenta modificar el proceso de aprendizaje automático colocando datos inexactos en un conjunto de datos, lo que hace que los resultados sean menos precisos. El objetivo de este tipo de ataque es comprometer el proceso de aprendizaje automático y minimizar la utilidad del algoritmo.
Defensas contra el aprendizaje automático adverso
Actualmente, no existe una forma concreta de defenderse contra el aprendizaje automático adverso; sin embargo, existen algunas técnicas que pueden ayudar a prevenir que ocurra un ataque de este tipo. Tales técnicas incluyen entrenamiento contradictorio, destilación defensiva.
El entrenamiento adverso es un proceso en el que se introducen ejemplos de instancias adversas en el modelo y se etiquetan como amenazantes. Este proceso puede ser útil para evitar que se produzcan más ataques de aprendizaje automático adversarios, pero requiere una gran cantidad de mantenimiento.
La destilación defensiva tiene como objetivo hacer que un algoritmo de aprendizaje automático sea más flexible al hacer que un modelo prediga los resultados de otro modelo que se entrenó anteriormente. Este enfoque puede identificar amenazas desconocidas. Es similar en pensamiento a las redes generativas adversariales (GAN), que configuran dos redes neuronales juntas para acelerar los procesos de aprendizaje automático, en la idea de que dos modelos de aprendizaje automático se usan juntos.