Как использовать слова для изменения изображений

Google недавно опубликовал на arXiv новую модель: UniTune. Модель способна к общему текстовому редактированию изображений. Давайте вместе узнаем, что он делает и почему эта модель является шагом вперед.

Почему именно эта модель? Почему сейчас?

Любой, кто пробовал заниматься искусством ИИ, замечал нечто странное. Конечно, DALL-E, стабильная диффузия и MidJourney предлагают выдающиеся результаты, но после первоначального энтузиазма получить именно то, что вы хотите, довольно сложно. Вам придется немного поиграть с параметрами, попытаться изменить слова и попытаться добавить больше прилагательных.

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

Есть, кстати, и ресурсы, которые позволяют попробовать начать прямо с изображения и попытаться реконструировать элементы текстовой подсказки (можно попробовать такой Google Colab). Однако результат гораздо менее захватывающий, чем можно было бы надеяться, и часто требует нескольких попыток.

Любой, кто имеет опыт работы с глубоким обучением, знает, что такое тонкая настройка. Тонкая настройка модели подгоняет модель под ваш конкретный случай без необходимости снова обучать ее с нуля. Модель учитывает общие возможности и адаптируется к конкретной задаче (например, сверточная сеть, обученная на миллионах изображений, точно настроена на распознавание видов цветов). При таком подходе также возможна стабильная диффузия. Это приводит к вопросу: что означает тонкая настройка модели, которая генерирует изображения из текстовых подсказок?

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

Проблема в том, что мы часто не знаем, сколько и каких примеров нам нужно доработать. Как Google Uni-tune решает эту проблему?

Google UniTune

Начнем с общего описания. Google Unitune берет изображение и текстовое описание и редактирует изображение, сохраняя при этом высокий уровень семантической и визуальной точности оригинала. Также, в отличие от других моделей, она не требует другого ввода, ни масок, ни эскизов.

В основе нашего метода лежит наблюдение, что при правильном выборе параметров мы можем точно настроить большую модель диффузии текста в изображение на одном изображении, поощряя модель сохранять точность входного изображения, сохраняя при этом выразительность. манипуляции. Мы использовали Imagen в качестве модели преобразования текста в изображение, но мы ожидаем, что UniTune будет работать и с другими крупномасштабными моделями. Мы тестируем наш метод в различных вариантах использования и демонстрируем его широкую применимость — оригинальная статья.

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

Модель берет изображение слева и подсказку (в данном случае «миньон»), с разным количеством весов Classifier Free Guidance, результат эволюционирует и точно настраивает изображение.

в статье кратко объясняется процесс тонкой настройки:

Наша цель — преобразовать ввод (base_image, edit_prompt) в edited_image. В двух словах, наша система точно настраивает модели преобразования текста в изображение и сверхвысокого разрешения на парах (base_image, редких_токенов) за очень небольшое количество итераций, а затем производит выборку из модели, обрабатывая текст в форме «[rare_tokens] подсказка_изменения».

Они также используют Classifier Free Guidance, метод, используемый моделями преобразования текста в изображение, такими как Imagen, чтобы направлять модель для согласования с текстовой подсказкой.
Кроме того, авторы также экспериментировали с интерполяцией с помощью интерполяции.

Кроме того, для выполнения редактирования требуется явная маска (используемая DALL-E 2). UniTune, с другой стороны, не нуждается в маске, а только в текстовой подсказке.

UniTune не лишен ограничений, и, как правило, они возникают, когда Imagen сталкивается с трудностями (это означает, что возможности метода ограничены базовой моделью преобразования текста в изображение). В некоторых случаях лица субъектов могут быть заменены местами или иногда клонированы (повторяются более одного раза). Другая проблема выявила, что в некоторых случаях нам было трудно найти
хороший баланс между точностью и выразительностью (особенно при работе с небольшими правками).

Кроме того, задержка является проблемой; первый шаг (тонкая настройка базовой модели) занимает 3 минуты с использованием TPUv4 и должен выполняться один раз для каждого входного изображения. Последующие шаги, с другой стороны, занимают около 30 секунд. Кроме того, UniTune использует множество параметров для настройки конечного вывода.

Прощальные мысли

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

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

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

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

Однако мы признаем, что приложения этого исследования могут сложным образом влиять на людей и общество (см. обзор в [2]). В частности, этот метод иллюстрирует легкость, с которой такие модели можно использовать для изменения чувствительных характеристик, таких как цвет кожи, возраст и пол. Хотя это уже давно возможно с помощью программного обеспечения для редактирования изображений, модели преобразования текста в изображение могут упростить эту задачу.

Если вам было интересно:

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

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



Или не стесняйтесь проверить некоторые из моих других статей на Medium: