Исходный размер 1140x1600

Нейро-Крис (обучение генеративной нейросети)

Примеры моих иллюстраций, включенных в датасет

Идея моего проекта продиктована поставленной задачей — для обучения генеративной сети было необходимо использовать изображения, являющиеся объектами общественного достояния, или те работы, на использование которых автор дал добровольное и задокументированное задание. Но ведь я — тоже автор! Поэтому, вооружившись небольшим датасетом из собственных иллюстраций (спойлер: это повлияло на качество работы, что я позже проанализирую), я начала создавать серию иллюстраций о своем персонаже.

Её зовут Крис. Она — студентка направления «дизайн», которой нравится рисовать и укутываться в комфортные слои своей одежды. Спонтанная, она любит яркие цвета и не то, чтобы любит, но все же попадает в разного рода «ситуации», хотя в своих генерациях я предпочитала изображать спокойные бытовые сценки. Самым важны атрибутом (будущей звезды дизайна) являются звездочки! А именно головной убор, впрочем, перекочевавший из полноценной «шапки» в подобие разнообразных аксессуаров, но об этом позже.

Этапы работы с кодом

Для начала я создала рабочее окружение, где проверила доступ к GPU и установила нужные библиотеки, что дало возможность работать с облегчёнными весами и ускорить обучение. Затем я загрузила скрипт train_dreambooth_lora_sdxl.py — основное ядро всей процедуры, которое позволяет «вживить» мой визуальный стиль в модель через технологию LoRA. Дальше — этап подготовки датасета. Я собрала небольшой архив со своими иллюстрациями, распаковала его и автоматически выровняла каждое изображение до квадратного формата 512×512 пикселей. Чтобы сделать обучение более осмысленным, я сгенерировала подписи к каждому изображению с помощью модели BLIP. Она анализировала мои работы и формулировала краткие описания, к которым я добавляла префикс — «illustration in krkrkr_style, character portrait of Kris,».

0

Скриншоты из Google Colab

После я очистила память, подключила Hugging Face и приступила к самому важному этапу — обучению, которое шло на модели Stable Diffusion XL, поверх которой я натренировала мою LoRA. Завершающий шаг — подключение обученных весов к пайплайну генерации. Я загрузила VAE-кодировщик, базовую SDXL-модель и добавила к ней мою LoRA. Теперь можно было увидеть, как Крис — мой персонаж со звёздным головным убором и вечной тягой к уюту — оживает в генерациях, постепенно обретая ту интонацию, которую я вложила в рисунки вручную.

Весь свой код, за исключением генерации самих иллюстраций и промптов, я показала на скриншотах.

Результаты генераций, иллюстрации

«portrait of Kris, young girl with curly hair and star-shaped headpiece covering her head,» и «illustration in krkrkr_style, character portrait of Kris, character with a big yellow …»

Это — самые первые генерации Крис. На левом изображении я не описала отличительные черты героини достаточно хорошо, а также забыла про собственный префикс, именно поэтому генеративная нейросеть «досроила» изображение самостоятельно, что сделало его несколько более профессиональным и приятным глазу.

Даже если остальные мои иллюстрации уже в полной мере обучались при помощи моего датасета, по причине чего получились не такими хорошими, как первая иллюстрация, я рада, что общий стиль и характеристика персонажа были «схвачены» — равно как получила удовольствие и от этой наивности, «нерявшливости» работ. Это напомнило мне мои школьные годы, в которые и создавалась Крис.

Исходный размер 1024x1024

«illustration in krkrkr_style, … sitting on a park bench drawing in her sketchbook, surrounded by scattered autumn leaves,»

«… on the floor surrounded by art supplies, drawing a colorful poster together,» и «sitting at a desk, drawing in her sketchbook, focused and calm, soft evening light,»

Исходный размер 1024x1024

«… at her window with a mug of tea, morning sunlight filtering through curtains,»

«…sitting on a city rooftop drawing constellations in her sketchbook, night sky full of stars,» и «…sitting on a wide windowsill, sketchbook on her knees, looking out at glowing city lights,»

Исходный размер 1024x1024

«…sketching inside a moving tram, passengers around her, city lights outside the window,»

«…walking through neon-lit streets at night, reflections in puddles, sketchbook in her hand,» и «…walking under colorful rain, umbrella decorated with doodles, reflections on the wet pavement,»

Исходный размер 1024x1024

«illustration in krkrkr_style, character portrait of Kris, with a big yellow star-shaped headpiece like a hat sitting in a small café, sketching people through the window, cup of cappuccino nearby,»

Все иллюстрации, вошедшие в датасет, я делала еще в школе (о чем говорила ранее). Тогда мой стиль отличался яркими цветами, почти всегда текстурными кистями и огромным количеством звездочек, письменных пометок-цитат и легкими, жизнерадостными персонажами. В обучении модели я хотела передать эту жизнерадостность Крис. Она яркая, спонтанная и неисправимая оптимистка — кажется, это получилось, хотя и не идеально. Мне было интересно наблюдать за тем, как генеративная нейросеть, не распознающая кириллицу, создавала узоры, похожие на буквы, добавляла текстурные мазки и спонтанные звезды.

Я считаю, что черты сходства с моим стилем иллюстраций определенно есть, но их мало, так как датасет не был достаточно большим (насчитывал всего 15 изображений). Однако, я думаю, что передать эмоцию и характер персонажа получилось достаточно хорошо — повторяю за Крис, моей нарисованной оптимисткой из детства!

Нейро-Крис (обучение генеративной нейросети)
Проект создан 10.11.2025
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше