¿Cómo es posible que las redes neuronales profundas se engañen tan fácilmente?

63

La siguiente página / estudio demuestra que las redes neuronales profundas se engañan fácilmente al proporcionar predicciones de alta confianza para imágenes irreconocibles, p. Ej.

Imágenes evolucionadas que son irreconocibles para los humanos, pero que los DNN de última generación formados en ImageNet creen con> = 99,6% de certeza como un objeto familiar.  Este resultado destaca las diferencias entre cómo los DNN y los humanos reconocen los objetos.  Imágenes codificadas directa e indirectamente

La evolución de las imágenes para que coincida con las clases de DNN produce una tremenda diversidad de imágenes.  El puntaje promedio de confianza de DNN para estas imágenes es 99.12% para la clase listada, lo que significa que el DNN cree con certeza que la imagen es ese tipo de cosas.  Se muestran imágenes seleccionadas para mostrar la diversidad de 5 corridas evolutivas independientes.  Las imágenes arrojan luz sobre lo que le importa a la red DNN y lo que no le importa al clasificar una imagen.  Por ejemplo, un autobús escolar alterna líneas amarillas y negras, pero no necesita tener un parabrisas o ruedas

¿Cómo es esto posible? ¿Puede explicarlo idealmente en inglés simple?

kenorb
fuente
14
La versión en inglés simple de la respuesta es: cualquier sistema basado en seguir un conjunto de reglas puede ser engañado, solo necesita descubrir qué puede romper las reglas.
Ankur
1
@Ankur, ¿no significa esto que todos los sistemas de IA pueden ser engañados?
dice
55
@yters: Sí, todos los sistemas de inteligencia artificial pueden ser engañados sin importar cómo el equipo de marketing sugiera cuán inteligentes son sus sistemas. Algunos se dejan engañar fácilmente y otros requieren cierto esfuerzo para ser engañados.
Ankur
66
FWIW, los humanos son engañados con la misma facilidad. Por eso funcionan las ilusiones ópticas. Además, hay imágenes de que el NN identificará bien el objeto, pero un humano no podría. En particular, imágenes muy ruidosas.
Dunk
55
@Dunk, pero los humanos son engañados de manera diferente. Ese es el punto: si las IAs son engañadas cuando los humanos no lo son, no pueden ser humanas.
Pacerier

Respuestas:

51

Primero, esas imágenes (incluso las primeras) no son basura completa a pesar de ser basura para los humanos; en realidad están finamente ajustados con varias técnicas avanzadas, incluida otra red neuronal.

La red neuronal profunda es la red pre-entrenada modelada en AlexNet proporcionada por Caffe . Para desarrollar imágenes, tanto las imágenes codificadas directamente como las indirectamente codificadas, utilizamos el marco evolutivo Sferes . La base del código completo para llevar a cabo los experimentos evolutivos se puede descargar [sic] aquí . El código para las imágenes producidas por el ascenso de gradiente está disponible aquí .

Las imágenes que en realidad son basura aleatoria se reconocieron correctamente como nada significativo:

En respuesta a una imagen irreconocible, las redes podrían haber generado una baja confianza para cada una de las 1000 clases, en lugar de un valor de confianza extremadamente alto para una de las clases. De hecho, hacen exactamente eso para las imágenes generadas aleatoriamente (por ejemplo, las de la generación 0 de la ejecución evolutiva)

El objetivo original de los investigadores era utilizar las redes neuronales para generar automáticamente imágenes que se parecieran a las cosas reales (obteniendo los comentarios del reconocedor e intentando cambiar la imagen para obtener un resultado más seguro), pero terminaron creando el arte anterior. . Observe cómo, incluso en las imágenes estáticas, hay pequeñas manchas, generalmente cerca del centro, que, es justo decir, están activando el reconocimiento.

No estábamos tratando de producir imágenes adversarias, irreconocibles. En cambio, estábamos tratando de producir imágenes reconocibles, pero surgieron estas imágenes irreconocibles.

Evidentemente, estas imágenes tenían las características distintivas adecuadas para coincidir con lo que la IA buscaba en las imágenes. La imagen de "paleta" tiene una forma de paleta, el "bagel" es redondo y del color correcto, la imagen del "proyector" es como una lente de cámara, el "teclado de la computadora" es un montón de rectángulos (como las teclas individuales), y la "valla de alambre" me parece legítimamente una valla de alambre.

Figura 8. La evolución de las imágenes para que coincida con las clases de DNN produce una gran diversidad de imágenes. Se muestran imágenes seleccionadas para mostrar la diversidad de 5 corridas evolutivas. La diversidad sugiere que las imágenes no son aleatorias, sino que las evoluciones producen características discriminatorias [sic] de cada clase objetivo.

