Una Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Network (GAN), conocida en español como red ge­ne­ra­ti­va an­ta­gó­ni­ca, es un modelo moderno de apre­n­di­za­je au­to­má­ti­co que utiliza dos redes neu­ro­na­les para generar datos si­n­té­ti­cos realistas. Las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks pueden crear tanto imágenes y textos como música. Las áreas de apli­ca­ción de este concepto van desde la creación y ge­ne­ra­ción de imágenes y vídeos, pasando por el arte y el diseño, hasta la am­plia­ción de datos.

¿Qué significa Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Network?

Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Network, abreviada como GAN, es un marco para generar datos si­n­té­ti­cos en el campo del machine learning, y se utiliza pri­n­ci­pa­l­me­n­te para entrenar redes en el ámbito del apre­n­di­za­je no su­pe­r­vi­sa­do. El modelo de apre­n­di­za­je se compone de dos redes neu­ro­na­les ar­ti­fi­cia­les: el generador y el di­s­cri­mi­na­dor, que trabajan en co­m­pe­te­n­cia:

  • Generador: la tarea del generador es crear nuevas in­s­ta­n­cias 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 ge­ne­ra­ti­va comienza con un ruido aleatorio y mejora co­n­ti­nua­me­n­te a través del en­tre­na­mie­n­to. El generador aprende a mapear desde un vector de variables latentes al espacio de re­su­l­ta­dos es­pe­cí­fi­cos, generando re­su­l­ta­dos según una di­s­tri­bu­ción de­te­r­mi­na­da. El objetivo final de la red ge­ne­ra­ti­va es producir datos ar­ti­fi­cia­les que engañen al di­s­cri­mi­na­dor.

  • Di­s­cri­mi­na­dor: esta red se entrena uti­li­za­n­do un conjunto de datos conocido para di­s­ti­n­guir entre datos reales y si­n­té­ti­cos hasta alcanzar una precisión aceptable. Luego, el di­s­cri­mi­na­dor evalúa la au­te­n­ti­ci­dad de los conjuntos de datos que se le presentan, de­te­r­mi­na­n­do si estos datos pro­po­r­cio­na­dos pe­r­te­ne­cen al conjunto de datos original o si, por el contrario, son fa­l­si­fi­ca­cio­nes.

El en­tre­na­mie­n­to de las redes co­m­pe­ti­do­ras ocurre si­mu­l­tá­nea­me­n­te. El generador sigue en­fre­n­tá­n­do­se al di­s­cri­mi­na­dor hasta que logra generar datos que este último ya no pueda ide­n­ti­fi­car como falsos. A través de la re­tro­pro­pa­ga­ción de errores (ba­c­k­pro­pa­ga­tion, en inglés), se optimizan los pesos de ambas redes en cada paso del en­tre­na­mie­n­to. De esta manera, las dos redes neu­ro­na­les se optimizan mu­tua­me­n­te, lo que permite que la di­s­tri­bu­ción generada se asemeje cada vez más a la real. Una vez fi­na­li­za­do el en­tre­na­mie­n­to, el generador puede uti­li­zar­se para crear datos ar­ti­fi­cia­les que parezcan realistas.

Nota

Las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks o redes ge­ne­ra­ti­vas an­ta­gó­ni­cas se uti­li­za­ron ini­cia­l­me­n­te como un modelo para el un­su­pe­r­vi­sed learning (apre­n­di­za­je no su­pe­r­vi­sa­do), pero hoy en día también han de­mo­s­tra­do ser útiles para el semi-su­pe­r­vi­sed learning (apre­n­di­za­je se­mi­su­pe­r­vi­sa­do), el su­pe­r­vi­sed learning (apre­n­di­za­je su­pe­r­vi­sa­do) y el re­in­fo­r­ce­me­nt learning (apre­n­di­za­je por refuerzo).

GAN en co­m­pa­ra­ción con otros modelos de Machine Learning

Las redes Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks (GAN) se di­fe­re­n­cian en varios aspectos de otros métodos de apre­n­di­za­je au­to­má­ti­co. Las GAN funcionan como modelos ge­ne­ra­ti­vos im­plí­ci­tos, lo que significa que no modelan una función de plau­si­bi­li­dad directa (función de ve­ro­si­mi­li­tud) ni pro­po­r­cio­nan medios para encontrar la variable latente. En cambio, las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks generan nuevas in­s­ta­n­cias de datos mediante la co­m­pe­te­n­cia entre dos redes opuestas.

A di­fe­re­n­cia de otros enfoques que generan datos de forma in­cre­me­n­tal, las GAN logran generar una muestra completa en un solo paso. Además, no hay re­s­tri­c­cio­nes en cuanto al tipo de función utilizada por la red.

He­rra­mie­n­tas de IA
Saca el máximo partido a la in­te­li­ge­n­cia ar­ti­fi­cial
  • Crea tu página web en tiempo récord
  • Impulsa tu negocio gracias al marketing de IA
  • Ahorra tiempo y obtén mejores re­su­l­ta­dos

Proceso de en­tre­na­mie­n­to: ¿cómo funcionan las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks?

