Revolución IA

La Inteligencia Artificial está llamada a protagonizar la próxima Revolución tecnológica

Inicio Sobre Revolucionia Temas Para saber más Contacto

Ataque contra reconocimiento de imágenes

Fernando P.    08/01/2018

Temas:  Actualidad    Aplicaciones    Divulgación

El reconocimiento de imágenes es una de las aplicaciones más conocidas de las redes neuronales artificiales (RNA en lo sucesivo). Pero se trata de un gran reto por la cantidad de información que puede contener una imagen y por el gran tamaño de las redes necesarias para llevar a cabo este tipo de tareas de clasificación.

Lo que uno ve como dificultades a la hora de entrenar una RNA, puede ser visto por otros como una oportunidad para atacar nuestro trabajo, en el sentido de hacer que funcione de forma distinta a la proyectada, en beneficio del atacante.

Redes neuronales artificiales y reconocimiento de imágenes
Las RNA se usan desde hace mucho tiempo en tareas de reconocimiento de imágenes. Se trata de redes bastante grandes que toman como entrada grandes cantidades de datos porque cada pixel de la imagen es una componente de entrada. Habitualmente se entrenan de forma supervisada usando el algoritmo Back-Propagation.

El funcionamiento básico de este tipo de redes consiste en detectar si en una imagen se encuentra algún tipo de objeto de una lista prefijada, que se han usado para entrenarla (imágenes de estos objetos). La salida de la red es relativamente sencilla y consiste en indicar qué objetos (clases de salida) se han detectado en la imagen.

Estas redes son difíciles de entrenar porque implican un problema de optimización (buscar los pesos para la red) con una cantidad enorme de variables (los pesos) y una función de coste muy complicada como consecuencia de ello y de la gran cantidad de datos que tiene una imagen.

El entrenamiento de este tipo de redes es muy laborioso e intensivo en términos de trabajo de computador. Cualquier cambio o ampliación de la red significa una cantidad enorme de trabajo.

Por otro lado, el tener una función de coste tan compleja implica que puede tener muchos mínimos locales, algunos más robustos que otros (en el sentido de que el coste no varía mucho si varían un poco los datos de entrada) y no es fácil entrenar una red tan grande para que resulte robusta.

Perturbaciones en las imágenes
El reconocimiento de imágenes es una de esas aplicaciones en las que la generalización al nivel más abstracto posible es clave, porque sucede que un mismo objeto puede aparecer de muchas formas en una imagen.

Hay transformaciones evidentes a una imagen, como pueden ser la traslación y la rotación, de las que debe encargarse la RNA, su estructura debe permitir reconocer un objeto a pesar de que se haya operado una de estas transformaciones en la imagen. En realidad, el ser capaz de reconocer este tipo de cosas es lo que suele hacer muy grandes a este tipo de redes.

Pero hay otras transformaciones leves, como cambios de iluminación o ruido añadido, que sí son fácilmente reconocibles para un humano pero que complican bastante el entrenamiento de una RNA. Si la red no resulta robusta, cambios mínimos de este tipo en las imágenes pueden dar lugar a clasificaciones erróneas respecto a las imágenes originales.

Así que las RNA que se entrenan para reconocimiento de imágenes suelen incorporar lo que se llama perturbaciones en las imágenes, que no es más que cambios aleatorios leves que se introducen en las imágenes. Estas imágenes modificadas se incorporan junto con las originales al entrenamiento de la red.

Naturalmente, esta forma de proceder aumenta el trabajo de entrenamiento (y el tamaño de la red, porque tiene que aprender a reconocer estas perturbaciones introducidas) que ya era, de por sí, bastante considerable.

Pero el entrenamiento usando perturbaciones en las imágenes no es tan robusto como para funcionar con cualquier cambio en una imagen que un humano reconocería. El número de cosas que se pueden cambiar en una imagen no será infinito, pero tampoco debe andar muy lejos. Así que las RNA para reconocimiento de imágenes se entrenan para poder funcionar con las modificaciones más sencillas y más probables, dependiendo de la aplicación real de la red.

Naturalmente, todo esto significa que es posible hacer modificaciones sencillas a una imagen, que en su forma original sería bien clasificada pero que su forma modificada dará lugar a una clasificación errónea o directamente disparatada.

Ya habíamos hablado aquí de los problemas de algunos coches autónomos con señales de tráfico modificadas de forma intencionada para confundirles. Se trata exactamente del mismo problema descrito y relativo al reconocimiento de imágenes usando RNA.

Ataque general contra el reconocimiento de imágenes
A partir de las debilidades genéricas que exhiben las RNA para reconocimiento de imágenes, investigadores de Google se han planteado la posibilidad de crear lo que han llamado ataques contra el reconocimiento de imágenes.

La idea básica consiste en ver si es posible tomar una RNA ya entrenada para una tarea concreta de reconocimiento de imágenes y poder modificar de una forma sencilla cualquier imagen de entrada para que la red la clasifique siempre como un objeto escogido, que no forma parte de esas imágenes.