Lectura adicional: el documento original (PDF grande)

Ben N
fuente
El problema es: ¿cómo DNN da tanta confianza ~ 99% !que estas imágenes tipo patrón de algún objeto representan objetos verdaderos? A menos que DNN esté mentalmente enfermo y piense que se necesita la prueba de Rorschach en algún hospital :-)
Agnius Vasiliauskas
Lo siento, no pude resistirme :-) "Bagel" es redondo, pero es sol, globo ocular, etc. "Proyector" podría ser un modelo atómico, una sección transversal del rayo láser, etc. Y así sucesivamente. Entonces, ¿por qué demonios, se prefiere el bagel sobre el sol, se prefiere el proyector sobre el esquema del átomo, etc. con 99%confianza? Para mí, la principal diferencia entre DNN y el reconocimiento humano es el hecho de que los humanos no están obligados a reconocer algo, ¡mientras que NN parece que sí!
Agnius Vasiliauskas
25

Las imágenes que proporcionó pueden ser irreconocibles para nosotros. En realidad, son las imágenes que reconocemos pero que evolucionaron utilizando el marco evolutivo Sferes .

Si bien estas imágenes son casi imposibles de etiquetar para los humanos con cualquier cosa que no sea arte abstracto, la Red neuronal profunda las etiquetará como objetos familiares con un 99,99% de confianza.

Este resultado destaca las diferencias entre cómo los DNN y los humanos reconocen los objetos. Las imágenes están codificadas directamente (o indirectamente)

De acuerdo a este video

Cambiar una imagen originalmente clasificada correctamente de una manera imperceptible para los humanos puede hacer que la causa DNN la clasifique como otra cosa.

En la imagen debajo del número en la parte inferior, se supone que las imágenes deben parecerse a los dígitos. Pero la red cree que las imágenes en la parte superior (una como el ruido blanco) son dígitos reales con un 99,99% de certeza.

ingrese la descripción de la imagen aquí

La razón principal por la que estos se engañan fácilmente es que la Red neuronal profunda no ve el mundo de la misma manera que la visión humana. Usamos toda la imagen para identificar cosas, mientras que DNN depende de las características. Mientras DNN detecte ciertas características, clasificará la imagen como un objeto familiar en el que ha sido entrenada. Los investigadores propusieron una forma de evitar tales engaños agregando las imágenes engañosas al conjunto de datos en una nueva clase y capacitando a DNN en el conjunto de datos ampliado. En el experimento, el puntaje de confianza disminuye significativamente para ImageNet AlexNet. Esta vez no es fácil engañar al DNN reentrenado. Pero cuando los investigadores aplicaron dicho método a MNIST LeNet, la evolución todavía produce muchas imágenes irreconocibles con puntajes de confianza del 99,99%.

Más detalles aquí y aquí .

Vishnu JK
fuente
13

Todas las respuestas aquí son geniales, pero, por alguna razón, hasta ahora no se ha dicho nada sobre por qué este efecto no debería sorprenderlo . Yo llenaré el espacio en blanco.

Permítanme comenzar con un requisito que es absolutamente esencial para que esto funcione: el atacante debe conocer la arquitectura de la red neuronal (número de capas, tamaño de cada capa, etc.). Además, en todos los casos que me examiné, el atacante conoce la instantánea del modelo que se utiliza en la producción, es decir, todos los pesos. En otras palabras, el "código fuente" de la red no es un secreto.

No puedes engañar a una red neuronal si la tratas como una caja negra. Y no puede reutilizar la misma imagen engañosa para diferentes redes. De hecho, usted tiene que "entrenar" a la red de destino usted mismo, y aquí, al entrenar, me refiero a correr hacia adelante y hacia atrás, pero especialmente diseñado para otro propósito.

¿Por qué está funcionando en absoluto?

Ahora, aquí está la intuición. Las imágenes tienen dimensiones muy altas: incluso el espacio de las imágenes pequeñas en color de 32x32 tiene 3 * 32 * 32 = 3072dimensiones. Pero el conjunto de datos de entrenamiento es relativamente pequeño y contiene imágenes reales, todas las cuales tienen cierta estructura y buenas propiedades estadísticas (por ejemplo, suavidad de color). Entonces, el conjunto de datos de entrenamiento se encuentra en una pequeña variedad de este gran espacio de imágenes.

Las redes convolucionales funcionan extremadamente bien en esta variedad, pero básicamente, no saben nada sobre el resto del espacio. La clasificación de los puntos fuera del múltiple es solo una extrapolación lineal basada en los puntos dentro del múltiple. No es de extrañar que algunos puntos particulares se extrapolen incorrectamente. El atacante solo necesita una forma de navegar hasta el punto más cercano.

