Вступление
Время подвести итоги нашей работы по генерации данных с использованием моделей диффузии. Ранее мы заложили основу, представив концепцию и краткий обзор перспективных методов. Затем во второй части мы сосредоточились на получении изображений вместе с картами семантической сегментации. В этом блог-посте мы бы хотели затронуть тему методов, позволяющих использовать дополнительные входные данные.
Генерация изображений на основе дополнительных условий
Использование моделей диффузии может привести к творческим, воображаемым результатам. Однако для использования этих данных в реальных бизнес-проектах также необходима дополнительная информация, будь то состав объектов, размер или общий вид. По этой причине было бы полезно включить еще один вход помимо подсказки и передать его в сеть, чтобы она предоставляла руководство по тому, что мы ожидаем. В deepsense.ai мы экспериментировали с наиболее популярными методами для направленной генерации изображений и с нетерпением делимся нашими мыслями.
Стабильная инкапсуляция диффузии
Давайте начнем с метода, который происходит из статьи “Стабильное диффузионное восстановление”. Пайплайн инкапсуляции позволяет редактировать конкретные части изображения, предоставляя маску и текстовую подсказку. Это позволяет пользователю удалять и заменять части изображения. Функциональность инкапсуляции стабильной диффузии основана на модифицированной архитектуре UNet. Эта специализированная сеть включает пять дополнительных входных каналов: четыре, посвященных закодированному маскированному изображению, и один специально для самой маски.
GLIGEN
Похожую концепцию замораживания исходных весов предварительно обученных моделей диффузии можно увидеть в реализации GLIGEN (Генерация изображений на основе связанного языка). Помимо создания копии всего кодера, как в ControlNet, он вводит новые слои под названием Gated Self-Attention (GSA), которые отвечают за обработку входных данных в рамках кодера.
Обучение моделей
Предварительно обученные модели безусловно впечатляют, но часто они не соответствуют точным потребностям бизнес-проектов. Их входные данные часто являются гиперреалистичными, воображаемыми и не соответствуют настраиваемым, специализированным наборам данных. Это можно бороться с помощью инженерии подсказок, но такое решение плохо масштабируемо. В этом случае необходим процесс повторного обучения.
LoRA – всему голова
В типичных методах текст-к-изображению, где изображения генерируются исключительно на основе текстовых подсказок, было разработано несколько методов для эффективного обучения новым концепциям. Один из этих методов – метод низкоранговой адаптации, обычно называемый LoRA. Мы широко исследовали и оценили этот метод, раскрывая его удивительную гибкость и универсальность.
Результаты для Cityscapes
Мы выбрали набор данных “Cityscapes” для представления результатов модели Stable Diffusion с уровнями LoRA.
Заключение
В этой статье мы представили различные подходы к генерации данных с использованием дополнительных условий. Техники, такие как Stable Diffusion Inpainting, ControlNet и GLIGEN, предлагают впечатляющие возможности, которые могут значительно помочь в генерации данных для бизнес-проектов. Однако переобучение этих методов обычно требует времени и относительно большого количества данных.