Stable Diffusion je model hlubokého učení převádějící text na obraz, který byl uveden na trh v roce 2022 na základě techniky difúze. Je primárně určen k generování podrobných obrázků na základě popisů textu, ale lze jej také použít k dalším úkolům, jako je inpainting, outpainting a generování překladů obrazu k textovému zadání. Byl vyvinut výzkumníky z CompVis Group na Ludwig Maximilian University v Mnichově a Runway s výpočetním příspěvkem od Stability AI a trénovacími daty poskytnutými neziskovými organizacemi.
Stable Diffusion, vývojový krok v oblasti generativního umělého modelování, reprezentuje latentní difúzní model postavený na hluboké neuronové síti. Tento inovativní model byl navržen s důrazem na otevřený zdrojový kód, umožňující komunitě vývojářů přístup k jeho váhám kódu a modelu. Co ještě fascinující, je jeho schopnost provozu na široké škále spotřebního hardwaru, přičemž minimální požadavek je grafická karta s alespoň 4 GB VRAM (virtuální paměti).
Odklon od předchozích proprietárních modelů, jako jsou DALL-E a Midjourney, je patrný v tom, že Stable Diffusion nabízí možnost využívat jej na lokálním hardwaru bez nutnosti spoléhat se na cloudové služby. Tímto způsobem se dále posiluje nezávislost uživatelů a umožňuje větší flexibilitu při využívání této pokročilé technologie.
Rozvoj Vývoj Stable Diffusion představuje spolupráci a finanční podporu od začínající společnosti Stability AI Technickou licenci na tento model poskytla skupina CompVis na Univerzitě Ludwiga Maximiliana v Mnichově. Vedoucími postavami tohoto projektu byli Patrick Esser z Runway a Robin Rombach z CompVis, kteří předtím vytvořili architekturu latentní difúze, jež je v jádru modelu Stable Diffusion.
Stability AI uznává podporu EleutherAI a LAION, německé neziskové organizace, které sestavily klíčovou datovou sadu pro trénování modelu.
V říjnu 2022 získala Stability AI 101 miliónů USD (amerických dolarů) v kole vedeném společností Lightspeed Venture Partners a Coatue Management.
Technologie vpravo|náhled|Schéma latentní difúzní architektury používané Stable Diffusion vpravo|náhled|300x300pixelů|Proces odšumování používaný Stable Diffusion. Model generuje obrázky opakovaným odšumováním náhodného šumu, dokud není dosaženo nakonfigurovaného počtu kroků, vedený textovým kodérem CLIP předem natrénovaným na koncepty spolu s mechanismem pozornosti, což vede k požadovanému snímku zobrazujícímu reprezentaci natrénovaného konceptu.
Architektura Stable Diffusion využívá pokročilý difúzní model nazývaný Model latentní difúze (LDM), který vyvinula skupina CompVis na LMU Mnichov. Tato nová generace difúzních modelů, představená v roce 2015, je zaměřena na trénování s cílem eliminovat postupné aplikace Gaussova šumu na trénovacích snímcích. Tento postup lze přirovnat k sekvenci odšumovacích autokodérů.
Stable Diffusion se skládá ze tří klíčových částí: variačního autoenkodéru (VAE), U-Net a volitelného textového kodéru. V první fázi kodér VAE komprimuje obraz z prostoru pixelů do menšího latentního prostoru s nižším rozměrem, což umožňuje zachytit podstatný sémantický význam obrazu. Během dopředné difúze je na tuto komprimovanou latentní reprezentaci iterativně aplikován gaussovský šum.
Blok U-Net, složený z páteře ResNet, následně odšumuje výstup z dopředné difúze, přivádějící latentní reprezentaci zpět do původního stavu. Nakonec dekodér VAE generuje finální obraz tím, že převede reprezentaci zpět do původního prostoru pixelů. Tímto sofistikovaným procesem je dosaženo Stable Diffusion, což přináší vylepšenou kvalitu a sémantickou interpretaci obrazu.
Proces odšumování je flexibilně podmíněn pomocí různých modalit, včetně textu, obrázků a dalších. Zakódovaná data pro podmíněné odšumování jsou vystavena síti U prostřednictvím mechanismu křížové pozornosti. Při úpravě textu je využíván pevný, předem připravený textový kodér CLIP ViT-L/14, který transformuje textové vstupy do vloženého prostoru.
Výzkumníci zdůrazňují zvýšenou výpočetní efektivitu při trénování a generování jako klíčovou výhodu modelu latentní difúze (LDM). Tato efektivita představuje výrazné zlepšení oproti jiným přístupům, což potvrzuje významný pokrok v oblasti odšumování a generativního modelování.
S 860 miliony parametry v U-Net a 123 miliony v textovém kodéru se Stable Diffusion v souladu se standardy roku 2022 řadí mezi relativně lehké modely. Na rozdíl od jiných difúzních modelů má schopnost provozovat se na spotřebitelských GPU, což představuje významnou výhodu v přístupnosti a možnosti využívání širšího spektra hardwaru. Tato schopnost rozšiřuje dosah modelu a umožňuje efektivní nasazení i na zařízeních s omezenými výpočetními zdroji.
Tréninkové údaje Stable Diffusion byla trénována na dvojicích obrázků a popisků pocházejících z LAION-5B, veřejně dostupného datasetu odvozeného z dat Common Crawl, která byla načítána ze sítě. Dataset obsahuje 5 miliard párových kombinací obrazů a textů, které byly klasifikovány podle jazyka a filtrovány do samostatných datasetů podle rozlišení, pravděpodobnosti obsahu vodoznaku a předpokládané "estetické" hodnocení (například subjektivní vizuální kvality). Dataset vytvořila organizace LAION, německá nezisková organizace, která získává finanční prostředky od Stability AI.
Model Stable Diffusion byl trénován na třech podmnožinách LAION-5B: laion2B-en, laion-high-resolution a laion-aesthetics v2 5+. Analýza dat trénovacího modelu provedená třetí stranou identifikovala, že z menší podmnožiny 12 milionů obrázků z původního širšího datasetu pochází přibližně 47 % vzorku z 100 různých domén, přičemž Pinterest tvoří 8,5 % této podmnožiny, následovaný webovými stránkami jako WordPress, Blogspot, Flickr, DeviantArt a Wikimedia Commons. [citace potřebná] Vyšetřování Bayerischer Rundfunk ukázalo, že datasety LAION, hostované na Hugging Face, obsahují velké množství soukromých a citlivých dat.
Tréninkové postupy Původně byl model trénován na podmnožinách laion2B-en a laion-high-resolution, přičemž poslední několik kol tréninku proběhlo na LAION-Aesthetics v2 5+, což je podmnožina 600 milionů popsaných obrázků. LAION-Aesthetics Predictor V2 předpověděl, že lidé by průměrně udělili hodnocení minimálně 5 z 10, když byli požádáni, aby ohodnotili, jak moc se jim obrázky líbily. Podmnožina LAION-Aesthetics v2 5+ také vyloučila nízké rozlišení a obrázky, které byly identifikovány jako nesoucí vodoznak s pravděpodobností vyšší než 80 % pomocí LAION-5B-WatermarkDetection. V posledních kolech tréninku bylo navíc sníženo 10 % textové podmíněnosti s cílem zlepšit metodu Classifier-Free Diffusion Guidance.
Model Stable Diffusion byl vytrénován s využitím výkonných 256 grafických karet Nvidia A100, přičemž tento trénink probíhal na webových službách Amazon. Celkem bylo vynaloženo 150 000 hodin GPU výpočetního času na dosažení optimálních výsledků.
Omezení Stable Diffusion má potíže s degradací a nepřesnostmi v určitých scénářích. První verze modelu byla trénována na datasetu s obrázky o rozlišení 512×512, což znamená, že kvalita generovaných obrázků výrazně degraduje, když se specifikace uživatele odchýlí od "očekávaného" rozlišení 512×512. Verze 2.0 aktualizace modelu Stable Diffusion následně přidala schopnost nativně generovat obrázky o rozlišení 768×768. Další výzvou je generování lidských končetin v důsledku nízké kvality dat o končetinách v databázi LAION. Model je nedostatečně vyškolen na porozumění lidským končetinám a obličejům kvůli nedostatku reprezentativních prvků v databázi, a vyvolávání generování obrázků tohoto typu může model zmat. Verze Stable Diffusion XL (SDXL) 1.0, uvedená na trh v červenci 2023, představila nativní rozlišení 1024x1024 a zlepšenou generaci pro končetiny a text.
Dostupnost pro jednotlivé vývojáře může být také problémem. Aby bylo možné upravit model pro nové použití, které není zahrnuto v datasetu, například pro generování postav anime ("waifu difúze"), je zapotřebí nových dat a dalšího tréninku. Jemně naladěné adaptace modelu Stable Diffusion vytvořené prostřednictvím dalšího opětovného tréninku byly použity pro různé účely, od lékařského zobrazování po algoritmicky generovanou hudbu. Nicméně tento proces jemného ladění je citlivý na kvalitu nových dat; nízké rozlišení obrázků nebo odlišné rozlišení od původních dat může nejen selhat při naučení se nového úkolu, ale i degradovat celkový výkon modelu. I když je model dodatečně vyškolen na obrázky vysoké kvality, je pro jednotlivce obtížné spouštět modely na spotřebitelské elektronice. Například trénovací proces pro waifu-difúzi vyžaduje minimálně 30 GB VRAM, což přesahuje běžné zdroje poskytované v takových spotřebitelských GPU jako například Nvidia GeForce 30 series, které mají pouze kolem 12 GB.
Tvůrci modelu Stable Diffusion uznávají možnost algoritmického zkreslení, neboť byl model primárně trénován na obrázcích s anglickými popisy. Výsledkem je, že generované obrázky posilují sociální zkreslení a jsou západně orientované, neboť tvůrci upozorňují, že model chybí data z jiných komunit a kultur. Model poskytuje přesnější výsledky pro zadání napsaná anglicky ve srovnání s těmi napsanými v jiných jazycích, přičemž západní nebo bílé kultury jsou často defaultním zobrazením.
Jemné ladění koncovým uživatelem Aby bylo možné řešit omezení původního tréninku modelu, koncoví uživatelé mohou zvolit implementaci dalšího tréninku k jemnému ladění generovaných výstupů a přizpůsobení je specifickým účelům, což je proces označovaný jako personalizace. Existují tři metody, jak lze na checkpoint modelu Stable Diffusion aplikovat přístupné jemné ladění uživatelem:
"Vložení" lze natrénovat z kolekce obrázků poskytnutých uživatelem a umožňuje modelu generovat vizuálně podobné obrázky, kdykoli je název vložení použit ve výzvě ke generování. Vkládání je založeno na konceptu „textové inverze“, který vyvinuli vědci z Tel Aviv University v roce 2022 s podporou společnosti Nvidia, kde jsou vektorové reprezentace pro konkrétní tokeny používané kodérem textu modelu propojeny s novými pseudoslovy. Vložení lze použít ke snížení předsudků v rámci původního modelu nebo k napodobení vizuálních stylů. „Hypersíť“ je malá předtrénovaná neuronová síť, která se aplikuje na různé body v rámci větší neuronové sítě a odkazuje na techniku vytvořenou vývojářem NovelAI Kurumuz v roce 2021, původně určenou pro modely transformátorů pro generování textu. Hypernetworks nasměrují výsledky určitým směrem a umožňují modelům založeným na Stable Diffusion napodobovat umělecký styl konkrétních umělců, i když umělec není rozpoznán původním modelem; zpracovávají obraz nalezením klíčových důležitých oblastí, jako jsou vlasy a oči, a poté tyto oblasti zalepují v sekundárním latentním prostoru. DreamBooth je model generování hlubokého učení vyvinutý výzkumníky z Google Research a Boston University v roce 2022, který dokáže model doladit tak, aby generoval přesné, personalizované výstupy, které zobrazují konkrétní předmět, po školení prostřednictvím sady obrázků, které předmět zobrazují.
Schopnosti Model Stable Diffusion podporuje schopnost generovat nové obrázky od základu pomocí textového zadání popisujícího prvky, které mají být zahrnuty nebo vynechány ve výstupu. Existující obrázky mohou být modelem překresleny a začleněny nové prvky popsané textovým zadáním (proces známý jako "vedená syntéza obrázku") pomocí jeho mechanismu difúzního vyhlazování. Kromě toho model umožňuje použití zadání k částečné úpravě existujících obrázků pomocí inpaintingu a outpaintingu, pokud je používán s vhodným uživatelským rozhraním, které podporuje tyto funkce, a existuje mnoho různých implementací s otevřeným zdrojovým kódem.