Ejemplo

Déjame darte un ejemplo concreto de cómo engañar a una red neuronal. Para hacerlo compacto, voy a usar una red de regresión logística muy simple con una no linealidad (sigmoide). Toma una entrada de 10 dimensiones x, calcula un solo número p=sigmoid(W.dot(x)), que es la probabilidad de la clase 1 (versus la clase 0).

Regresión logística

Supongamos que sabe W=(-1, -1, 1, -1, 1, -1, 1, 1, -1, 1)y comience con una entrada x=(2, -1, 3, -2, 2, 2, 1, -4, 5, 1). Un pase hacia adelante da un sigmoid(W.dot(x))=0.047495% de probabilidad de que xsea ​​un ejemplo de clase 0.

x y W

Nos gustaría encontrar otro ejemplo, yque está muy cerca xpero que la red clasifica como 1. Tenga en cuenta que xes de 10 dimensiones, por lo que tenemos la libertad de empujar 10 valores, que es mucho.

Como W[0]=-1es negativo, es mejor tener un pequeño y[0]para hacer una contribución total de y[0]*W[0]pequeño. Por lo tanto, hagamos y[0]=x[0]-0.5=1.5. Del mismo modo, W[2]=1es positivo, por lo que es mejor aumentar y[2]para hacer y[2]*W[2]más grande: y[2]=x[2]+0.5=3.5. Y así.

x, W e y

El resultado es y=(1.5, -1.5, 3.5, -2.5, 2.5, 1.5, 1.5, -3.5, 4.5, 1.5), y sigmoid(W.dot(y))=0.88. ¡Con este cambio, mejoramos la probabilidad de clase 1 de 5% a 88%!

Generalización

Si observa de cerca el ejemplo anterior, notará que sabía exactamente cómo ajustar xpara moverlo a la clase de destino, porque sabía el gradiente de la red. Lo que hice fue en realidad una propagación hacia atrás , pero con respecto a los datos, en lugar de los pesos.

En general, el atacante comienza con la distribución de destino (0, 0, ..., 1, 0, ..., 0)(cero en todas partes, excepto la clase que quiere lograr), se propaga hacia atrás a los datos y realiza un pequeño movimiento en esa dirección. El estado de la red no se actualiza.

Ahora debe quedar claro que es una característica común de las redes de retroalimentación que se ocupan de una pequeña variedad de datos, sin importar cuán profunda sea o la naturaleza de los datos (imagen, audio, video o texto).

Protección

La forma más sencilla de evitar que se engañe el sistema es utilizar un conjunto de redes neuronales, es decir, un sistema que agregue los votos de varias redes en cada solicitud. Es mucho más difícil propagar hacia atrás con respecto a varias redes simultáneamente. El atacante podría intentar hacerlo secuencialmente, una red a la vez, pero la actualización para una red podría confundirse fácilmente con los resultados obtenidos para otra red. Cuantas más redes se usan, más complejo se vuelve un ataque.

Otra posibilidad es suavizar la entrada antes de pasarla a la red.

Uso positivo de la misma idea.

No debe pensar que la propagación hacia atrás a la imagen solo tiene aplicaciones negativas. Una técnica muy similar, llamada deconvolución , se utiliza para visualizar y comprender mejor lo que las neuronas han aprendido.

Esta técnica permite sintetizar una imagen que hace que una neurona en particular se active, básicamente ver visualmente "lo que está buscando la neurona", lo que en general hace que las redes neuronales convolucionales sean más interpretables.

Máxima
fuente
10

Una pregunta importante que aún no tiene una respuesta satisfactoria en la investigación de redes neuronales es cómo los DNN elaboran las predicciones que ofrecen. Los DNN funcionan de manera efectiva (aunque no exactamente) al hacer coincidir los parches en las imágenes con un "diccionario" de parches, uno almacenado en cada neurona (ver el documento del gato de YouTube ). Por lo tanto, es posible que no tenga una vista de alto nivel de la imagen, ya que solo mira los parches, y las imágenes generalmente se reducen a una resolución mucho más baja para obtener los resultados en los sistemas de generación actuales. Los métodos que analizan cómo interactúan los componentes de la imagen pueden evitar estos problemas.

Algunas preguntas para realizar este trabajo son: ¿Qué nivel de confianza tenían las redes cuando hicieron estas predicciones? ¿Cuánto volumen ocupan tales imágenes adversas en el espacio de todas las imágenes?

