论文阅读:MirrorGAN

六月啦~小李又上线啦!夏天到了真的闷热(不想动的借口)哈哈 今天更新的还是论文阅读。(可以发现我最近的更新都是文本到图片的生成 感觉再多看一些 都可以写个这方面的综述了--异想天开)

论文名称:
《MirrorGAN: Learning Text-to-image Generation by Redescription》
论文地址:https://arxiv.org/abs/1903.05854
论文阅读/翻译参考:https://blog.csdn.net/weixin_44363205/article/details/104717190
https://blog.csdn.net/Forlogen/article/details/91473574
项目代码:https://github.com/qiaott/MirrorGAN

本篇文章只记录个人阅读论文的笔记,具体翻译、代码等不展开,详细可见上述的链接

Background

Task(what to do )
Generating an image from a given text description
即主要完成的任务是text-to-image,输入文本生成图片的任务,比较特别的是,正如文章标题,是通过Redescription(重复描述)来更进一步完成这个任务。如下图所示:


Challenge
Visual realism and Semantic consistency
即视觉的真实性和语义的一致性

Work

Do?
1.We propose a novel unified framework called MirrorGAN for modeling T2I and I2T together, specifically targeting T2I generation by embodying the idea of learning T2I generation by redescription.
提出了一个称为MirrorGAN的新型统一框架,用于一起对T2I和I2T进行建模,通过体现通过重新描述学习T2I生成的思想来专门针对T2I生成。
2.We propose a global-local collaborative attention model that is seamlessly embedded in the cascaded generators to preserve cross-domain semantic consistency and to smoothen the generative process. 提出了一个全局局部协作注意力模型,该模型无缝嵌入到级联生成器中,以保持跨域语义一致性并平滑生成过程。
3.we additionally propose a CE-based text-semantics reconstruction loss to supervise the generator to generate visually realistic and semantically consistent images. Consequently, we achieve new state-of-the-art performance on two benchmark datasets.
提出了基于CE的文本语义重构损失,以监督生成器以生成视觉上逼真的和语义上一致的图像。

Related work
1.Similar ideas to our own have recently been used in CycleGAN and DualGAN, which handle the bi-directional translations within two domains together , significantly advance image-to-image translation .
CycleGAN和DualGAN与本文所提出的模型有较为相似的想法,它们两个模型是处理两个域内的双向翻译。
2.Attention models

Model

整个模型如上图所示,模型主要包括三个重要的部分:
1.semantic text embedding module,STEM:文本语义嵌入模型,用于将描述文本生成更符合语义的词和句子两个层级的嵌入向量
2.global-local collaborative attentive module,GLAM:全局和局部的注意力协同模块,通过在两个层级上的注意力机制,使用一致建联的结构,逐步生成语义一致且逼真的图像
3.semantic text regeneration and alignment module,STREAM:语义文本再生和对齐模块,用于最后的根据生成图像再生成和输入语义对齐的描述文本
接下来分开叙述各个部分

STEM
任务:STEM根据给定的关于真实图像的描述文本生成局部性词级别的嵌入向量w和全局性句子级别的嵌入向s。
结构:基本结构是一个循环神经网络(RNN)
过程:
其中表示句子长度。是每个单词的隐藏状态w 的级联, 是最后一个隐藏状态。
由于不同的描述文本可能具有相似的语义,那么生成的图像就同样应是相似的。为了提高模型的鲁棒性,还使用了StackGAN中提出的conditioning augmentation method(CA),从而产生更多的图像-文本对数据,增强对条件文本流形上的小扰动的鲁棒性。即如下公式,这里为条件增强模块的使用:
GLAM
任务:从粗略到精细尺度生成目标图像,以及利用局部单词注意和全局句子注意来逐步增强所生成图像的多样性和语义一致性。
结构:GLAM是由三个依次堆叠的图像生成网络组成,文章是采用AttnGAN中的基本结构,因为其具有良好生成逼真的图像的性能
过程:表示m个视觉特征转换器,表示m个图像生成器。那么在每一阶段根据视觉特征生成图像的过程如下所示:

