DALL·E: Tvorba obrázků z textu
Vytrénovali jsme neurální síť nazvanou DALL·E, která vytváří obrázky z textových popisů pro širokou škálu konceptů vyjádřitelných v přirozeném jazyce.

Ilustrace: Justin Jay Wang
DALL·E je verze modelu GPT‑3(otevře se v novém okně) s 12 miliardami parametrů, vytrénovaná k vytváření obrázků z textových popisů pomocí datové sady párů text–obrázek. Zjistili jsme, že má rozmanitou sadu schopností, včetně vytváření antropomorfizovaných verzí zvířat a objektů, kombinování nesouvisejících konceptů věrohodným způsobem, vykreslování textu a aplikování transformací na existující obrázky.
Viz také: DALL·E 2, který vytváří realističtější a přesnější obrázky se čtyřnásobným rozlišením.
GPT‑3 ukázal, že jazyk lze použít k instruování velké neurální sítě k provádění různých úkolů generování textu. Image GPT ukázal, že stejný typ neurální sítě lze také použít k vytvoření obrázků s vysokou věrností. Rozšiřujeme tyto poznatky, abychom ukázali, že manipulace s vizuálními koncepty prostřednictvím jazyka je nyní na dosah.
Stejně jako GPT‑3 je DALL·E transformační jazykový model. Přijímá text i obrázek jako jeden datový proud obsahující až 1280 tokenů a je trénován pomocí maximální pravděpodobnosti k postupnému generování všech tokenů, jednoho po druhém. A
Tento tréninkový postup umožňuje programu DALL-E nejen generovat obrázek od začátku, ale také regenerovat jakoukoli obdélníkovou oblast existujícího obrázku, která sahá až do pravého dolního rohu, způsobem, který je v souladu s textovým promptem.
Uvědomujeme si, že práce zahrnující generativní modely může mít významné a široké společenské dopady. V budoucnu plánujeme analyzovat, jak se modely jako DALL·E vztahují ke společenským otázkám, jako je ekonomický dopad na určité pracovní procesy a profese, potenciální zaujatost ve výstupech modelu a dlouhodobé etické výzvy, které tato technologie přináší.
Zjistili jsme, že DALL·E dokáže vytvořit věrohodné obrázky pro širokou škálu vět, které prozkoumávají kompoziční strukturu jazyka. Toto ukazujeme pomocí série interaktivních vizuálů v další části. Ukázky zobrazené pro každý titulek ve vizuálech jsou získány tak, že se po přehodnocení pomocí CLIP vybere 32 nejlepších z 512, ale nepoužíváme žádné ruční vybírání, kromě miniatur a samostatných obrázků, které se objevují mimo.B
Testujeme schopnost DALL·E upravit několik atributů objektu a také počet jeho výskytů.
Současné ovládání více objektů, jejich atributů a jejich prostorových vztahů představuje novou výzvu. Například si představte frázi „ježek, který má na sobě červený klobouk, žluté rukavice, modrou košili a zelené kalhoty.“ Aby DALL·E správně interpretoval tuto větu, musí nejen správně spojit každý kus oblečení se zvířetem, ale také vytvořit asociace (klobouk, červená), (rukavice, žlutá), (košile, modrá) a (kalhoty, zelená) bez jejich záměny C
Testujeme schopnost DALL·E provádět relativní umístění, stohování objektů a ovládání více atributů.
I když DALL·E nabízí určitou míru kontroly nad atributy a pozicemi malého počtu objektů, úspěšnost může záviset na tom, jak je popisek formulován. Jakmile je představeno více objektů, DALL·E má sklon zaměňovat asociace mezi objekty a jejich barvami, což vede k prudkému poklesu úspěšnosti. Také si všímáme, že DALL·E je citlivý na přeformulování popisku v těchto scénářích: alternativní, sémanticky ekvivalentní popisky často nevedou ke správným interpretacím.
Zjistili jsme, že DALL·E také umožňuje ovládat úhel pohledu na scénu a 3D styl, ve kterém je scéna vykreslena.
Abychom to posunuli dál, testujeme schopnost DALL·E opakovaně kreslit hlavu známé osobnosti z každého úhlu v sekvenci rovnoměrně rozložených úhlů a zjišťujeme, že můžeme získat plynulou animaci rotující hlavy.
Zdá se, že DALL·E dokáže aplikovat některé typy optických zkreslení na scény, jak vidíme u možností „pohled rybím okem“ a „sférická panoramata“. To nás motivovalo ke zkoumání jeho schopnosti vytvářet odrazy.
Ukázky z „extrémně detailního záběru“ a „rentgenového“ stylu nás vedly k dalšímu prozkoumání schopnosti DALL·E vykreslit vnitřní strukturu pomocí průřezových pohledů a vnější strukturu pomocí makrofotografií.
Úkol překladu textu na obrázky je nedostatečně specifikován: jeden popis obecně odpovídá nekonečnému množství možných obrázků, takže obrázek není jednoznačně určen. Například zvaž titulek „obraz kapybary sedící na poli při východu slunce.“ V závislosti na orientaci kapybary může být nutné nakreslit stín, i když tento detail není nikdy výslovně zmíněn. Prozkoumáváme schopnost DALL·E řešit nedostatečnou specifikaci ve třech případech: změna stylu, prostředí a času; kreslení stejného objektu v různých situacích; a vytvoření obrázku objektu s konkrétním textem napsaným na něm.
S různou mírou spolehlivosti poskytuje DALL·E přístup k podmnožině funkcí 3D renderovacího enginu prostřednictvím přirozeného jazyka. Může nezávisle ovládat atributy malého počtu objektů a do omezené míry také kolik jich je a jak jsou uspořádány vůči sobě navzájem. Může také ovládat umístění a úhel, ze kterého je scéna vykreslena, a může vytvořit známé objekty v souladu s přesnými specifikacemi úhlu a světelných podmínek.
Na rozdíl od 3D renderovacího enginu, jehož vstupy musí být specifikovány jednoznačně a do detailu, DALL·E často dokáže „doplňovat mezery“, když popisek naznačuje, že obrázek musí obsahovat určitý detail, který není explicitně uveden.
Dále prozkoumáme využití předchozích schopností pro módu a interiérový design.
Kompoziční povaha jazyka nám umožňuje spojovat koncepty k popisu jak skutečných, tak imaginárních věcí. Zjistili jsme, že DALL·E má také schopnost kombinovat různé nápady k syntéze objektů, z nichž některé pravděpodobně neexistují ve skutečném světě. Prozkoumáváme tuto schopnost ve dvou případech: přenos vlastností z různých konceptů na zvířata a navrhování produktů inspirovaných nesouvisejícími koncepty.
V předchozí části jsme prozkoumali schopnost DALL·E kombinovat nesouvisející koncepty při vytváření obrázků reálných objektů. Zde prozkoumáme tuto schopnost v kontextu umění, pro tři druhy ilustrací: antropomorfizované verze zvířat a objektů, zvířecí chiméry a emotikony.
GPT‑3 může být instruován k provádění mnoha druhů úkolů pouze na základě popisu a nápovědy k vytvoření odpovědi uvedené v jeho promptu, bez jakéhokoliv dalšího školení. Například, když je GPT‑3 prompt frází „zde je věta ‘osoba, která venčí svého psa v parku‘ přeložená do francouzštiny:“, odpoví „un homme qui promène son chien dans le parc.“ Tato schopnost se nazývá zero-shot reasoning. Zjistili jsme, že DALL·E rozšiřuje tuto schopnost do vizuální domény a je schopen provádět několik druhů úkolů překladu obrázek na obrázek, když je správně promptován.
Neočekávali jsme, že se tato schopnost objeví, a neprovedli jsme žádné úpravy neurální sítě ani školícího postupu, abychom ji podpořili. Motivováni těmito výsledky měříme schopnost DALL·E řešit problémy analogického uvažování tím, že ho testujeme na Ravenových progresivních maticích, což je vizuální IQ test, který byl hojně používán ve 20. století.
Zjistili jsme, že DALL·E se naučil o geografických faktech, památkách a čtvrtích. Jeho znalost těchto konceptů je v některých ohledech překvapivě přesná a v jiných nedokonalá.
Kromě prozkoumávání znalostí DALL·E o konceptech, které se mění v prostoru, také prozkoumáváme jeho znalosti o konceptech, které se mění v čase.
DALL·E je jednoduchý transformer typu decoder-only, který přijímá text i obrázek jako jeden společný tok o 1280 tokenech – z nichž 256 připadá na text a 1024 na obrázek – a všechny tyto tokeny modeluje autoregresivně. Maska pozornosti v každé z jejích 64 vrstev vlastní pozornosti (self-attention) umožňuje, aby mohl každý obrazový token využít všechny textové tokeny jako kontext. DALL·E používá pro textové tokeny standardní kauzální masku a pro obrazové tokeny řídkou pozornost. Podle typu vrstvy přitom využívá řádkový, sloupcový nebo konvoluční vzor pozornosti. Podrobnější informace o architektuře a tréninkovém postupu uvádíme v našem článku(otevře se v novém okně).
Syntéza textu na obrázek je aktivní oblastí výzkumu od průkopnické práce Reeda a kol. ,1 jehož přístup využívá GAN podmíněný textovými vektory. Embeddování vytváří enkodér předtrénovaný pomocí kontrastní ztráty, podobně jako u modelu CLIP. StackGAN3 a StackGAN++4 používají víceúrovňové GANy ke zvýšení rozlišení obrázku a zlepšení vizuální věrnosti. AttnGAN5 zahrnuje pozornost mezi textovými a obrazovými prvky a navrhuje kontrastní ztrátu pro párování textových a obrazových prvků jako pomocný cíl. Je zajímavé porovnat to s naším přerovnáním pomocí CLIP, které se provádí offline. Jiná práce2, 6, 7 zahrnuje další zdroje dohledu během tréninku ke zlepšení kvality obrázku. Nakonec, práce Nguyen a kol. al8 a Cho a kol. 9 prozkoumává strategie generování obrázků založené na vzorkování, které využívají předtrénované multimodální diskriminační modely.
Podobně jako u odmítacího vzorkování použitého ve VQVAE-2(otevře se v novém okně), používáme CLIP k přehodnocení 32 nejlepších z 512 vzorků pro každý popisek ve všech interaktivních vizuálech. Tento postup lze také považovat za druh jazykově řízeného vyhledávání16 a může mít dramatický dopad na kvalitu vzorku.
Poznámky pod čarou
- A
Token je jakýkoli symbol z diskrétní slovní zásoby; pro lidi je každé anglické písmeno tokenem z 26písmenné abecedy. Slovník DALL·E má tokeny pro textové i obrázkové koncepty. Konkrétně je každý popis obrázku reprezentován pomocí maximálně 256 tokenů kódovaných metodou BPE s velikostí slovníku 16384 a obrázek je reprezentován pomocí 1024 tokenů s velikostí slovníku 8192.
Obrázky jsou během školení předzpracovány na rozlišení 256x256. Podobně jako VQVAE, je každý obrázek komprimován do 32x32 mřížky diskrétních latentních kódů pomocí diskrétního VAE, který jsme předtrénovali pomocí kontinuální relaxace. Zjistili jsme, že školení pomocí relaxace eliminuje potřebu explicitního kódového slovníku, ztráty EMA nebo triků jako oživení mrtvého kódu a může se škálovat na velké velikosti slovníku.
- B
Další podrobnosti jsou uvedeny v následující části.
- 17
Tento úkol se nazývá svázání proměnných a byl rozsáhle studován v literatuře.
Reference
- 1
Reed, S., Akata, Z., Yan, X., Logeswaran, L., Schiele, B., Lee, H. (2016). „Generativní adversariální syntéza obrázku z textu(otevře se v novém okně)“. V ICML 2016.
- 2
Reed, S., Akata, Z., Mohan, S., Tenka, S., Schiele, B., Lee, H. (2016). „Učení se, co a kde kreslit(otevře se v novém okně)“. V NIPS 2016.
- 3
Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang X., Metaxas, D. (2016). „StackGAN: Od textu k fotorealistické syntéze obrázků s použitím stohovaných generativních adversariálních sítí(otevře se v novém okně)”. V ICCY 2017.
- 4
Zhang, H., Xu, T., Li, H., Zhang, S., Wang, X., Huang, X., Metaxas, D. (2017). „StackGAN++: Realistická syntéza obrázků s použitím stohovaných generativních adversariálních sítí(otevře se v novém okně)”. V IEEE TPAMI 2018.
- 5
Xu, T., Zhang, P., Huang, Q., Zhang, H., Gan, Z., Huang, X., a He, X. (2017). „AttnGAN: Jemně detailní generování obrázků z textu pomocí pozornostních generativních adversariálních sítí(otevře se v novém okně)”.
- 6
Li, W., Zhang, P., Zhang, L., Huang, Q., He, X., Lyu, S., Gao, J. (2019). „Objektově řízená syntéza textu na obrázek prostřednictvím adversariálního školení(otevře se v novém okně)“. V CVPR 2019.
- 7
Koh, J. Y., Baldridge, J., Lee, H., Yang, Y. (2020). „Generování obrázku z textu založené na jemné pozornosti uživatele(otevře se v novém okně)“. V WACV 2021.
- 8
Nguyen, A., Clune, J., Bengio, Y., Dosovitskiy, A., Yosinski, J. (2016). „Plug & play generativní sítě: podmíněné iterativní generování obrazů v latentním prostoru(otevře se v novém okně)“.
- 9
Cho, J., Lu, J., Schwen, D., Hajishirzi, H., Kembhavi, A. (2020). „X-LXMERT: Malování, titulky a odpovědi na otázky pomocí multimodálních transformerů(otevře se v novém okně)“. EMNLP 2020.
- 10
Kingma, Diederik P., a Max Welling. „Autoenkódovací variační Bayes(otevře se v novém okně).“ arXiv preprint (2013).
- 11
Rezende, Danilo Jimenez, Shakir Mohamed a Daan Wierstra. „Stochastická zpětná propagace a aproximativní inferování v hlubokých generativních modelech(otevře se v novém okně).“ arXiv preprint (2014).
- 12
Jang, E., Gu, S., Poole, B. (2016). „Kategorická reparametrizace pomocí Gumbel-softmax(otevře se v novém okně).“
- 13
Maddison, C., Mnih, A., Teh, Y. W. (2016). „Concrete rozdělení: spojité uvolnění diskrétních náhodných proměnných(otevře se v novém okně).“
- 14
van den Oord, A., Vinyals, O., Kavukcuoglu, K. (2017). „Učení neurálních diskrétních reprezentací(otevře se v novém okně)“.
- 15
Razavi, A., van der Oord, A., Vinyals, O. (2019). „Vytváření různorodých vysoce věrných obrázků s VQ-VAE-2(otevře se v novém okně)“.
- 16
Andreas, J., Klein, D., Levine, S. (2017). „Učení se s latentním jazykem(otevře se v novém okně)“.
- 17
- 18
- 19
Gayler, R. (1998). „Multiplikativní vazba, operátory reprezentace a analogie(otevře se v novém okně)“.
- 20
Kanerva, P. (1997). „Plně distribuované reprezentace(otevře se v novém okně)“.


