Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
С этой моделью связана весьма курьёзная история. В июне 2022 г. аспирант из Техасского университета в Остине Яннис Дарас и его научный руководитель Александрос Димакис опубликовали статью под названием «Обнаружение скрытого словаря DALLE-2» [Discovering the Hidden Vocabulary of DALLE-2] [2851] . Именно это исследование стало источником для очередной шумихи — соцсети и жёлтая онлайн-пресса заполнились заголовками, кричащими о том, что «нейросеть создала свой язык» (никогда не было, и вот опять!).
2851
Daras G., Dimakis A. G. (2022). Discovering the Hidden Vocabulary of DALLE-2 // https://arxiv.org/abs/2206.00169
Во вступительной части статьи Дарас и Димакис пишут буквально следующее: «Мы обнаружили, что DALLE-2, похоже, обладает скрытым словарём, который можно использовать для создания изображений по абсурдным запросам. Например, оказывается, что «Apoploe vesrreaitais» означает птиц, а «Contarra ccetnxniams luryca tanniounons» (в ряде случаев) означает насекомых или вредителей. Мы обнаружили, что эти подсказки обычно консистентны по отдельности, но иногда и в сочетании (авторы имеют в виду, что использование в запросах этих слов по отдельности, а иногда и вместе приводит к появлению на изображении сходных объектов. — С. М.). Мы представляем наш blackbox-метод [2852] для
2852
* Blackbox-методы или методы «чёрного ящика» — обобщённое название методов, которые анализируют тот или иной объект лишь через взаимодействие с ним, не заглядывая в его внутреннее устройство.
Даже самым современным моделям трудно справиться с генерацией картинок, содержащих достаточно длинные надписи. Если вы попросите сеть изобразить надпись длиннее 4–5 букв, то, скорее всего, получите её с ошибкой, а чаще и вовсе тарабарщину [gibberish text] — вас ждут выглядящие случайными последовательности букв или буквоподобных символов. Большая часть людей на этой стадии просто пожмёт плечами — ну что же, технологии пока несовершенны… Но наши бравые парни из Техаса не таковы! Дарас и Димакис погрузились в анализ генерируемой тарабарщины. Например, на запрос «two farmers talking about vegetables, with subtitles» [два фермера разговаривают об овощах, с субтитрами] DALL·E 2 сгенерировала изображение беседующих фермеров с парой блоков текста, написанного на слегка искажённой латинице. В верхнем блоке можно прочитать частично обрезанное «Vavcopinitegoos vicootes», а в нижнем — немного размытое «Apoploe vesrreaitais». Эти несуществующие слова исследователи затем использовали при составлении новых запросов к модели. Оказалось, что по запросу «vicootes» DALL·E 2 обычно генерирует что-то отдалённо напоминающее овощи, а в ответ на запрос «Apoploe vesrreaitais» чаще всего выдаёт изображения птиц. Дарас и Димакис предположили, что фермеры на созданной нейросетью картинке обсуждают птиц, вредящих овощам.
Аналогичный трюк исследователи проделали с запросом «two whales talking about food, with subtitles» [два кита разговаривают о еде, с субтитрами]. Изображение, сгенерированное нейросетью по этому запросу, действительно содержит изображение двух мирно беседующих китов, а виднеющиеся на картинке тарабарские «субтитры» можно прочитать как «wa ch zod ahaakes rea». Если эту фразу использовать в качестве запроса, то нейросеть генерирует картинки, на которых изображена жареная рыба, приготовленные креветки и моллюски в ракушках.
По утверждению Дараса и Димакиса, комбинация в запросе «выдуманных» нейросетью выражений также приводит к получению вполне определённых результатов. Так, в ответ на «Apoploe vesrreaitais eating Contarra ccetnxniams luryca tanniounons» DALL·E 2 генерирует изображения птиц, поедающих нечто похожее на насекомых.
Впрочем, исследователи достаточно осторожны в своих выводах. Например, в статье они нигде не утверждают, что нейросеть создала новый язык. Речь идёт только о некотором наборе выражений, словаре, каждый элемент которого сеть ассоциирует с определёнными визуальными образами. Также Дарас и Димакис отмечают, что изобретённый ими способ работает не всегда. Иногда использование в качестве запроса сгенерированного моделью текста приводит к появлению случайных изображений. Однако исследователи обнаружили, что «…с помощью некоторых экспериментов (выбора нескольких слов, запуска различных подготовленных текстов и т. д.) мы обычно можем найти слова, которые выглядят как случайные, но коррелируют с некоторой визуальной концепцией (по крайней мере в некоторых контекстах)». Также они отмечают, что воспроизводимость результатов существенно хуже, чем в случае запросов на английском языке, скорее речь идёт о частотной корреляции. К примеру, запрос «Contarra ccetnxniams luryca tanniounons» создаёт изображения насекомых лишь примерно в половине случаев, в прочих же случаях на сгенерированных картинках оказываются чаще всего различные животные. Запрос «Apoploe vesrreaitais» ещё менее устойчив и, помимо птиц, часто приводит к генерации картинок с летающими насекомыми [2853] .
2853
Костенков А. (2022). Нейросеть DALL-E 2 создала собственный язык: правда, не совсем, и совсем не? / Habr, 18 июня 2022 // https://habr.com/ru/companies/ruvds/articles/672046/
Вдохновившись этими результатами, исследователи поделились радостью с читателями твиттера. Именно тут Яннис Дарас неосторожно употребил словосочетание «тайный язык» [2854] . Журналисты и блогеры тут же развили эту идею — теперь это был уже не просто «тайный язык», а тайный язык, который учёные не могут расшифровать (и на котором нейросети, видимо, уже сговариваются между собой о том, чтобы свергнуть ненавистное ярмо человеческого гнёта).
Отчасти проверке результатов Дараса и Димакиса мешал тот факт, что доступ к DALL·E 2 получило лишь небольшое количество избранных пользователей. Кроме того, сами авторы, по сути, основывали свои утверждения всего на нескольких примерах, и было неясно, насколько масштабным был наблюдаемый эффект. Говоря о частотных корреляциях, авторы не приводили никаких численных оценок, что вызывало ещё больше вопросов. Вскоре появилась критика исследования от других людей, в том числе от тех, кто также получил доступ к модели. Результаты авторов воспроизводились не полностью, например запрос «Apoploe vesrreaitais eating Contarra ccetnxniams luryca tanniounons», кроме птиц с пойманными насекомыми, регулярно приводил к появлению на сгенерированных картинках овощей и пожилых женщин [2855] . Подробный разбор выполнил в своём твиттере [2856] известный специалист по машинному обучению из Германии Йоша Бах.
2854
Daras G. (2022). / Twitter, 31 мая 2022 // https://twitter.com/giannis_daras/status/1531693093040230402
2855
Quach K. (2022). No, OpenAI's image-making DALL·E 2 doesn't understand some secret language / The Register, 7 Jun 2022 // https://www.theregister.com/2022/06/07/in_brief_ai/
2856
Bach J. (2022). / Twitter, 31 мая 2022 // https://twitter.com/Plinz/status/1531711345585860609
Итак, что же произошло на самом деле? В основе DALL·E 2 лежит трансформерная нейросеть, которая в процессе обучения учится сопоставлению изображений текстам. Однако подобно тому, как GPT-сети в силу имеющихся ограничений не могут пока в полной мере справиться со структурой естественного языка, DALL·E 2 не может до конца «постичь» связь между текстом в запросе и визуальным воплощением текста на картинке. Работает это в лучшем случае только со сравнительно короткими текстами и отдельными символами [2857] , [2858] . Не говоря уже о ситуации, когда модель просят не просто изобразить на картинке заданный текст, а ещё и выдумать этот текст. Всё, что мы получаем в итоге, — это галлюцинации: что-то, что напоминает текст с точки зрения представлений модели, но текстом как таковым не является. Всё, что модель смогла выучить о тексте, — что это последовательность зрительных образов, напоминающих буквы. Она даже выучила отдельные буквы, но более высокоуровневые операции с ними ей просто неподвластны. Модель пытается изобразить на картинке текст, но в результате сочетание буквоподобных символов практически каждый раз получается разным (из-за того, что на старте диффузионной генерации используется случайный шум). Если бы Дарас и Димакис повторили генерацию изображений с китами или фермерами сотню раз, то, скорее всего, получили бы сотню разных «текстов». Даже если вы попросите современную генеративную модель нарисовать картинку с определённым текстом, то начиная с некоторой длины этого текста многие генерации будут содержать текст с ошибками — с заменой или исчезновением отдельных букв или даже с добавлением новых, а иногда в тексте будут и вовсе возникать несуществующие буквы.
2857
* Создатели моделей для генерации изображений стремятся улучшить эту ситуацию: например, запущенный в августе 2023 г. сервис Ideogram способен справиться с визуализацией небольших предложений. В основе сервиса лежит диффузионная генеративная модель, в создании которой принимали участие разработчики нейросети Imagen. Появившаяся в октябре 2023 г. DALL·E 3 также продемонстрировала весьма значительный прогресс в задаче визуализации текстов.
2858
Norouzi M., Chan W., Ho J., Saharia C., Abdullah S., Lei J., Lu J. (2023). Announcing Ideogram AI // https://ideogram.ai/launch
Интереснее вопрос, а что же рисуют модели, получив на вход несуществующие слова? Увы, у модели нет опции ответить на ваш запрос
Впрочем, в каком-то смысле говорить о наличии у моделей собственного языка можно. В конце концов текстовый кодировщик превращает текст на естественном языке в некоторое внутреннее представление, которое уже определённо не похоже на человеческий язык, хотя и содержит в себе информацию, достаточную для синтеза соответствующего визуального образа. Кроме того, в процессе обучения нейросеть выучивает вполне однозначные преобразования, позволяющие получить это внутреннее представление из текста на естественном языке. И для одного и того же текста мы всегда будем получать одно и то же внутреннее представление (это и придаёт некоторую стабильность изображениям, возникающим по запросам с несуществующими словами). Однако в полной мере называть языком внутренние представления нейросетей, предназначенных для генерации изображений по тексту, нельзя. Ведь они являются специфичными для конкретной сети, а значит, такой «язык» никак не может выполнять одну из основных функций настоящего языка — коммуникативную.
И всё-таки модели, научившиеся в ходе обучения связывать человеческий язык и визуальные образы, — удивительное достижение современных технологий. И диффузионные трансформерные модели стали очень важным шагом вперёд не только с точки зрения улучшения качества генерации изображений, но и с точки зрения развития мультимодальных систем в целом.
Вообще с конца 2021 г. начинается настоящий бум диффузионных моделей для генерации изображений. Именно в ходе него появляются открытая модель StableDiffusion [2859] от компании StabilityAI (и множество её клонов), уже упоминавшаяся нами модель GLIDE, а также DALL·E 2 [2860] и DALL·E 3 [2861] от OpenAI, Imagen [2862] от Google, целых шесть версий (V1, V2, V3, V4, V5, V5.1) Midjourney [2863] , [2864] от Midjourney Inc., Matryoshka от Meta [2865] , IF [2866] от лаборатории DeepFloyd в StabilityAI, наши, сберовские модели Kandinsky 2.0 [2867] , Kandinsky 2.1 [2868] , [2869] и Kandinsky 2.2 [2870] . Именно развитие диффузионных моделей привело к настоящей революции визуального генеративного искусства, серьёзно повлиявшей на креативную индустрию. За 2022 и первую половину 2023 г. при помощи генеративных моделей по текстовым запросам было создано около 15 млрд изображений (для сравнения: с появления первой фотографии в 1826 г. и до 15-миллиардной прошло почти 150 лет) [2871] . В результате в наши дни уже трудно найти человека, который не в курсе изобразительных способностей машин. На базе генеративных моделей быстро стали появляться различные инструменты, позволяющие цифровым художникам решать самые разные прикладные задачи, да и сами генеративные сети стали «обрастать» новыми режимами работы. Например, при помощи Stable Diffusion, Midjourney и Kandinsky вы можете не только создать новое изображение, но и дорисовать существующее. Сеть может на основе текстового запроса в режиме «врисовка» [inpainting] дорисовать содержимое вырезанной части изображения, в режиме «обрисовка» [outpainting] продолжить ваше изображение за пределы холста, в режиме «смешивание» [blending] смешать в заданной пропорции два изображения или же существующее изображение со сгенерированным по текстовому описанию. Созданы и более хитрые инструменты, такие как, например, смешивание с сохранением геометрии объектов исходного изображения (для этого используются вспомогательные нейросети из семейства ControlNet [2872] ). Революция в области генеративной графики не могла не привлечь внимание крупных компаний, разрабатывающих инструменты для работы с изображениями. Так, компания Adobe добавила в свой графический редактор Photoshop новые функции, основанные на нейросетевых моделях (например, функцию генеративной заливки [generative fill]) [2873] .
2859
Rombach R., Blattmann A., Lorenz D., Esser P., Ommer B. (2021). High-Resolution Image Synthesis with Latent Diffusion Models // https://arxiv.org/abs/2112.10752
2860
Quach K. (2022). No, OpenAI's image-making DALL·E 2 doesn't understand some secret language / The Register, 7 Jun 2022 // https://www.theregister.com/2022/06/07/in_brief_ai/
2861
OpenAI (2023). DALL·E 3 system card // https://openai.com/research/dall-e-3-system-card
2862
Saharia C., Chan W., Saxena S., Li L., Whang J., Denton E., Ghasemipour S. K. S., Ayan B. K., Mahdavi S. S., Lopes R. G., Salimans T., Ho J., Fleet D. J., Norouzi N. (2022). Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding // https://arxiv.org/abs/2205.11487
2863
Midjourney LLC (2022). Midjourney Documentation // https://docs.midjourney.com/v1/en
2864
Vincent J. (2022). ‘An engine for the imagination’: the rise of AI image generators. An interview with Midjourney founder David Holz. / The Verge, Aug 2, 2022 // https://www.theverge.com/2022/8/2/23287173/ai-image-generation-art-midjourney-multiverse-interview-david-holz
2865
Gu J., Zhai S., Zhang Y., Susskind J., Jaitly N. (2023). Matryoshka Diffusion Models // https://arxiv.org/abs/2310.15111
2866
Shonenkov A., Konstantinov M., Bakshandaeva D., Schuhmann C., Ivanova K., Klokova N. (2023). IF by DeepFloyd Lab at StabilityAI // https://github.com/deep-floyd/IF
2867
Разжигаев А. (2022). Kandinsky 2.0 — первая мультиязычная диффузия для генерации изображений по тексту. / Habr, 23 ноя 2022 // https://habr.com/ru/companies/sberbank/articles/701162/
2868
Razzhigaev A., Shakhmatov A., Maltseva A., Arkhipkin V., Pavlov I., Ryabov I., Kuts A., Panchenko A., Kuznetsov A., Dimitrov D. (2023). Kandinsky: an Improved Text-to-Image Synthesis with Image Prior and Latent Diffusion // https://arxiv.org/abs/2310.03502
2869
Кузнецов А. (2022). Kandinsky 2.1, или Когда +0,1 значит очень много. / Habr, 4 апр 2023 // https://habr.com/ru/companies/sberbank/articles/725282/
2870
Димитров Д. (2023). Kandinsky 2.2 — новый шаг в направлении фотореализма / Habr, 12 июля 2023. // https://habr.com/ru/companies/sberbank/articles/747446/
2871
Valyaeva A. (2023). AI Has Already Created As Many Images As Photographers Have Taken in 150 Years. Statistics for 2023 / Everypixel Journal, 15.08.2023 // https://journal.everypixel.com/ai-image-statistics
2872
Zhang L., Agrawala M. (2023). Adding Conditional Control to Text-to-Image Diffusion Models // https://arxiv.org/abs/2302.05543
2873
Adobe (2023). Generative Fill // https://www.adobe.com/products/photoshop/generative-fill.html