Original size 2480x3500

Marilyn Manson AI Gen

PROTECT STATUS: not protected
4

Концепция и референс

На 1 курсе обучения в университете на дисциплине арт-практика в 3 модуле мы создавали серию иллюстраций. В моем случае она была посвящена моей любимой песне Мерлина Мэнсона — «The nobodies»

0

мои иллюстрации с 1-го курса

Рассуждая над темой проекта, я решила, что хочу увидеть как эти иллюстрации сможет изобразить искусственный интеллект

Собрав папку моих иллюстраций, которые выполнены в одной стилистике, я начала пробовать обучить нейросеть попасть в мою стилистику, чтобы посмотреть на этот проект с другой стороны

Список использованных в проекте инструментов:

1. Google Colab — основная среда разработки 2. Python — основной язык программирования 3. PyTorch — фреймворк машинного обучения 4. Diffusers (от Hugging Face) — библиотека для диффузионных моделей 5. PEFT (Parameter-Efficient Fine-Tuning) — эффективная настройка 6. Transformers — библиотека для NLP моделей 7. Torchvision — компьютерное зрение 8. Pillow (PIL) — работа с изображениями 9. Google Drive — хранилище данных 10. tqdm — прогресс-бары

Описание процесса обучения

Сначала импортируются библиотеки, необходимые для работы проекта

Original size 1200x584

фрагмент кода

После был создан блок CONFIG который хранит все настройки проекта manson_folder — где лежат иллюстрации out_dir — куда сохранять обученную модель model_name — какая базовая модель используется batch, lr, epochs — параметры обучения

Original size 1548x510

Фрагмент кода

далее идет подключение google drive

Original size 1052x308

Фрагмент кода

После подключения производится настройка устройства, которая определяет на чем запускать код — CPU или GPU

Original size 1112x252

Фрагмент кода

Далее идет фрагмент создания датасета.

Этот фрагмент: Находит все изображения в папке Подготавливает их для нейросети (меняет размер, нормализует) Создает пары «изображение-описание»

Original size 2542x1052

Фрагмент кода

После создания датасета начинается основной процесс обучения, который загружает модель и готовит ее к обучению с LoRA

0

Фрагмент кода

Основной процесс диффузионного обучения — учит модель предсказывать шум:

Original size 1878x710

Фрагмент кода

И под конец кода идет процесс, сохраняющий прогресс обучения каждые 50 шагов:

Original size 976x256

Фрагмент кода

Таким образом работает программа обучения модели с LoRA. Теперь перейдем к программе, непосредственно генерирующей иллюстрации на основе пройденного обучения

Описание процесса генерации иллюстраций

Сначала у нас идет фрагмент с настройками, который хранит параметры генерации base_model — какая модель использовать как основу lora_folder — где лежит обученный стиль Мэнсона output_folder — куда сохранять результаты n_images — сколько изображений сгенерировать inference_steps — количество шагов дениойзинга (качество) guidance — сила следования промпту (7.5 — нормально) seed_start — начальное значение для случайных чисел

Original size 1434x358

Фрагмент кода

Позже идет загрузка LoRA и создание пайплайна, результатом является то, что модель теперь умеет рисовать в моем стиле, а базовая модель stable diffusion загружена:

Original size 1440x862

Фрагмент кода

Далее в коде у нас идут промпты для генерации изображений:

Original size 2356x1192

Фрагмент кода

После чего у нас начинается процесс самой генерации иллюстраций:

Original size 2356x1192

Фрагмент кода

Нейросеть превращает текст в картинку за 30 шагов:

  1. Начинает с чистого шума
  2. Постепенно убирает шум
  3. Руководствуется промптом и обученным стилем
  4. Получает финальное изображение

Результат

Результатом работы являются данные иллюстрации, сгенерированные моделью

0

Иллюстрации сгенерированные моделью

Разбор результата

Модель смогла обучиться моему стилю и сгенерировать крайне похожие по исполнению к моим иллюстрации:

0

Результат более чем удовлетворительный. Было крайне интересно посмотреть на мои работы исполнением нейросети

We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more