Scientific journal
Scientific Review. Technical science
ISSN 2500-0799
ПИ №ФС77-57440

APPLICATION OF GENERATIVE-ADVERSARIAL NETWORKS TO TEXT TO IMAGE GENERATION

Levin A.O. 1 Belov Yu.S. 1
1 Bauman Moscow state technical University
Neural networks are used in almost all spheres of human activity, offering various solutions for a wide range of tasks. A common task is to generate images. An additional parameter in this task is the use of Text-To-Image technology. Based on the results of numerous works, an analysis was made of several models of generative adversarial networks using Text-To-Image technology, considering their architecture, learning process and influence on the direct process of image generation with its subsequent results. The aim of the work is to study the architecture, learning concepts and operating principles of generative adversarial networks for Text-To-Image generation. Based on the data obtained in the course of this work, generative adversarial networks are a good approach to solving the problems of generating images from text, using the Text-To-Image technology, despite minor difficulties both in the process of direct learning and in the process of subsequent use. – image generation, due to the limited variety of samples, which often leads to large time costs. However, these shortcomings are compensated by the accuracy and quality of the resulting images, which confirms their justification for applications for this kind of tasks.
generative adversarial networks
image generation
text-to-image

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

Цель исследования – исследовать архитектуру, концепции обучения и принципы работы генеративно-состязательных сетей для генерации изображения по тексту (Text-To-Image).

Общая информация о генеративно-состязательных сетях. Генеративно-состязательные сети (GAN) – это алгоритмические архитектуры, которые используют две нейронные сети, противопоставляя одну другой для создания новых синтетических экземпляров данных, которые можно принять за реальные данные [1]. Они широко используются в таких сферах, как: генерации изображений, генерации видео и генерации голоса.

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

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

Самым распространенным набором данных, используемым для обучения моделей генерации изображений, является упомянутый ранее набор COCO (Common Objects in Context), состоящий из 123 000 изображений различных объектов, с пятью текстовыми описаниями к каждому изображению [3].

Также в области генерации изображений были разработаны метрики количественной оценки (например, R-точность (R-precision), визуально-семантическое сходство и семантическая точность результирующего объекта), которые были введены специально для оценки качества моделей генерации текста в изображение, а именно: T2I – Text To Image [4] (рис. 1).

Принцип работы и обучения генеративно-состязательных сетей. Рассмотрим детально генеративно-состязательные сети. Они состоят из двух нейронных сетей: генераторной сети G(z) с шумом z ~ pz, выбранным из предыдущего распределения шума, и дискриминаторной сети D(x), где x ~ pdata реальные изображения, а x ~ pg – сгенерированные изображения соответственно [5].

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

Обучение можно определить как минимаксную игру двух игроков (правило принятия решений, используемое в теории игр) с функцией V (D, G), где дискриминатор D(x) обучается максимизировать логарифмическую вероятность, присваивая ей правильный класс, в то время как генератор G(z) обучается минимизировать вероятность того, что дискриминатор log(1 − D(G(z)) классифицирует его как фальшивый [6]:

missing image file missing image file

missing image file

Рис. 1. Виды аннотаций, используемых для генерации изображений по тексту

missing image file

Рис. 2. Принцип обучения генеративно-состязательной сети

missing image file

Рис. 3. Принцип работы технологии генерации изображения по тексту в генеративно-состязательных сетях

missing image file

Рис. 4. Архитектура генеративно-состязательной сети StackGAN++

Использование технологии генерации изображения по тексту (Text To Image). Первый подход T2I обусловливает процесс генерации анализа всего предложения, полученного из предварительно обученного текстового кодировщика.

Дискриминатор обучен различать реальные и сгенерированные пары «изображение – текст». Следовательно, модель T2I является естественным расширением генеративно-состязательной сети в том смысле, что условие на метке класса Y просто заменяется текстовым вложением φ (рис. 3).

В глубокой сверточной генеративно-состязательной сети (GAN-INT-CLS) в качестве входных данных для дискриминатора используются три разные пары:

- реальное изображение с совпадающим текстом;

- сгенерированное изображение с соответствующим текстом;

- реальное изображение с несовпадающим текстом.

Такой подход заставляет и генератор, и дискриминатор не только фокусироваться на реалистичных изображениях, но и сравнивать их с входным текстом [7].

Однако ранние версии GAN-INT-CLS могли генерировать только изображения с низким разрешением 64 × 64 пикселя.

Чтобы модели, основанные на генеративно-состязательных сетях, могли генерировать изображения с более высоким разрешением, необходимо использовать обновленную архитектуру, включающую в себя несколько объединенных генераторов – StackGAN.

В StackGAN на первом этапе генерируется грубое изображение размером 64×64 пикселя с учетом вектора случайного шума и вектора обработки текста. Это исходное изображение и текст поступают во второй генератор, который выводит изображение уже размером 256 × 256 пикселей [8]. На обоих этапах дискриминатор обучается различать совпадающие и не совпадающие пары «изображение – текст».

StackGAN++ еще больше улучшил архитектуру с помощью сквозной структуры, в которой три генератора и дискриминатора совместно обучаются для одновременной аппроксимации многомасштабных, условных и безусловных распределений изображений [9] (рис. 4).

Применение генеративно-состязательных сетей для генерации изображения по тексту. Рассмотрим пример, в котором необходимо сгенерировать написанные от руки цифры, подобные тем, которые можно найти в открытом наборе данных. Цель дискриминатора при отображении экземпляра из истинного набора данных состоит в том, чтобы распознать те, которые являются подлинными (рис. 5).

Тем временем генератор создает новые синтетические изображения, которые он передает дискриминатору. Это делается с расчетом на то, что они тоже будут считаться подлинными, даже если они – сгенерированные нейронной сетью поддельные. Цель генератора – генерировать максимально приближенные к реальности рукописные цифры. Цель дискриминатора – идентифицировать изображения, поступающие от генератора, как фальшивые или же попросту неудачные, то есть некачественные [10] (рис. 6).

Сам же алгоритм данного процесса заключается в следующем:

1. Генератор принимает случайные числа и возвращает изображение.

2. Сгенерированное изображение подается в дискриминатор вместе с потоком изображений, взятых из фактического, достоверного набора данных.

3. Дискриминатор принимает как настоящие, так и поддельные изображения и возвращает число от 0 до 1, где 1 представляет собой прогноз подлинности, а 0 представляет подделку.

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

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

missing image file

Рис. 5. Принцип работы генеративно-состязательной сети для генерации изображений

missing image file

Рис. 6. Пример сгенерированных изображений цифр при помощи генеративно-состязательной сети

Заключение

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

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