{"id":21085,"date":"2023-05-04T05:00:00","date_gmt":"2023-05-04T03:00:00","guid":{"rendered":"https:\/\/sii.pl\/blog\/a-brief-history-of-ai-powered-image-generation\/?category=development-na-twardo"},"modified":"2024-12-05T09:33:21","modified_gmt":"2024-12-05T08:33:21","slug":"krotka-historia-si-w-generowaniu-obrazow","status":"publish","type":"post","link":"https:\/\/sii.pl\/blog\/krotka-historia-si-w-generowaniu-obrazow\/","title":{"rendered":"Kr\u00f3tka historia SI w generowaniu obraz\u00f3w"},"content":{"rendered":"\n<p>Czy kiedykolwiek marzy\u0142e\u015b o tym, \u017ceby fizycznie przedstawi\u0107 obraz, kt\u00f3ry sobie wyobrazi\u0142e\u015b? By m\u00f3c pokaza\u0107 go innym ludziom nie za pomoc\u0105 opisu, licz\u0105c na to, \u017ce poprawnie zdekoduj\u0105, co masz na my\u015bli i odtworz\u0105 go w swoich w\u0142asnych g\u0142owach, ale bezpo\u015brednio \u2013 jakby wzi\u0105\u0107 go z twojej wyobra\u017ani i postawi\u0107 przed wszystkimi do obejrzenia? A mo\u017ce chcia\u0142by\u015b po prostu m\u00f3c zobaczy\u0107 to, co widzisz w swojej g\u0142owie bardziej wyra\u017anie \u2013 u\u017cywaj\u0105c wzroku \u2013 a nie tylko przeno\u015bnymi oczami wyobra\u017ani?<\/p>\n\n\n\n<p>Chocia\u017c technologia, kt\u00f3ra czyta my\u015bli, nadal jest poza naszym zasi\u0119giem, mamy teraz dost\u0119p do interesuj\u0105cej alternatywy. \u017byjemy w erze modeli sztucznej inteligencji zdolnych do generowania wysokiej jako\u015bci obraz\u00f3w jedynie na podstawie opisu tekstowego. Ta technologia jest darmowa, udost\u0119pniana na zasadzie otwartych \u017ar\u00f3de\u0142 i dost\u0119pna dla ka\u017cdego.<\/p>\n\n\n\n<p>Ale jak znale\u017ali\u015bmy si\u0119 w tym miejscu? Ten artyku\u0142 przedstawia <strong>kr\u00f3tk\u0105 histori\u0119 syntezy obraz\u00f3w, daj\u0105c og\u00f3lny ogl\u0105d na kluczowe wydarzenia, kt\u00f3re doprowadzi\u0142y nas do obecnego stanu<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Generacyjne sieci antagonistyczne<\/strong><\/h2>\n\n\n\n<p>Mimo \u017ce pierwsze pr\u00f3by generowania obraz\u00f3w za pomoc\u0105 sztucznej inteligencji si\u0119gaj\u0105 lat 70-tych, przez dziesi\u0119ciolecia post\u0119p w tej dziedzinie by\u0142 niewielki. Dost\u0119pna moc obliczeniowa i ilo\u015b\u0107 danych by\u0142y ograniczone, a algorytmy zbyt proste i sztywne, aby poradzi\u0107 sobie z bardziej skomplikowanymi i realistycznymi obrazami. Jednak ta sytuacja zacz\u0119\u0142a si\u0119 zmienia\u0107 wraz z pojawieniem si\u0119 uczenia g\u0142\u0119bokiego i konwolucyjnych sieci neuronowych, kt\u00f3re z kolei po\u0142o\u017cy\u0142y fundament pod <strong>generacyjne sieci antagonistyczne<\/strong> (GAN, ang. generative adversarial networks).<\/p>\n\n\n\n<p>GAN-y stanowi\u0142y znacz\u0105cy prze\u0142om w dziedzinie generowania obraz\u00f3w za pomoc\u0105 sztucznej inteligencji. Ta architektura sieci neuronowej zosta\u0142a opracowana w 2014 roku przez Iana Goodfellowa i jego wsp\u00f3\u0142pracownik\u00f3w z Uniwersytetu w Montrealu. Sk\u0142ada si\u0119 z dw\u00f3ch sieci neuronowych \u2013 generatora i dyskryminatora, kt\u00f3re s\u0105 naprzemiennie trenowane. Sie\u0107 generatora uczy si\u0119 generowania syntetycznych danych, kt\u00f3re na\u015bladuj\u0105 rozk\u0142ad danych rzeczywistych, podczas gdy sie\u0107 dyskryminatora \u0107wiczy si\u0119 w rozr\u00f3\u017cnianiu mi\u0119dzy syntetycznymi danymi wytworzonymi przez generator, a danymi rzeczywistymi.<\/p>\n\n\n\n<p>Proces trenowania jest iteracyjny, a generator stara si\u0119 wyprodukowa\u0107 syntetyczne dane, kt\u00f3re b\u0119d\u0105 zdolne oszuka\u0107 dyskryminator, kt\u00f3ry z kolei poprawia swoj\u0105 zdolno\u015b\u0107 do rozr\u00f3\u017cniania mi\u0119dzy danymi rzeczywistymi i fa\u0142szywymi.<\/p>\n\n\n\n<p>Efektem ko\u0144cowym jest sie\u0107 generacyjna, zdolna wytwarza\u0107 syntetyczne dane wizualnie nie do odr\u00f3\u017cnienia od danych rzeczywistych. Ta og\u00f3lna metoda mo\u017ce by\u0107 stosowana nie tylko do syntezy obraz\u00f3w, ale tak\u017ce do innych zada\u0144, takich jak transfer stylu lub powi\u0119kszanie danych. Mo\u017ce by\u0107 stosowana poza dziedzin\u0105 wizualn\u0105, np. w syntezie muzyki.<\/p>\n\n\n\n<p>Metoda ta okaza\u0142a si\u0119 skuteczna w generowaniu wysokiej jako\u015bci obraz\u00f3w i zosta\u0142a wykorzystana w r\u00f3\u017cnych zastosowaniach, takich jak generowanie obraz\u00f3w twarzy, krajobraz\u00f3w i obiekt\u00f3w. Ponadto GAN-y zosta\u0142y dostosowane do innych zada\u0144, w tym generowania szczeg\u00f3\u0142owych obraz\u00f3w na podstawie szkic\u00f3w, transferowania stylu jednego obrazu na inny lub zamiany fragment\u00f3w obrazu na po\u017c\u0105dany obiekt.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/1-13.png\"><img decoding=\"async\" width=\"473\" height=\"356\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/1-13.png\" alt=\"Obrazek przedstawiaj\u0105cy samoch\u00f3d, wygenerowany przez sie\u0107 typu GAN\" class=\"wp-image-20719\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/1-13.png 473w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/1-13-300x226.png 300w\" sizes=\"(max-width: 473px) 100vw, 473px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 1 <a href=\"http:\/\/www.thisautomobiledoesnotexist.com\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Obrazek przedstawiaj\u0105cy samoch\u00f3d, wygenerowany przez sie\u0107 typu GAN<\/a><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Ograniczenia technologii GAN<\/strong><\/h3>\n\n\n\n<p>Jednak\u017ce, pomimo \u017ce GAN-y wykazuj\u0105 imponuj\u0105ce wyniki w generowaniu realistycznych obraz\u00f3w, istniej\u0105 pewne ograniczenia tej technologii. Jednym z nich jest niestabilna natura procesu uczenia. Struktura antagonistyczna sieci mo\u017ce prowadzi\u0107 do sytuacji, gdzie sie\u0107 generatora produkuje tylko ograniczony zbi\u00f3r danych, kt\u00f3re nie obejmuj\u0105 ca\u0142ego zakresu mo\u017cliwych wynik\u00f3w, skutkuj\u0105c brakiem r\u00f3\u017cnorodno\u015bci w wynikowych obrazach.<\/p>\n\n\n\n<p>Kolejnym problemem, na kt\u00f3ry GAN-y mog\u0105 by\u0107 szczeg\u00f3lnie podatne, jest nadmierne dopasowanie (overfitting), kiedy sie\u0107 generatora zapami\u0119tuje zbi\u00f3r treningowy, zamiast generalizowa\u0107 w celu produkcji nowych obraz\u00f3w. Dodatkowo, GAN-y mog\u0105 mie\u0107 trudno\u015bci z generowaniem obraz\u00f3w o wysokiej rozdzielczo\u015bci ze wzgl\u0119du na z\u0142o\u017cono\u015b\u0107 obliczeniow\u0105, cz\u0119sto wymagaj\u0105c znacznej ilo\u015bci czasu i mocy obliczeniowej do treningu. Ponadto, chocia\u017c istniej\u0105 przyk\u0142ady wersji GAN-\u00f3w umo\u017cliwiaj\u0105cych generowanie obraz\u00f3w na podstawie tekstu lub przetwarzania obrazu na obraz, wi\u0119kszo\u015b\u0107 implementacji zapewnia jedynie bardzo ograniczon\u0105 kontrol\u0119 nad procesem generowania, co utrudnia produkcj\u0119 konkretnych obiekt\u00f3w lub zmian\u0119 stylu generowanych obraz\u00f3w bez dodatkowej pracy lub dotrenowania ca\u0142ej sieci.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>DALL-E<\/strong><\/h2>\n\n\n\n<p>Aby przezwyci\u0119\u017cy\u0107 te ograniczenia, badacze eksplorowali nowe techniki i architektury do generowania obraz\u00f3w. Jednym z takich przyk\u0142ad\u00f3w jest DALL-E, opracowany przez OpenAI i wydany 5 stycznia 2021 roku. Model wykorzystuje wst\u0119pnie wytrenowany transformator generatywny (ang. Generative Pre-trained Transformer \u2013 GPT), kt\u00f3ry z kolei opiera si\u0119 na wcze\u015bniejszym modelu transformatora (transformer). Oba zosta\u0142y pierwotnie opracowane do zastosowa\u0144 w przetwarzaniu j\u0119zyka naturalnego.<\/p>\n\n\n\n<p>Transformator to architektura sieci neuronowej oparta na mechanizmie samouwagi (self-attention). W tradycyjnych sieciach neuronowych ka\u017cdy element wej\u015bciowy jest przetwarzany niezale\u017cnie, co mo\u017ce prowadzi\u0107 do trudno\u015bci w modelowaniu odleg\u0142ych zale\u017cno\u015bci. Mechanizm uwagi pozwala modelowi selektywnie skupi\u0107 si\u0119 na r\u00f3\u017cnych cz\u0119\u015bciach sekwencji wej\u015bciowej, umo\u017cliwiaj\u0105c mu uchwycenie z\u0142o\u017conych zale\u017cno\u015bci mi\u0119dzy s\u0142owami.<\/p>\n\n\n\n<p>Model transformatora sk\u0142ada si\u0119 z kodera i dekodera (oba s\u0105 z\u0142o\u017cone z wielu warstw samouwag i sieci neuronowych ze sprz\u0119\u017ceniem w prz\u00f3d (feedforward neural network)) oraz posiada du\u017ce zdolno\u015bci do zr\u00f3wnoleglania. Model ten osi\u0105ga najlepsze wyniki w wielu zadaniach przetwarzania j\u0119zyka naturalnego.<\/p>\n\n\n\n<p>Na bazie tej architektury OpenAI opracowa\u0142o, w 2018 roku, model wst\u0119pnie wytrenowanego transformatora generatywnego. <strong>GPT dzia\u0142a poprzez uczenie du\u017cej sieci neuronowej na ogromnych ilo\u015bciach danych tekstowych takich jak ksi\u0105\u017cki, artyku\u0142y i strony internetowe<\/strong>. Model u\u017cywa procesu zwanego uczeniem nienadzorowanym do identyfikowania wzorc\u00f3w i relacji w danych, bez jawnego podawania do modelu jak powinny one wygl\u0105da\u0107.<\/p>\n\n\n\n<p>Po wytrenowaniu, model jest zdolny do generowania nowego tekstu przez przewidywanie nast\u0119pnego s\u0142owa lub ich sekwencji na podstawie kontekstu z poprzednich s\u0142\u00f3w w zdaniu. Realizowane jest to za pomoc\u0105 procesu autoregresji, w kt\u00f3rym model generuje jedno s\u0142owo na raz, bazuj\u0105c na rozk\u0142adzie prawdopodobie\u0144stwa dla ka\u017cdego nast\u0119pnego s\u0142owa oraz bior\u0105c pod uwag\u0119 poprzednie.<\/p>\n\n\n\n<p>Oryginalny GPT zosta\u0142 rozszerzony w 2019 roku, a nast\u0119pnie ponownie w 2020 roku, co doprowadzi\u0142o do powstania GPT-3, u\u017cywaj\u0105cego 175 miliard\u00f3w parametr\u00f3w. Model ten sta\u0142 si\u0119 fundamentem dla DALL-E, kt\u00f3ry wykorzystuje jego wielomodaln\u0105 implementacj\u0119, zamieniaj\u0105c tekst na piksele. Posiada 12 miliard\u00f3w parametr\u00f3w i zosta\u0142 wytrenowany na parach tekst-obraz pozyskanych z Internetu.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img decoding=\"async\" width=\"256\" height=\"256\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/2-10.png\" alt=\"Obraz wytworzony przez DALL-E, przy u\u017cyciu podpowiedzi \u201ean armchair in the shape of an avocado\u201d (\u201efotel w kszta\u0142cie awokado\u201d). Obraz takiego fotela nie by\u0142 zawarty w oryginalnym zbiorze danych, na kt\u00f3rym wy\u0107wiczono algorytm\" class=\"wp-image-20721\" style=\"width:256px;height:256px\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/2-10.png 256w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/2-10-150x150.png 150w\" sizes=\"(max-width: 256px) 100vw, 256px\" \/><figcaption class=\"wp-element-caption\">Ryc. 2 <a href=\"https:\/\/openai.com\/research\/dall-e\" class=\"ek-link\" rel=\"nofollow\" >Obraz wytworzony przez DALL-E, przy u\u017cyciu podpowiedzi \u201ean armchair in the shape of an avocado\u201d (\u201efotel w kszta\u0142cie awokado\u201d). Obraz takiego fotela nie by\u0142 zawarty w oryginalnym zbiorze danych, na kt\u00f3rym wy\u0107wiczono algorytm<\/a><\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\"><\/div>\n<\/div>\n\n\n\n<p>DALL-E wykaza\u0142 imponuj\u0105ce wyniki w wielu zadaniach generowania obraz\u00f3w na podstawie wej\u015b\u0107 tekstowych. Poza prostym generowaniem pr\u00f3bek obraz\u00f3w r\u00f3\u017cnych obiekt\u00f3w, kt\u00f3re widzia\u0142 podczas treningu, model potrafi \u0142\u0105czy\u0107 r\u00f3\u017cne pomys\u0142y i niespokrewnione koncepcje w przekonuj\u0105cy spos\u00f3b, generuj\u0105c nawet obiekty, kt\u00f3re nie istniej\u0105 w \u015bwiecie fizycznym.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>CLIP<\/strong><\/h2>\n\n\n\n<p>Kolejnym wa\u017cnym krokiem w syntezie obraz\u00f3w za pomoc\u0105 sztucznej inteligencji, opr\u00f3cz DALL-E, by\u0142o opracowanie techniki kontrastywnego wst\u0119pnego uczenia j\u0119zykowo-obrazowego (ang. <strong>Contrastive Language-Image Pre-training<\/strong>). CLIP to model wyuczony na 400 milionach par obraz\u00f3w wraz podpisami tekstowymi, pozyskanymi z Internetu. Dzia\u0142anie modelu polega na uczeniu sieci neuronowej zar\u00f3wno na danych obrazowych, jak i tekstowych, aby umo\u017cliwi\u0107 modelowi zrozumienie zwi\u0105zku mi\u0119dzy dwiema modalno\u015bciami \u2013 <strong>jak opisy tekstowe odnosz\u0105 si\u0119 do tre\u015bci wizualnej obraz\u00f3w.<\/strong><\/p>\n\n\n\n<p>Podczas treningu model uczy si\u0119 kodowa\u0107 dane wej\u015bciowe obrazu i tekstu do wsp\u00f3lnej przestrzeni wektorowej, w kt\u00f3rej podobie\u0144stwo mi\u0119dzy obrazem a odpowiadaj\u0105cym mu opisem tekstu jest maksymalizowane, podczas gdy podobie\u0144stwo mi\u0119dzy obrazami a innymi nieistotnymi tekstami jest minimalizowane. Realizowane jest to za pomoc\u0105 kontrastywnej funkcji straty, kt\u00f3ra zach\u0119ca model do przyci\u0105gania wektor\u00f3w obrazu i tekstu, nale\u017c\u0105cych do tej samej pary obraz-opis, i oddalania wektor\u00f3w obrazu i tekstu, kt\u00f3re nie nale\u017c\u0105 do tej samej pary.<\/p>\n\n\n\n<p>W DALL-E, CLIP zosta\u0142 wykorzystany do oceny generowanych obraz\u00f3w pod wzgl\u0119dem trafno\u015bci opisu, w celu filtrowania pocz\u0105tkowego zestawu obraz\u00f3w i wyboru najbardziej odpowiednich wynik\u00f3w. Od tego czasu, <strong>CLIP sta\u0142 si\u0119 popularnym elementem wykorzystywanym w r\u00f3\u017cnych rozwi\u0105zaniach syntezy obraz\u00f3w<\/strong>, pe\u0142ni\u0105c rol\u0119 filtru i przewodnika w procesie generowania obraz\u00f3w.<\/p>\n\n\n\n<p>Pierwszym otwartym \u017ar\u00f3d\u0142owym rozwi\u0105zaniem wykorzystuj\u0105cym CLIP by\u0142 <strong>DeepDaze<\/strong>. Zosta\u0142 opracowany w styczniu 2021 roku przez Phila Wanga i \u0142\u0105czy\u0142 CLIP z sieci\u0105 neuronow\u0105 reprezentacji jawnej (implicit neural representation network) zwan\u0105 Siren. DeepDaze zyska\u0142 popularno\u015b\u0107 dzi\u0119ki swojej zdolno\u015bci do produkcji wizualnie osza\u0142amiaj\u0105cych i surrealistycznych obraz\u00f3w, kt\u00f3re cz\u0119sto <strong>przypominaj\u0105 krajobrazy niczym ze sn\u00f3w lub sztuk\u0119 abstrakcyjn\u0105<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" width=\"256\" height=\"256\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/3-10.png\" alt=\"\" class=\"wp-image-20724\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/3-10.png 256w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/3-10-150x150.png 150w\" sizes=\"(max-width: 256px) 100vw, 256px\" \/><figcaption class=\"wp-element-caption\">Ryc. 3<a aria-label=\" (opens in a new tab)\" href=\"https:\/\/github.com\/lucidrains\/deep-daze\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" > <\/a><a href=\"https:\/\/github.com\/lucidrains\/deep-daze\" class=\"ek-link\" rel=\"nofollow\" >\u201ca time traveler in the crowd\u201d (\u201cpodr\u00f3\u017cnik w czasie w t\u0142umie\u201d), wygenerowany przez DeepDaze<\/a><\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\"><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>BigSleep<\/strong><\/h3>\n\n\n\n<p>Kilka dni p\u00f3\u017aniej ten sam programista, przy pomocy modeli opracowanych przez badacza Ryana Murdocka, opracowa\u0142 kolejny model generatywny uczenia maszynowego o nazwie BigSleep. Model dzia\u0142a poprzez po\u0142\u0105czenie CLIP z BigGAN \u2013 systemem opracowanym przez badaczy z Google, kt\u00f3ry wykorzystuje wariant architektury GAN do generowania obraz\u00f3w o wysokiej rozdzielczo\u015bci z losowych wektor\u00f3w szumu. BigSleep wykorzystuje wyniki BigGAN do znalezienia obraz\u00f3w o wysokim wyniku nadawanym przez CLIP. Nast\u0119pnie model stopniowo dostosowuje wej\u015bcie szumu w generatorze BigGAN, a\u017c wygenerowane obrazy b\u0119d\u0105 odpowiada\u0142y danemu zapytaniu.<\/p>\n\n\n\n<p>Wed\u0142ug Ryana Murdocka, BigSleep by\u0142 pierwszym modelem, kt\u00f3ry m\u00f3g\u0142 generowa\u0107 r\u00f3\u017cnorodne poj\u0119cia i obiekty o wysokiej jako\u015bci w rozdzielczo\u015bci 512 x 512 pikseli. Podczas gdy poprzednie prace, cho\u0107 daj\u0105ce imponuj\u0105ce wyniki, cz\u0119sto by\u0142y ograniczone do obraz\u00f3w o ni\u017cszej rozdzielczo\u015bci i bardziej powszechnych obiekt\u00f3w.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/4-7.png\"><img decoding=\"async\" width=\"480\" height=\"480\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/4-7.png\" alt=\"\u201cballoons over the ruins of a city\u201d (\u201cbalony nad ruinami miasta\u201d) wytworzony przez BigSleep\" class=\"wp-image-20725\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/4-7.png 480w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/4-7-300x300.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/4-7-150x150.png 150w\" sizes=\"(max-width: 480px) 100vw, 480px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 4 <a href=\"https:\/\/github.com\/lucidrains\/big-sleep\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >\u201cballoons over the ruins of a city\u201d (\u201cbalony nad ruinami miasta\u201d) wytworzony przez BigSleep<\/a><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The VQGAN-CLIP<\/strong><\/h2>\n\n\n\n<p>Model BigSleep zainspirowa\u0142 inny wariant po\u0142\u0105czenia CLIP-GAN. Jedynie trzy miesi\u0105ce p\u00f3\u017aniej, w kwietniu 2021 roku, badaczka Katherine Crowson opracowa\u0142a model VQGAN-CLIP. VQGAN (<strong>generacyjna sie\u0107 antagonistyczna z kwantyzacj\u0105 wektor\u00f3w<\/strong> \u2013 ang. Vector Quantized Generative Adversarial Network) to wariant architektury generacyjnych sieci antagonistycznych, kt\u00f3ry jest zdolny do wytwarzania obraz\u00f3w wysokiej jako\u015bci przez kodowanie ich jako dyskretne wpisy s\u0142ownika kod\u00f3w, co umo\u017cliwia bardziej efektywne szkolenie i lepsz\u0105 jako\u015b\u0107 obrazu w por\u00f3wnaniu z tradycyjnymi modelami GAN.<\/p>\n\n\n\n<p>VQGAN-CLIP wykorzystuje multimodalny enkoder z CLIP do oceny podobie\u0144stwa par (tekst, obraz) i przekazuje go z powrotem przez sie\u0107 do przestrzeni ukrytej (tj. przestrzeni abstrakcyjnych reprezentacji obraz\u00f3w) generatora obraz\u00f3w VQGAN. Poprzez iteracyjne powtarzanie tego procesu, kandydat na wygenerowany obraz jest dostrajany, a\u017c stanie si\u0119 bardziej podobny do docelowego tekstu.<\/p>\n\n\n\n<p>Model umo\u017cliwia\u0142 nie tylko generowanie nowych obraz\u00f3w, ale tak\u017ce manipulowanie ju\u017c istniej\u0105cymi, poprzez podanie opisu tekstowego po\u017c\u0105danej. Ta architektura by\u0142a wa\u017cnym krokiem w rozwoju modeli tekst-obraz, oferuj\u0105c wytwarzanie i manipulowanie obraz\u00f3w wysokiej jako\u015bci, dok\u0142adno\u015b\u0107 semantyczn\u0105 mi\u0119dzy tekstem a obrazem oraz efektywno\u015b\u0107, nawet podczas generowania niespotykanych tre\u015bci. Podej\u015bcie oparte na otwartym rozwoju i badaniach przyczyni\u0142o si\u0119 do szybkiego sukcesu tej architektury w \u015bwiecie rzeczywistym, kiedy niezale\u017cni tw\u00f3rcy rozszerzyli j\u0105 na inne modalno\u015bci i zastosowania komercyjne.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Modele dyfuzyjne<\/strong><\/h2>\n\n\n\n<p>Podej\u015bcie badawcze oparte na \u0142\u0105czeniu CLIP z innymi architekturami rozwija\u0142o si\u0119 dalej. W czerwcu 2021 roku autorka VQGAN-CLIP opublikowa\u0142a kolejne dzie\u0142o, \u0142\u0105cz\u0105c kontrastywne wst\u0119pne uczenie j\u0119zykowo-obrazowe z algorytmem dyfuzji, aby stworzy\u0107 model \u201edyfuzji kierowanej CLIP-em\u201d (ang. CLIP Guided Diffusion).<\/p>\n\n\n\n<p>Algorytmy dyfuzji to rodzina probabilistycznych metod generowania obraz\u00f3w, opartych na symulowaniu zachowania cz\u0105stek dyfunduj\u0105cych przez o\u015brodek. Dane obrazowe mo\u017cna przekszta\u0142ci\u0107 do jednorodnego rozk\u0142adu przez dodanie losowego szumu. Algorytm dyfuzji stopniowo degraduje struktur\u0119 obrazu poprzez dodawanie szumu, a\u017c pozostanie tylko losowy szum.<\/p>\n\n\n\n<p>W uczeniu maszynowym celem jest <strong>nauczenie procesu odwr\u00f3conej dyfuzji<\/strong> \u2013 znalezienie parametr\u00f3w procesu, kt\u00f3ry iteracyjnie przekszta\u0142ca losowy szum z powrotem w sp\u00f3jny obraz. Proces rekonstrukcji jest uwarunkowany pewnym rodzajem sygna\u0142u kieruj\u0105cego.<\/p>\n\n\n\n<p><strong>Jak dzia\u0142a algorytm?<\/strong><\/p>\n\n\n\n<p>W og\u00f3lnym zarysie, algorytm dzia\u0142a w nast\u0119puj\u0105cy spos\u00f3b:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Algorytm inicjalizuje dane szumem, kt\u00f3ry jest generowany losowo \u2013 zwykle z rozk\u0142adu Gaussa o \u015bredniej zero i wariancji jednostkowej.<\/li>\n\n\n\n<li>Ten sygna\u0142 szumu jest u\u017cywany jako stan pocz\u0105tkowy procesu dyfuzji, a cz\u0105stki reprezentuj\u0105ce po\u0142o\u017cenie pikseli obrazu, s\u0105 pobierane z tej pocz\u0105tkowej dystrybucji.<\/li>\n\n\n\n<li>Dyfuzja cz\u0105stek jest symulowana jako sekwencja krok\u00f3w czasowych, a w ka\u017cdym z nich po\u0142o\u017cenia cz\u0105stek s\u0105 aktualizowane na podstawie regu\u0142y probabilistycznej, kt\u00f3ra modeluje dyfuzj\u0119.<\/li>\n\n\n\n<li>Proces jest warunkowany sygna\u0142em kieruj\u0105cym \u2013 obrazem lub tekstem.<\/li>\n\n\n\n<li>Sygna\u0142 jest wykorzystywany do zwracania dyfuzji w kierunku generowania obrazu odpowiadaj\u0105cego po\u017c\u0105danym cechom.<\/li>\n\n\n\n<li>Krok dyfuzji i kierowanie s\u0105 powtarzane przez ustalon\u0105 liczb\u0119 iteracji. W miar\u0119 post\u0119pu procesu, cz\u0105stki staj\u0105 si\u0119 bardziej skupione w obszarach, kt\u00f3re odpowiadaj\u0105 sygna\u0142owi kieruj\u0105cemu.<\/li>\n\n\n\n<li>Po zako\u0144czeniu procesu dyfuzji, ko\u0144cowe po\u0142o\u017cenia cz\u0105stek s\u0105 przekszta\u0142cane na obraz za pomoc\u0105 dekodera sieci neuronowej.<\/li>\n\n\n\n<li>Opcjonalnie, podejmowane s\u0105 dodatkowe kroki przetwarzania, takie jak korekcja kolor\u00f3w lub usuwanie szum\u00f3w, aby poprawi\u0107 jako\u015b\u0107 obrazu.<\/li>\n<\/ul>\n\n\n\n<p>W CLIP Guided Diffusion autorka wykorzysta\u0142a dyfuzj\u0119 kierowan\u0105 (Guided Diffusion) \u2013 implementacj\u0119 algorytmu dyfuzji stworzon\u0105 przez badaczy z OpenAI, kt\u00f3ra sterowana jest przez sygna\u0142 dostarczony z CLIP. W tej architekturze model CLIP jest wykorzystywany do pozyskania zestawu obraz\u00f3w, kt\u00f3re odpowiadaj\u0105 wprowadzonemu na wej\u015bcie tekstowi, a nast\u0119pnie obrazy te s\u0105 u\u017cywane jako sygna\u0142 kieruj\u0105cy dla modelu Guided Diffusion. U\u017cytkownik mo\u017ce tak\u017ce dostarczy\u0107 dodatkowe ograniczenia dla po\u017c\u0105danego obrazu, takie jak rozdzielczo\u015b\u0107 lub paleta kolor\u00f3w.<\/p>\n\n\n\n<p>Model Guided Diffusion generuje nast\u0119pnie sekwencj\u0119 wektor\u00f3w szumu, kt\u00f3re s\u0105 stopniowo ulepszane, aby wygenerowa\u0107 obraz, kt\u00f3ry pasuje do sygna\u0142u kieruj\u0105cego, dostarczonego przez CLIP. Model iteracyjnie aktualizuje wektory szumu, poprzez warunkowanie ich na poprzednim wektorze szumu, sygnale kieruj\u0105cym dostarczonym przez CLIP oraz losowym szumie dyfuzyjnym. Wynikowe wektory szumu s\u0105 nast\u0119pnie przekszta\u0142cane w obraz za pomoc\u0105 dekodera sieci neuronowej.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Zalety i wady CLIP Guide Diffusion<\/strong><\/h3>\n\n\n\n<p>Algorytm CLIP Guided Diffusion zademonstrowa\u0142 zdolno\u015b\u0107 do generowania wysokiej jako\u015bci obraz\u00f3w o realistycznych teksturach i drobnych detalach, kt\u00f3re s\u0105 trudne do osi\u0105gni\u0119cia przy u\u017cyciu innych modeli generatywnych. Co wa\u017cniejsze, jest on r\u00f3wnie\u017c wysoce sterowalny, pozwalaj\u0105c u\u017cytkownikom na generowanie obraz\u00f3w, kt\u00f3re odpowiadaj\u0105 okre\u015blonym stylom lub cechom okre\u015blonym przez tekst. Model ten ma zdolno\u015b\u0107 do wykonywania szerokiego zakresu zada\u0144 generowania obraz\u00f3w, w tym edycji, syntezy oraz manipulacji obraz\u00f3w.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5.jpg\"><img decoding=\"async\" width=\"1024\" height=\"512\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5-1024x512.jpg\" alt=\"Obrazy wytworzone przez jedn\u0105 z implementacji modelu CLIP Guided Diffusion, dla podpowiedzi \u201eA woman standing in a park\u201d (\u201ekobieta stoj\u0105ca w parku\u201d)\" class=\"wp-image-20728\" style=\"width:838px;height:419px\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5-1024x512.jpg 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5-300x150.jpg 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5-768x384.jpg 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/5.jpg 1100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 5 <a href=\"https:\/\/github.com\/nerdyrodent\/CLIP-Guided-Diffusion\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Obrazy wytworzone przez jedn\u0105 z implementacji modelu CLIP Guided Diffusion, dla podpowiedzi \u201eA woman standing in a park\u201d (\u201ekobieta stoj\u0105ca w parku\u201d)<\/a><\/figcaption><\/figure>\n\n\n\n<p>To odkrycie doprowadzi\u0142o do eksplozji zainteresowania generowaniem obraz\u00f3w, rozprzestrzeniaj\u0105c wiedz\u0119 na temat tej technologii w\u015br\u00f3d jeszcze wi\u0119kszej publiczno\u015bci. Nied\u0142ugo po modelu Crowson pojawi\u0142o si\u0119 Disco Diffusion \u2013 popularny notatnik w Google Colab, kt\u00f3ry wykorzystywa\u0142 CLIP Guided Diffusion, zapewniaj\u0105c \u0142atwy w u\u017cyciu interfejs oraz mnogo\u015b\u0107 mo\u017cliwo\u015bci konfiguracji procesu. Narz\u0119dzie to szybko sta\u0142o si\u0119 popularne w\u015br\u00f3d artyst\u00f3w i entuzjast\u00f3w sztucznej inteligencji, kt\u00f3rzy otrzymali jeszcze \u0142atwiejszy i wygodniejszy dost\u0119p do technologii wcze\u015bniej dost\u0119pnej tylko dla pracownik\u00f3w du\u017cych firm technologicznych.<\/p>\n\n\n\n<p>Jednym z wad modeli dyfuzyjnych jest ich wysokie zapotrzebowanie na moc obliczeniow\u0105 podczas treningu i inferencji, ale nast\u0119pne odkrycie mia\u0142o to zmieni\u0107.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Rozw\u00f3j technologii<\/strong><\/h2>\n\n\n\n<p>W grudniu 2021 roku grupa naukowc\u00f3w z grupy CompVis na uniwersytecie LMU w Monachium zaprezentowa\u0142a swoj\u0105 wersj\u0119 popularnej techniki, nazywaj\u0105c j\u0105 dyfuzj\u0105 ukryt\u0105 (ang. Latent Diffusion). Ten algorytm oferowa\u0142 bardziej wydajn\u0105 alternatyw\u0119 dla klasycznych modeli dyfuzyjnych.<\/p>\n\n\n\n<p>Zamiast dzia\u0142a\u0107 na oryginalnym obrazie, proces dyfuzji by\u0142 przeprowadzany w ramach skompresowanej reprezentacji obrazu, zwanej przestrzeni\u0105 ukryt\u0105. Dzi\u0119ki dzia\u0142aniu w tej przestrzeni, algorytm m\u00f3g\u0142 odtworzy\u0107 obraz, minimalizuj\u0105c obci\u0105\u017cenie obliczeniowe. Dodatkowo, algorytm by\u0142 wszechstronny pod wzgl\u0119dem typ\u00f3w danych wej\u015bciowych, zdolny do pracy z ich r\u00f3\u017cnymi rodzajami, w tym z obrazami i tekstem.<\/p>\n\n\n\n<p>Jako pierwszy krok, pierwotny obraz jest kodowany do przestrzeni ukrytej, gdzie najwa\u017cniejsze informacje s\u0105 ekstrahowane i reprezentowane w mniejszej podprzestrzeni. Ten proces jest analogiczny do redukcji rozmiaru poprzez decymacj\u0119, co pozwala zachowa\u0107 istotne cechy obrazu przy jednoczesnym zmniejszeniu jego rozmiaru. Nast\u0119pnie, ten sam proces jest stosowany do dowolnych wej\u015b\u0107 kondycjonuj\u0105cych, takich jak tekst lub dodatkowe obrazy, kt\u00f3re s\u0105 \u0142\u0105czone z aktualn\u0105 reprezentacj\u0105 obrazu za pomoc\u0105 mechanizmu uwagi.<\/p>\n\n\n\n<p>Mechanizm ten uczy si\u0119 optymalnego \u0142\u0105czenia wej\u015b\u0107 i wej\u015b\u0107 kondycjonuj\u0105cych w przestrzeni ukrytej. Po\u0142\u0105czone wej\u015bcia s\u0105 nast\u0119pnie u\u017cywane jako pocz\u0105tkowy szum dla procesu dyfuzji, kt\u00f3ry zachodzi w podprzestrzeni ukrytej. Ostatecznie, obraz jest odtwarzany za pomoc\u0105 dekodera, kt\u00f3ry mo\u017cna uzna\u0107 za odwr\u00f3cenie kroku kodowania.<\/p>\n\n\n\n<p><strong>Latent Diffusion okaza\u0142o si\u0119 zdolne do generowania wysokiej jako\u015bci obraz\u00f3w \u2013 r\u00f3\u017cnorodnych oraz realistycznych<\/strong>. Pozwala\u0142o na tworzenie przyk\u0142ad\u00f3w zar\u00f3wno prostych, jak i z\u0142o\u017conych, zawieraj\u0105cych du\u017c\u0105 ilo\u015b\u0107 szczeg\u00f3\u0142\u00f3w. By\u0142a to elastyczna i skalowalna architektura modelu, zdolna do trenowania na du\u017cych zbiorach danych, co pozwoli\u0142o na popraw\u0119 dok\u0142adno\u015bci i zdolno\u015bci do generalizacji. Architektura ta sta\u0142a si\u0119 to wa\u017cnym krokiem w rozwoju modeli generuj\u0105cych obrazy na podstawie tekstu.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-style-default\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6.jpg\"><img decoding=\"async\" width=\"1024\" height=\"329\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6-1024x329.jpg\" alt=\"Podpowiedzi i wynikowe obrazy otrzymane przy u\u017cyciu modelu Latent Diffusion\" class=\"wp-image-20730\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6-1024x329.jpg 1024w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6-300x96.jpg 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6-768x246.jpg 768w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/6.jpg 1421w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 6 <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/github.com\/CompVis\/latent-diffusion\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" ><\/a><a href=\"https:\/\/github.com\/CompVis\/latent-diffusion\" class=\"ek-link\" rel=\"nofollow\" >Podpowiedzi i wynikowe obrazy otrzymane przy u\u017cyciu modelu Latent Diffusion<\/a><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Gor\u0105czka generowania obraz\u00f3w<\/strong><\/h2>\n\n\n\n<p>Modele AI do generowania obraz\u00f3w na podstawie tekstu zrobi\u0142y w ostatnich latach du\u017cy post\u0119p, ale a\u017c do 2022 roku pozostawa\u0142y stosunkowo ograniczone. Wiele wcze\u015bniejszych modeli wymaga\u0142o du\u017cej mocy obliczeniowej, zw\u0142aszcza w fazie treningu. Oznacza\u0142o to, \u017ce cz\u0119sto by\u0142y one uczone na mniejszych zbiorach danych, przez co interesowali si\u0119 nimi g\u0142\u00f3wnie badacze. Niekt\u00f3re interesuj\u0105ce technologie by\u0142y dost\u0119pne poprzez notatniki Google Colab, umo\u017cliwiaj\u0105ce \u0142atwe wykonywanie kodu na sprz\u0119cie dost\u0119pnym w chmurze, ale ta metoda nadal wymaga\u0142a pewnej wiedzy technicznej, co ogranicza\u0142o popularno\u015b\u0107 technologii.<\/p>\n\n\n\n<p>W 2022 roku zacz\u0119\u0142o si\u0119 to zmienia\u0107, gdy pojawi\u0142y si\u0119 nowe aplikacje zapewniaj\u0105ce wygodne interfejsy dla modeli opartych g\u0142\u00f3wnie na jakiej\u015b implementacji modelu dyfuzji.<\/p>\n\n\n\n<p>W marcu, niezale\u017cne laboratorium badawcze MidJourney uruchomi\u0142o otwart\u0105 bet\u0119 swojej aplikacji, umo\u017cliwiaj\u0105cej dost\u0119p do generowania wysokiej jako\u015bci obraz\u00f3w w artystycznym stylu poprzez <strong>chatbota dost\u0119pnego w aplikacji Discord<\/strong>. Us\u0142uga wymaga p\u0142atno\u015bci za dalsze korzystanie, jednak pozwala nowym u\u017cytkownikom na wygenerowanie ograniczonej liczby obraz\u00f3w za darmo.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image aligncenter size-full is-resized caption-align-center has-mobile-text-align-center has-ek-indent\" style=\"--ek-indent:20px\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/7-5.png\"><img decoding=\"async\" width=\"250\" height=\"250\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/7-5.png\" alt=\"\u201cMechaniczna go\u0142\u0119bica\u201d (w oryginale \u201eMechanical dove\u201d) stworzona przy u\u017cyciu algorytmu MidJourney w wersji V4\" class=\"wp-image-20732\" style=\"width:188px;height:188px\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/7-5.png 250w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/7-5-150x150.png 150w\" sizes=\"(max-width: 250px) 100vw, 250px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 7 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Midjourney\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >\u201cMechaniczna go\u0142\u0119bica\u201d (w oryginale \u201eMechanical dove\u201d) stworzona przy u\u017cyciu algorytmu MidJourney w wersji V4<\/a><\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<p>Wkr\u00f3tce potem, w kwietniu, uruchomiono kolejn\u0105 du\u017c\u0105 us\u0142ug\u0119 generacji obraz\u00f3w. Dotychczas dost\u0119pne tylko dla ograniczonej liczby odbiorc\u00f3w, stworzone przez OpenAI \u2013 DALL-E 2 zosta\u0142o otwarte dla wszystkich. Podobnie jak w przypadku MidJourney, wymaga ono zakupu kredyt\u00f3w, kt\u00f3re mo\u017cna wykorzysta\u0107 do generowania, cho\u0107 oferuje ma\u0142\u0105 ilo\u015b\u0107 odnawiaj\u0105cych si\u0119 co miesi\u0105c, darmowych, ale nie kumuluj\u0105cych si\u0119 punkt\u00f3w.<\/p>\n\n\n\n<p>DALL-E 2 zosta\u0142 stworzony poprzez wytrenowanie sieci neuronowej na parach obraz-opis. Model nie tylko potrafi rozpoznawa\u0107 obiekty i \u0142\u0105czy\u0107 opisy tekstowe z obrazami, ale tak\u017ce rozumie relacje mi\u0119dzy nimi. Podobnie jak wiele innych modeli, wykorzystuje algorytm dyfuzji w procesie syntezy obrazu.<\/p>\n\n\n\n<p>DALL-E 2 wykorzystuje CLIP do uczenia si\u0119 po\u0142\u0105cze\u0144 mi\u0119dzy semantyk\u0105 tekstu opisuj\u0105cego obraz a jego reprezentacj\u0105 wizualn\u0105, koduj\u0105c obraz do przestrzeni reprezentacji. Nast\u0119pnie zmodyfikowana wersja jednego z poprzednich modeli OpenAI, zwana GLIDE, jest wykorzystywana do odwr\u00f3cenia procesu kodowania obrazu, aby stochastycznie dekodowa\u0107 wektory wytworzone przez CLIP. Pomaga to tworzy\u0107 wariacje w stosunku do oryginalnego obrazu lub tekstu, kt\u00f3re mimo r\u00f3\u017cnic, nadal zachowuj\u0105 najwa\u017cniejsze cechy podanego wej\u015bcia.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-4 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:20%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<figure class=\"wp-block-image aligncenter size-full\"><img decoding=\"async\" width=\"480\" height=\"480\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/8-4.png\" alt=\"\" class=\"wp-image-20735\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/8-4.png 480w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/8-4-300x300.png 300w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/8-4-150x150.png 150w\" sizes=\"(max-width: 480px) 100vw, 480px\" \/><figcaption class=\"wp-element-caption\">Ryc. 8 <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/openai.com\/product\/dall-e-2\" target=\"_blank\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >\u201cAn astronaut riding a horse in photorealistic style.\u201d (\u201cAstronauta jad\u0105cy na koniu w stylu foto realistycznym.\u201d), wygenerowany przez DALL-E<\/a><a href=\"https:\/\/github.com\/lucidrains\/deep-daze\" class=\"ek-link\" rel=\"nofollow\" >(\u201cpodr\u00f3\u017cnik w czasie w t\u0142umie\u201d), wygenerowany przez DeepDaze<\/a><\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:20%\"><\/div>\n<\/div>\n\n\n\n<p>DALL-E 2 przewy\u017csza swojego poprzednika w kwestii fotorealizmu i podobie\u0144stwa do opisu wej\u015bciowego. Opr\u00f3cz osi\u0105gni\u0119\u0107 wydajno\u015bciowych, oferuje dodatkowe funkcje poza prost\u0105 syntez\u0105 tekstu-obraz, takie jak:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>inpainting (generowanie okre\u015blonych obiekt\u00f3w i \u0142\u0105czenie ich w wi\u0119ksze obrazy),<\/li>\n\n\n\n<li>outpainting (tworzenie wizualnie sp\u00f3jnych rozszerze\u0144 obrazu wej\u015bciowego),<\/li>\n\n\n\n<li>tworzenie wariacji obraz\u00f3w wej\u015bciowych.<\/li>\n<\/ul>\n\n\n\n<p>Warto r\u00f3wnie\u017c wspomnie\u0107 o implementacji opensource DALL-E o nazwie Craiyon (wcze\u015bniej DALL-E Mini, przemianowanej z powodu sporu prawnego z OpenAI), stworzonej przez niezale\u017cnego programist\u0119 i in\u017cyniera uczenia maszynowego \u2013 Borisa Daym\u0119. Nie by\u0142 on w stanie dor\u00f3wna\u0107 jako\u015bci oryginalnej architektury DALL-E, ale zdoby\u0142 pewn\u0105 popularno\u015b\u0107 poza spo\u0142eczno\u015bci\u0105 AI dzi\u0119ki memom internetowym, ze wzgl\u0119du na cz\u0119sto komiczne wyniki generowane przez model.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/9-4.png\"><img decoding=\"async\" width=\"403\" height=\"480\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/9-4.png\" alt=\"Przyk\u0142adowy obraz wytworzony przez Craiyon\" class=\"wp-image-20736\" style=\"width:403px;height:480px\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/9-4.png 403w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/9-4-252x300.png 252w\" sizes=\"(max-width: 403px) 100vw, 403px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 9 <a href=\"https:\/\/i.kym-cdn.com\/photos\/images\/newsfeed\/002\/383\/050\/4da.png\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Przyk\u0142adowy obraz wytworzony przez Craiyon<\/a><\/figcaption><\/figure>\n\n\n\n<p>W pierwszej po\u0142owie 2022 roku poza dwoma du\u017cymi aplikacjami, pojawi\u0142o si\u0119 wiele innych ciekawych projekt\u00f3w. W maju Google og\u0142osi\u0142 swoj\u0105 aplikacj\u0119 do generowania obraz\u00f3w \u2013 Imagen, maj\u0105c\u0105 konkurowa\u0107 z DALL-E, a w czerwcu opublikowa\u0142 kolejny model do generowania obraz\u00f3w na podstawie tekstu \u2013 Parti. Warto r\u00f3wnie\u017c wspomnie\u0107 o publikacjach Microsoftu \u2013 NUWA i NUWA Infinity. Ka\u017cda z tych architektur przynios\u0142a interesuj\u0105ce wyniki i proponowa\u0142a nowe odmiany wcze\u015bniej opracowanych technik. Niestety, \u017cadna z nich nie jest dost\u0119pna do testowania dla szerszej publiczno\u015bci, a ich szczeg\u00f3\u0142owy opis wykracza poza zakres tego artyku\u0142u.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Rozkwit Stabilnej Dyfuzji<\/strong><\/h2>\n\n\n\n<p>To wszystko sprowadza nas do lipca 2022 roku i wydania modelu, kt\u00f3ry zyska\u0142 najwi\u0119ksz\u0105 popularno\u015b\u0107 \u2013 Stabilnej Dyfuzji (ang. Stable Diffusion). Model zosta\u0142 opracowany przez t\u0119 sam\u0105 grup\u0119 naukowc\u00f3w, kt\u00f3rzy wcze\u015bniej pracowali nad modelem Latent Diffusion. Dzi\u0119ki wi\u0119kszemu zestawowi danych treningowych i usprawnieniom w strukturze projektu, Stable Diffusion przewy\u017csza swojego poprzednika zar\u00f3wno pod wzgl\u0119dem jako\u015bci obraz\u00f3w, jak i zakresu mo\u017cliwo\u015bci. Do warunkowania syntezy obraz\u00f3w w modelu Stable Diffusion wykorzystywany jest \u201ezamro\u017cony\u201d enkoder tekstu CLIP ViT-L\/14 wpleciony w architektur\u0119 modelu i wyuczony na <a href=\"https:\/\/laion.ai\/blog\/laion-5b\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >zestawie danych LAION-2B<\/a>, zawieraj\u0105cym 2,32 miliarda par obraz-tekst w j\u0119zyku angielskim.<\/p>\n\n\n\n<p>Mimo swojego rozmiaru, ta technika jest stosunkowo smuk\u0142a po procesie treningu, wykorzystuj\u0105c 860-milionowy model UNet i 123-milionowy model kodera tekstu (w por\u00f3wnaniu np. do 3,5-miliardowego modelu DALL-E 2). Pocz\u0105tkowo wymaga\u0142a ona karty graficznej z co najmniej 10 GB VRAM, ale najnowsze optymalizacje zmniejszy\u0142y ilo\u015b\u0107 wymaganej pami\u0119ci do zaledwie 6 GB, a niekt\u00f3rzy u\u017cytkownicy zg\u0142aszali, \u017ce udaje im si\u0119 przeprowadza\u0107 inferencj\u0119 na kartach Nvidia zaledwie z 4 GB VRAM.<\/p>\n\n\n\n<p>W bezpo\u015brednim por\u00f3wnaniu z DALL-E 2 lub MidJourney, wyniki uzyskiwane za pomoc\u0105 Stable Diffusion mog\u0105 czasami wydawa\u0107 si\u0119 gorsze, ale darmowy dost\u0119p i otwarty kod \u017ar\u00f3d\u0142owy tego rozwi\u0105zania oznacza, \u017ce przy odpowiednim dostrojeniu wej\u015b\u0107 tekstowych i odrobinie cierpliwo\u015bci, syntetyczne obrazy w najlepszej mo\u017cliwej jako\u015bci s\u0105 \u0142atwo dost\u0119pne dla ka\u017cdego.<\/p>\n\n\n\n<p>Co wi\u0119cej, elastyczno\u015b\u0107 i skalowalno\u015b\u0107 architektury pozwoli\u0142y na modyfikowanie oryginalnego modelu przez dostosowywanie go do mniejszych zbior\u00f3w danych. Umo\u017cliwia to tworzenie specjalistycznych modeli do generowania obraz\u00f3w w okre\u015blonym stylu i wytwarzania po\u017c\u0105danych scen, obiekt\u00f3w lub ludzi. Dzi\u0119ki nowym technikom dalej upraszczaj\u0105cym ten proces (takim jak Dreambooth czy LoRA, kt\u00f3re umo\u017cliwiaj\u0105 stosunkowo szybkie dostrajanie) dodawanie pojedynczych koncepcji do modelu przy u\u017cyciu niewielkich zbior\u00f3w danych, nawet kilkudziesi\u0119ciu, jest prostsze. Od momentu jego wydania zainteresowanie Stable Diffusion eksplodowa\u0142o do gigantycznych rozmiar\u00f3w.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><a href=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/10-3.png\"><img decoding=\"async\" width=\"320\" height=\"480\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/10-3.png\" alt=\"Obrazek wytworzony przez Stable Diffusion \" class=\"wp-image-20738\" style=\"width:319px;height:479px\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/10-3.png 320w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/10-3-200x300.png 200w\" sizes=\"(max-width: 320px) 100vw, 320px\" \/><\/a><figcaption class=\"wp-element-caption\">Ryc. 10 <a href=\"https:\/\/stablediffusionweb.com\/prompts\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\" rel=\"nofollow\" >Obrazek wytworzony przez Stable Diffusion<\/a><\/figcaption><\/figure>\n\n\n\n<p>Na dzie\u0144 dzisiejszy, istnieje wiele sposob\u00f3w na uruchomienie tego modelu, w\u0142\u0105czaj\u0105c w to aplikacje internetowe, boty na Discordzie oraz notatniki na Google Colab, wymieniaj\u0105c tylko niekt\u00f3re z mo\u017cliwo\u015bci opartych o technologie chmurowe. Ponadto, istnieje wiele darmowych aplikacji opensource, kt\u00f3re dostarczaj\u0105 interfejs dla tego modelu, co pozwala ka\u017cdemu na \u0142atwe korzystanie z jego licznych funkcji na w\u0142asnym sprz\u0119cie.<\/p>\n\n\n\n<p>Dzi\u0119ki nowym funkcjom i dodatkowym modelom dostarczanym zar\u00f3wno przez innych badaczy, jak i spo\u0142eczno\u015b\u0107 niezale\u017cnych programist\u00f3w, Stable Diffusion otworzy\u0142 szerok\u0105 bram\u0119 kreatywno\u015bci, wprowadzaj\u0105c nas <strong>w now\u0105 er\u0119 \u0142atwego i powszechnie dost\u0119pnego generowania obraz\u00f3w <\/strong>przy pomocy sztucznej inteligencji.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/sii.pl\/oferty-pracy\/all\/it-ai-machine-learning\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"737\" height=\"170\" src=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-7.jpg\" alt=\"oferty pracy\" class=\"wp-image-29755\" srcset=\"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-7.jpg 737w, https:\/\/sii.pl\/blog\/wp-content\/uploads\/2024\/12\/praca-k-7-300x69.jpg 300w\" sizes=\"(max-width: 737px) 100vw, 737px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Podsumowanie<\/strong><\/h2>\n\n\n\n<p>Historia wytwarzania obraz\u00f3w z zastosowaniem sztucznej inteligencji to fascynuj\u0105ca podr\u00f3\u017c przez dziesi\u0119ciolecia bada\u0144 prowadzonych na ca\u0142ym \u015bwiecie. Jest to opowie\u015b\u0107 pe\u0142na ci\u0119\u017ckiej pracy naukowej, wsp\u00f3\u0142pracy i nieoczekiwanych wynalazk\u00f3w. Od wczesnych algorytm\u00f3w proceduralnych, poprzez generacyjne sieci antagonistyczne, syntezy mi\u0119dzydomenowej przetwarzania j\u0119zyka naturalnego i generowania obraz\u00f3w przez CLIP i GPT, do prze\u0142om\u00f3w zapewnianych przez modele dyfuzyjne, technologia ta stanowi dow\u00f3d na to, jak szybko post\u0119p mo\u017cna osi\u0105gn\u0105\u0107, gdy naukowcy i in\u017cynierowie <strong>mog\u0105 swobodnie i otwarcie korzysta\u0107 z pracy innych<\/strong>, nieustannie buduj\u0105c na fundamentach osi\u0105gni\u0119\u0107 swoich poprzednik\u00f3w i ci\u0105gle przesuwaj\u0105c do przodu granice ludzkiej pomys\u0142owo\u015bci.<\/p>\n\n\n\n<p>Ze swoim ogromnym potencja\u0142em, technologia SI wytwarzaj\u0105ce obrazy zd\u0105\u017cy\u0142a ju\u017c zaskarbi\u0107 sobie zar\u00f3wno oddanych wielbicieli, jak i zagorza\u0142ych przeciwnik\u00f3w. Wielu grafik\u00f3w i artyst\u00f3w, czuj\u0105c oburzenie faktem, \u017ce ich dzie\u0142a s\u0105 wykorzystywane do szkolenia modeli AI, kt\u00f3re mog\u0105 podwa\u017cy\u0107 zatrudnienie w ich zawodzie, postanowi\u0142o zaprotestowa\u0107 lub nawet pozwa\u0107 firmy stoj\u0105ce za tymi rozwi\u0105zaniami. Inne organizacje aktywnie pracuj\u0105 nad integracj\u0105 tej technologii w swoich procesach i budowaniem nowych, zasilanych ni\u0105 rozwi\u0105za\u0144.<\/p>\n\n\n\n<p>Jak dok\u0142adnie ta kontrowersja rozegra si\u0119 w przysz\u0142o\u015bci, jest jeszcze nieznane, ale jedno jest pewne \u2013 syntezowanie obraz\u00f3w z wykorzystaniem AI dysponuje potencja\u0142em, aby rewolucjonizowa\u0107 sztuk\u0119, przemys\u0142&#8230; a mo\u017ce i ca\u0142e spo\u0142ecze\u0144stwo.<\/p>\n\n\n\n<p>***<br>Je\u015bli interesuje Ci\u0119 tematyka AI, polecamy r\u00f3wnie\u017c <a href=\"https:\/\/sii.pl\/blog\/all\/ai\/\" target=\"_blank\" aria-label=\" (opens in a new tab)\" rel=\"noreferrer noopener\" class=\"ek-link\">inne artyku\u0142y naszych ekspert\u00f3w<\/a>.<\/p>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-left kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;left&quot;,&quot;id&quot;:&quot;21085&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;12&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;4.7&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;11&quot;,&quot;greet&quot;:&quot;&quot;,&quot;legend&quot;:&quot;4.7\\\/5 ( votes: 12)&quot;,&quot;size&quot;:&quot;18&quot;,&quot;title&quot;:&quot;Kr\u00f3tka historia SI w generowaniu obraz\u00f3w&quot;,&quot;width&quot;:&quot;130.8&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} ( {votes}: {count})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 130.8px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 11px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 18px; height: 18px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 14.4px;\">\n            4.7\/5 ( votes: 12)    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Czy kiedykolwiek marzy\u0142e\u015b o tym, \u017ceby fizycznie przedstawi\u0107 obraz, kt\u00f3ry sobie wyobrazi\u0142e\u015b? By m\u00f3c pokaza\u0107 go innym ludziom nie za &hellip; <a class=\"continued-btn\" href=\"https:\/\/sii.pl\/blog\/krotka-historia-si-w-generowaniu-obrazow\/\">Continued<\/a><\/p>\n","protected":false},"author":496,"featured_media":20743,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_editorskit_title_hidden":false,"_editorskit_reading_time":14,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","inline_featured_image":false,"footnotes":""},"categories":[1316],"tags":[1685,1546,680,681],"class_list":["post-21085","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development-na-miekko","tag-tools-2","tag-przeglad-narzedzi","tag-ai","tag-sztuczna-inteligencja"],"acf":[],"aioseo_notices":[],"republish_history":[],"featured_media_url":"https:\/\/sii.pl\/blog\/wp-content\/uploads\/2023\/03\/A-brief-history-of-AI-powered-image-generation.jpg","category_names":["Development na mi\u0119kko"],"_links":{"self":[{"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/posts\/21085"}],"collection":[{"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/users\/496"}],"replies":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/comments?post=21085"}],"version-history":[{"count":3,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/posts\/21085\/revisions"}],"predecessor-version":[{"id":29758,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/posts\/21085\/revisions\/29758"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/media\/20743"}],"wp:attachment":[{"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/media?parent=21085"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/categories?post=21085"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sii.pl\/blog\/wp-json\/wp\/v2\/tags?post=21085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}