Hace 4 años | Por m4k1n4v4j4 a redusers.com
Publicado hace 4 años por m4k1n4v4j4 a redusers.com

Un pequeño grupo de investigadores belgas de la Universidad de Lovaina ha desarrollado un método para engañar a las cámaras que trabajan con inteligencia artificial. Como resultado de la técnica empleada una persona es capaz de pasar frente a uno de estos dispositivos sin ser detectado. El truco se basa en una debilidad en los esquemas de Redes Neuronales Convolucionales, que son conjuntos de neuronas artificiales que imitan la corteza visual primaria del cerebro biológico.

Comentarios

Taliesin

#4 En cuanto entrenen la red neuronal para que reconozca una persona detrás de un cartel, se equivocará menos. Es curioso, pero no sorprendente.

skaworld

#43 repito en el caso de una imagen descubrir el error es fácil , ahí hay un humano y el algoritmo ha fallado.

Se más o menos como funciona, no hace falta que me lo vuelvas a explicar , si uso el término algoritmo es por referirme a la manera de ponderar pero vuelvo a repetir que pasa cuando los datos de entrada no son tan obvios

Yo entreno un cacharro para detectar fraude por ejemplo (y de hecho se usan) le metes datos de cientos de transferencias y lo entrenas en detectar las anómalas hasta que tiene un número lo suficientemente tocho como para ponderar cual es buena y cual no.

Lo pones en pro, pasa el tiempo y descubres que joder a veces falla, has cazado por otros métodos algunos casos donde no lo ha cazado... Repito la pregunta ¿Como lo reeducas para esos casos anómalos que han colado?


Has detectado 3 casos anómalos, si lo metes a la red son solo 3 no va a ponderarlos, el grueso de sus datos de entrada le dicen que ostia eso no tiene importancia y si los ponderas con estos 3 últimos valen más ¿Como te aseguras de no joder los pesos de los demás indicadores?

En tu ejemplo de Kodak es que hubiese un color nuevo que te dicen que existe pero los ingenieros de Kodak son todos daltónico y solo saben que ahí hay algo que su papel no capta

T

#45 Imagino que depende de cada problema que plantees, no hay una solución genérica. Pero todo pasa por añadir esos casos nuevos al entrenamiento. Si la red es lo suficientemente grande y bien entrenada, esos casos nuevos que le añades deberían añadir capacidad a la misma.

skaworld

#46 Si pero entiendes la problemática?

¿Cuántos accidentes de tráfico necesitas para corregir que tú IA confunde los pixeles inferiores izquierdos con una roca, mete un volantazo y estampa el coche?

Vamos a mi no me parece un problema para nada simple...

javi_ch

#43 te daba tres positivos. Gracias por el curro de la explicación!

T

#55 Gracias, porque me parece que me lié un poco y se podría explicar mejor. Pero es algo que tendría que ser con esquemas gráficos, de ahí mi referencia a la wikipedia.

javi_ch

#56 lo más que hice yo fue hacer un clasificador con un naive bayes para un software que utilizábamos en cirugía hepática. El entrenamiento fue bastante divertido, los resultados algo prometedores. Al final se descartó su uso.

T

#57 Pues eso ya es la leche, mola.

RamonMercader

#33 Las redes neuronales son deterministicas, una vez entrenadas para una misma entrada siempre generarán una misma salida, al final no es mas que una una función del estilo a.f1(x) + b.f2(x) + ...... muy larga

Cuando entrenas a la red, le proporcionas imágenes de personas ya etiquetadas y en base a esto la red va encontrando patrones, ¿qué patrones? no se sabe, sería muy complejo extraerlos (si no no se usaría una red neuronal). La cosa es que tu como humano tienes un patrón en tu mente de que una persona tiene unas características y la IA va a hacer lo mismo, pero su patrón va a ser mas del estilo: si un conjunto de pixeles aquí tiene este valor, y a tal distancia este otro conjunto tiene este otro valor y así. Si tu a la red le proporcionas solo ese patrón, sin el resto de la persona, va a detectar una persona. Al revés lo mismo, puede que haya identificado ciertos patrones que excluyen a una persona. Si le presentas una persona que incluya ese patrón, no será detectada. Esto se puede corregir reentrenando la red y corrigiéndola en función a sus fallos, pero siempre siempre se la va a poder engañar. Además es relativamente sencillo generar imágenes trucadas, pero imposible hacerlo inmune a todas las imagenes trucadas.

skaworld

#52 Repito: Si

Si estas hablando de algo tan sencillo como identificar imagenes, que puedes entender bien cual es el fallo.

