Google разработала улучшенный аналог нейросети DALL-E 2

Исследователи из Google разработали генеративную нейросеть Imagen, создающую реалистичное изображение по текстовому запросу подобно DALL-E 2 от OpenAI. Исследование результатов на добровольцах показало, что люди считают сгенерированные ей изображения более качественными, чем изображения из других нейросетей, в том числе и DALL-E 2. Статья об алгоритме опубликована на arXiv.org, также авторы запустили сайт с примерами работы нейросети и кратким описанием.

В 2021 году OpenAI представила нейросеть DALL-E, которая генерирует изображения по текстовому описанию, сформулированному простым языком. Эта модель показала большой прирост в качестве генерации изображений (text2image), но в основном ей удавались иллюстрации. В DALL-E 2, представленной в начале апреля, исследователи модифицировали архитектуру модели и добились уже довольно качественной генерации в том числе и фотореалистичных изображений. Максимально кратко работу модели можно описать так: получив текстовое описание, она, используя текстовый кодировщик от CLIP (модель от OpenAI, генерирующая описания изображений), получает текстовый эмбеддинг (сжатое векторное представления данных), затем с помощью диффузионной модели «конвертирует» его в визуальный эмбеддинг, потом с помощью другой диффузионной модели создает изображение размера 64 на 64 пикселя, а в конце еще двумя диффузионными моделями повышает разрешение до 1024 на 1024.

От редактора

Диффузионные модели работают следующим образом. Сначала берется качественное изображение (например, фотография), на которое поэтапно добавляется все больше шума до стадии, когда на нем будет уже только случайный шум. Затем из таких наборов исходных и «испорченных» изображений создается датасет, на котором нейросеть учится выполнять обратную операцию: генерировать из шума качественное изображение. В 2021 году исследователи из OpenAI показали, что такой метод генерации работает лучше и эффективнее традиционных генеративно-состязательных нейросетей.

Спустя полтора месяца исследователи из Google представили свою генеративную нейросетевую модель Imagen, которая архитектурно похожа на DALL-E 2, но все же имеет некоторые отличия и добивается лучших результатов. В качестве кодировщика исходного текста используется кодировщик T5-XXL. В этом заключается одно из отличий от DALL-E 2: если в ней используется кодировщик от модели CLIP, которую обучали на тексте и изображениях, то T5 обучался только на тексте. Получаемый текстовый эмбеддинг подается сразу в диффузионную модель, создающую изображение в разрешении 64 на 64 пикселя (в DALL-E 2 перед этим этапом используется «конвертер»), а оно в свою очередь два раза увеличивается диффузионными моделями до разрешения 1024 на 1024. В Imagen каждая дифузионная модель работает с учетом текстового эмбеддинга. Авторы DALL-E 2 писали в своей статье, что они пробовали такую же схему, но не обнаружили, что она повышает качество генерации, поэтому текстовый эмбеддинг не учитывался при повышениях разрешения.

Imagen обучалась на собственных датасетах Google, в которых было суммарно 460 миллионов пар «изображение-описание», а также на публично доступном датасете Laion с 400 миллионами пар. В результате разработчикам удалось создать модель с высоким качеством генерации изображений разных типов. Исследователи оценили работу модели тремя способами. Они сравнили результаты генерации с фотографиями из популярного датасета COCO и выяснили, что Imagen создает рекордно похожие изображение (FID = 7,27). Оценка добровольцами показала, что люди считают сгенерированные новой моделью изображения реалистичнее фотографий из COCO в 39,5 ± 0,75 процента случаев. Когда из сравнения убирали все фотографии с людьми, эта величина возрастала до 43,9 ± 1,01 процента.

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

Судя по показанным Google примерам, Imagen, в отличие от DALL-E 2, умеет генерировать реалистичные надписи, а также реже путает цвета, если они есть в текстовом запросе. В то же время стоит понимать, что, в отличие от OpenAI, которая хотя бы предоставила некоторым исследователям и журналистам доступ к демо-версии генератора, Google не выложила в открытый доступ ни демо, ни код, поэтому оценить ее работу довольно сложно. Некоторые исследователи, имеющие доступ к демо-версии DALL-E 2, выложили в твиттер сравнение предоставленных Google примеров с результатами генерации DALL-E 2 по тем же запросам.

Авторы объясняют закрытость проекта тем, что в датасетах для обучения встречаются неприемлемые примеры, в том числе «порнографические изображения, расистские оскорбления и вредные социальные стереотипы». Также они отмечают, что генеративные модели могут использоваться в злонамеренных целях, в том числе для распространения дезинформации. Кроме того, что исследователи не выложили модель в открытый доступ, можно увидеть, что во всех примерах генерации есть надпись Imagen в нижнем правом углу. Таким же образом помечает все сгенерированные картинки OpenAI, правда, использует для этого цветные квадраты вместо надписи с названием модели.

Как правило, вскоре после выхода подобных статей появляются открытые реализации описанных в них алгоритмов. В частности одним из первых это делает разработчик Фил Ван (Phil Wang), известный на GitHub под ником licudrains. Он уже выложил свою реализацию DALL-E 2 и завел репозитарий, в который в ближайшем будущем планирует выложить свободную версию Imagen.

Григорий Копиев