DALL·E: creación de imágenes a partir de texto
Hemos entrenado una red neuronal denominada DALL·E, que crea imágenes de un amplio abanico de conceptos a partir de descripciones en lenguaje natural.

Ilustración: Justin Jay Wang
DALL·E es una versión de 12 000 millones de parámetros de GPT‑3(se abre en una nueva ventana) entrenada para generar imágenes a partir de descripciones de texto mediante un conjunto de datos de pares de texto-imagen. Comprobamos que tiene una gran variedad de posibilidades, como crear versiones antropomorfizadas de animales y objetos, combinar conceptos no relacionados de forma plausible, representar texto y aplicar transformaciones a imágenes existentes.
Ver también: DALL·E 2, que genera imágenes más realistas y precisas con una resolución cuatro veces mayor.
GPT‑3 demostró que se puede utilizar el lenguaje para ordenar a una gran red neuronal que realice diversas tareas de generación de texto. Image GPT demostró que el mismo tipo de red neuronal también se puede utilizar para generar imágenes con gran fidelidad. Ampliamos estos resultados para demostrar que la manipulación de conceptos visuales a través del lenguaje ya está al alcance de la mano.
Al igual que GPT‑3, DALL·E es un modelo de lenguaje transformador. Recibe los textos y las imágenes como un único flujo de datos que contiene hasta 1280 tokens, y se entrena con la máxima verosimilitud para generar todos los tokens, uno tras otro. A
Este procedimiento de entrenamiento permite a DALL·E no solo generar una imagen desde cero, sino también regenerar cualquier región rectangular de una imagen existente que se extienda hasta la esquina inferior derecha, de forma coherente con una prompt de texto.
Reconocemos que trabajar con modelos generativos puede tener importantes y amplias repercusiones sociales. En el futuro, tenemos previsto analizar cómo modelos como DALL·E se relacionan con cuestiones sociales, como el impacto económico en determinados procesos de trabajo y profesiones, la posibilidad de sesgo en los datos de salida del modelo y los retos éticos a largo plazo que implica esta tecnología.
Comprobamos que DALL·E es capaz de crear imágenes plausibles para una gran variedad de frases que exploran la estructura compositiva del lenguaje. En la próxima sección, demostraremos este aspecto con una serie de imágenes interactivas. Las muestras que aparecen para cada pie de foto en las imágenes se obtienen al tomar las 32 mejores de 512 después de volver a clasificarlas con CLIP, pero no utilizamos ninguna selección manual por conveniencia, además de las miniaturas y las imágenes independientes que aparecen fuera.B
Evaluamos la capacidad de DALL·E para modificar varios atributos de un objeto, así como el número de veces que aparece.
Controlar simultáneamente varios objetos, sus atributos y sus relaciones espaciales suponen un nuevo desafío. Por ejemplo, para interpretar correctamente la frase “un erizo con gorro rojo, guantes amarillos, camisa azul y pantalones verdes”, DALL·E no solo debe componer cada prenda con el animal de forma correcta, sino también formar las asociaciones (gorro, rojo), (guantes, amarillo), (camisa, azul) y (pantalones, verde) sin mezclarlas C.
Evaluamos la capacidad de DALL·E para hacer esto para el posicionamiento relativo, apilar objetos y controlar varios atributos.
A pesar de que DALL·E ofrece cierto nivel de control sobre los atributos y posiciones de un pequeño número de objetos, el porcentaje de éxito puede depender de cómo se redacte el pie de foto. A medida que se introducen más objetos, DALL·E tiende a confundir las asociaciones entre los objetos y sus colores, y el porcentaje de aciertos disminuye drásticamente. También observamos que DALL·E es frágil con respecto a la reformulación del pie de foto en estos casos: los pies de foto alternativos, semánticamente equivalentes, no suelen producir interpretaciones correctas.
Encontramos que DALL·E también permite controlar el punto de vista de una escena y el estilo 3D en el que se renderiza una escena.
Para ir más allá, evaluamos la capacidad de DALL·E para dibujar repetidamente la cabeza de una figura conocida en cada ángulo a partir de una secuencia de ángulos con el mismo espacio, y descubrimos que podemos recuperar una animación sencilla de la cabeza giratoria.
DALL·E parece ser capaz de aplicar algunos tipos de distorsiones ópticas a las escenas, como vemos con las opciones “vista de lente de ojo de pez” y “panorámica esférica”. Esto nos motivó a explorar su capacidad para generar reflejos.
Las muestras del estilo “vista en primer plano extremo” y “rayos X” nos llevaron a explorar más a fondo la capacidad de DALL·E para representar la estructura interna con vistas transversales y la estructura externa con macrofotografías.
La tarea de traducir texto a imágenes está poco especificada: un único pie de foto suele corresponder a infinidad de imágenes plausibles, por lo que la imagen no está determinada de forma única. Por ejemplo, tomamos el pie de foto “un cuadro de un capibara sentado en un campo al amanecer”. Según la orientación del capibara, puede ser necesario dibujar una sombra, aunque este detalle nunca se menciona explícitamente. Exploramos la capacidad de DALL·E para resolver la subespecificación en tres casos: cambiando el estilo, el escenario y el tiempo; dibujando el mismo objeto en una variedad de situaciones diferentes y generando una imagen de un objeto con un texto específico escrito sobre este.
Con diversos grados de fiabilidad, DALL·E proporciona acceso a un subconjunto de las capacidades de un motor de renderizado tridimensional a través del lenguaje natural. Puede controlar de forma independiente los atributos de un pequeño número de objetos y, hasta cierto punto, cuántos hay y cómo están dispuestos unos respecto a otros. También puede controlar la ubicación y el ángulo desde el que se renderiza una escena, y puede generar objetos conocidos de acuerdo con especificaciones precisas de ángulo y condiciones de iluminación.
A diferencia de un motor de renderizado tridimensional, cuyos datos de entrada deben especificarse sin ambigüedades y con detalles completos, DALL·E suele ser capaz de “rellenar los espacios en blanco” cuando el pie de foto implica que la imagen debe contener un determinado detalle que no se indica de forma explícita.
A continuación, exploramos el uso de las capacidades anteriores para la moda y el diseño de interiores.
La naturaleza constitutiva del lenguaje nos permite unir conceptos para describir cosas, tanto reales como imaginarias. Descubrimos que DALL·E también tiene la capacidad de combinar ideas diversas para sintetizar objetos, algunos de los cuales es poco probable que existan en el mundo real. Exploramos esta capacidad en dos casos: al transferir cualidades de varios conceptos a animales y al diseñar productos inspirándonos en conceptos no relacionados.
En la sección anterior, exploramos la capacidad de DALL·E para combinar conceptos no relacionados al generar imágenes de objetos del mundo real. Aquí exploramos esta capacidad en el contexto del arte para tres tipos de ilustraciones: versiones antropomorfizadas de animales y objetos, quimeras animales y emojis.
GPT‑3 puede entrenarse para realizar muchos tipos de tareas únicamente a partir de una descripción y una pista para generar la respuesta proporcionada en su consulta, sin ningún otro entrenamiento. Por ejemplo, cuando se le indica la frase “esta es la frase ‘una persona que pasea a su perro por el parque’ traducida al francés:”, GPT‑3 responde “un homme qui promène son chien dans le parc”. Esta capacidad se denomina razonamiento de zero-shot. Hemos comprobado que DALL·E amplía esta capacidad al ámbito visual y es capaz de realizar varios tipos de tareas de traducción de imagen a imagen cuando se le indica de la forma adecuada.
No anticipamos que surgiera esta capacidad y no hicimos ninguna modificación en la red neuronal ni en el procedimiento de entrenamiento para fomentarla. Gracias a que nos motivamos con estos resultados, medimos la aptitud de DALL·E para los problemas de razonamiento analógico al evaluarlo con las matrices progresivas de Raven, una prueba de CI visual que se utilizó ampliamente en el siglo XX.
Descubrimos que DALL·E ha aprendido datos geográficos, lugares emblemáticos y vecindarios. Su conocimiento de estos conceptos es sorprendentemente preciso en algunos aspectos y defectuoso en otros.
Además de explorar el conocimiento de DALL·E de conceptos que varían en el espacio, también exploramos su conocimiento de conceptos que varían en el tiempo.
DALL·E es un sencillo transformador descodificador únicamente que recibe tanto los textos como las imágenes como un único flujo de 1280 tokens (256 para el texto y 1024 para la imagen) y los modela de forma autorregresiva. La máscara de atención en cada una de sus 64 capas de autoatención permite que cada token de imagen atienda a todos los tokens de texto. DALL·E utiliza la máscara causal estándar para los tokens de texto y atención dispersa para los tokens de imagen con un patrón de atención de filas, columnas o convolucional, según la capa. En nuestro artículo(se abre en una nueva ventana) ofrecemos más detalles sobre la arquitectura y el procedimiento de entrenamiento.
La síntesis de texto a imagen ha sido un área activa de investigación desde el trabajo pionero de Reed y otros,1 cuyo enfoque utiliza un GAN condicionado con integraciones de texto. Un codificador entrenado previamente produce las integraciones mediante una pérdida contrastiva, no muy diferente de CLIP. StackGAN3 y StackGAN++4 utilizan GAN multiescala para escalar la resolución de la imagen y mejorar la fidelidad visual. AttnGAN5 incorpora la atención entre las características del texto y de la imagen, y propone una pérdida contrastiva equivalente entre las características del texto y de la imagen como objetivo auxiliar. Es interesante compararlo con nuestra reordenación con CLIP, que se realiza fuera de línea. Otros trabajos2, 6 y 7 incorporan otras fuentes de supervisión durante el entrenamiento para mejorar la calidad de la imagen. Por último, los trabajos de Nguyen y otros8 y Cho y otros9 exploran estrategias basadas en el muestreo para la generación de imágenes que aprovechan modelos discriminativos multimodales entrenados previamente.
De forma similar al muestreo de rechazo que se utilizó en VQVAE-2(se abre en una nueva ventana), utilizamos CLIP para volver a clasificar las 32 mejores muestras de 512 para cada pie de foto en todas las imágenes interactivas. Este procedimiento también se puede considerar una especie de búsqueda guiada por el lenguaje16 y puede tener un impacto drástico en la calidad de la muestra.
Footnotes
- A
A token is any symbol from a discrete vocabulary; for humans, each English letter is a token from a 26-letter alphabet. DALL·E’s vocabulary has tokens for both text and image concepts. Specifically, each image caption is represented using a maximum of 256 BPE-encoded tokens with a vocabulary size of 16384, and the image is represented using 1024 tokens with a vocabulary size of 8192.
The images are preprocessed to 256x256 resolution during training. Similar to VQVAE, each image is compressed to a 32x32 grid of discrete latent codes using a discrete VAE that we pretrained using a continuous relaxation. We found that training using the relaxation obviates the need for an explicit codebook, EMA loss, or tricks like dead code revival, and can scale up to large vocabulary sizes.
- B
Further details provided in a later section.
- 17
This task is called variable binding, and has been extensively studied in the literature.
References
- 1
Reed, S., Akata, Z., Yan, X., Logeswaran, L., Schiele, B., Lee, H. (2016). “Generative adversarial text to image synthesis(se abre en una nueva ventana)”. In ICML 2016.
- 2
Reed, S., Akata, Z., Mohan, S., Tenka, S., Schiele, B., Lee, H. (2016). “Learning what and where to draw(se abre en una nueva ventana)”. In NIPS 2016.
- 3
Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang X., Metaxas, D. (2016). “StackGAN: Text to photo-realistic image synthesis with stacked generative adversarial networks(se abre en una nueva ventana)”. In ICCY 2017.
- 4
Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang, X., Metaxas, D. (2017). “StackGAN++: realistic image synthesis with stacked generative adversarial networks(se abre en una nueva ventana)”. In IEEE TPAMI 2018.
- 5
Xu, T., Zhang, P., Huang, Q., Zhang, H., Gan, Z., Huang, X., He, X. (2017). “AttnGAN: Fine-grained text to image generation with attentional generative adversarial networks(se abre en una nueva ventana).
- 6
Li, W., Zhang, P., Zhang, L., Huang, Q., He, X., Lyu, S., Gao, J. (2019). “Object-driven text-to-image synthesis via adversarial training(se abre en una nueva ventana)”. In CVPR 2019.
- 7
Koh, J. Y., Baldridge, J., Lee, H., Yang, Y. (2020). “Text-to-image generation grounded by fine-grained user attention(se abre en una nueva ventana)”. In WACV 2021.
- 8
Nguyen, A., Clune, J., Bengio, Y., Dosovitskiy, A., Yosinski, J. (2016). “Plug & play generative networks: conditional iterative generation of images in latent space(se abre en una nueva ventana).
- 9
Cho, J., Lu, J., Schwen, D., Hajishirzi, H., Kembhavi, A. (2020). “X-LXMERT: Paint, caption, and answer questions with multi-modal transformers(se abre en una nueva ventana)”. EMNLP 2020.
- 10
Kingma, Diederik P., and Max Welling. “Auto-encoding variational bayes(se abre en una nueva ventana).” arXiv preprint (2013).
- 11
Rezende, Danilo Jimenez, Shakir Mohamed, and Daan Wierstra. “Stochastic backpropagation and approximate inference in deep generative models(se abre en una nueva ventana).” arXiv preprint (2014).
- 12
Jang, E., Gu, S., Poole, B. (2016). “Categorical reparametrization with Gumbel-softmax(se abre en una nueva ventana)”.
- 13
Maddison, C., Mnih, A., Teh, Y. W. (2016). “The Concrete distribution: a continuous relaxation of discrete random variables(se abre en una nueva ventana)”.
- 14
van den Oord, A., Vinyals, O., Kavukcuoglu, K. (2017). “Neural discrete representation learning(se abre en una nueva ventana)”.
- 15
Razavi, A., van der Oord, A., Vinyals, O. (2019). “Generating diverse high-fidelity images with VQ-VAE-2(se abre en una nueva ventana)”.
- 16
Andreas, J., Klein, D., Levine, S. (2017). “Learning with Latent Language(se abre en una nueva ventana)”.
- 17
Smolensky, P. (1990). “Tensor product variable binding and the representation of symbolic structures in connectionist systems(se abre en una nueva ventana)”.
- 18
Plate, T. (1995). “Holographic reduced representations: convolution algebra for compositional distributed representations(se abre en una nueva ventana)”.
- 19
Gayler, R. (1998). “Multiplicative binding, representation operators & analogy(se abre en una nueva ventana)”.
- 20
Kanerva, P. (1997). “Fully distributed representations(se abre en una nueva ventana)”.