Ahora imagina las que buscan patrones de anomalias en transferencias bancarias para rastrear fraude, cientos de miles de transferencias y joder claro que la entrenas y te pilla los patrones, pero ahora identificas uno nuevo, no sabes exactamente como cazarlo pero sabes (por otros metodos porque la policia pillo al tipo vaya usted a saber por que) que ahi hay una anomalia... ¿Como entrenas al bicho cuando solo tienes un caso?

¿Y si es mas grave? ¿Y si es la IA que maneja tu coche autonomo que se comporta siempre bien pero tienes casos de accidentes que no sabes explicar? yo que se, un charco con gasofa en la carretera que al darle el sol deslumbra y confunde al sensor y pega un volantazo, pero tu no sabes exactamente que es de los porrón de sensores e infromacion que le llega lo que la confunde... ¿Cuantos accidentes tendrias que tener hasta corregirlo... o dicho de otra manera... Cuanta gente tendria que morir hasta que la IA aprenda?

A lo que voy es que con la programacion dirigida amos, la tradicional (y no es por barrer pa casa, me parece estupenda la IA pero nunca he escuchado hablar de este tema en concreto) a mi me dicen que hay un caso de fallo, y aun sin saber de los datos de entrada que es lo que provoca la salida anomala puedo debuguear, encontrar el error y repararlo de forma precisa, quirurgica, me llevará mas o menos tiempo pero solo necesito 1 caso de error para identificar el problema en el flujo y corregirlo. Una IA entrenada no, para volver a entrenar a la IA necesitarias muchos para que no te mande a la mierda misma la ponderacion de los demas factores pero... ¿Y si no puedes ofrecerle muchos porque son raros o eticamente reprobables?

m

#16: Si, pero cuando no sea un cartel, será un sombrero, un bolso o una pose rara.

A mi me preocupa que un coche autónomo no frene cuando vaya a cruzar un paso de peatones porque lleve una carpeta de la mano.

T

#4 ¿Brecha en el algoritmo? me da que usas la palabra "algoritmo" fuera de lugar.

La brecha, si la hay, es en el entrenamiento. A la máquina se le habrán pasado tropocientas mil imágenes de personas, y no personas, en el entrenamiento, y se le habrá dicho cuáles son y cuáles no son personas. A partir de ahí tendrá su "idea" de cuándo tiene que decir que detecta una persona y cuándo no.

Imagino, repito, imagino, que una posibilidad de detección de qué es una persona es a base de encontrar los "bordes" de lo que hay en la imagen. Los bordes son, resumiendo, una transición de color/luminosidad, tanto más fáciles de detectar cuanto más contraste haya. También, imagino, la máquina tendrá en cuenta lo que hay dentro de esos bordes. Es decir, está el borde general que es el perfil de una persona (el que coincidiría con su sombra, vamos) y luego el de los distintos elementos: los ojos, boca, nariz, el cuello con el jersey, el jersey con los pantalones, etc.

Supongo que habrá sido entrenado con fotos más o menos actuales de gente, aunque a saber. Lo que sí estoy por asegurar es que el número de fotos, si las hay, de gente con ropas a lo Ágatha Ruíz de la Prada será más bien tirando a bajo.

Bien, me iba a liar más con la explicación de mi suposición pero, al no ser más que una suposición, voy al grano:

Imagina que lo que es capaz de detectar, de interpretar la máquina son figuritas de palo, como las que dibujas al jugar al ahorcado o los personajes de xkcd. Imagina que se ha entrenado la máquina con tooodas las viñetas de xkcd y con la de todos aquellos que hayan dibujado algo así.

La máquina habrá más o menos "aprendido" cuáles son las figuras a reconocer en tanto que, de alguna manera, tienen dos brazos, dos piernas, un tronco y una cabeza.

Y ahora el quid de la cuestión: no en todas las fotos, ni mucho menos, aparecen todos los elementos que compone una figura de esas, pero la máquina aprende igual. ¿Qué sucede? que le damos cierto grado de tolerancia a la máquina, cierto margen de error si se quiere, cierto... "grado de intuición". No es que tenga intuición la máquina, obviamente, pero digamos que la máquina puede partir de "foto de humano en el que se ve el 100%", enseñarle una "foto de humano en el que se ve el 95%" y te lo reconoce igual.

O puede que no, porque dependiendo de cuánto porcentaje falte y, sobre todo, de cuánta sea la variación con respecto a lo aprendido, se le irá el patrón a tomar por saco.

