Una red generativa adversarial (GAN) es una clase de marcos de aprendizaje automático y un enfoque destacado para la IA generativa. El concepto fue desarrollado inicialmente por Ian Goodfellow y sus colegas en junio de 2014. En una GAN, dos redes neuronales compiten en un juego de suma cero, donde la ganancia de un agente es la pérdida de otro. Dado un conjunto de entrenamiento, la técnica aprende a generar nuevos datos con las mismas estadísticas que el conjunto de entrenamiento. Por ejemplo, una GAN entrenada con fotografías puede generar nuevas fotografías que parecen al menos superficialmente auténticas a los observadores humanos. Aunque originalmente se propuso como una forma de modelo generativo para el aprendizaje no supervisado, las GAN también han demostrado ser útiles para el aprendizaje semisupervisado, el aprendizaje totalmente supervisado y el aprendizaje por refuerzo.
La idea central de una GAN se basa en el entrenamiento indirecto a través de un discriminador, otra red neuronal que evalúa cuán realista parece una entrada y que se actualiza dinámicamente. El generador no se entrena para minimizar la distancia a una imagen específica, sino para engañar al discriminador, lo que permite que el modelo aprenda de manera no supervisada. Las GAN son similares al mimetismo en la biología evolutiva, con una carrera armamentista evolutiva entre las dos redes.
Definición
La GAN original se define como un juego entre dos jugadores: el generador y el discriminador. La estrategia del generador es el conjunto de todas las medidas de probabilidad en un espacio dado, mientras que la estrategia del discriminador es el conjunto de núcleos de Markov que asignan entradas a probabilidades. La función objetivo es un juego de suma cero: el generador busca minimizarla y el discriminador busca maximizarla. La tarea del generador es igualar su distribución de salida lo más posible a la distribución de referencia, mientras que la tarea del discriminador es emitir un valor cercano a 1 para datos reales y cercano a 0 para datos generados.
En la práctica, la red generativa produce candidatos mientras que la red discriminativa los evalúa. Esto crea una competencia basada en distribuciones de datos. El generador aprende a mapear desde un espacio latente hasta la distribución de datos reales, con el objetivo de producir candidatos que el discriminador no pueda distinguir de los datos reales. La meta del discriminador es identificar correctamente estos candidatos, pero a medida que el generador mejora, la tarea del discriminador se vuelve más difícil, aumentando su tasa de error.
Un conjunto de datos conocido sirve como datos de entrenamiento iniciales para el discriminador. El entrenamiento implica presentar muestras del conjunto de datos de entrenamiento hasta que el discriminador logre una precisión aceptable. El generador se entrena según si logra engañar al discriminador. Normalmente, el generador se inicializa con entradas aleatorias muestreadas de un espacio latente predefinido, como una distribución normal multivariante. Posteriormente, los candidatos generados por el generador son evaluados por el discriminador. Se aplican procedimientos independientes de retropropagación a ambas redes para que el generador produzca mejores muestras, mientras que el discriminador se vuelve más hábil para detectar muestras sintéticas. Cuando se utiliza para la generación de imágenes, el generador suele ser una red neuronal deconvolucional y el discriminador una red neuronal convolucional.
Relación con otros métodos de aprendizaje automático estadístico
Las GAN son modelos generativos implícitos, lo que significa que no modelan explícitamente la función de verosimilitud ni proporcionan un medio para encontrar la variable latente correspondiente a una muestra dada, a diferencia de alternativas como los modelos generativos basados en flujo. En comparación con las redes de creencia totalmente visibles como WaveNet y PixelRNN, y con los modelos autorregresivos en general, las GAN pueden generar una muestra completa en una sola pasada, en lugar de requerir múltiples pasadas a través de la red. En comparación con las máquinas de Boltzmann y el análisis de componentes independientes lineal, no hay restricción sobre el tipo de función utilizada por la red. Dado que las redes neuronales son aproximadores universales, se ha demostrado que las GAN son asintóticamente consistentes. Hasta 2026, también se ha demostrado que los autoencoders variacionales son aproximadores universales, pero las GAN siguen siendo distintas en su paradigma de entrenamiento adversarial.
Dinámica de entrenamiento y desafíos
El entrenamiento de GAN implica un equilibrio delicado. El generador y el discriminador se entrenan alternadamente, lo que a menudo conduce a problemas como el colapso de modos, donde el generador produce una variedad limitada de salidas, o la no convergencia, donde las dos redes oscilan sin alcanzar un equilibrio. Se han desarrollado diversas técnicas para estabilizar el entrenamiento, incluyendo funciones objetivo modificadas, cambios arquitectónicos y métodos de regularización. La naturaleza adversarial de las GAN las hace sensibles a los hiperparámetros, y el entrenamiento requiere un ajuste cuidadoso.
Aplicaciones
Las GAN se han aplicado ampliamente en la generación de imágenes, la transferencia de estilo, el aumento de datos y la superresolución. También se utilizan para generar datos sintéticos realistas para entrenar otros modelos, en imágenes médicas y en campos creativos como la generación de arte y música. Las GAN se han empleado en la investigación de Deep learning y sus principios han influido en otras áreas de la Generative AI.
Impacto y direcciones futuras
La introducción de las GAN ha tenido un profundo impacto en el Machine learning y la Artificial intelligence. Han inspirado numerosas variantes y mejoras, como las GAN condicionales, las GAN de ciclo consistente y las GAN progresivas. La investigación continúa abordando desafíos como la estabilidad del entrenamiento y las métricas de evaluación. Las GAN siguen siendo una herramienta fundamental en el conjunto de herramientas de la IA generativa, junto con otros modelos como los Large language models y los Transformer (architecture)s, aunque se distinguen por su marco adversarial.