Herramienta de IA puede descifrar contraseñas en menos de un segundo

Las GAN son un software creado para darles a las máquinas o a la inteligencia artificial el poder de crear. Descubra en este blog qué son las GAN, quién creó su código y cómo se ha usado.

¿Qué es lo que nos diferencia a los seres humanos de las máquinas? Puede parecer obvia la respuesta, ya que, factores como la imaginación, la creatividad y las emociones, son las más relevantes. Sin embargo, la aparición de las GAN empezó a plantear dudas sobre esta cuestión filosófica, pues podría tomar un giro inesperado en los próximos 50 años, aunque con seguridad no lo sepamos.

Las Generative Adversarial Networks (GAN), en español Redes Generativas Adversarias, son modelos generativos que “crean instancias nuevas de datos que se asemejan a los datos de entrenamiento”, según Google. Estas son las que permiten que una máquina pueda crear imágenes, textos y sonidos que en apariencia no existían.

Gracias a estas, desde hace unos años presenciamos cómo la inteligencia artificial puede generar rostros de personas que no existen, como ocurrió, por ejemplo, con los deep fakes (videos falsos) de famosos o políticos y hasta generar música nueva.

Para entender mejor el papel de este modelo en el desarrollo de la inteligencia artificial, le contaré cuáles son los conceptos clave alrededor de las GAN que sí o sí debe conocer, también descubrirá quién las creó y qué se puede hacer con ellas.

¿Qué son los modelos generativos?

Los modelos generativos son los encargados de producir nuevas instancias de datos, estos pueden generar la imagen de un objeto, animal, humano, escena, foto, etc., con apariencia hiperreal o real.

Los modelos generativos además contrastan con los modelos discriminativos. Estos últimos son aquellos que pueden identificar diferentes tipos de instancias de datos, es decir, que en lugar de crear algo (como los generativos) logran distinguir entre, por ejemplo, un león y una persona.

Finalmente, las Generative Adversarial Networks (GAN) son arquitecturas que entrenan modelos generativos y que involucran también a los modelos discriminativos, según lo explican en Machine Learning Mastery.

Para que funcionen las GAN deben entrenarse, se les debe mostrar millones de imágenes o “alimentarlas” con una gran cantidad de información y bases de datos, con el fin de que puedan aprender de esta información y empiece a “crear”.

¿Quién creo las GAN?

 Ian Goodfellow, es el investigador científico creador del código del software GAN.

Este descubrimiento lo logró tras departir con unos amigos investigadores en un bar que le habían pedido ayuda sobre un problema de un proyecto que estaban abordando.

Ellos buscaban “utilizar un análisis estadístico complejo de los elementos que componen una fotografía para ayudar a las máquinas a generar imágenes parecidas por sí solas”, según cuenta el perfil que le hicieron en MIT Technology Review.

Goodfellow, sabía que esto que planteaban no iba a funcionar pues pensaba que “en un futuro el rendimiento de las máquinas mejoraría gracias a su capacidad de entrenarse con datos en bruto y deducir por sí solas cuál es la información es la más relevante”.

Esa misma noche se propuso comprobarles a estos investigadores su teoría y a la mañana siguiente ya había codificado el software, el cual probó con éxito, según el perfil del MIT.

¿Qué se ha hecho hasta ahora con las GAN?

Desde entonces, podríamos decir que las GAN le han proporcionado el don de la imaginación a las máquinas y la capacidad del aprendizaje no supervisado y profundo. Aquí te dejo algunas de las aplicaciones que se le han dado a las Generative Adversarial Networks:

Generar objetos 3D

A través de un estudio se demostró cómo con las GAN implementadas en la IA se pueden generar imágenes en 3D.

Fuente  del estudio: Learning a Probabilistic Latent Space of Object Shapes via 3D Generative-Adversarial Modeling

Crear música y canciones

Un ejemplo sería el software de Amadeus Code. Este analiza éxitos musicales y a partir de ellos da “vida” a música nueva, aunque todavía en temas de derechos de autor este uso genera muchas dudas y ha tenido algunas dificultades al respecto. En este video encontrarás un ejemplo:

¿Qué tal, tiene futuro la IA en el mundo de la música?

Generar fotos de rostros humanos

