Generatywne sieci przeciwników i ich wady
Jeszcze kilka lat temu były w nich najnowocześniejsze modele
Jednak ze względu na konkurencyjny charakterModele GAN są bardzo niestabilne podczas uczenia i nie pokazują bardzo dużej różnorodności typów obrazów podczas generowania. Ponadto słabo nadają się do generowania obrazów z tekstu, chociaż istnieją tego przykłady.
Wyniki generowania obrazu według modelu StyleGAN 3
Boom w modelach dyfuzyjnych
Wręcz przeciwnie, modele dyfuzyjne mająwystarczającą zmienność generowanych obrazów i są dość stabilne. Ich główną wadą jest szybkość uczenia się i generowania. Do wytrenowania modelu potrzebne są dziesiątki, a nawet setki kart graficznych, a wygenerowanie obrazu przy użyciu już wytrenowanego modelu zajmuje kilka sekund, w przeciwieństwie do GAN, gdzie liczba sięga dziesiątek milisekund.
Generacja wynika z modelu dyfuzyjnego Ho et al
Boom wokół modeli dyfuzyjnych jest napędzany przez wyjścieduże generatywne modele zamiany tekstu na obraz. Z pewnością wielu czytelników widziało wyniki wygenerowane przez DALL·E 2, MidJourney, Imagen czy Stable Diffusion. Niektórzy artyści i ilustratorzy martwią się, że sieci neuronowe odbiorą im pracę, podczas gdy inni uważają, że to tylko pomoże w procesie twórczym. Programiści i artyści opanowują inżynierię podpowiedzi — sztukę wybierania tekstu w celu uzyskania dokładniejszych wyników generowania — i dzielą się ciekawymi prośbami i nie mniej interesującymi wynikami.
Inwazja kosmitów Lofi, aby odpocząć i uczyć się (sieć neuronowa Midjourney)
XVII-wieczny obraz The Beatles (Model Stable Diffusion 2.1)
Smoczy owoc noszący pas karate na śniegu (model Imagen)
Jak działają modele dyfuzji?
Modele dyfuzyjne to modele iteracyjne, któreakceptuj losowy szum jako wejście. Na początek rozważmy najbardziej podstawowy model dyfuzji, DDPM (Denoising Diffusion Probabilistic Model), przedstawiony przez Ho et al. Ten model jest szkolony krok po kroku na próbce setek tysięcy obrazów, gdzie losowy szum o pewnej znanej sile jest nakładany na obraz z próbki na każdym kroku, a model uczy się odwracać ten szum, poprawiając w ten sposób jakość obrazu. Jeśli iteracyjnie zastosujemy wytrenowany model w ten sposób do obrazu całkowicie losowego szumu, odwracając „słaby” szum na każdym kroku, model może wygenerować zupełnie nowy obraz, stopniowo pozbywając się losowego szumu – wykorzystując dyfuzję wsteczną.
Ilustracja przedstawiająca podstawowy proces rozpowszechniania (z samouczka CVPR 2022)
Losowy hałas, z którego generowany jestobraz można połączyć z warunkiem - wymogiem wyniku wyrażonym w tekście lub innym przykładowym obrazie. Najpierw spójrzmy na przykład z artykułu SDEdit, gdzie użytkownik wskazuje sieci neuronowej rysunek składający się z dużych kresek. Ten wzór jest dodatkowo zaszumiony do tego stopnia, że nie można go odróżnić od np. zaszumionej fotografii, a następnie stosowany jest iteracyjny proces dyfuzji wstecznej, który rekonstruuje wysokiej jakości obraz w oparciu o dostarczony wzór.
Ilustracja procesu dyfuzji opartej na wzorcach (z artykułu SDEdit)
Kolejny sposób na skierowanie pokolenia do pożądanegowynikiem jest uwarunkowanie modelu przez tekst. W tym celu wykorzystywane są modele językowe, wytrenowane na parach obrazów i napisów do nich, które są w stanie jednocześnie zrozumieć znaczenie obrazów i tekstów. Przykładem takiego modelu jest CLIP (Contrastive Language – Image Pre-training) wydany przez OpenAI. Ten model jest w stanie przetłumaczyć obrazy i teksty na wspólną utajoną przestrzeń wektorową (gdzie wektor jest tylko kolumną niektórych wartości). W tej przestrzeni możliwe staje się na przykład znalezienie obrazów najbliższych jakiemukolwiek zapytaniu tekstowemu, ponieważ jest to tylko operacja algebraiczna na wektorach.
model utajonej dyfuzji,wprowadzony w 2021 roku warunkuje model na przestrzeni wektorowej tekstów do generowania obrazów z szumu kierunkowego. Model ten wykorzystuje właściwości wspólnej ukrytej przestrzeni tekstów i obrazów. Na tej zasadzie działają sieci neuronowe Stable Diffusion, Imagen i inne duże sieci neuronowe przetwarzające tekst na obraz.
Kolejna ważna technika poprawiająca jakośćGeneracja używana w szkoleniu modeli dyfuzji warunkowej to swobodne prowadzenie klasyfikatora. Mówiąc prościej, im wyższa wartość parametru swobodnego prowadzenia klasyfikatora, tym bardziej wynik przypomina zapytanie tekstowe, co często przekłada się na mniejszą zmienność wyników.
Zagadnienia modeli dyfuzyjnych
Oczywiście modele dyfuzyjne nie sąuniwersalne rozwiązanie problemu generowania obrazu. Wciąż borykają się z tymi samymi problemami co GANy – na pierwszy rzut oka prawdziwe obrazy mają spore wady – wygenerowane osoby mogą mieć więcej niż pięć palców czy 32 zęby. Ponadto te modele są dość kiepskie w generowaniu tekstu na obrazach, a nawet wymyślają własny „język”.
Artyści obwiniają sztuczną inteligencję Midjourney i stabilność(firma stojąca za Stable Diffusion) za naruszenie praw autorskich przy przygotowaniu danych treningowych - twierdzą, że firmy pobrały zdjęcia z Internetu bez zgody artystów i odpowiedniego odszkodowania. Rośnie również obawa, że sieci generatywne, w tym Stable Diffusion, wzmacniają negatywne stereotypy dotyczące rasy, płci i innych kwestii społecznych, ponieważ są szkolone w oparciu o stronnicze dane uzyskane z Internetu.
Historia Adama i Ewy, Noego i Zeusa w stylu DC Comics (model DALL·E 2)
Jak spróbować za darmo
W przeciwieństwie do wielu poprzednich osiągnięć wobszarach widzenia komputerowego, które często były dostępne tylko dla programistów, nowe technologie z zakresu sieci dyfuzyjnych często mogą wypróbować wszyscy. Ogólny trend w stronę oprogramowania open source i publikowania wersji demonstracyjnych sieci neuronowych pozwala startupom takim jak Hugging Face agregować wiele wersji modeli, np. Stable Diffusion 2.1. Rozwijają także bibliotekę diffusers, która ma uprościć użycie modeli w kodzie.
Usługa Google Colab pozwala na uruchomienie koduGPU i TPU, dlatego wielu entuzjastów używa go do publikowania swoich wersji modelu, na przykład modelu Disco Diffusion Warp, który jest w stanie zmienić styl wideo.
Istnieją również wygodne interfejsy do modeli.Sieć neuronowa MidJourney ma więc darmową wersję próbną na kilkadziesiąt pokoleń, co w zupełności wystarczy do wypróbowania modeli text-to-image. OpenAI zapewnia również próbny dostęp do modelu DALL·E 2.
Co dalej
Można śmiało powiedzieć, że przeżywamy złoty wiekera generowania obrazu sieci neuronowych. Społeczność z niecierpliwością czeka na przyszłe produkty firmy Google, która udostępniła model prywatnego rozpowszechniania Imagen oraz dużą liczbę artykułów na temat edycji i generowania obrazów, w tym wykorzystania innych technologii sztucznej inteligencji.
Pojawiają się nowe startupy w obszarze tworzenia iedycji obrazu, która skutecznie konkuruje z takimi gigantami jak OpenAI czy Google. Prawie co tydzień publikowane są nowe artykuły na temat modeli dyfuzyjnych, a zakres ich dzisiejszego zastosowania nie ogranicza się do wymienionych zadań komputerowej wizji 2D - wykorzystuje się je w zadaniach obrazowania medycznego, generacji wideo i tekstu 3D.
Czytaj więcej:
Tajemnica czerwonych pasów na satelicie Jowisza zostaje ujawniona
Znaleziono „niemożliwą” planetę. Wymyka się współczesnej nauce
Tajemnicze sześciokątne „plastry miodu” na słonych pustyniach znalazły wyjaśnienie