培训门禁可能是一个具有挑战性的任务。这是因为发电机和鉴别器网络在训练期间互相竞争。事实上,如果一个网络过快学习,那么另一个网络可能无法学习。这通常会导致网络无法融合。要在0到1的规模上诊断问题和监视器的发电机和鉴别者如何实现各自的目标,您可以绘制他们的分数。有关展示如何训练GaN并绘制发电机和鉴别器分数的示例,请参阅火车生成对抗网络(GaN)。
鉴别者学会将输入图像分类为“真实”或“生成”。鉴别器的输出对应于概率 输入图像属于“真实”类。
发电机分数是对生成图像的鉴别器输出对应的概率的平均值:
在哪里 包含生成的图像的概率。
鉴于 是属于类“生成”的图像的概率,鉴别器分数是属于正确类的输入图像的概率的平均值:
在哪里 包含真实图像的鉴别器输出概率以及传递给鉴别器的实际图像的数量和生成的图像是相等的。
在理想情况下,两个分数都将是0.5。这是因为鉴别者不能讲述真假图像之间的差异。但是,在实践中,这种情况不是您可以实现成功GaN的唯一案例。
要监控培训进度,您可以随时查看图像并检查它们是否正在改进。如果图像没有改进,那么您可以使用分数绘图来帮助您诊断一些问题。在某些情况下,分数绘图可以告诉您没有点继续培训,并且您应该停止,因为发生了故障模式,培训无法从中恢复。以下部分告诉您在分数图中寻找什么,并在生成的图像中诊断某些常见的故障模式(收敛失败和模式崩溃),并表明您可以采取的可能采取以提高培训。
当发电机和鉴别器在训练期间没有达到平衡时,会发生收敛失败。
当发电机分数达到零或接近零并且鉴别器分数达到一个或接近一个时,发生这种情况。
该曲线显示了鉴别器压缩发电机的示例。请注意,发电机分数接近零并且不会恢复。在这种情况下,鉴别器正确对大部分图像进行分类。反过来,发电机不能产生欺骗鉴别者的任何图像,因此无法学习。
如果分数没有从这些值恢复许多迭代,那么最好停止培训。如果发生这种情况,请尝试平衡发电机和鉴别器的性能:
通过随机给实际图像(片面标签翻转)损害鉴别器损害鉴别符
通过添加辍学层来损害判别符号
通过增加其卷积层中的过滤器数量来提高发电机创建更多功能的能力
通过减少其过滤器数量损害判别符号
有关展示如何翻转真实图像标签的示例,请参阅火车生成对抗网络(GaN)。
当发电机分数到达一个或接近一个时,这种情况会发生这种情况。
该图显示了鉴别器的发电机的示例。请注意,生成器分数用于许多迭代的一个。在这种情况下,发电机几乎总是总是欺骗鉴别者。当这在训练过程中很早发生时,发电机可能会学习一个非常简单的特征表示,这很容易欺骗鉴别者。这意味着尽管具有高分度,所产生的图像可能非常差。请注意,在此示例中,鉴别器的分数不会非常接近于零,因为它仍然能够正确分类一些真实的图像。
如果分数没有从这些值恢复许多迭代,那么最好停止培训。如果发生这种情况,请尝试平衡发电机和鉴别器的性能:
通过增加过滤器数量,提高鉴别者了解更多功能的能力
通过添加丢弃层损害发电机
通过减少其过滤器数量损害发电机
模式折叠是甘甘生成具有许多重复项(模式)的少量图像时。当生成器无法学习丰富的特征表示时,会发生这种情况,因为它学会将类似的输出与多个不同的输入相关联。要检查模式折叠,请检查生成的图像。如果输出中几乎没有多样性,其中一些几乎相同,则可能的模式崩溃。
此图显示了模式崩溃的示例。请注意,所生成的图像图包含大量几乎相同的图像,即使对发电机的输入不同,随机。
如果您遵守此操作,请尝试提高生成器创建更多不同输出的能力:
将输入数据的尺寸提高到发电机
增加发电机的过滤器数量以允许它产生更广泛的功能
通过随机给实际图像(片面标签翻转)损害鉴别器损害鉴别符
有关展示如何翻转真实图像标签的示例,请参阅火车生成对抗网络(GaN)。
adamupdate.
|dlarray.
|dlfeval.
|Dlgradient.
|dlnetwork.
|向前
|预测