Algunos trabajos que conozco a este respecto provienen del laboratorio de Dhruv Batra y Devi Parikh en Virginia Tech, quienes analizan esto para los sistemas de respuesta a preguntas: Análisis del comportamiento de modelos visuales de respuesta a preguntas e interpretación de modelos visuales de respuesta a preguntas .

Se necesita más trabajo de este tipo, y así como el sistema visual humano también se deja engañar por tales "ilusiones ópticas", estos problemas pueden ser inevitables si usamos DNN, aunque AFAIK todavía no se sabe nada de ninguna manera, teórica o empíricamente.

Duro
fuente
5

¿Cómo es posible que las redes neuronales profundas se engañen tan fácilmente?

Las redes neuronales profundas se engañan fácilmente al proporcionar predicciones de alta confianza para imágenes irreconocibles. ¿Cómo es esto posible? ¿Puede explicarlo idealmente en inglés simple ?

Intuitivamente, las capas ocultas adicionales deberían hacer que la red pueda aprender funciones de clasificación más complejas y, por lo tanto, hacer una mejor clasificación de trabajos. Si bien puede llamarse aprendizaje profundo , en realidad es una comprensión superficial.

Pon a prueba tus propios conocimientos: qué animal en la cuadrícula de abajo es un felis silvestris catus , tómate tu tiempo y no hagas trampa. Aquí hay una pista: ¿cuál es un gato doméstico?

¿Cuál es un gato doméstico?

Para una mejor comprensión, consulte: " Ataque Adversario a Visualizaciones Vulnerables " y " ¿Por qué las redes neuronales profundas son difíciles de entrenar? ".

El problema es análogo al aliasing , un efecto que hace que las diferentes señales se vuelvan indistinguibles (o alias unas de otras) cuando se muestrea, y el efecto de rueda de diligencia , donde una rueda de radios parece girar de manera diferente de su rotación real.

La red neuronal no sabe lo que está mirando ni hacia dónde va.

Las redes neuronales profundas no son expertas en algo, están capacitadas para decidir matemáticamente que se ha alcanzado algún objetivo, si no están capacitados para rechazar respuestas incorrectas, no tienen un concepto de lo que está mal; solo saben lo que es correcto y lo que no es correcto: incorrecto y "no correcto" no son necesariamente lo mismo, ni es "correcto" y verdadero.

La red neuronal no sabe bien de mal.

Al igual que la mayoría de las personas no conocerían un gato doméstico si vieran uno, dos o más, o ninguno. Cuántos gatos domésticos en la cuadrícula de fotos anterior, ninguno. Cualquier acusación de incluir lindas fotos de gatos es infundada, todos son animales salvajes peligrosos.

Aquí hay otro ejemplo. ¿Responder a la pregunta hace que Bart y Lisa sean más inteligentes? ¿Sabe la persona a la que preguntan si hay variables desconocidas que pueden entrar en juego?

¿Ya llegamos?

Todavía no estamos allí, pero las redes neuronales pueden proporcionar rápidamente una respuesta que probablemente sea correcta, especialmente si fue entrenada adecuadamente para evitar todos los errores.

Robar
fuente
3

Las redes neuronales se pueden engañar o piratear fácilmente agregando cierto ruido estructurado en el espacio de la imagen ( Szegedy 2013 , Nguyen 2014 ) debido a que se ignora la información no discriminatoria en su entrada.

Por ejemplo:

Aprendiendo a detectar jaguares haciendo coincidir los puntos únicos en su pelaje, ignorando el hecho de que tienen cuatro patas. 2015

Entonces, básicamente, la predicción de alta confianza en ciertos modelos existe debido a una ' combinación de su naturaleza localmente lineal y espacio de entrada de alta dimensión '. 2015

Publicado como un documento de conferencia en ICLR 2015 (trabajo de Dai) sugiere que la transferencia de parámetros entrenados de manera discriminatoria a modelos generativos, podría ser un área excelente para futuras mejoras.

kenorb
fuente
3

No puedo comentar (debido a que requirió 50 repeticiones), pero quería responder a Vishnu JK y al OP. Creo que ustedes se están saltando el hecho de que la red neuronal solo está diciendo realmente desde un punto de vista programático que "esto es lo más parecido".

Por ejemplo, si bien podemos enumerar los ejemplos de imágenes anteriores como "arte abstracto", definitivamente son más parecidos a los que aparecen en la lista. Recuerde que los algoritmos de aprendizaje tienen un alcance sobre lo que reconocen como un objeto y si observa todos los ejemplos anteriores ... y piensa en el alcance del algoritmo ... estos tienen sentido (incluso los que de un vistazo reconoceríamos como ruido blanco). En el ejemplo de Vishnu de los números, si enfoca sus ojos y desenfoca las imágenes, en realidad puede detectar patrones que realmente reflejen de cerca los números en cuestión.

