训练GAN需多少伪造图像才能获得可用的latent space?
GAN训练伪造样本配置与latent space可用性说明
基础流程偏差说明
标准GAN训练框架下不存在提前准备固定规模伪造图像的要求,采用1000张真实图像搭配固定64张预置伪造图像的训练配置本身不符合常规训练逻辑,这是导致latent space坍缩、大量latent点生成重复图像的核心原因,和伪造图像的预设规模没有直接关联。
常规GAN每轮迭代的伪造样本都是实时生成的,完整流程为:
- 从真实图像数据集中随机采样1个batch的真实样本
- 从预设先验分布(通常为多元高斯分布)中随机采样1组latent向量,输入当前迭代轮次的生成器,实时输出对应
batch size的全新伪造图像,全程不需要提前准备静态伪造图像集 - 判别器分别对真实样本、实时生成的伪造样本做真假分类,先更新判别器参数
- 重新采样一组全新的latent向量输入生成器,结合判别器的分类损失更新生成器参数
- 重复上述步骤直到模型收敛,整个过程中参与训练的伪造图像不会重复,判别器始终面对生成器输出的新样本,不会出现过拟合固定样本的问题。
特殊场景下的伪造样本规模要求
如果是使用需要预置伪造样本的派生GAN架构(比如小样本领域微调GAN、伪造检测对抗训练框架、蒸馏类GAN),要得到可用的latent space,样本配置需要满足以下要求:
- 总样本配比:预置伪造图像的总规模需要和真实图像集规模保持至少0.7:1的比例,使用1000张真实图像的场景下,不重复的预置伪造图像总量不能低于700张,理想状态下保持1:1的配比效果最好
- 采样规则:每轮训练从伪造图像集中随机采样样本喂入判别器,禁止全程反复使用同一小批量固定伪造样本;如果是微调场景,每训练3-5个
epoch需要用当前更新后的生成器生成新的伪造样本,替换掉原有预置集中15%-20%的旧样本,避免判别器过拟合固定伪造特征 - batch配置:单训练步中,喂入判别器的真实样本、伪造样本数量要保持1:1对等,比如
batch size设为64时,单步输入32张真实图+32张伪造图,不要出现伪造样本批量远小于真实样本的情况。
固定小批量伪造样本训练的问题
固定使用64张伪造图像训练时,判别器会在极少的迭代轮次内记住这64张图像的全部特征,生成器不需要探索整个latent space的分布,只需要输出和这64张图像特征匹配的内容就能成功骗过判别器,最终必然出现模式崩溃,大片latent space区域输出完全相同的重复图像。
内容的提问来源于stack exchange,提问作者Mitchell Slapik
相关产品推荐
相关产品推荐