El proceso de en­tre­na­mie­n­to para las redes ge­ne­ra­ti­vas an­ta­gó­ni­cas consta de varios pasos. A co­n­ti­nua­ción, se muestra un resumen del en­tre­na­mie­n­to de las GAN:

  1. Ini­cia­li­za­ción: primero, se crean las dos redes neu­ro­na­les, el generador y el di­s­cri­mi­na­dor, y se ini­cia­li­zan con pa­rá­me­tros alea­to­rios.
  2. Ge­ne­ra­ción de datos falsos: el generador recibe como entrada un vector aleatorio, que utiliza para crear datos si­n­té­ti­cos. Al principio, debido a la falta de en­tre­na­mie­n­to, los re­su­l­ta­dos parecen un ruido.
  3. Eva­lua­ción por el di­s­cri­mi­na­dor: el di­s­cri­mi­na­dor recibe tanto muestras de datos reales como los conjuntos de datos creados por el generador. Su tarea es di­s­ti­n­guir entre datos reales y falsos. Sin embargo, el di­s­cri­mi­na­dor también necesita en­tre­na­mie­n­to para funcionar con precisión, por lo que al principio su salida también es imprecisa.
  4. Re­tro­ali­me­n­ta­ción y ac­tua­li­za­ción de los pesos: los pa­rá­me­tros de ambas redes se ajustan mediante la re­tro­pro­pa­ga­ción (ba­c­k­pro­pa­ga­tion). Mientras el generador aprende a generar datos más realistas, el di­s­cri­mi­na­dor mejora su capacidad para di­s­ti­n­guir entre in­s­ta­n­cias de datos reales y ar­ti­fi­cia­les.
  5. Iteración: la Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Network repite los pasos 2, 3 y 4 hasta que el generador crea datos tan realistas que el di­s­cri­mi­na­dor ya no puede re­co­no­ce­r­los como si­n­té­ti­cos o hasta que el modelo alcanza la calidad deseada.

Áreas de apli­ca­ción: ¿dónde se utilizan las GAN?

Las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks, dentro del ámbito de la in­te­li­ge­n­cia ar­ti­fi­cial, ya se utilizan con éxito en varias in­du­s­trias. Algunas de las pri­n­ci­pa­les áreas de apli­ca­ción son:

  • Ge­ne­ra­ción de imágenes y vídeos: las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks se utilizan pri­n­ci­pa­l­me­n­te en la pro­du­c­ción ci­ne­ma­to­grá­fi­ca y el de­sa­rro­llo de vi­deo­jue­gos para crear imágenes y se­cue­n­cias de vídeo altamente realistas. Esta capacidad también permite a las empresas vi­sua­li­zar 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 pro­ce­di­mie­n­tos de dia­g­nó­s­ti­co. Dado que es difícil para los in­ve­s­ti­ga­do­res acceder a imágenes médicas por razones de pri­va­ci­dad, las redes ge­ne­ra­ti­vas an­ta­gó­ni­cas ahora se emplean para abordar este problema.
  • Aumento de datos: el marco se puede utilizar para pro­po­r­cio­nar datos de en­tre­na­mie­n­to adi­cio­na­les a los modelos de apre­n­di­za­je au­to­má­ti­co. Esto es es­pe­cia­l­me­n­te útil en si­tua­cio­nes donde existen pocos ejemplos reales.
  • Re­co­no­ci­mie­n­to y síntesis de voz: las redes ge­ne­ra­ti­vas an­ta­gó­ni­cas se utilizan para generar un lenguaje natural y mejorar los sistemas de síntesis de voz. A di­fe­re­n­cia de las im­ple­me­n­ta­cio­nes co­n­ve­n­cio­na­les de audio y voz, las GAN pueden generar nuevas muestras.
  • Ciencia: en el contexto cie­n­tí­fi­co, las redes ge­ne­ra­ti­vas an­ta­gó­ni­cas también pro­po­r­cio­nan un valioso apoyo. Las GAN permiten, por ejemplo, re­co­n­s­truir campos de velocidad y escalar en flujos tu­r­bu­le­n­tos, así como generar nuevas moléculas para objetivos proteicos re­la­cio­na­dos con la in­fla­ma­ción, el cáncer y la fibrosis.
  • Arte y diseño: artistas y di­se­ña­do­res utilizan ar­qui­te­c­tu­ras de Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks para crear obras de arte y diseños in­no­va­do­res.

Ventajas y de­s­ve­n­ta­jas de las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks

En lo que respecta a la ge­ne­ra­ción de datos ar­ti­fi­cia­les realistas, las redes ge­ne­ra­ti­vas an­ta­gó­ni­cas ofrecen po­si­bi­li­da­des im­pre­sio­na­n­tes, es­pe­cia­l­me­n­te en las áreas de ge­ne­ra­ción de imágenes y vídeos. Una gran ventaja es su capacidad para generar datos de alta calidad sin modelos de pro­ba­bi­li­dad ex­plí­ci­tos, lo que distingue a las Ge­ne­ra­ti­ve Ad­ve­r­sa­rial Networks de muchos otros modelos de apre­n­di­za­je ge­ne­ra­ti­vo. Además, se puede integrar una gran variedad de funciones en el modelo, lo que permite una amplia gama de es­ce­na­rios de apli­ca­ción.

No obstante, un problema clave es la es­ta­bi­li­dad del proceso de en­tre­na­mie­n­to. Durante el en­tre­na­mie­n­to, 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 fre­cue­n­cia sin ac­tua­li­zar el di­s­cri­mi­na­dor. Además, existe el riesgo de que las GAN se utilicen para fines ma­li­n­te­n­cio­na­dos, como la creación de deepfakes realistas para la des­in­fo­r­ma­ción o el robo de identidad.

Ventajas De­s­ve­n­ta­jas
Datos de alta calidad Proceso de en­tre­na­mie­n­to inestable
Modelo flexible También pueden usarse para deepfakes y otros usos pro­ble­má­ti­cos
Adecuadas para muchos es­ce­na­rios de apli­ca­ción
Ir al menú principal