Saltar al contenido

VU # 425163: Los clasificadores de aprendizaje automático entrenados a través del descenso de gradientes son vulnerables a un ataque de clasificación errónea arbitraria

Descripción general

Un atacante puede obligar a los modelos de aprendizaje automático entrenados mediante el descenso de gradiente a realizar clasificaciones erróneas arbitrarias que pueden influir en los elementos que se van a clasificar. El impacto de una clasificación errónea varía ampliamente según el propósito del modelo de AA y de qué sistemas forma parte.

Descripción

Esta vulnerabilidad resulta del uso del descenso de gradiente para determinar la clasificación de entradas a través de una red neuronal. Como tal, es una vulnerabilidad en el algoritmo. En términos sencillos, esto significa que el uso estándar actual de este tipo de algoritmo de aprendizaje automático siempre se puede engañar o manipular si el adversario puede interactuar con él. No siempre está claro qué tipo o cantidad de interacción necesita un adversario, y algunos ataques pueden tener éxito con una interacción menor o indirecta. Sin embargo, en general, más opciones de acceso o interacción reducen el esfuerzo necesario para engañar al algoritmo de aprendizaje automático. Si el adversario tiene información sobre alguna parte del proceso de aprendizaje automático (datos de entrenamiento, resultados de entrenamiento, modelo o datos operativos / de prueba), entonces, con el esfuerzo suficiente, el adversario puede crear una entrada que engañará a la herramienta de aprendizaje automático para obtener un resultado. de la elección del adversario. En las instancias de esta vulnerabilidad que conocemos actualmente, el “esfuerzo suficiente” varía ampliamente, entre semanas y semanas de tiempo de cómputo básico.

Dentro de la taxonomía por, tales clasificaciones erróneas son ataques de perturbación o ejemplos de adversarios en el dominio físico. Existen otros tipos de fallas o ataques relacionados con los sistemas de aprendizaje automático y otros sistemas de aprendizaje automático además de los entrenados a través del descenso de gradientes. Sin embargo, esta nota se limita a esta vulnerabilidad de algoritmo específica. Formalmente, la vulnerabilidad se define para el siguiente caso de clasificación.

Sea (x ) un vector de características y (y ) una etiqueta de clase. Sea (L ) una función de pérdida, como la pérdida de entropía cruzada. Deseamos aprender un vector de parametrización ( theta ) para una clase dada de funciones (f ) tal que se minimice la pérdida esperada. Específicamente, deje

[theta_{star} = min_theta mathop{mathbb{E}}_{x,y} Lleft(fleft(theta, xright), yright) ]

En el caso de que (f left ( theta, x right) ) sea una red neuronal, encontrar el minimizador global ( theta _ { star} ) es a menudo computacionalmente intratable. En cambio, se utilizan varios métodos para encontrar ( hat { theta} ) que es una aproximación “suficientemente buena”. Nos referimos a (f left ( hat { theta},. Right) ) como la red neuronal ajustada.

Si se usa el descenso de gradiente estocástico para encontrar ( hat { theta} ) para el conjunto ampliamente definido de (f left ( theta, x right) ) que representa redes neuronales, entonces la red neuronal ajustada ( f left ( hat { theta},. right) ) es vulnerable a la manipulación del adversario.

Específicamente, es posible tomar (f left ( hat { theta},. Right) ) y encontrar una (x ‘) tal que la diferencia entre (x ) y (x’ ) es más pequeño que algunos ( epsilon ) arbitrarios y, sin embargo, (f left ( hat { theta}, x right) ) tiene la etiqueta (y ) y (f left ( hat { theta}, x ‘ right) ) tiene una etiqueta (y’ ) arbitrariamente diferente.

La incertidumbre del impacto de esta vulnerabilidad se ve agravada porque los profesionales y los proveedores no suelen revelar qué algoritmos de aprendizaje automático utilizan. Sin embargo, entrenar redes neuronales mediante descenso de gradientes es una técnica común. Vea también los ejemplos en la sección de impacto.

Impacto

Un atacante puede interferir con un sistema que utiliza el descenso de gradiente para cambiar el comportamiento del sistema. Como vulnerabilidad de algoritmo, esta falla tiene un impacto amplio pero difícil de describir completamente. El impacto preciso variará con la aplicación del sistema de AA. Ofrecemos tres ejemplos ilustrativos; estos no deben considerarse exhaustivos.

Solución

El CERT / CC desconoce actualmente una solución práctica concreta a este problema. Para defenderse en general, haga ambas cosas:
1.Entrenamiento y prueba de adversarios de modelos de AA. Si un modelo debe estar expuesto a entradas adversas, la única defensa bien probada contra este tipo de ataque adversario es el entrenamiento adversario: usar ejemplos perturbados adversarialmente como parte del régimen de entrenamiento de la red neuronal. Cuando se usan para entrenamiento, estos ejemplos aumentan la robustez del modelo contra el ataque adversario. Dicho entrenamiento aumenta significativamente la dificultad de atacar al modelo, pero no garantiza que el modelo no sea vulnerable. Pruebe su algoritmo de aprendizaje automático contra ataques conocidos. Las bibliotecas que presentan implementaciones de referencia de ataques y defensas populares incluyen, y (ART).

2. Defensa estándar en profundidad. Una herramienta de aprendizaje automático no es diferente de otro software en este sentido. Cualquier herramienta debe implementarse en un ecosistema que la respalde y la defienda de la manipulación adversa. Para las herramientas de aprendizaje automático diseñadas específicamente para cumplir un propósito de ciberseguridad, esto es particularmente importante, ya que están expuestas a entradas adversas como parte de su tarea diseñada. Consulte para obtener más información sobre cómo evaluar las herramientas de aprendizaje automático para la ciberseguridad.

Otras soluciones propuestas, que se basan en el procesamiento previo de los datos o simplemente en ocultar el gradiente de la pérdida, cuando su adversario es consciente de que está intentando esas mitigaciones.

Agradecimientos

Ver Papernot et al. (2016) o Biggio y Roli (2018) para una breve historia.

Este documento fue escrito por Allen Householder, Jonathan M. Spring, Nathan VanHoudnos y Oren Wright.