Variaciones de GAN

Los investigadores siguen encontrando técnicas GAN mejoradas y nuevos usos para las GAN. Aquí te presentamos un muestreo de variaciones de GAN para darte una idea de las posibilidades.

GAN progresivas

En una GAN progresiva, las primeras capas del generador producen imágenes de resolución muy baja y las capas posteriores agregan detalles. Esta técnica permite que el GAN entrene más rápido que las GAN no progresivas comparables y produce imágenes de mayor resolución.

Para obtener más información, consulta Karras et al, 2017.

GAN condicionales

Las GAN condicionales se entrenan con un conjunto de datos etiquetados y te permiten especificar la etiqueta para cada instancia generada. Por ejemplo, una GAN de MNIST no condicional produce dígitos aleatorios, mientras que una GAN de MNIST condicional te permite especificar qué dígito debe generar.

En lugar de modelar la probabilidad conjunta P(X, Y), las GAN condicionales modelan la probabilidad condicional P(X | Y).

Para obtener más información sobre las GAN condicionales, consulta Mirza et al, 2014.

Traducción de imágenes a imágenes

Las GAN de traducción de imagen a imagen toman una imagen como entrada y la asignan a una imagen de salida generada con diferentes propiedades. Por ejemplo, podemos tomar una imagen de máscara con blob de color en la forma de un automóvil, y el GAN puede completar la forma con detalles fotorrealistas.

De manera similar, puedes entrenar una GAN con imágenes para que tome bocetos de bolsos y los convierta en imágenes fotorrealistas de bolsos.

Una tabla de 3 x 3 que muestra imágenes de bolsos. Cada fila muestra un estilo de bolso diferente. En cada fila, la imagen del extremo izquierdo es un dibujo lineal simple de un bolso, la imagen del medio es la foto de un bolso real y la imagen del extremo derecho es una fotorealista generada por un GAN. Las tres columnas están etiquetadas como "Entrada", "Verdad fundamental" y "Resultado".

En estos casos, la pérdida es una combinación ponderada de la pérdida basada en el discriminador habitual y una pérdida a nivel de píxeles que penaliza al generador por salir de la imagen de origen.

Para obtener más información, consulta Isola et al, 2016.

GAGA del ciclo

Los elementos GAGA del ciclo de aprendizaje aprenden a transformar imágenes de un conjunto en imágenes que podrían pertenecer a otro. Por ejemplo, un elemento bicicleta de GA ha producido la imagen a la derecha a continuación cuando se le proporciona la imagen de la izquierda como entrada. Se tomó la imagen de un caballo y se convirtió en la imagen de una cebra.

Una imagen de un caballo corriendo y una segunda imagen idéntica en todos los aspectos, excepto que el caballo es una cebra.

Los datos de entrenamiento del ciclo de GAN son simplemente dos conjuntos de imágenes (en este caso, un conjunto de imágenes de caballos y un conjunto de imágenes de cebras). El sistema no requiere etiquetas ni correspondencias en pares entre imágenes.

A fin de obtener más información, consulta Zhu et al, 2017, que ilustra el uso de cicloGAN para realizar traducciones de imagen a imagen sin datos sincronizados.

Síntesis de texto a imagen

Las GAN de texto a imagen toman texto como entrada y producen imágenes que son creíbles y se describen mediante el texto. Por ejemplo, la imagen de la flor que se muestra a continuación se produce cuando se envía una descripción de texto a una GAN.

"Esta flor tiene pétalos de color amarillo con tonos de naranja. Una flor con pétalos amarillos y tonos de naranja.

Ten en cuenta que, en este sistema, la GAN solo puede producir imágenes a partir de un pequeño conjunto de clases.

Para obtener más información, consulta Zhang et al, 2016.

Superresolución

Las GAN de alta resolución aumentan la resolución de las imágenes y agregan detalles cuando es necesario para completar las áreas desenfocadas. Por ejemplo, la imagen del medio borrosa a continuación es una versión con muestreo de la imagen original a la izquierda. Dada la imagen borrosa, un GAN produjo la imagen más nítida de la derecha:

DatosDifuminadoSe restableció con GAN
Una pintura de una niña con un tocado elaborado. La banda para la cabeza se toca en un patrón complejo. Una versión borrosa de la pintura de una niña con un tocado elaborado. Pintura clara y nítida de una niña con un tocado elaborado. Esta pintura es casi idéntica a la primera imagen de esta tabla, pero algunos detalles de los patrones de su tocado y su vestimenta son ligeramente diferentes.

La imagen generada por GAN es muy similar a la imagen original, pero si observas con atención la vincha, verás que la GAN no reprodujo el patrón de explosión del original. En cambio, creó su propio patrón plausible para reemplazar el patrón que borra el muestreo descendente.

Para obtener más información, consulta Ledig et al, 2017.

Pintura de rostros

Las GAN se usaron para la tarea de pintura de imágenes semánticas. En la tarea de pintura, los fragmentos de una imagen se ocultan y el sistema intenta completar los fragmentos que faltan.

Yeh et al, 2017 usó una GAN para superar otras técnicas para pintar imágenes de rostros:

EntradaSalida GAN
Cuatro imágenes. Cada imagen es una foto de un rostro con algunas áreas reemplazadas por negro. Cuatro imágenes. Cada imagen es una foto de un rostro idéntico a una de las imágenes de la columna "Entrada", excepto que no hay áreas negras.

Text‑to‑Speech

No todas las GAN producen imágenes. Por ejemplo, los investigadores también usaron las GAN para producir voz sintetizada a partir de la entrada de texto. Para obtener más información, consulta Yang et al, 2017.