Y lo que les pasa a estos me parece bastante obvio. La máquina ha aprendido que una persona es una especie de continuo entre la cabeza, el tronco y las extremidades. Cuando ese "continuo" se rompe por algún lado, a veces es capaz de "imaginar" que sigue siendo un ser humano (un poco a lo algoritmo de Huffman para corrección de errores de transmisión). Pero si le rompes ese continuo en una parte más bien relativamente grande porcentualmente hablando de lo que esa persona ocupa en pantalla, y además lo haces con un cuadro con cosas completamente aleatorias, le rompes los esquemas.

Yo creo que es algo así y #1 tiene toda la razón. Simplemente se le están enseñando patrones para los que no fue diseñado. A lo mejor le pones el respaldo de una silla delante y, mientras sea algo más o menos "plano" en términos de color, le da igual. Pero a la que empiezas a cambiarle los patrones demasiado, se ve incapaz. Vamos, no es que no sea capaz, es que dice que no hay nada y tan tranquilo.

Magog

Jamás podrán superar esto:
http://i.imgur.com/RmfbEsZ.jpg

P

#7 poniéndote una foto en la cintura, por ejemplo 😂

Robus

Er... No.

Descubren un metodo para engañar a un algoritmo que identifica personas basandose en una red neuronal, que está entrenada para identificar patrones, con un patrón distinto al que se le ha entrenado para reconocer.

Es como si "disfrazas" una silla de piano y luego dices que has "engañado" a un programa que identifica sillas y que nunca estuvo pensado para identificar sillas disfrazadas de piano.

¿Que como humanos lo hacemos mejor? Claro... Pero es como decir que una excavadora lo hace mejor que una pala... no por ello diremos que la pala no es una herramienta útil.

Mejor dicho:

Descubren un metodo para que un algoritmo que identifica patrones basandose en una red neuronal no reconozca como uno de los patrones a identificar una alteración del mismo que lo hace parecer una cosa distinta y que nunca han enseñado a reconocer.

Es el equivalente a hacer mala letra para que el OCR no entienda lo que pones... ¿gracioso? La primera vez... ¿noticia? no.

Robus

#2 Lo he visto antes de comentar.

Rompen el patrón de lo que es una persona (o de lo que han enseñado al algoritmo que es una persona).

Es lo mismo que con el ocr en los 90... escribiamos una R mal hecha para que el algoritmo la confundiera con una B o una P... pero en aquel entonces ya teníamos claro que el problema es que habiamos hecho mal la R.

silencer

#3 Nadie ha enseñado al algoritmo, es IA, realmente no hay un algoritmo tal cual...

skaworld

#6 y eso no es lo divertido

Imagina que yo descubro el truqui para hacer que la IA siempre me conceda el crédito


lol

D

#6 Tiene sentido cero. Sirve para Philip K. Dick. La discriminación la debe probar el blanco según el artículo 14 de la CE.

P

#18 otro caso;
España: Una mujer....

Jaque mate

D

#21 lol lol

snowdenknows

#6 si no introduces la variable de color de piel, problem fixed.

p

#6 sencillamente la «raza» no es un campo a introducir, pero la justicia ya usa algoritmos presumiblemente racistas, y ya se ha declarado como algo inevitable: https://www.propublica.org/article/bias-in-criminal-risk-scores-is-mathematically-inevitable-researchers-say

Lo suficientemente distópico para que le den a la patrulla una dirección donde hay un problema y un código de riesgo predictivo según un cruce de datos para que se vayan preparando para usar la fuerza.

En Propublica tienes bastantes casos de sesgos en la aplicación de inteligencia artificial, y en muchos campos donde se usan difícilmente imaginable.

p

#6 vaya gilipollez. si la raza nunca fue un input a la hora de entrenar, nunca se va a tener en cuenta a la hora de tomar una decisión.
(otra cosa que se hace en algunos sitios, que se usa el código postal, donde casualmente vive más gente de cierta nacionalidad/raza)

m

#32: Y ese es el problema, en usar como indicadores circunstancias que no tienen que ver con la persona.

Robus

#6 Con que la IA haya dado un credito a otra persona de raza negra ya desmientes la acusación.

Y se le pueden explicar a un juez como funciona un algoritmo de ML, después del fiasco de Oracle con el "contar los caracteres de una cadena" creo que siempre hay un experto en informática para estos casos y le contaría como funciona.

No es una "caja negra" como quieren contar, es una "regresión lineal o logaritmica" pero con más complejidad y más variables... y la única cosa es que las variables iniciales las escoge el humano (aquí puede haber discriminación / sesgo) pero otras variables las escoge la máquina para ajustar la función al muestreo (donde también puede haber discriminación / sesgo).

