Изменения

Перейти к: навигация, поиск

Генерация изображения по тексту

5470 байт добавлено, 21:48, 9 января 2021
Added MMVR
=== Some Name Here (Inferring Semantic Layout for Hierarchical Text-to-Image Synthesis) ===
=== AttnGAN ===
Последние разработки исследователей в области автоматического создания изображений по текстовому описанию, основаны на [[Generative Adversarial Nets (GAN)|генеративных состязательных сетях (GANs)]].Общепринятый подход заключается в кодировании всего текстового описания в глобальное векторное пространство предложений (англ. global sentence vector). Такой подход демонстрирует ряд впечатляющих результатов, но у него есть главные недостатки: отсутствие чёткой детализации на уровне слов и невозможность генерации изображений высокого разрешения. Эта проблема становится еще более серьезной при генерации сложных кадров, таких как в наборе данных COCO<refname="COCO">[https://cocodataset.org COCO dataset (Common Objects in Context)]</ref>.
В качестве решения данной проблемы была предложена<ref>[https://openaccess.thecvf.com/content_cvpr_2018/papers/Xu_AttnGAN_Fine-Grained_Text_CVPR_2018_paper.pdf Tao X., Pengchuan Z. {{---}} AttnGAN: Fine-Grained Text to Image Generationwith Attentional Generative Adversarial Networks, 2018] </ref> новая [[Generative Adversarial Nets (GAN)|генеративно-состязательная нейросеть]] с вниманием (англ. Attentional Generative Adversarial Network, AttnGAN), которая относится к вниманию как к фактору обучения, что позволяет выделять слова для генерации фрагментов изображения.
*Attentional Generative Network {{---}} самая большая сеть, состоящая из трех уровней. Каждый уровень порождает изображения все большего разрешения, от 64x64 до 256x256 пикселей, и результат работы на каждом уровне корректируется с помощью сетей внимания <math>F^{attn}</math>, которые несут в себе информацию о правильном расположении отдельных объектов сцены. Кроме того, результаты на каждом уровне проверяются тремя отдельно работающими дискриминаторами, которые оценивают реалистичность изображения и соответствие его общему представлению о сцене.
Благодаря модификациям нейросеть AttnGAN показывает значительно лучшие результаты, чем традиционные системы GAN. В частности, максимальный из известных показателей inception score<ref>[https://arxiv.org/abs/1801.01973 A Note on the Inception Score]</ref> для существующих нейросетей улучшен на 14,14% (с 3,82 до 4,36) на наборе данных CUB и улучшен на целых 170,25% (с 9,58 до 25,89)<ref>[https://paperswithcode.com/sota/text-to-image-generation-on-coco Test results {{---}} Text-to-Image Generation on COCO]</ref> на более сложном наборе данных COCO<ref name="COCO" />.
<gallery mode="slideshow" caption="Пример результата работы AttnGAN">
=== ChatPainter ===
В предыдущих и последующих моделях для создания изображений используются текстовые описания. Однако они могут быть недостаточно информативными, чтобы охватить все представленные изображения, и модели будет недостаточно данных для того чтобы сопоставить объекты на изображениях со словами в описании. Поэтому в качестве дополнительных данных предлагается использовать диалоги, которые дополнительно описывают сцены. Это приводит к значительному улучшению inception score и качества генерируемых изображений в наборе данных MS COCO (Microsoft COCO dataset)<refname="MSCOCO">[https://www.microsoft.com/en-us/research/wp-content/uploads/2014/09/LinECCV14coco.pdf Microsoft COCO]</ref>. Для создания нового набора данных с диалогами, были объединены описания представленные в наборе данных MS COCO<ref name="MSCOCO" />, с данными из Visual Dialog dataset (VisDial)<ref>[https://arxiv.org/abs/1611.08669 Visual Dialog]</ref>.
<div class="oo-ui-panelLayout-scrollable" style="display: block; vertical-align:middle; height: auto; width: auto;">[[Файл: ChatPainter.png|thumb| alt=Архитектура ChatPainter|x350px|center| Архитектура ChatPainter: <ol style="list-style-type:lower-alpha">
<li>Этап 1: модель генерирует изображение 64×64, по описанию и диалогу. </li>
{| class="wikitable"
|+ '''Inception scores для сгенерированных изображений в тестовом наборе MS COCO<ref name="MSCOCO" />'''
|-
! Модель !! Inception Score
=== MMVR ===
[[Файл:MMVR.png|thumb|right|x360px|alt=Архитектура MMVR|Архитектура MMVR]]
Модель мультимодальной векторной сети (англ. Multi-Modal Vector Representation, MMVR), впервые предложенная в статье<ref>[https://arxiv.org/abs/1809.10274 Shagan S., Dheeraj P. {{---}} SEMANTICALLY INVARIANT TEXT-TO-IMAGE GENERATION, 2018]</ref>, способна создавать изображения по описанию и генерировать описание исходя из предоставленного изображения. Она включает несколько модификаций для улучшения генерации изображений и описаний, а именно: вводится [[Функция потерь и эмпирический риск|функция потерь]] на основе метрики N-грамм, которая обобщает описание относительно изображения; так же для генерации вместо одного используется несколько семантически сходных предложений, что так же улучшает создаваемые изображения.
 
Модель может быть разделена на два взаимозависимых модуля (см. рис):
*Генератор изображений на основе [[Generative Adversarial Nets (GAN)| GAN]] с DeePSiM<ref>[https://arxiv.org/abs/1602.02644 DeePSiM. Alexey D. and Thomas B. {{---}} Generating Images with Perceptual Similarity Metrics based on Deep Networks, 2016]</ref>.
*Генератор описаний изображений на основе Long-term [[Рекуррентные нейронные сети|Recurrent]] Convolutional Networks (LRCNs)<ref>[https://arxiv.org/abs/1411.4389 Jeff D., Lisa A. H. {{---}} Long-term Recurrent Convolutional Networks for Visual Recognition and Description, 2015]</ref>.
 
Прямое распространение (англ. forward pass) инициируется путем передачи случайного скрытого вектора (англ. latent vector) <tex>h_{t}</tex> в генератор изображений (<tex>G</tex>), который генерирует изображение <tex>\hat{x}</tex>. Затем по сгенерированной картинке генератор описаний создаёт подпись. Для определения ошибки между сгенерированным описанием <tex>\hat{y}</tex> и исходным описанием <tex>y</tex> используется перекрестная энтропия на уровне слов. Она используется для итеративного обновления <tex>h_{t}</tex> (заодно и <tex>\hat{x}</tex>), оставляя при этом все остальные компоненты фиксированными. С каждой итерацией <tex>\hat{y}</tex> приближается к < tex>y</tex>, и сгенерированное изображение на каждом шаге <tex>\hat{x}</tex> является временным представлением конечного изображения. Для улучшения реалистичности изображения используется энкодер шумоподавленя (англ. Denoising Autoencoder, DAE)<ref name="PPGN">[https://arxiv.org/abs/1612.00005 Anh N., Jeff C. {{---}} Plug & Play Generative Networks: Conditional Iterative Generation of Images in Latent Space]</ref> {{---}} в правило обновления добавляется ошибка восстановления изображения (англ. reconstruction error), вычисляемая как разница между <tex>h_{t}</tex> и <tex>\hat{h_{t}}</tex>.
[[файл:MMVR_example.png|thumb|left|x190px|Сравнение PPGN<ref name="PPGN" /> и MMVR]]
Обучение начинается с генерации случайного 4096-мерного вектора <tex>h_{t}</tex>, который передаётся в модель для последующего итеративного обновления. Процесс завершается после 200 итераций, и полученное изображение считается репрезентативным для данного описания.
{| class="wikitable"
|+ '''Inception scores для сгенерированных изображений в тестовом наборе MS COCO<ref name="MSCOCO" />'''
|-
! Модель !! Inception Score
|-
| style = "text-align: right" | Plug and Play Generative Networks (PPGN)<ref name="PPGN" /> || style = "text-align: center" | <tex>6.71 \pm 0.45</tex>
|-
| style = "text-align: right" | MMVR || style = "text-align: center" | <tex>7.22 \pm 0.81</tex>
|-
| style = "text-align: right" | MMVR (<tex>N_{c}=5</tex>)|| style = "text-align: center" | <tex>8.30 \pm 0.78</tex>
|}MMVR (<tex>N_{c}</tex>) {{---}} модификация MMVR с несколькими текстовыми описаниями на изображение, где <tex>N_{c}</tex> - количество описаний.
 
=== FusedGAN ===
=== MirrorGAN ===
89
правок

Навигация