Passer au contenu principal
OpenAI

5 janvier 2021

Étape clé

DALL·E : Créer des images à partir de texte

Nous avons entraîné un réseau neuronal nommé DALL·E qui crée des images à partir de légendes textuelles pour une large gamme de concepts exprimables en langage naturel.

DALL·E

Illustration : Justin Jay Wang

Chargement…

DALL·E est une version de GPT‑3(s'ouvre dans une nouvelle fenêtre) à 12 milliards de paramètres, conçue pour générer des images à partir de descriptions textuelles, en utilisant un ensemble de données de paires texte-image. Nous avons constaté qu'il possède un ensemble diversifié de capacités, y compris créer des versions anthropomorphisées d'animaux et d'objets, la combinaison de concepts sans rapport de manière plausible, le rendu de texte et l'application de transformations à des images existantes.

Voir aussi : DALL·E 2, qui génère des images plus réalistes et précises avec une résolution quatre fois supérieure.

Chargement en cours…

GPT‑3 a démontré que le langage peut être utilisé pour instruire un grand réseau neuronal à exécuter une variété de tâches de génération de texte. Image GPT a démontré que le même type de réseau neuronal peut également être utilisé pour générer des images avec une grande fidélité. Nous étendons ces découvertes pour montrer que la manipulation de concepts visuels par le langage est désormais à notre portée.

Présentation

Comme GPT‑3, DALL·E est un modèle de language transformateur. Il reçoit à la fois le texte et l'image sous la forme d'un flux unique de données contenant jusqu'à 1280 tokens, et il est entraîné à l'aide du maximum de vraisemblance pour générer tous les tokens, l'un après l'autre. A

Cette procédure de formation permet à DALL·E non seulement de générer une image à partir de zéro, mais aussi de régénérer toute région rectangulaire d'une image existante qui s'étend jusqu'au coin inférieur droit, d'une manière cohérente avec l'invite textuelle.

Nous reconnaissons que les travaux impliquant des modèles génératifs ont le potentiel d'avoir des répercussions sociétales significatives et étendues. À l'avenir, nous avons un plan pour analyser comment des modèles comme DALL·E se rapportent aux questions sociétales telles que l'impact économique sur certains processus de travail et professions, le potentiel de biais dans les résultats du modèle, et les défis éthiques à long terme impliqués par cette technologie.

Fonctionnalités

Nous constatons que DALL·E est capable de créer des images plausibles pour une grande variété de phrases qui explorent la structure compositionnelle du langage. Nous illustrons cela à l'aide d'une série de visuels interactifs dans la section suivante. Les échantillons présentés pour chaque légende dans les visuels sont obtenus en sélectionnant les 32 premiers sur 512 après un reranking avec CLIP, mais nous n'effectuons aucune sélection manuelle, sauf pour les vignettes et les images autonomes qui apparaissent à l'extérieur.B

Contrôle des attributs

Nous testons la capacité de DALL·E à modifier plusieurs attributs d’un objet, ainsi que le nombre de fois qu’il apparaît.

Chargement en cours…

Dessiner plusieurs objets

Le contrôle simultané de plusieurs objets, de leurs attributs et de leurs relations spatiales constitue un nouveau défi. Par exemple, considérez la phrase « un hérisson portant un chapeau rouge, des gants jaunes, une chemise bleue et un pantalon vert ». Pour interpréter correctement cette phrase, DALL·E doit non seulement composer correctement chaque vêtement avec l'animal, mais aussi établir les associations (chapeau, rouge), (gants, jaune), (chemise, bleu) et (pantalon, vert) sans les confondre. C

 Nous testons la capacité de DALL·E à effectuer cela pour le positionnement relatif, l’empilement d’objets et le contrôle de multiples attributs.

Chargement en cours…

Bien que DALL·E offre un certain niveau de contrôle sur les attributs et les positions d’un petit nombre d’objets, le taux de réussite peut dépendre de la manière dont la légende est formulée. À mesure que de nouveaux objets sont introduits, DALL·E a tendance à confondre les associations entre les objets et leurs couleurs, et le taux de réussite diminue fortement. Nous avons également noté que DALL·E est fragile face à la reformulation des légendes dans ces scénarios : des légendes alternatives, sémantiquement équivalentes, ne produisent souvent pas d'interprétations correctes.

Visualisation de la perspective et 3D

DALL·E permet aussi de contrôler le point de vue d’une scène et son rendu 3D.

Chargement en cours…

Pour aller plus loin, nous testons la capacité de DALL·E à dessiner de manière répétée la tête d’une figure bien connue à chaque angle d’une séquence d’angles également espacés, et nous constatons que nous pouvons reconstituer une animation fluide de la tête en rotation.

Chargement en cours…

DALL·E semble être capable d’appliquer certains types de distorsions optiques à des scènes, comme nous le voyons avec les options « vue à objectif fisheye » et « panorama sphérique ». Cela nous a motivés à explorer sa capacité à générer des réflexions.

Chargement en cours…

Visualisation de la structure interne et externe

Les échantillons de type « gros plan extrême » et « rayons X » nous ont incités à explorer davantage la capacité de DALL·E à représenter la structure interne avec des vues en coupe et la structure externe avec des macrophotographies.

Chargement en cours…

Inférence de détails contextuels

La tâche de traduire du texte en images est sous-spécifiée : une seule légende correspond généralement à une infinité d'images plausibles, donc l'image n'est pas déterminée de manière unique. Par exemple, considérez la légende « peinture d’un capybara assis dans un champ au lever du soleil .» Selon l’orientation du capybara, il peut être nécessaire de dessiner une ombre, bien que ce détail ne soit jamais mentionné explicitement. Nous explorons la capacité de DALL·E à résoudre la sous-spécification dans trois cas : le changement de style, de décor et de temps ; dessiner le même objet dans diverses situations ; et générer une image d’un objet avec un texte spécifique écrit dessus.

Chargement en cours…

Avec des degrés de fiabilité variables, DALL·E offre un accès à un sous-ensemble des fonctionnalités d'un moteur de rendu 3D par le biais du langage naturel. Il peut contrôler de manière indépendante les attributs d’un petit nombre d’objets et, dans une mesure limitée, leur nombre ainsi que la manière dont ils sont disposés les uns par rapport aux autres. Il peut également contrôler l’emplacement et l’angle à partir desquels une scène est rendue, et peut générer des objets connus en respectant des spécifications précises d’angle et de conditions d’éclairage.

Contrairement à un moteur de rendu 3D, qui exige une spécification intégralement détaillée et sans ambiguïté des éléments en entrée de traitement, DALL·E est souvent capable de « remplir les blancs » et d’inclure dans l’image des détails indispensables mais que la légende ne mentionne pas explicitement.

Applications des capacités antérieures

Suivant, nous explorons l'utilisation des capacités précédentes pour la mode et la décoration intérieure.

Chargement en cours…

Combinaison de concepts sans rapport.

La nature compositionnelle du langage nous permet d’assembler des concepts pour décrire des choses réelles et imaginaires. Nous constatons que DALL·E a également la capacité de combiner des idées disparates pour synthétiser des objets, dont certains sont peu susceptibles d’exister dans le monde réel. Nous explorons cette capacité dans deux cas : transférer des qualités de divers concepts à des animaux, et concevoir des produits en s'inspirant de concepts sans rapport.

Chargement en cours…

Illustrations d'animaux

Dans la section précédente, nous avons exploré la capacité de DALL·E à combiner des concepts sans rapport entre eux lorsqu’il génère des images d’objets du monde réel. Ici, nous explorons cette capacité dans le contexte de l'art, pour trois types d'illustrations : des versions anthropomorphisées d'animaux et d'objets, des chimères animales et des émojis.

Chargement en cours…

Raisonnement visuel sans entraînement préalable

GPT‑3 peut être instruit pour effectuer de nombreux types de tâches uniquement à partir d'une description et d'un indice pour générer la réponse fournie dans son invite, sans aucune formation supplémentaire. Par exemple, lorsqu’on lui donne comme invite la phrase suivante : « voici la phrase “a person walking his dog in the park” traduite en français : », GPT‑3 répond : « un homme qui promène son chien dans le parc. » Cette capacité est appelée raisonnement zero-shot (sans entraînement préalable). Nous constatons que DALL·E étend cette capacité au domaine visuel et est capable d’effectuer plusieurs types de tâches d’image à image lorsqu’on lui fournit les bonnes invites.

Chargement en cours…

Nous n'avons pas anticipé que cette capacité émergerait et n'avons apporté aucune modification au réseau neuronal ou à la procédure de formation pour l'encourager. Motivés par ces résultats, nous mesurons l’aptitude de DALL·E à résoudre des problèmes de raisonnement analogique en le testant sur les matrices progressives de Raven, un test visuel de QI largement utilisé au XXe siècle.

Chargement en cours…

Connaissances géographiques

Nous avons constaté que DALL·E a appris des faits géographiques, des points de repère et des quartiers. Sa connaissance de ces concepts est étonnamment précise à certains égards et imparfaite à d'autres.

Chargement en cours…

Connaissance temporelle

En plus d’explorer les connaissances de DALL·E sur les concepts qui varient dans l’espace, nous explorons également ses connaissances sur les concepts qui varient dans le temps.

Chargement en cours…

Sommaire de l’approche et des travaux antérieurs

DALL·E est un simple transformeur décodeur qui reçoit à la fois le texte et l’image sous la forme d’un flux unique de 1280 tokens—256 pour le texte et 1024 pour l’image—et les modélise tous de manière autorégressive. Le masque d’attention à chacune de ses 64 couches d’auto-attention permet à chaque token d’image de se référer à tous les tokens de texte. DALL·E utilise le masque causal standard pour les tokens de texte et l'attention éparse pour les tokens d'image avec un modèle d'attention en ligne, en colonne ou convolutionnel, selon la couche. Nous fournissons plus de détails sur l'architecture et la procédure de formation dans notre article(s'ouvre dans une nouvelle fenêtre).

La synthèse texte-image est un domaine de recherche actif depuis les travaux pionniers de Reed et al. et al1, dont l’approche utilise un GAN conditionné sur des embeddings textuels. Les embeddings sont produits par un encodeur pré-entraîné utilisant une perte contrastive, à l'image de CLIP. StackGAN3 et StackGAN++4 utilisent des GAN multi-échelles pour augmenter la résolution de l’image et améliorer la fidélité visuelle. AttnGAN5 intègre l’attention entre les caractéristiques du texte et de l’image, et propose une perte de correspondance contrastive entre les caractéristiques du texte et de l’image comme objectif auxiliaire. Il est intéressant de comparer cela à notre reranking avec CLIP, qui est effectué hors ligne. D’autres travaux2, 6, 7 intègrent des sources de supervision supplémentaires pendant la formation pour améliorer la qualité de l’image. Enfin, les travaux de Nguyen et al. al8 et Cho et al. al9 explore des stratégies d'échantillonnage pour la génération d'images qui exploitent des modèles discriminatifs multimodaux pré-entraînés.

À l’instar de l’échantillonnage de rejet utilisé dans VQVAE-2(s'ouvre dans une nouvelle fenêtre), nous utilisons CLIP pour reclasser les 32 meilleurs échantillons sur 512 pour chaque légende dans tous les visuels interactifs. Cette procédure peut également être perçue comme une forme de recherche guidée par la langue16, et elle peut avoir un impact dramatique sur la qualité de l'échantillon.

Chargement en cours…

Notes de bas de page

  1. A

    Un token est un symbole issu d’un vocabulaire discret; pour les humains, chaque lettre en anglais est un token issu d’un alphabet de 26 lettres. Le vocabulaire de DALL·E comprend des tokens pour les concepts de texte et d’image. Plus précisément, chaque légende d'image est représentée par un maximum de 256 tokens encodés par paires d'octets avec une taille de vocabulaire de 16 384, et l'image est représentée par 1 024 tokens avec une taille de vocabulaire de 8 192.

Les images sont traitées à l'avance à une résolution de 256x256 pendant la formation. Similaire au VQVAE, chaque image est compressée en une grille de 32x32 codes latents discrets à l'aide d'un VAE discret que nous avons préentraîné en utilisant une relaxation continue. Nous avons constaté que la formation utilisant la relaxation rend inutile le recours à un livre de codes explicite, à la perte de l'EMA ou à des astuces comme la reprise de codes morts, et peut s'étendre à des vocabulaires de grande taille.

  1. B

    Des détails supplémentaires sont fournis dans une section ultérieure.

  2. 17

    Cette tâche, appelée liaison de variables, a été largement étudiée dans la littérature.

Références

  1. 1

    Reed, S., Akata, Z., Yan, X., Logeswaran, L., Schiele, B., Lee, H. (2016). « Generative adversarial text to image synthesis(s'ouvre dans une nouvelle fenêtre) ». À ICML 2016.

  2. 2

    Reed, S., Akata, Z., Mohan, S., Tenka, S., Schiele, B., Lee, H. (2016). « Apprendre quoi et où dessiner(s'ouvre dans une nouvelle fenêtre) » En NIPS 2016.

  3. 3

    Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang X., Metaxas, D. (2016). « StackGAN : Synthèse texte vers image photoréaliste avec réseaux génératifs adverse empilés(s'ouvre dans une nouvelle fenêtre) ».s En ICCY 2017.

  4. 4

    Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang, X., Metaxas, D. (2017). « StackGAN++ : synthèse d'images réalistes avec des réseaux adversaires génératifs empilés(s'ouvre dans une nouvelle fenêtre) ». Dans IEEE TPAMI 2018.

  5. 5
  6. 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(s'ouvre dans une nouvelle fenêtre) ». En CVPR 2019.

  7. 7
  8. 8
  9. 9

    Cho, J., Lu, J., Schwen, D., Hajishirzi, H., Kembhavi, A. (2020). « X-LXMERT : Peinture, légende et réponse aux questions avec des transformateurs multimodaux(s'ouvre dans une nouvelle fenêtre) ». EMNLP 2020.

  10. 10

    Kingma, Diederik P., et Max Welling. « Autocodage variationnel bayésien(s'ouvre dans une nouvelle fenêtre) ». arXiv preprint (2013).

  11. 11

    Rezende, Danilo Jimenez, Shakir Mohamed, et Daan Wierstra. « Rétropropagation stochastique et inférence approximative dans les modèles génératifs profonds(s'ouvre dans une nouvelle fenêtre). » arXiv preprint (2014).

  12. 12
  13. 13
  14. 14

    van den Oord, A., Vinyals, O., Kavukcuoglu, K. (2017). « Apprentissage par représentation discrète neuronale(s'ouvre dans une nouvelle fenêtre) ».

  15. 15
  16. 16

    Andreas, J., Klein, D., Levine, S. (2017). « Apprendre avec un langage latent(s'ouvre dans une nouvelle fenêtre) ».

  17. 17
  18. 18
  19. 19
  20. 20

Auteurs principaux

Aditya Ramesh, Mikhail Pavlov, Gabriel Goh, Scott Gray

Soutien aux auteurs

Mark Chen, Rewon Child, Vedant Misra, Pamela Mishkin, Gretchen Krueger, Sandhini Agarwal, Ilya Sutskever