Найти в Дзене
Машинное обучение

🔥 Архитектура DALL-E 2

Одно из главных событий последнего времени — это, конечно, выход DALL-E 2.

DALL-E 2 — это новая модель для генерации изображений по текстому описанию (и не только, об этом подробнее в постах ниже), которая показывает результаты просто шикарного качества 🔥

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

1. Путь от DALL-E к DALL-E 2

Если помните, DALL-E — это модель для генерации изображений по текстовому описанию. Первую версию DALL-E представили OpenAI в самом начале 2021 года. Эта модель была основана на архитектурах VAE и Transformer и ее очень грубо можно было описать как "GPT-3 для генерации картинок". Почитать подробнее о первой DALL-E можно в блоге OpenAI и в статье на архиве.

Примерно в то же время тот же OpenAI выпустил CLIP — мультимодальную модель, которая работает с картинками и текстом и маппит картинки и текст в одно общее пространство эмбеддингов. Такую модель можно использовать для решения многих задач, связанных с картинками и текстами, в zero-shot режиме (т.е. без дообучения). Например, можно заставить CLIP решать задачу классификации картинок, просто представив названия классов в виде текста на естественном языке. Подробнее об этом и о CLIP я писала в посте выше.

Также с недавнего времени популярность в генерации изображений стали набирать диффузионные модели (diffusion models). На момент осени 2021 года диффузионная модель Palette брала SOTA на сразу нескольких различных задачах генерации изображений. Подробнее об этом мы писали в посте выше.

Вскоре после этого всего, ближе к концу 2021 года, OpenAI выпускает модель GLIDE. Как и DALL-E, это модель для генерации изображений по текстовому описанию, но работает она чуть лучше, чем DALL-E. Основа GLIDE — диффузионные модели. За счет этого GLIDE умеет не только генерить картинки лучше своего предшественника, но и решать сопутствующие задачи, такие как дополнение частей картинки (image inpainting). О GLIDE читайте в этом посте.

Ну и, наконец, апрель 2022, наше время. OpenAI выпускает DALL-E 2. Эта модель основана на моделях CLIP + diffusion models. Как видите, это не совсем "вторая версия DALL-E", так как идеи их работы совершенно разные =) Однако по качеству генерации изображений DALL-E 2 просто шикарен, и по этому параметру действительно можно считать DALL-E 2 "следующим, вторым поколением генеративных моделей"

2 Архитектура DALL-E 2

DALL-E 2 объединяет идеи CLIP и диффузионных моделей.

Принцип работы DALL-E 2 очень прост: использовать CLIP для генерации эмбеддинга входящего текста, а затем генерировать изображение с помощью диффузионной модели, обусловленной на этот эмбеддинг текста. Диффузионная модель и CLIP при этом учатся совместно.

Иллюстрация архитектуры модели — на картинке к посту. Верхняя часть (над пунктирной линией) — иллюстрация обучения CLIP, нижняя часть — обучение диффузионной модели.

Принцип работы подробнее:

Обучающий датасет состоит из пар {x, y} = {изображение, его текстовое описание}.

- Прогоняем x через CLIP, получаем эмбеддинг t;

- Прогоняем y через CLIP, получаем эмбеддинг z (синий на картинке);

- Обучаем CLIP соотносить эмбеддинги t и z;

- Эмбеддинг z подаем в prior, который по тестовому эмбеддингу z генерирует эмбеддинг изображения t;

- Эмбеддинг t подается на вход диффузионной модели, которая генерирует картинку.

Подробнее о принципе работы — в статье от OpenAI

3. Результаты работы DALL-E 2

Так как DALL-E 2 основан на идеях CLIP и диффузии, модель может не только генерировать картинки по текстовому описанию, но и выполнять сопутствующие задачи. Например:

- дополнять части изображения;

- менять детали изображений, дополнять картинку деталями

- скрещивать несколько изображений (в том числе генерировать анимации с плавным переходом)

(^ по ссылкам — посты с примерами работы DALL-E 2 на этих задачах)

А вот еще несколько примеров работы DALL-E 2, от которых просто мурашки по коже. Ну насколько же хороша генерация!

- просто еноты

- хомяки-грузовики

- демодернизация айфона

- артбук из 100 изображений роботов by DALL-E 2

- животные вертолеты

- собачки с вилами и пиццами (кажется, это косплей какой-то картины известной))

-2
Machinelearning
Машинное обучение RU

#машинноеобучение #нейронныесети #computerscience #codinglife #reactjs #technology #frontend #development #programmers #глубокоеобучение

Наука
7 млн интересуются