| |
---|
Berlin City Landscape, Oil Painting - Stable Diffusion | Pastel Drawing of a Man and a Woman Standing in front of the Sea at Sunset, Kissing - Stable Diffusion |
Нейрогенеративные модели
В последние месяцы особенно бурно стали развиваться нейросетевые модели, способные генерировать изображения по текстовому запросу - т.н. модели text-to-image. Первая такая очень серьезная модель - DALL-E от OpenAI - появилась в январе 2021 г., DALL-E 2 был представлен в апреле 2022 г., и примерно в то же время вышла аналогичная модель от Google - Imagen. Обе модели являются скорее закрытыми, поскольку веса публично не доступны, и возможности их использования ограничиваются сервисами, которые в настоящее время предоставляются в рамках закрытого бета-тестирования.
Однако наибольшую популярность получила сеть Midjourney, которая в последнее время наделала много шума в публичном пространстве. Её особенностью является большая артистическая направленность, что во многом является следствием использованного для обучения датасета. Однако, с точки зрения доступности, она также не является свободной.
| |
---|
dark abandoned city, with yellow street lights and hopeless people on the street, trending on artstation | by Midjourney |
Параллельно с закрытыми генеративными сетями активно развиваются и открытые модели, веса которых выпускаются в свободный доступ. До недавнего времени одним из самых популярных подходов оставался VQGAN+CLIP, описанный в этой статье, и основанный на модели сопоставления текста и изображения CLIP, веса которой OpenAI сделал доступными.
A pilot in front of his plane - VQGAN+CLIP
Коллеги из Sber/SberDevices и AIRI обучили русскоязычный аналог DALL-E - ruDALL-E, которая генерирует изображение по русскоязычным запросам. Что прекрасно - эти модели также распространяются свободно.
Cats, generated by ruDALL-E
21 августа произошло важное событие для нейрогенеративного искусства - в открытый доступ были выложены веса самой последней генеративной модели Stable Diffusion от Stability.AI
Stable Diffusion
В этой заметке я не буду останавливаться на принципах работы Stable Diffusion - скажу только, что она включила в себя лучшие идеи от Imagen (использование замороженных весов в текстовой модели) и предыдущего поколения моделей Latent Diffusion. Генерация картинки происходит во внутреннем латентном представлении, и затем внутреннее представление переводится в целевое изображение 512x512 пискелей. По сравнению с предыдущими моделями, генерация требует меньше времени, ресурсов, и даёт отличный результат. Сама модель была обучена на открытом датасете LAION.
Мне удалось получить доступ к ранним этапам обучения модели Stable Diffusion, и соответственно подготовить для вас небольшой экскурс по её возможностям, с примерами.
| |
---|
Oil Portrait of Young Male Teacher of Computer Science - VQGAN | Watercolor Painting of Young Female Teacher of Computer Science - Stable Diffusion |
Как видно из примера, Stable Diffusion даёт результат совершенно другого уровня, по сравнению с моделями типа VQGAN+CLIP. Именно поэтому выход модели Stable Diffusion в свободный доступ является, по моему мнению, исключительно важным событием.
Как говорят создатели Stable Diffusion, наконец-то мы получили в своё распоряжение модель, которая знает очень много об изображениях вообще. Например, модель знает в лицо большинство известных актёров (кроме моей любимой Франки Потенте):
| | | |
Oil Portrait of Harrison Ford | Watercolor Portrait of Scarlett Johansson | Pastel Drawing of Jared Leto | Pencil Drawing of Benedict Cumberbatch |
Как мы видим из этого примера, модель также может убедительно создавать изображения в различных художественных техниках: масло, пастель, акварель, карандашный набросок. Но и это не предел - она хорошо повторяет стили конкретных художников:
| | | |
---|
Edvard Munch | Pablo Picasso | Salvador Dali | Van Gogh |
В примере выше использовался запрос large city landscape by + имя художника.
Сеть также знает основные достопримечательности мировых столиц:
| | | |
---|
Seattle, Pencil Sketch by Stable Diffusion | Paris, Oil by Stable Diffusion | Moscow, Watercolor by Stable Diffusion | London, Oil Painting by Stable Diffusion |
Наконец, интересно посмотреть, как Stable Diffusion представляет себе абстрактные понятия, такие как любовь или одиночество:
| | |
---|
An abstract concept of love, cubism | An abstract concept of loneliness | Separation, in the style of impressionism |
Как попробовать?
Самый простой способ попробовать Stable Diffusion - это инструмент Dream Studio, который разрабатывается Stability.AI. Пока в нём присутствует только возможность генерации, но скоро обещают и другие (например, inpainting). Из плохого - количество доступных генераций ограничено.
Похожий инструмент для нейрогенерации, который включает в себя сразу несколько моделей - это Night Cafe. Помимо собственно генерации, Вы можете также обмениваться результатами с сообществом и участвовать в обсуждениях.
Те же, кто не пугается Python и Pytorch - добро пожаловать в Colab Notebook!
Применимость нейрогенерации
Один из первых вопросов, который возникает, когда вы получаете в свои руки такой мощный инструмент, как нейрогенерация - ну и что? Как и где можно применить такой инструмент?
Конечно, возникает соблазн начать генерировать много красивых картинок, печатать их на холсте и продавать на блошином рынке. Или же, примазываясь к способностям нейросети, выдавать такие произведения за свои работы, устраивать выставки. Однако не слишком ли всё просто?
На время отложим вопрос о том, является ли творчество нейросети искусством, и можно ли заработать на созданых нейросетью картинах. Подумаем, что ещё, кроме “дешевых картин”, может нам дать нейрогенерация:
- Элемент случайности, или нейрогенерация для вдохновения. Подобно тому, как художники вдохновляются случайными каплями краски или случайным размытием мокрой акварели, нейросеть может обеспечить нам элемент случайности, поскольку основная задача нейросети - это случайным образом скомбинировать паттерны, извлеченные ей из датасета в процессе обучения. Кроме того, иногда сеть может выдать неожиданные результаты - как в примере ниже, когда вместо треугольного рта на фото получились красные непонятные края. Такой неожиданный поворот может дать новое направление мысли художника.
| |
---|
Scary photo of a man with mouth wide open in the form of big circle | Scary photo of a man with his mouth in the form of a equilateral triangle |
- Исполнение рисовательного заказа. Иногда, идея художественного произведения лежит не столько в плоскости исполнения, сколько в комбинировании понятий и формировании интересного посыла зрителю. В этом случае конкретное художественное исполнение работы оказвается не столь важным, и можно без зазрения совести поручить этот процесс ИИ. Как пример, можно привести создание фрагментов изображения для рекламного баннера, или генерация персонажей разных национальностей для сайта международного события.
| |
- Одним из вариантов вдохновения является массовый просмотр нейрогенеративного контента, который может быть сгенерирован, в том числе, в ответ на запросы других пользователей. Это сильно расширяет сознание и способно дать нам недостающие идеи, сформировать мысли, которые мы затем будем выражать традиционным способом.
- Использовать нейрогенерацию как отправную точку, совершенствуя изображение традиционными цифровыми инструментами и редакторами. Так мы можем точнее передать изначальную идею, и стать по-настоящему соавторами цифрового произведения, объединив свои идеи с “идеями” нейросети.
- Использовать нейрогенерацию как один из этапов творчества, создавая задуманное произведение и постепенно двигаясь к нему с помощью нейрогенерации. В этом помогают такие возможности, как inpainting (возможность перерисовать фрагмент изображения), image-to-image (когда по наброску, показывающему общую композицию, и текстовому запросу создаётся детализированное изображение), или же исследование латентного пространства для поиска более удачных образов.
- Нейрогенерация для обучения. Поскольку генеративные сети обладают знаниями о стилях разных художников, а также о различных художественных техниках, мы можем использовать это в процессе обучения, создавая примеры “на лету”. Нейросеть может взять привычные предметы и изобразить их в различных стилях, облегчая восприятие и делая обучение более интерактивным.
Вам наверняка приходят в голову другие варианты использования нейрогенерации! Делитесь ими в комментариях!
Кстати, по-прежнему интересным остаётся вопрос прав на полученные произведения. В то время как владельцы закрытых сетей (например, OpenAI) оставляют все права на произведения за собой, результаты творчества Stable Diffusion распространяются по лицензии The CreativeML OpenRAIL M, которая оставляет права (и ответственность) за контент на создателе, но в явном виде запрещает некоторые виды использования нейрогенерации.
Искусство формулировки запросов
Несмотря на кажущуюся простоту процесса, для достижения хорошего результата как правило недостаточно дать короткий запрос вроде “a girl”. В примере ниже видно, как мы можем приближаться к желаемому результату, делая запрос всё более подробным:
| | |
---|
A Girl | Portrait of a Beautiful Girl | A Beautiful European Girl with Long Blond Hair and Blue Eyes, Unreal Engine, Trending on Artstation |
Несмотря на то, что нейросеть способна воспроизводить множество базовых действий, некоторые визуальные эффекты очень сложно получить, поскольку у нейросети не хватает воображения. Иными словами - она никогда не видела похожих паттернов в обучающей выборке. Примером того может служить человек с треугольным ртом из приведённого ранее примера.
Чтобы получить действительно классный результат, скорее всего, придётся сформулировать несколько текстовых запросов, при этом используя ряд специальных приёмов для достижения требуемого художественного эффекта. Вот часто используемые приёмы при формулировании запросов:
- Явное указание стиля: watercolor portrait of Bill Gates, или Bill Gates, oil on canvas
- Указание конкретного художника: portrait of Bill Gates, by Pablo Picasso - гид по художникам в Stable Diffusion
- Задание даты/временного периода: Bill Gates watching schematic plan of IBM PC Personal Computer, old photo, 1960s
- Задание различных модификаторов: sepia, matte, high detail и др. - гид по модификаторам
- Задание дополнительных модификаторов, связанных со спецификой обучающих данных, например Unreal Engine, trending on artstation, 8k и др.
Помимо параметров запроса, можно устанавливать различные параметры генерации:
- Размерность изображения. Stable Diffusion тренировалась на изображениях размером 512x512, но для генерации можно задавать другие размеры. Однако следует иметь в виду, что сеть стремится заполнить всю поверхность изображения значимыми деталями, поэтому, например, портрет, растянутый по горизонтали, будет скорее всего содержать в себе несколько человек.
- Число шагов диффузии. Небольшое число шагов ведёт обычно к меньшей детализации и проработанности, и иногда это выглядит неплохо. Но, в целом, чем больше шагов - тем лучше. Примеры
- Параметр Guidance Scale (он же cfg scale), который, грубо говоря, показывает, насколько точно надо следовать текстовому запросу. Меньшее значение параметра даёт сети больше свободы, изображения получаются более согласованными, но менее точно соответствующими запросу. Точное сответствие запросу иногда приводит в курьезным ситуациям.
Может ли ИИ творить искусство?
Ранее, около 2 лет назад, я задавался этим вопросм в моей заметке про ИИ и искусство. С тех пор процесс создания работ сильно упростился. Если раньше от художника требовалось собрать датасет художественных произведений, отобранных по определённому принципу, обучить генеративно-состязательную нейросеть для создания чего-то похожего, и потом жестко отобрать несколько лучших работ из сотни сгенерированных изображений - то сейчас практически на любой текстовый запрос с помощью Stable Diffusion или Midjourney мы получаем относительно неплохой результат.
Называть ли искусством то, что было создано за несколько минут в ответ на только что пришедшую в голову идею - вопрос спорный. Если придерживаться критерия, что искусство - это то, за что платят, то вряд ли мы увидим существенный спрос на тысячи и миллионы сгенерированных картин, стремительно наводняющих сейсчас инфопространство в ответ на появление Midjourney и Stable Diffusion.
Настоящее нейроискусство создается совместно человеком и искусственным интеллектом. По мере того, как искусственный интеллект берёт на себя всё больше работы, человеку необходимо задуматься, какую дополнительную ценность он может привнести. Без вложенного в произведение труда мы не можем почувствовать настоящее удовлетворение, и вряд ли можем считать такое произведение по-настоящему своим.
Другой способ посмотреть на ну же проблему с другой стороны - это подумать, как интегрировать нейрогенерацию в свой творческий процесс. Но нужно помнить про соблюдение баланса.
При использовании моделей text-to-image, даже если изображение далее никак не обрабатывается и не преобразуется, важная роль человека состоит в следующем:
- Придумать основную идею произведения. Искусство создаётся для того, чтобы сделать некоторое заявление миру и произвести на зрителей эмоциональное воздействие, которое усилит это заявление и заставит к нему прислушаться. Только человек, обладая волей, стремлением к творчеству и потребностью к самовыражению, может определять, что сказать миру. У нейросети нет потребности в самовыражении.
| | | |
Люди и роботы - Дмитрий Сошников с помощью Stable Diffusion |
- Сформулировать текстовый запрос - об этом мы уже писали выше.
- Отобрать лучшие результаты в соответствии с некоторыми критериями прекрасного, которые есть только у человека. Несмотря на то, что исследователи собирают данные о том, какие произведения у людей “резонируют” и вызывают отклик, пока что формализовать понятие прекрасного, или даже построить классификатор - затруднительно.
- Продумать позиционирование работы и то, как она будет представлена миру. Сгенерированная “в стол” работа, которую увидит мало человек - не слишком ценна. Разве что её когда-нибудь потом найдут потомки и будут восхищаться, но на это не стоит слишком рассчитывать.
Однако, простая генерация изображения по запросу - это не так интересно, и во многих случаях мы будем наблюдать нейрохудожников, которые на основе нейрогенерации создают заранее задуманное произведение, используя техники inpainting, image-to-image, генерации видео (прекрасный пример - это Voyage through Time) или исследуя латентное пространство для создания перетекающих образов.
Примерно так же, как фотография в своё время потеснила классический портрет, открыв дорогу множеству других креативных направлений в живописи, нейрогенерация должна подтолкнуть нас к поиску новых форм и идей.
Новые формы восприятия нейроискусства
Какие новые формы творчества или восприятия этого творчества появятся в связи с нейрогенеративным искусством - пока сказать сложно. Но я хочу поделиться некоторыми соображениями.
Чтобы насладиться традиционным искусством, мы приходим в музеи и галереи. Они выполняют роль коллективного фильтра, показывая нам лучшие произведения, которые были отобраны кураторами, аукционами и ценителями. Цифровой характер нейросгенерированных произведений позволяет использовать другие механизмы курирования. Кроме того, поскольку сгенерировать изображение существенно “дешевле”, мы сталкиваемся в существенно большим объемом изображений.
Первоначально генеративные модели открывались заинтересованным исследователям через Discord-сообщества, в которых можно было запустить генерацию с помощью бота. Например, у Stable Diffusion в сообществе было более 40 каналов, в каждом из которых можно было наблюдать почти непрерывный поток изображений, сгенерированных по запросу участников. Это позволило создателям сети увидеть и оценить запросы сообщества, а также посмотреть, как сеть ведёт себя на множестве разноформатных запросов.
Потоки нейрогенерации
Находясь в таком сообществе в качестве участника я отметил, что созерцание непрерывного потока изображений очень вдохновляет! В отличие от музея, где мы можем увидеть сравнительно небольшой объем работ, за каждой из которых стоит великий автор и история, в нейрогенеративном чате мы видим непрерывный поток работ, цена создания каждой из которых невысока, но это не делает такие работы неинтересными - в них по-прежнему часто содержатся некоторые оригинальные идеи, или, по крайней мере, подсказки, на которые наш мозг реагирует своими идеями или эмоциями.
Если поход в музей можно сравнить с посещением ресторана с тщательно подобранными блюдами и вином, то созерцание потока нейрогенерации - со шведским столом, в котором присутствуют вперемешку блюда разных стран, плюс 20 видов шипучей газировки.
В то время как потоки в чатах носят сравнительно хаотичный характер, можно представить себе тематические нейрогенеративные потоки, которые подчинены некоторой логике. Можно устраивать “поточные выставки”, чтобы каким-то образом ограничить или курировать работы, поместив их в некоторые тематические рамки.
Интеграция нейрогенерации в арт-объекты
Очевидно, что нейрогенерация может выступать как составная часть некоторого арт-объекта, в котором текстовый запрос формируется некоторым специальным способом. В качестве гипотетического примера можем представить себе систему, которая на основании анализа аккаунта пользователя в социальных сетях строит его словесный портрет, который затем скармливается генеративной нейронке для получения визуального социально-сетевого портрета.
Нейрогенеративные вечеринки
Наверное не секрет, что зритель сильнее эмоционально вовлекается в том случае, если процесс наслаждения искусством носит интерактивный характер. Кроме того, не стоит забывать, что важнейшая роль искусства - это подтолкнуть нас к размышлениям, а ещё лучше - к диалогу и совместному поиску истины.
Прекрасный формат, который мы недавно опробовали в узком кругу, и хотим теперь расширить - это нейрогенеративная вечеринка. Идея состоит в том, что какое-то количество людей собираются вместе (лучше вместе, с вином и закусками, но можно и онлайн), и совместно занимаются нейрогенерацией. При этом:
- Неплохо зафиксировать некоторую тему, которую мы планируем исследовать в рамках вечеринки. Например, тема одиночества, или любви, или смысла жизни.
- Начать нейрогенерацию можно с простого запроса, и затем уточнять и видоизменять запрос, извлекая всё новые смыслы - как из нейросети, так и из диалога всех присутствующих.
- Один из вариантов - спрашивать у присутствующих, какие слова, фразы, художники, стили ассоциируются с данной темой, и экспериментировать, получая визуальные подтверждения своих гипотез.
- Все результаты нейрогенерации имеет смысл фиксировать, и по итогам нейрогенеративной вечеринки делать выставку/публиковать заметку.
Чем такой формат интересен:
- Нейрогенерация выступает своего рода объединяющей темой для разговора о важном. Даже если никаких значимых артефактов не будет получено (что маловероятно) - мы получим удовольствие от общения. Причем это будет очень осмысленное общение на некоторую заданную тему, а также хороший способ познакомиться и узнать друг друга.
- В процессе такой вечеринки каждый из участников увидит множество художественных работ, что можно сравнить с коллективным походом в музей.
- Работы будут создаваться у всех на глазах, в ответ на сформулированные участниками запросы - таким образом, каждый раскроет в себе творческое начало и получит порцию дешевого дофамина от быстрого результата.
Для нейрогенеративной вечеринки, важно присутствие как минимум следующих ролей:
- Prompt Master - человек, который имеет опыт работы с генеративными моделями и знает различные техники формирования запросов. Он же как правило будет обеспечивать технически процесс генерации - запуск Jupyter Notebook, или использование инструментов.
- Art Expert, который знает различные стили и техники, сможет направить творческий процесс в правильное русло и оценить художественную ценность полученных работ
- От остальных участников не требуется каких-то специальных навыков, и они могут вести себя более или менее активно, получая удовольствие от процесса
Если вы хотите принять участие в такого рода мероприятии - подписывайтесь на мой телеграм-канал, чтобы быть в курсе!
Итоги
Мы живём в интересное время, когда нейросети становятся (или не становятся?) творческими, но однозначно могут брать на себя всё больший и больший объём работы художника или писателя. Мы надеемся, что как и раньше, это приведёт к появлению новых форм искусства, расширит и обогатит наше мировосприятие. Чтобы это произошло, нам важно наблюдать за происходящим и экспериментировать!