研究成果
Research Results
•
首次在文本到图像的任务中,生成了256*256分辨率的高质量图像
•
提出的条件增强方法,能增强模型的鲁棒性并提升生成效果的多样性
•
成为了文本生成图像任务中的一个里程碑
•
基于VAE思想的条件增强方法,对之后的研究者造成了一定启发
条件增强
条件增强
Conditioning Augmentation
•
文本嵌入的隐空间维度通常非常高(> 100),在数据量有限的情况下,这通常会导致隐数据流形中的不连续性
•
从高斯分布 中随机采样latent code,是关于词向量 的函数
•
均值μ和方差Σ使用一个全连接层来求解
•
把KL散度作为一个正则项加入生成器的训练
•
使用重参化技巧
•
使用上述的条件增强方法后,可以产生更多的训练数据,使条件流形更加平滑
•
增加的采样随机性,可以使输入同一个句子时产生不同的输出图像
两阶段的GAN
Stacked GAN
阶段1
•
从标准高斯分布中采样得到z,与从条件增强方法采样得到的 进行concat作为输入
•
为文本描述所对应的真实图像,在所有实验中λ都设为1
•
在判别器中,输入图像经过下采样,最终得到长宽为M的矩阵;而词向量会先经过全连接层来压缩到N维,然后在空间维度上复制变为MMN的矩阵
•
图像和词向量的矩阵concat到一起,再通过1*1卷积和全连接层得到最终的输出分数
阶段2
•
把阶段1的输出 与又一次条件增强采样得到的 进行concat作为输入
•
在生成器中增加了残差block;判别器中的负样本有真实图像-错误文本,生成图像-正确文本两种情况
实现细节
•
上采样使用最近邻resize + 33卷积
•
除了最后一层外,在每个卷积层之后都使用了BN和ReLU
•
在128128的StackGAN中使用了2个残差block,在256256中使用了4个
•
判别器中,下采样的block使用44步长为2的卷积,除了第一层没使用BN外,别的都使用了BN和LeakyReLU
•
首先训练阶段1的GAN 600个epochs,接着将其固定,再训练阶段2的GAN 600个epochs
•
都使用Adam优化器,batch size设为64
•
初始学习率设为2e-4,之后进行指数衰减,每100个epochs衰减到1/2