Una guía sencilla a las Generative Adversarial Networks

Una Generative Adversarial Network (GAN), conocida en español como red generativa antagónica, es un modelo moderno de aprendizaje automático que utiliza dos redes neuronales para generar datos sintéticos realistas. Las Generative Adversarial Networks pueden crear tanto imágenes y textos como música. Las áreas de aplicación de este concepto van desde la creación y generación de imágenes y vídeos, pasando por el arte y el diseño, hasta la ampliación de datos.

¿Qué significa Generative Adversarial Network?

Generative Adversarial Network, abreviada como GAN, es un marco para generar datos sintéticos en el campo del machine learning, y se utiliza principalmente para entrenar redes en el ámbito del aprendizaje no supervisado. El modelo de aprendizaje se compone de dos redes neuronales artificiales: el generador y el discriminador, que trabajan en competencia:

  • Generador: la tarea del generador es crear nuevas instancias de datos que parezcan muy reales, es decir, que sean lo más similares posible al conjunto de datos original. La Neural Network o red neuronal generativa comienza con un ruido aleatorio y mejora continuamente a través del entrenamiento. El generador aprende a mapear desde un vector de variables latentes al espacio de resultados específicos, generando resultados según una distribución determinada. El objetivo final de la red generativa es producir datos artificiales que engañen al discriminador.

  • Discriminador: esta red se entrena utilizando un conjunto de datos conocido para distinguir entre datos reales y sintéticos hasta alcanzar una precisión aceptable. Luego, el discriminador evalúa la autenticidad de los conjuntos de datos que se le presentan, determinando si estos datos proporcionados pertenecen al conjunto de datos original o si, por el contrario, son falsificaciones.

El entrenamiento de las redes competidoras ocurre simultáneamente. El generador sigue enfrentándose al discriminador hasta que logra generar datos que este último ya no pueda identificar como falsos. A través de la retropropagación de errores (backpropagation, en inglés), se optimizan los pesos de ambas redes en cada paso del entrenamiento. De esta manera, las dos redes neuronales se optimizan mutuamente, lo que permite que la distribución generada se asemeje cada vez más a la real. Una vez finalizado el entrenamiento, el generador puede utilizarse para crear datos artificiales que parezcan realistas.

Nota

Las Generative Adversarial Networks o redes generativas antagónicas se utilizaron inicialmente como un modelo para el unsupervised learning (aprendizaje no supervisado), pero hoy en día también han demostrado ser útiles para el semi-supervised learning (aprendizaje semisupervisado), el supervised learning (aprendizaje supervisado) y el reinforcement learning (aprendizaje por refuerzo).

GAN en comparación con otros modelos de Machine Learning

Las redes Generative Adversarial Networks (GAN) se diferencian en varios aspectos de otros métodos de aprendizaje automático. Las GAN funcionan como modelos generativos implícitos, lo que significa que no modelan una función de plausibilidad directa (función de verosimilitud) ni proporcionan medios para encontrar la variable latente. En cambio, las Generative Adversarial Networks generan nuevas instancias de datos mediante la competencia entre dos redes opuestas.

A diferencia de otros enfoques que generan datos de forma incremental, las GAN logran generar una muestra completa en un solo paso. Además, no hay restricciones en cuanto al tipo de función utilizada por la red.

Herramientas de IA
Aprovecha al máximo la inteligencia artificial
  • Crea tu página web en tiempo récord
  • Impulsa tu negocio gracias al marketing por IA
  • Ahorra tiempo y obtén mejores resultados

Proceso de entrenamiento: ¿cómo funcionan las Generative Adversarial Networks?

