BigGAN
通过增大 Batch 训练大规模的 cGAN,并采用 “截断技巧” 控制样本的多样性和保真度
什么是 BigGAN ?
- 通过大规模 GAN 的应用,BigGAN 实现了生成上的巨大突破;采用先验分布 z 的 “截断技巧”,允许对样本多样性和保真度进行精细控制;在大规模 GAN 的实现上不断克服模型训练问题,采用技巧减小训练的不稳定
BigGAN 的网络结构?
- 图示 BigGAN 的生成器,将噪声向量 z 通过 split 等分成多块,然后和条件标签 c 连接后一起送入到生成网络的各个层中,对于生成网络的每一个残差块又可以进一步展开为右图的结构。可以看到噪声向量 z 的块和条件标签 c 在残差块下是通过 concat 操作后送入 BatchNorm 层,其中这种嵌入是共享嵌入,线性投影到每个层的 bias 和 weight
BigGAN 的 “截断技巧”?
- 通过对从先验分布 z 采样,通过设置阈值的方式来截断 z 的采样,其中超出范围的值被重新采样以落入该范围内
- 通过实验可以知道通过对阈值的设定,随着阈值的下降生成的质量会越来越好,但是由于阈值的下降、采样的范围变窄,就会造成生成上取向单一化,造成生成的多样性不足的问题。图示是阈值在 2、1.5、1、0.5、0.04 下的生成效果