5个周期后,DCGAN发电机的损耗保持在0.7

时间:2019-01-20 00:30:50

标签: tensorflow deep-learning pytorch generative-adversarial-network dcgan

玩完PyTorch DCGAN面孔教程后,我开始使用自己的数据集,该数据集由大小为1x32x32(通道,高度,宽度)的图像组成。

现在,我确实应用了此存储库中的大部分内容:https://github.com/soumith/ganhacks

但是目前我被困住了。

我以此为依据来选择是训练生成器(G)还是鉴别器(D)。

    if i > 1:
        if D_G_z1 < 0.5:
            train_G = True
            train_D = False
        else:
            train_D = True
            train_G = False

其中i是当前批次号,train_Dtrain_G在批次1上设置为True。 D_G_z1是D(G(x))。

我希望一旦训练了D并且D(G(x))= 0.5,D将停止训练,G将开始训练以改善所生成图像的真实性,等等。现在D和G在进行训练时满足条件。

但是,G的损失在5个历元后停留在0.7,并且似乎在1k历时没有变化(我没有尝试更多)。更改G的学习速率,或者通过更改每个ConvTranspose2d层的通道数量来使G变得更多/更少复杂,也无济于事。

现在最好的方法是什么?任何意见,将不胜感激。

可在此处找到代码:https://github.com/deKeijzer/SRON-DCGAN/blob/master/notebooks/ExoGAN_v1.ipynb

TLDR:发电机损耗固定在0.7,不再变化。它也没有“学习” X的良好表示。

0 个答案:

没有答案