进入预训练时代后,视觉识别模型的性能得到飞速发展,但图像生成类的模型,比如生成对抗网络GAN似乎掉队了。
通常GAN的训练都是以无监督的方式从头开始训练,费时费力不说,大型预训练通过大数据学习到的「知识」都没有利用上,岂不是很亏?
而且图像生成本身就需要能够捕捉和模拟真实世界视觉现象中的复杂统计数据,不然生成出来的图片不符合物理世界规律,直接一眼鉴定为「假」。
预训练模型提供知识、GAN模型提供生成能力,二者强强联合,多是一件美事!
问题来了,哪些预训练模型、以及如何结合起来才能改善GAN模型的生成能力?
最近来自CMU和Adobe的研究人员在CVPR 2022发表了一篇文章,通过「选拔」的方式将预训练模型与GAN模型的训练相结合。
论文链接:https://arxiv.org/abs/2112.09130
项目链接:https://github.com/nupurkmr9/vision-aided-gan
视频链接:https://www.youtube.com/watch?v=oHdyJNdQ9E4
GAN模型的训练过程由一个判别器和一个生成器组成,其中判别器用来学习区分真实样本和生成样本的相关统计数据,而生成器的目标则是让生成的图像与真实分布尽可能相同。
理想情况下,判别器应当能够测量生成图像和真实图像之间的分布差距。
但在数据量十分有限的情况下,直接上大规模预训练模型作为判别器,非常容易导致生成器被「无情碾压」,然后就「过拟合」了。
通过在FFHQ 1k数据集上的实验来看,即使采用最新的可微分数据增强方法,判别器仍然会过拟合,训练集性能很强,但在验证集上表现得很差。
此外,判别器可能会关注那些人类无法辨别但对机器来说很明显的伪装。
为了平衡判别器和生成器的能力,研究人员提出将一组不同的预训练模型的表征集合起来作为判别器。
这种方法有两个好处:
1、在预训练的特征上训练一个浅层分类器是使深度网络适应小规模数据集的常见方法,同时可以减少过拟合。
也就是说只要把预训练模型的参数固定住,再在顶层加入轻量级的分类网络就可以提供稳定的训练过程。
比如上面实验中的Ours曲线,可以看到验证集的准确率相比StyleGAN2-ADA要提升不少。
2、最近也有一些研究证明了,深度网络可以捕获有意义的视觉概念,从低级别的视觉线索(边缘和纹理)到高级别的概念(物体和物体部分)都能捕获。
建立在这些特征上的判别器可能更符合人类的感知能力。
并且将多个预训练模型组合在一起后,可以促进生成器在不同的、互补的特征空间中匹配真实的分布。
为了选择效果最好的预训练网络,研究人员首先搜集了多个sota模型组成一个「模型银行」,包括用于分类的VGG-16,用于检测和分割的Swin-T等。
然后基于特征空间中真实和虚假图像的线性分割,提出一个自动的模型搜索策略,并使用标签平滑和可微分的增强技术来进一步稳定模型训练,减少过拟合。
具体来说,就是将真实训练样本和生成的图像的并集分成训练集和验证集。
对于每个预训练的模型,训练一个逻辑线性判别器来分类样本是来自真实样本还是生成的,并在验证分割上使用「负二元交叉熵损失」测量分布差距,并返回误差最小的模型。
一个较低的验证误差与更高的线性探测精度相关,表明这些特征对于区分真实样本和生成的样本是有用的,使用这些特征可以为生成器提供更有用的反馈。
研究人员我们用FFHQ和LSUN CAT数据集的1000个训练样本对GAN训练进行了经验验证。
结果显示,用预训练模型训练的GAN具有更高的线性探测精度,一般来说,可以实现更好的FID指标。
为了纳入多个现成模型的反馈,文中还探索了两种模型选择和集成策略
1)K-fixed模型选择策略,在训练开始时选择K个最好的现成模型并训练直到收敛;
2)K-progressive模型选择策略,在固定的迭代次数后迭代选择并添加性能最佳且未使用的模型。
实验结果可以发现,与K-fixed策略相比,progressive的方式具有更低的计算复杂度,也有助于选择预训练的模型,从而捕捉到数据分布的不同。例如,通过progressive策略选择的前两个模型通常是一对自监督和监督模型。
文章中的实验主要以progressive为主。
最终的训练算法首先训练一个具有标准对抗性损失的GAN。
给定一个基线生成器,可以使用线性探测搜索到最好的预训练模型,并在训练中引入损失目标函数。
在K-progressive策略中,在训练了与可用的真实训练样本数量成比例的固定迭代次数后,把一个新的视觉辅助判别器被添加到前一阶段具有最佳训练集FID的快照中。
在训练过程中,通过水平翻转进行数据增强,并使用可微分的增强技术和单侧标签平滑作为正则化项。
还可以观察到,只使用现成的模型作为判别器会导致散度(divergence),而原始判别器和预训练模型的组合则可以改善这一情况。
最终实验展示了在FFHQ、LSUN CAT和LSUN CHURCH数据集的训练样本从1k到10k变化时的结果。
在所有设置中,FID都能获得显著提升,证明了该方法在有限数据场景中的有效性。
为了定性分析该方法和StyleGAN2-ADA之间的差异,根据两个方法生成的样本质量来看,文中提出的新方法能够提高最差样本的质量,特别是对于FFHQ和LSUN CAT
当我们逐步增加下一个判别器时,可以看到线性探测对预训练模型的特征的准确性在逐渐下降,也就是说生成器更强了。
总的来说,在只有1万个训练样本的情况下,该方法在LSUN CAT上的FID与在160万张图像上训练的StyleGAN2性能差不多。
而在完整的数据集上,该方法在LSUN的猫、教堂和马的类别上提高了1.5到2倍的FID。
作者Richard Zhang在加州大学伯克利分校获得了博士学位,在康奈尔大学获得了本科和硕士学位。主要研究兴趣包括计算机视觉、机器学习、深度学习、图形和图像处理,经常通过实习或大学与学术研究人员合作。
作者Jun-Yan Zhu是卡内基梅隆大学计算机科学学院的机器人学院的助理教授,同时在计算机科学系和机器学习部门任职,主要研究领域包括计算机视觉、计算机图形学、机器学习和计算摄影。
在加入CMU之前,他曾是Adobe Research的研究科学家。本科毕业于清华大学,博士毕业于加州大学伯克利分校,然后在MIT CSAIL做博士后。
参考资料:
https://www.cs.cmu.edu/~vision-aided-gan/