Hay muchas aplicaciones evidentes de esta idea, como podría ser el confundir a los sistemas de reconocimiento facial que existen en muchos aeropuertos para que nunca puedan reconocernos.

La forma más sencilla de llevar a cabo esta idea sería mediante la adición de una especie de pequeño parche a la imagen objeto de clasificación, de forma que la RNA tienda a fijarse en ese parche y lo use para clasificar la imagen en el sentido que desea el atacante.

El ataque de las pegatinas y las tostadoras Ataque contra reconocimiento de imágenes
Lo cierto es que los investigadores de Google han probado que es posible llevar a la práctica esta idea. Lo han hecho creando pequeñas imágenes que sobreponían a las imágenes a clasificar, las insertaban en esquinas y zonas poco importantes, como si fueran pegatinas.

Básicamente, han tomado una RNA que estaba entrenada para reconocer numerosos objetos comunes (usando bases de datos de imágenes estandarizadas) y han planteado un problema de optimización clásica que consiste en calcular los valores de los pixels de una pegatina tales que la red clasificara cualquier imagen modificada de forma errónea.

Lo único que han necesitado es una RNA ya entrenada y muchas imágenes que la red debería clasificar bien. A partir de ahí, iterar una y otra vez hasta dar con la forma adecuada de la pegatina para confundir a la red.

Uno de los objetos que la RNA atacada conocía era una tostadora. Así que los investigadores de Google han planteado su problema de optimización de forma que se calculara el contenido de una pegatina que, al ser puesta en cualquier imagen, confundiera a la red lo suficiente como para que esta clasificara la imagen como una tostadora.

El problema de optimización planteado es bastante complejo porque busca la forma óptima de la pegatina para confundir a la red en todas las imágenes originales con las que fue entrenada la red y en una gran variedad de posiciones y rotaciones de la pegatina sobre la imagen a modificar.

No se ha entrenado ninguna RNA para este caso. Pero ha sido un trabajo similar de optimización clásica en el que han conseguido una imagen que impresa y pegada físicamente en objetos que la RNA objeto del ataque reconocería, produce el efecto de que esta tenga una tendencia muy grande a clasificar el objeto como una tostadora.

El ejemplo de la ilustración adjunta es real, incluye una imagen de un plátano que la RNA clasifica sin problemas y también incluye la imagen con la pegatina famosa (los investigadores de Google animan a imprimirla y a probar aplicaciones comerciales de reconocimiento de imágenes a ver qué sucede).

Lo más sorprendente de todo es que la pegatina creada no se parece mucho a una tostadora. Una pegatina con una tostadora real tampoco parece confundir mucho a la RNA. De alguna forma, el proceso de optimización de la pegatina es capaz de detectar los patrones en los que se fija la red a la hora de reconocer una tostadora. Luego los amplifica y sintetiza en una pequeña pegatina que es capaz de llamar poderosamente la atención de la red en cualquier circunstancia.

Los problemas del reconocimiento de imágenes
A pesar de que el reconocimiento de imágenes es una de las aplicaciones más extendidas actualmente dentro de la Inteligencia Artificial, es evidente que hay muchos problemas que solucionar antes de que este tipo de técnicas puedan considerarse inteligentes.

En realidad, no son más que clasificadores, que pueden funcionar muy bien en determinadas aplicaciones, mejor y más rápido que los humanos incluso. Pero heredan de las RNA los problemas de las mismas en cuanto a que no son capaces de justificar lo que hacen. Y de esta forma es muy difícil defenderse de manipulaciones que, por otra parte, son muy sencillas en las imágenes.



Ciertamente, el ataque descrito contra el reconocimiento de imágenes no es un avance de las técnicas de Inteligencia Artificial. Pero sí que va a ser necesario un buen avance para hacer mucho más robustos los sistemas actuales.



Para saber más:

Artículo original que describe la investigación llevada a cabo por los investigadores de Google para crear una técnica general de ataque a sistemas de reconocimiento de imágenes. Es un artículo bastante sencillo e incluye una ilustración con la pegatina que han usado para confundir a las RNA objeto del ataque. Se insta a los lectores a usarla con aplicaciones comerciales de reconocimiento de imágenes para ver qué sucede.



 

Inicio Powered by NetBSD
 
HTML5
 
En general, todo el contenido de este sitio web es original, salvo referencias o enlaces a otros sitios web y citas o reproducciones expresamente presentadas como tales.

No está permitida la reproducción ni la copia del contenido de este sitio web sin el permiso expreso de la propiedad del mismo.

Este sitio web no utiliza cookies ni ningún otro mecanismo para almacenar información en los navegadores de los visitantes ni para realizar seguimiento de los mismos.

2017,2018 Revolucionia.net
Sobre Revolucionia
Temas
Para saber más
Contacto