Original size 1296x1728

Обучение генеративной нейросети для создания интернет-героя

PROTECT STATUS: not protected

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

[1] Stable Diffusion — для обучение генеративной нейросети для изображения питомца; [2] ChatGPT 5.3 — для уточнения и улучшения качества промптов; [3] Google Colab — для выполнения кода и создания генераций; [4] Adobe Photoshop — для создания коллажей в лонгриде.

Концепция

post

Главный герой этого проекта — кошка по имени Кошка. Она не просто домашний питомец, а настоящий персонаж с характером: всегда в движении, всегда с эмоцией на морде, всегда в какой-то невероятной позе. Её фотографии невозможно пролистать равнодушно. Они вызывают моментальную реакцию, потому что в них есть что-то абсурдное и живое одновременно.

Кошка уже сама по себе — мем. Именно поэтому я решила превратить её в интернет-персонажа официально. Для этого я хочу обучить генеративную нейросеть на её фотографиях, чтобы модель могла воспроизводить её образ в любых ситуациях и передавать то, что делает Кошку Кошкой: её узнаваемую внешность и природную абсурдность.

Задача проекта

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

Исходные изображения

Для обучения нейросети я собрала датасет из 20 фотографий Кошки из личного архива.

Original size 1920x1596

Все изображения обрезались до формата 1:1 и сжимались до 512×512 px.

Процесс обучения

Сначала я проверяю доступна ли видеокарта NVIDIA и в каком она состоянии. И после этого я устанавливаю основные библиотеки для работы и обучения моделей ИИ, включая оптимизацию памяти и инструменты для LoRA.

Далее я скачиваю и устанавливаю свежую версию библиотеки diffusers напрямую с GitHub для работы со Stable Diffusion и DreamBooth.

Original size 1650x1194

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

Original size 2122x1262

Теперь у меня подгружается предобученная модель BLIP и процессор для подготовки изображений. Затем создаётся функция, которая генерирует текстовые описания для изображений. После этого из папки собираются все изображения для обработки.

После этого для каждого изображения автоматически создаётся подпись, и результат сохраняется в файл metadata.json, формируя пары «изображение — описание» для последующего обучения модели.

0

Теперь я очищаю память и удаляю ранее загруженную модель, чтобы освободить ресурсы. Затем настраиваю кодировку UTF-8 для корректной работы с текстом. После этого инициализирую и конфигурирую библиотеку Accelerate для эффективного запуска обучения.

В конце я выполняю авторизация в Hugging Face для доступа к моделям и ресурсам, подготавливая систему к обучению.

Original size 1552x588

Здесь можно увидеть основные парметры которая я задала для обучения модели. Такие как базовая модель, путь к датасету, размер изображений, шаги обучения, learning rate и другие настройки LoRA.

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

Original size 1612x1228

Теперь я получаю готовую модель и формирую ссылку, по которой её можно открыть или использовать.

Original size 2242x700

И в конце, я оформляю модель и публикую её на Hugging Face, чтобы можно было пользоваться ей и делиться с другими людьми. Это финальная часть кода.

0

Итоговые изображения

Сначала я попробовала сделать первый тестовый промпт с использованием созданного мной стиля «MRs cat»:

[1] prompt = «MRs cat in disco club»

Original size 1920x1080

Дальше я попробовала чуть конкретизировать промпт, чтобы выйти на более чистую стилистику изображения:

[2] prompt = «MRs cat working as a surgeon in MRs cat style, operating room, surgery tools, serious atmosphere»

И еще решила добавить «35mm» для более интересного эффекта:

[3] prompt = «MRs cat filing taxes in style, realistic photo, cinematic lighting, 35mm»

Чтобы сделать фотографию четче и реалистичнее, я прошу ChatGPT скорректировать мои промпты, опираясь на мой датасет. Я хочу чтобы лучше схватилось то самое смешное и карикатурное выражение лица моего питомца. ChatGPT более точно описывает характеристики Кошки, добавляя нужные детали. Также он добавляет такие подписи как «realistic, cinematic lighting, 35 mm, depth of field» чтобы улучшить общее качество изображения и отойти от мутных изображений, которые получаются сейчас:

[4] prompt = «black and white tuxedo cat with asymmetrical face, narrow white stripe down the face, pink nose with black spot, small black mustache marking under nose, yellow-green eyes, cat working as a surgeon, holding surgical tools, operating room, absurd but realistic situation, MRs cat style, photo, realistic, cinematic lighting, 35 mm, depth of field "

Original size 1920x1080

Теперь изображения получаются в нужной мне стилистике. Однако выявился некий артефакт (рис. 1), который рисует Кошке дополнительный рот, вместо темного пятнышка у носа. Я добавляю в промпт «no extra mouth», который решает проблему и убирает этот дефект (рис. 2):

[5] prompt = «black and white tuxedo cat, asymmetrical face, pink nose with black spot, no extra mouth , cat pushing a shopping cart full of bananas, MRs cat style, photo, realistic, cinematic lighting, 35mm»

Теперь, убрав все дефекты и добившись нужного мне стиля, я могу начать генерировать изображения. Я пробую добавить различные эмоции в мои промпты, чтобы натренировать модель.

Original size 3292x1080

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

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

Original size 3292x1080
Original size 3292x1080

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

Добавление подписей

Теперь, чтобы превратить кошку в настоящего интернет-персонажа, я добавляю к генерациям подписи.

Мне всегда очень нравилось то, насколько абсурдные предложения может выдавать ChatGPT, поэтому за подписями к моим мемам я обращусь именно к нему.

Для этого я собрала 10 самых «мемных» в zip-файл и отправила ChatGPT, чтобы он проанализировал их. К каждой фотографии я попросила его сгенерировать подписи, которые можно посмотреть в слайдшоу ниже.

0

Подписи добавлялись в Adobe Photoshop. Для шрифта был выбран культовый Impact, который часто используется в интернет культуре для ироничных мемов.

Анализ результата

Модели удалось передать главные черты персонажа: контрастную мордочку, яркую экспрессию и выразительные глаза. После уточнения промптов и добавления cinematic lighting, 35mm, depth of field изображения стали реалистичнее, что только усиливает абсурдность ситуаций.

Добавление подписей посредством ChatGPT очень сильно дополнил образ персонажа. Абсурдные и немного неуместные тексты вроде «Там ничего нет, но оно уже на меня влияет» делают картинку смешнее и дают Кошке характер, делая ее полноценным интернет-персонажем. Странность и непредсказуемость этих подписей работает на образ: персонаж становится загадочным, немного экзистенциальным, с собственной логикой.

В целом цель проекта достигнута: нейросеть усвоила узнаваемую внешность Кошки и научилась воспроизводить её в разных локациях, сохраняя её экспрессию. Соединив визуальный образ с текстовыми подписями, удалось создать полноценного интернет-персонажа с характером, голосом и мемностью, которая есть у настоящей Кошки.

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

Обучение генеративной нейросети для создания интернет-героя
Project created at 27.03.2026
Loading...
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