三种能有效融合文本和图像信息的方法——特征拼接、跨模态注意、条件批量归一化

当前T2I模型的一大限制就是如何有效地融合文本和图像信息?

目前常用的有特征拼接(features concatenation)、跨模态注意(cross-modal attention)和条件批量归一化(CBN,Condition Batch Normalization)

一、特征拼接

特征拼接就是简单的将文本模态进行简单线性变换,转换成图像模态需要的特征向量尺寸,然后将文本特征向量与图像特征向量进行拼接,在StackGAN和StackGAN++中用到过。

这种方法其实既没有充分利用到文本信息,也没有有效实现文本图像的信息融合。

二、跨模态注意

随着注意力机制的发展,跨模态注意力可以为图像的每个子区域计算一个单词的上下文向量,其首先在AttnGAN中得到应用,AttnGAN在单词的水平上实现了单词与图片中的某个子区域的映射,自动选择字级条件以生成图像的不同子区域。

在生成图像时,匹配图像子区域和最相关的单词,对输入图片的每一部分,匹配最相关的单词向量来约束其生成,增加图像的细粒度细节。如在AttnGAN中使用如下公式计算跨模态注意力:
c j = ∑ i = 0 T − 1 β j , i e i ′ ,  where  β j , i = exp ⁡ ( s j , i ′ ) ∑ k = 0 T − 1 exp ⁡ ( s j , k ′ ) c_{j}=\sum_{i=0}^{T-1} \beta_{j, i} e_{i}^{\prime}, \text { where } \beta_{j, i}=\frac{\exp \left(s_{j, i}^{\prime}\right)}{\sum_{k=0}^{T-1} \exp \left(s_{j, k}^{\prime}\right)} cj=i=0T1βj,iei, where βj,i=k=0T1exp(sj,k)exp(sj,i)
其中 s j , i ′ = h j T e i ′ s_{j, i}^{\prime}=h_{j}^{T} e_{i}^{\prime} sj,i=hjTei
而β(i,j)表示 第i个单词对生成图像的第j个区域的重要程度。

然而,随着图像尺寸的增大,计算成本迅速增加。此外,自然语言描述采用高级语义,而图像的一个子区域相对较低。因此,它无法很好地探索高级语义来控制图像生成过程,尤其是对于具有多个对象的复杂图像效果很差。

三、条件批量归一化(CBN)

全称为:Condition Batch Normalization,是SD-GAN首先在文本生成图像中进行应用的,将其看作是在一般的特征图上的缩放和移位操作的一种特例,它的表示形式如下所示:
B N ( x ∣ c ) = ( γ + γ c ) ⋅ x − μ ( x ) σ ( x ) + ( β + β c ) \mathrm{BN}(x \mid c)=\left(\gamma+\gamma_{c}\right) \cdot \frac{x-\mu(x)}{\sigma(x)}+\left(\beta+\beta_{c}\right) BN(xc)=(γ+γc)σ(x)xμ(x)+(β+βc)

原理是:利用自然语言描述中的语言线索(linguistic cues)来调节条件批处理归一化,主要目的是增强生成网络特征图的视觉语义嵌入。它使语言嵌入能够通过上下缩放、否定或关闭等方式操纵视觉特征图,其可以从输入中获取到语句级和词级两个层次上的语言线索。

在DF-GAN中,其采用了一系列叠加仿射变换按通道缩放和移动图像特征,也可以认为是一种条件批量归一化。

在SSA-GAN中,其将CBN进行了进一步的发展,作者提出的语义空间条件批量规范化(S-SCBN)将掩码预测器输出的掩码图添加到SCBN中作为空间条件,

你可能感兴趣的:(文本生成图像,text-to-image,文本生成图像,T2I,深度学习,人工智能)