前言
本文使用一种更加稳定的结构训练生成对抗网络,用卷积层代替池化层,全连接层等操作使得网络更深
Introduction
LAPGAN利用的是多个GAN一步一步的生成大的图片,而且LAPGAN的G网络和D网络的设计不是很优。DCGAN提出了只需要一个GAN就能够直接生成64*64的图片,并且给出了G网络和D网络的设计要点。DCGAN还发现了输入网络的Z向量,有着跟word2vec相似的功能,Z向量能够描述一张图片的语义特征。
APPROACH AND MODEL ARCHITECTURE
DCGAN网络结构设计要点
1、在D网络中用strided 卷积(stride>1)代替pooling层,在G网络中用fractional-strided 卷积(反卷积)代替上采样层。
2、在G和D网络中使用BN层,通过将每个单元的输入归一化为零均值和单位方差来稳定学习。
3、移除全连接的隐层,让网络可以更深。
不要使用全连接层作为输出(LAPGAN中有)。例子为**全局平均池化(GAP),将每个通道的feature map取均值,**我们发现全局平均池化提高了模型的稳定性,但降低了收敛速度。
4、G网络中除了输出层(tanh)都使用ReLu激活函数
5、D网络中都使用LeakyReLu激活函数
网络结构图
图1.DCGAN先利用全连接层将100维均匀分布的的z向量,变成441024的向量,然后reshape成441024的张量。然后使用fractionally-strided convolutions(反卷积)一步步上采样到64*64的图片。
训练细节
1、预处理环节,将图像scale(缩放)到tanh的[-1, 1]。
2、使用mini-batch随机梯度下降训练网络,batch size是128.
3、所有的参数初始化由(0, 0.02)的正态分布中随即得到
4、LeakyReLU的斜率是0.2.
5、虽然之前的GAN使用momentum来加速训练,DCGAN使用调好超参的Adam optimizer。
6、learning rate=0.0002
7、将momentum参数beta从0.9降为0.5来防止震荡和不稳定。
z向量的语义表现:
smiling woman那张图是由上面的三张图的初始z向量取平均(z1)生成的。neutral woman(z2),neutral woman(z3)也一样。而 smiling man则是由z4=z1-z2+z3向量生产的图片(9张,在z4向量加入了±0.25的噪声)。