
Концепция:
Первоначальным этапом в проекте по генерации изображений всегда является выбор исходных изображений (референсов). Я решила выбрать изображения в минималистичном стиле, так как по моей теории такие изображения должны были лучше считываться нейросетью. Также я подобрала изображения приближенные к аниме стилю, потому что именно под это заучены многие подобные программы. В итоге у меня получился датасет из 27 изображений от художника Uzno.

Датасет на основе работ художника Uzno
Процесс:
Первым этапом я подготавливала систему к тренировке, загружала все необходимые пакеты функций, приводила все изображения к единому параметру 512×512 рх, подгружала их в свой ноутбук, выводила на экран.

Процесс подготовки к обучению

Процесс подготовки к обучению
Процесс связи обученной модели с Hugging face
Далее я обучала модель, регестрировалась на ресурсе «Hugging face», получала токен: этот процесс занял у меня 43 минуты.
После обучения я могла переходить к генерации своих изображений. Я постаралась ставить перед обученной моделью максимально легкие задачи по созданию персонажей.
Важно отметить, что стиль художника был передан на 10/10, также хорошая узнаваемость у лиц. Кое-где нейросеть даже пыталась повторить подпись автора.
Промпт № 1
К сожалению, модель не смогла дать разнообразия образов героев и почти всем рисовала одинаковую одежду.
Промпт № 1. Результат
Промпт № 2
Основная сложность в генерации людей всегда конечности, а вернее руки. С ними часто не справляется даже Midjorney, так что от своей модели я многого и не ждала.
Промпт № 2. Результат
Промпт № 3
На удивление, лысый персонаж был исполнен достаточно неплохо, с учётом того, что подобных героев в исходных изображениях не было.
Промпт № 3. Результат
Вывод:
Самым сложным в этом проекте для меня стали технические моменты, а вернее постоянные неполадки и ошибки в работе систем. Почти на каждом этапе я сталкивалась с некорректной работой тех или иных функций. Я пробовала выполнить данную работу и в Kaggle и в Google Kolab и в итоге остановилась на последнем варианте. Так как несмотря на ограниченность часов использования GPU, сама система реже допускала ошибки и мне не приходилось много раз начинать всё заново или ждать, пока система сама отвиснет и будут хотя бы появляться кнопки запуска кода.
Таким образом, моя стратегия была следующая: натренироваться и понять что и как работает в Kaggle, где 30 часов на использование GPU. А после, уже с полным пониманием, зачем каждый этап и какие ошибки могут быть, перейти в без проблемно работающий Google Kolab и выполнить всю работу там. Ещё один совет, который я бы дала при обучении модели для последующей генерации изображений: если возникают постоянные проблемы и ошибки на каждом этапе — перейти на другое устройство и новый аккаунт. Этот способ помог мне закончить проект, так как только начав всё с чистого листа, мне удалось добиться устранения потери весов для Lora.
Описание применения генеративной модели:
Stable Diffusion — обучение генеративной нейросети под свой стиль. Hugging Face — получения токена для обучения нейросети.