El problema que se muestra aquí es que el algoritmo parece no tener un "caso desconocido". Básicamente, cuando el reconocimiento de patrones dice que no existe en el ámbito de salida. (Entonces, un grupo de nodos de salida final que dice que esto no es nada que sepa). Por ejemplo, las personas también hacen esto, ya que es una cosa que los humanos y los algoritmos de aprendizaje tienen en común. Aquí hay un enlace para mostrar de qué estoy hablando (qué es lo siguiente, defínalo) usando solo animales conocidos que existen:

Enlace de imagen

Ahora, como persona, limitada por lo que sé y puedo decir, tendría que concluir que lo siguiente es un elefante. Pero no lo es. Los algoritmos de aprendizaje (en su mayor parte) no tienen una declaración de "me gusta", la salida siempre valida a un porcentaje de confianza. Así que engañar a uno de esta manera no es sorprendente ... lo que por supuesto es sorprendente es que, en base a su conjunto de conocimientos, en realidad llega al punto en el que, si observa los casos anteriores enumerados por OP y Vishnu, esa persona. .. con un poco de mirada ... puede ver cómo el algoritmo de aprendizaje probablemente hizo la asociación.

Entonces, realmente no lo llamaría una etiqueta errónea por parte del algoritmo, o incluso llamarlo un caso en el que se ha engañado ... más bien un caso en el que su alcance se desarrolló incorrectamente.

Métrico
fuente
2

Ya hay muchas buenas respuestas, solo agregaré a las que vinieron antes que la mía:

Este tipo de imágenes a las que se refiere se denominan perturbaciones adversas (ver 1 , y no se limita a imágenes, también se ha demostrado que se aplica al texto, ver Jia y Liang, EMNLP 2017) . En el texto, la introducción de un Se ha visto que una oración irrelevante que no contradice el párrafo causa que la red obtenga una respuesta completamente diferente (ver ver Jia y Liang, EMNLP 2017 ).

La razón por la que funcionan se debe al hecho de que la red neuronal ve las imágenes de una manera diferente a la nuestra, junto con la alta dimensionalidad del espacio problemático. Cuando vemos la imagen completa, ven una combinación de características que se combinan para formar un objeto ( Moosavi-Dezfooli et al., CVPR 2017 ). Según la perturbación generada contra una red, se ha visto que tiene una alta probabilidad de funcionar en otras redes:

perturbaciones

En la figura anterior, se ve que las perturbaciones universales calculadas para la red VGG-19, por ejemplo, tienen una relación engañosa superior al 53% para todas las demás arquitecturas probadas.

Entonces, ¿cómo lidiar con la amenaza de perturbaciones adversas? Bueno, por un lado, puedes intentar generar tantas perturbaciones como puedas y usarlas para ajustar tu modelo. Si bien esto resuelve el problema, no lo resuelve por completo. En ( Moosavi-Dezfooli et al., CVPR 2017 ) el autor informó que, repetir el proceso calculando nuevas perturbaciones y luego afinando nuevamente parece no producir más mejoras, independientemente del número de iteraciones, con la relación de engaño rondando 80%

Las perturbaciones son una indicación de la coincidencia de patrones poco profundos que realizan las redes neuronales, junto con su mínima falta de comprensión profunda del problema en cuestión. Aún queda mucho trabajo por hacer.

Tshilidzi Mudau
fuente
2

La mayoría de las otras respuestas son interesantes, y algunas muestran cierto rigor, por lo que no duplicaré ese tratamiento, pero presentaré una respuesta cualitativa que habla más sobre el estado de la investigación que una evaluación exacta de la falta de defensas de seguridad en diseños actuales de redes artificiales.

Si alguien pregunta: "¿Cómo es que los humanos se dejan engañar tan fácilmente?" Sonreiría de acuerdo y diría: "Supongo que no somos tan profundos".

Esa es mi evaluación del estado de las redes artificiales también. No obstante, puede producirse más innovación y descubrimiento, y la cuestión de la seguridad en la capacitación, el despliegue y el uso en el campo de los componentes de IA seguramente se abordará cuando los ataques exitosos le cuestan credibilidad y buena voluntad a las corporaciones.

La venta de tecnología mal asegurada no es algo nuevo. Nadie aquí en el laboratorio pondrá ninguna teoría científica, datos o procedimiento en la nube a menos que ya tengamos fuentes comunes abiertas o licencias creativas.

FauChristian
fuente