El proceso de entrenamiento para las redes generativas antagónicas consta de varios pasos. A continuación, se muestra un resumen del entrenamiento de las GAN:

  1. Inicialización: primero, se crean las dos redes neuronales, el generador y el discriminador, y se inicializan con parámetros aleatorios.
  2. Generación de datos falsos: el generador recibe como entrada un vector aleatorio, que utiliza para crear datos sintéticos. Al principio, debido a la falta de entrenamiento, los resultados parecen un ruido.
  3. Evaluación por el discriminador: el discriminador recibe tanto muestras de datos reales como los conjuntos de datos creados por el generador. Su tarea es distinguir entre datos reales y falsos. Sin embargo, el discriminador también necesita entrenamiento para funcionar con precisión, por lo que al principio su salida también es imprecisa.
  4. Retroalimentación y actualización de los pesos: los parámetros de ambas redes se ajustan mediante la retropropagación (backpropagation). Mientras el generador aprende a generar datos más realistas, el discriminador mejora su capacidad para distinguir entre instancias de datos reales y artificiales.
  5. Iteración: la Generative Adversarial Network repite los pasos 2, 3 y 4 hasta que el generador crea datos tan realistas que el discriminador ya no puede reconocerlos como sintéticos o hasta que el modelo alcanza la calidad deseada.

Áreas de aplicación: ¿dónde se utilizan las GAN?

Las Generative Adversarial Networks, dentro del ámbito de la inteligencia artificial, ya se utilizan con éxito en varias industrias. Algunas de las principales áreas de aplicación son:

  • Generación de imágenes y vídeos: las Generative Adversarial Networks se utilizan principalmente en la producción cinematográfica y el desarrollo de videojuegos para crear imágenes y secuencias de vídeo altamente realistas. Esta capacidad también permite a las empresas visualizar mejor sus productos y servicios, como calzado o prendas de ropa. Además, las GAN se utilizan en la creación de entornos virtuales.
  • Medicina: en el campo de la imagen médica, las GAN se utilizan tanto para formar a médicos como para mejorar los procedimientos de diagnóstico. Dado que es difícil para los investigadores acceder a imágenes médicas por razones de privacidad, las redes generativas antagónicas ahora se emplean para abordar este problema.
  • Aumento de datos: el marco se puede utilizar para proporcionar datos de entrenamiento adicionales a los modelos de aprendizaje automático. Esto es especialmente útil en situaciones donde existen pocos ejemplos reales.
  • Reconocimiento y síntesis de voz: las redes generativas antagónicas se utilizan para generar un lenguaje natural y mejorar los sistemas de síntesis de voz. A diferencia de las implementaciones convencionales de audio y voz, las GAN pueden generar nuevas muestras.
  • Ciencia: en el contexto científico, las redes generativas antagónicas también proporcionan un valioso apoyo. Las GAN permiten, por ejemplo, reconstruir campos de velocidad y escalar en flujos turbulentos, así como generar nuevas moléculas para objetivos proteicos relacionados con la inflamación, el cáncer y la fibrosis.
  • Arte y diseño: artistas y diseñadores utilizan arquitecturas de Generative Adversarial Networks para crear obras de arte y diseños innovadores.

Ventajas y desventajas de las Generative Adversarial Networks

En lo que respecta a la generación de datos artificiales realistas, las redes generativas antagónicas ofrecen posibilidades impresionantes, especialmente en las áreas de generación de imágenes y vídeos. Una gran ventaja es su capacidad para generar datos de alta calidad sin modelos de probabilidad explícitos, lo que distingue a las Generative Adversarial Networks de muchos otros modelos de aprendizaje generativo. Además, se puede integrar una gran variedad de funciones en el modelo, lo que permite una amplia gama de escenarios de aplicación.

No obstante, un problema clave es la estabilidad del proceso de entrenamiento. Durante el entrenamiento, existe el riesgo de que ocurra un colapso de modos, lo que significa que el generador produce una variedad limitada de datos. Este problema ocurre cuando el generador se entrena con demasiada frecuencia sin actualizar el discriminador. Además, existe el riesgo de que las GAN se utilicen para fines malintencionados, como la creación de deepfakes realistas para la desinformación o el robo de identidad.

Ventajas Desventajas
Datos de alta calidad Proceso de entrenamiento inestable
Modelo flexible También pueden usarse para deepfakes y otros usos problemáticos
Adecuadas para muchos escenarios de aplicación
¿Le ha resultado útil este artículo?
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede obtener más información, o bien conocer cómo cambiar la configuración de su navegador en nuestra. Política de Cookies.
Page top