其中Z∼(0,1)表示随机噪音, 是一个由 两个部分组成的全局局部协同注意模型。(word-level和sentence-level)
1.首先,使用AttnGAN中提出的单词水平注意力模型来生成一个注意的单词上下文特征(即使用word-level的注意力模型生成word-context的注意力特征)。 它在每个阶段都将单词嵌入w和视觉特征f作为输入。单词嵌入w首先被感知层 转换为视觉特征的底层公共语义空间,即 ,然后再乘以视觉特征 以获得注意力分数,通过计算注意力分数与 之间的内积,获得注意力词的语境特征(the attentive word-context feature):

2.然后提出一个句子级别(sentence-level)的注意力模型,以在生成过程中对生成器施加全局约束。 类似于单词级别注意模型,首先将增强的句子矢量 ,通过感知层 转换为视觉特征的底层公共语义空间,即 ,然后,将其与视觉特征 逐元素相乘以获得注意力得分。 最后,通过计算注意力分数和 的逐元素相乘来获得注意力句子上下文特征:
最后,将注意力句子上下文特征 1进一步串联,以产生第i个视觉特征 。

STREAM
任务:从生成的图像中重新生成文本描述,使图像在语义上与给定的文本描述保持一致
结构:采用一种简单应用的基于编码器的图像字幕框架(encoder-decoder-based image caption framework)作为基本的STREAM体系结构。图像编码器是在ImageNet上预训练的卷积神经网络(CNN),而解码器是RNN
过程:

先将图片经过CNN网络形成 作为RNN的输入。 主要是将单词嵌入向量映射为可视化特征矩阵。 表示建立在这些单词上的预测的概率。特别的是,与当训练整个网络时,固定此STREAM模块参数不变,这样做的好处是让整个训练过程更加稳定.

Loss
1.生成器loss函数


其中 是在第i阶段从分布 采样的生成图像。第一项是visual realism adversarial loss,用于区分图像是视觉上真实的还是伪造的,而第二项是text-image paired semantic consistency adversarial loss,文本-图像配对的语义一致性对抗性损失,用于确定基础图像是否为基础和句子的语义是一致。
另一个是基于交叉熵的文本语义重建损失(即模型STREAM阶段loss函数),希望从生成图像中重建的文本描述和真实的描述文本相近(值得注意的是,STREAM预训练期间也使用Lstream。训练Gi时,来自Lstream的梯度通过STREAM向后传播到Gi,其网络权重保持固定。)
生成器最终损失
其中λ是损失权重。
2.判别器损失
来自第i阶段的真实图像分布 。判别器的最终目标函数定义为:

Experiments

Dataset:CUB、COCO
Baseline:GAN-INT-CLS 、GAWWN、 StackGAN 、 StackGAN++ 、PPGN、AttnGAN
Metric:Inception score、
R-precision:(借鉴于AttnGAN) 用于评估所生成图像及其对应的文本描述之间的视觉语义相似性(值越高越好)

Result
定性
MirrorGAN Baseline指的是该模型仅对MirrorGAN框架中的每个生成器使用单词级别的关注(word-level attention for each generator),而Mirrorgan不仅有单词水平的还有句子水平的注意力(消融研究)

VS Baseline
Human perceptual test:the Image Authenticity Test and the Seman�tic Consistency Test.(图像真实性测试和语义一致性测试。)
对参数λ的取值不同对于模型的效果会有影响,通过实验证实了在λ=20时,模型整体效果最好
通过可视化注意力层的图像可以看出模型可以较好的关注不同的词来生成对应部分的图像
根据描述文本中的细微改变生成不同的图像

Conclusions

Limitation:
1.首先,由于计算资源有限,STREAM和其他MirrorGAN模块没有通过完整的端到端训练共同优化
2.第二,我们仅利用一种基本方法在STEM中嵌入文本并在STREAM中添加图像字幕,可以尝试通过使用最近提出的BERT模型和最新技术,可以进一步改进该方法
3.可以与最新的CycleGAN互补,从而进一步增强联合建模跨媒体内容的模型能力

总的来说,论文的基本思想并不复杂,而且模型的架构大部分也是继承自AttenGAN,比较新奇的是STREAM,这部分的思想有点像之前的cyclegan即有循环映射的一个过程,也就是mirrorgan里的再描述学习,文本处理方面也沿用了RNN的思想,生成部分即GAN的思想(似乎好像文本到图像都是这个套路?),最后实验的效果也比较好。


Ending~tired

你可能感兴趣的:(论文阅读:MirrorGAN)