Mira estas fotos de celebridades creadas por CELEBA-HQ dataset, una aplicación que usa las GAN. Vale la pena aclarar que las celebridades allí retratadas no existen.

IA puede generar rostros humanos

Imagen tomada de Progressive growing of gans for improved Quality, stability, andvariation.

Envejecimiento facial

¿Hace falta decir algo más?, las GAN pueden ayudar a generar proyecciones sobre el envejecimiento de una persona.

Envejecimiento facial con IA

Foto tomada de Face Aging With Conditional Generative Adversarial Networks  

Traducción semántica de imagen a foto

Esto quiere decir que puede transformar apenas un bosquejo o mapa de imagen a algo mucho más realista.

Traducción semántica de imágenes

Tomada de High-Resolution Image Synthesis and Semantic Manipulation with Conditional GANs, 2018.

Otro ejemplo de lo que ha logrado hacerse en términos de traducción semántica  lo podemos observar con GauGAN de NVIDIA:

 Generar nuevas poses humanas

A partir de una sola foto a una modelo se pueden generar nuevas poses, de esta manera:

Generación de poses humanas con IA

Fotos tomadas de Pose Guided Person Image Generation, 2017.

Convertir fotos en emojis

Esto es convertir una foto de una persona en un dibujo. Se puede realizar con Domain Transfer Network (DTN).

Emojis generados con IA

Foto tomada de Unsupervised cross-domain image generation

¿Qué más se puede hacer con las GAN? 

  • Realizar la edición especializada de fotografías y hasta completar las imágenes. Por ejemplo, con DeblurGAN se puede lograr desenfocar fotos en movimiento. En el tema de imágenes hay mucho por explorar estas son algunas  herramientas interesantes que usan este software:  CycleGAN, StackGAN, ArtGAN.

  • Lograr súper resolución en las fotos.

  • Generar fotos realistas.

  • Crear anime o dibujos animados.

  • Traducir un texto a imagen, es decir se puede ingresar un texto descriptivo y las GAN lo traducirán en una imagen.

  • Transformar una imagen de un dominio a otro, por ejemplo: convertir una cara seria a una cara triste, feliz, asustada o alegre. Una herramienta que hace esto es StarGAN.

  • Predecir videos.

  • Y la más reciente,  se podría usar para descifrar contraseñas con herramientas como PassGAN. (Revisa el artículo: Herramienta de IA puede descifrar contraseñas en menos de un segundo)

En conclusión, las GAN han revolucionado el campo del aprendizaje autónomo de la Inteligencia Artificial. Esto aunque todavía requiera de intervención humana para entrenarse. Además, no en vano su creador enfoca parte de sus esfuerzos en prevenir que sean usadas con fines poco éticos. De lo que no queda duda es que sus alcances todavía están por explorarse y aprovecharse en diversas áreas.

Fuentes consultadas:

 Jonathan Hui, GAN — Some cool applications of GAN  .

Jason Brownlee, Impressive Applications of Generative Adversarial Networks (GANs)  

Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio, GenerativeAdversarialNets.

Santiago Araújo, He probado una inteligencia artificial para crear canciones, pero no querría volver a escuchar ninguna.

 

 

 

  1. Alejandro

    Hola, como se usa?

    • Steve Ramírez López

      Hola Alejandro!
      Hay muchas aplicaciones para distintos usos: creción de música, videos, imágenes, etc.
      Puedes conocer los nombres de estas herramientas en la publicación, pero cada una se usa de manera diferente.
      Esperamos te resulte útil esta información.
      Saludos!

  2. martha alarcon

    hola , en el 2019 publique un libro que se llama CAMINO A LA GLORIA , y quiero hacer mi marca personal para a través de la IA hacer videos con mi cara y publicar videos hablando de mi libro y como su lectura puede transformar tu vida

    • Steve Ramírez López

      Hola Martha!
      Sin duda la IA nos ofrece muchas oportunidades. Puedes aprovechar herramientas como las que mencionamos: ycleGAN, StackGAN, ArtGAN.
      Esperamos puedas sacar provecho de estas opciones.
      Saludos!

  3. MATEO NAVARRETE CRUZ

    Hola

    • Steve Ramírez López

      ¡Bienvenido Mateo!