Repito, no es una "caja negra", con explicar que no hay discriminación en las features seleccionadas y en el muestreo cualquier juez, asesorado por un informático con conocimientos de ML, dará la razón al banco.

sotanez

#6 Sí, todo eso es materia de investigación. Ahora mismo, con las leyes actuales, en muchos países básicamente no puedes usar una red neuronal para dar o quitar créditos, porque las personas tienen derecho a saber el motivo de la decisión.

D

#2 Bueno, tanto como a las IA... engañan a ESE sistema y por cierto eso tiene poco de IA, a ver si empieza la prensa a hablar con propiedad

Robus

#12 Cierto, eso no es IA, es una etiquetadora y punto.

Thony

#2 La bombilla se ha iluminado cuando has dicho "aeropuerto". El reconocimiento de personas o facial por IA se va a dar en breve (sino es que se utiliza actualmente) para seguridad. Seguridad no solo por reconocimiento, sino para zonas de alta seguridad. Desde edificios gubernamentales a edificios militares. En este último, es en donde estos investigadores, si consiguen descubrir el porqué, las agencias de seguridad mundial les van a echar el lazo junto con un jugoso cheque.

En un futuro la mayoría de la seguridad estará automatizada, e imagina que has diseñado trajes que evade esa seguridad. O en conflicto armado, imagina que has diseñado estructuras que la IA de los drone no es capaz de reconocer, ¡evades el fuego enemigo!

Todo lo que sea engañar a la IA, tiene muchísimas implicaciones futuras en materia militar.

D

#11 Muy interesante, gracias!

T

#11 Y de ahí que uno piense que los coches autónomos siguen siendo una quimera a día de hoy y por mucho tiempo.

RamonMercader

#19 yo también lo pienso. No hay trenes autónomos, que van por carriles, van a haber coches.

T

#50 hasta cierto punto el metro es bastante automatizado según tengo entendido, no sé cuánto de verdad habrá.

Pero es lo que dices, ya bastante complicado es un tren yendo por carriles, lo va a hacer un coche...

Y que nadie me hable del piloto automático de los aviones que me da la risa.

m

#11: Normal, nosotros vemos el amor y la ternura que transmite el panda, la AI en cambio no ve eso.

KimDeal

#1 en cualquier caso, todo lo que sea engañar a las IAs, mola.

Acuantavese

Redes Neuronales Convolucionales, que son conjuntos de neuronas artificiales que imitan la corteza visual primaria del cerebro biológico.
lol lol lol
Cómo evoluciona el marketing por dioss

D

Noticia: Muere atropellado por un coche autónomo al llevar una camiseta anti-tracking...

Aquí se pueden comprar: https://cloakwear.co/

Robus

#34 Eso explicaría la razón de ese vídeo.

f

Leí la noticia ayer. He probado con DensePose (COCO), con una Resnet 50, FPD, una deep sort YOLOv3, y una facial landmark.... a ninguna de estas le engaña ese truquito jedi.

Mira tú, con una "old fashion" YOLOv2 preentrenada, sí funciona. Y ya todos paranoicos que parece el fin del mundo...

Mientras tanto, la gente que se dedica al single person tracking de supermercados, en los que identifican por ejemplo si coges la caja de cereales, tu cara, sabe quién eres y lo que te llevas.... riéndose de los cuatro matados de una universidad perdida en mitad de un monte que ni siquiera tienen medios para entrenar su propia red.

t

Es un efecto óptico para la IA.

P

Neoluditas unios!!

s

Tal y como están las cosas, lo mejor para proteger tu privacidad es tatuarse en la frente algo que tenga copyright.

pkreuzt

Falta poquito. . .

BodyOfCrime

#13 Que comience el purgatorio!

S

""""Descubrir""""". Esto se sabe de hace algunos años ya, y si no hay cientos de papers de esto en arxiv...

Es más, al final del paper:

We believe that, if we combine this technique with asophisticated clothing simulation, we can design a T-shirtprint that can make a person virtually invisible for automaticsurveillance cameras (using the YOLO detector).

Our current patches do not transfer well to completely different architectures like Faster R-CNN

Vaya, que alarma ninguna y sensacionalista todo lo que se quiera.

D

Soy yo o el de la derecha es bracilargo?

P

#5 es bracilargo...imagínate como tendrá las tetas.

I

#5 Bracilargo no sé, pero pierde más aceite que mi antiguo Ford Fiesta.

LeDYoM

Vengo a meneame para olvidarme del curro y me poneis esto.

D

Es que una persona cortada por la mitad no es una persona. En todo caso sería un cadáver.