sábado, mayo 04, 2019

Style GAN: Una AI para crear perfiles de personas que NO existen

Ya hemos hablado en muchas ocasiones de las GANs (Generative Adversarial Networks) que empezamos a utilizar para hacer un Face Swapping (el que me hicieron con Axl Rose) y generar unos vídeos falsos para crear Fake News documentadas con material audio-visual. Y nuestros compañeros Pablo González y Enrique Blanco explicaron en la pasada RootedCON cómo entrenar una GAN para generar imágenes en streaming de vídeo en tiempo real y suplantar por vídeo conferencia a una persona - como hicieron conmigo -.

Figura 1: Style GAN: Una AI para crear perfiles de personas que NO existen

Antes de seguir con el artículo de hoy, os dejo todos los artículos que hemos escrito sobre las GANs en este blog, porque merece la pena que los leas pare entender un poco más todas las posibilidades que ofrecen:


Las posibilidades que abre el uso de técnicas de Inteligencia Artificial para realizar tareas complejas con algoritmos que de otra forma sería imposible generar son muchas. Y en el caso de las GANs, donde enfrentamos una AI entrenada - a la que llamamos Discriminador - con una AI que está aprendiendo - a la que se llama Generador - abren muchas posibilidades al aprendizaje más allá de los datos existentes, por lo que las AI pueden crear cosas que no existen, como personas.

Figura 2: Esquema de una GAN

En el caso de hoy quería hablaros de una GAN que se llama Stype GAN con la que han creado un proyecto más que particular , y que abre una infinidad de posibilidades a la creación de personas reales, que realmente no existen. Se llama This Person Does Not Exist y se basa en la generación de fotos hiperrealistas mezclando caras y estilos entre dos personas.
La idea es muy similar a la que contamos con el caso del FaceSwapping, donde se capturaba fotograma a fotograma la cara de las personas y se generaban unos estados que se llaman "Latentes" intermedios en los que se buscan formas y estructuras de todas las caras que aparecían en los dos vídeos. Es decir, tenemos el vídeo A donde hay una persona haciendo cosas y pone diferentes rostros. 

Figura 4: Intercambio de estados latentes para hacer el FaceSwapping

Sobre ese vídeo A, queremos poner un rostro que sale de una persona que está en el vídeo B. Entonces, una vez que tenemos todos los estados latentes de las caras en el vídeo A, se busca en el vídeo B cuál es el rostro en estado "Latente" más similar al del vídeo A. Se sustituye el estado latente de B en el fotograma de A y se comienza a entrenar la GAN buscado que el Discriminador de por buenos todos los instantes de vídeo de A con la cara de B que va creando el Generador. Cuanto más entrenamiento, más nivel de realismo.

StyleGAN

En el caso de Style GAN, el proceso es similar, pero no buscando los rostros de las personas, sino los "estilos", es decir, los peinados, expresiones, los objetos decorativos, etcétera, que se pueden extraer de dos caras reales. Así, el proceso es bastante peculiar. Se cuentan con dos juegos de fotografías de personas que sí que existen, y que además se han utilizado para entrenar al Discriminador. El proceso después se refina para que el resultado sea tan realista como lo que veis en la web. En este artículo lo explican en detalle: How StyleGAN Works.

Figura 5: En Style GAN se mezclan fotos de personas que existen y se mezclan los estilos

Se generan dos estados Latentes de dos fotografías de esas personas y se le pasa el "estilo" de una a la otra. El Generador hace una imagen y se la envía al Discriminador que tiene que decir si es una persona real o no. Con entrenamiento, el resultado es el que podéis ver en la web.

Figura 6: Una foto de una persona que no existe creada por StyleGAN en ThisPersonDoesNotExit

Cada vez que se hace clic sobre el enlace, la AI entrenada te da una imagen diferente de una persona que no existe que ha sido creada a partir de otras dos que sí que existían. El proceso lo tenéis explicado en este vídeo que han hecho para el proyecto.


Figura 7: Cómo funciona StyleGAN

Por supuesto, la gente puede utilizar estas fotos para crear perfiles falsos en redes sociales, o webs de cualquier índole, pero lo mejor es que el código está en GitHub con lo que tú, eligiendo dos personas de las que tengas muchas fotos, puedes hacerte una vida completa de una persona que no existe, con lo que la realidad de la web 2.0 puede ser cada vez menos real.

Figura 8: StyleGAN en GitHub

La verdad es que se me han ocurrido muchas ideas con esta tecnología, así que probablemente no será la última vez que hable de ella por aquí. El mundo de posibilidades que abre el uso de estas técnicas de Inteligencia Artificial es increíble. 

Saludos Malignos!

No hay comentarios:

Publicar un comentario