我的条件GAN似乎正在发生模式崩溃

时间:2019-04-18 00:15:13

标签: python machine-learning deep-learning generative-adversarial-network

我一直在使用celebA数据集在Tensorflow中设计此条件GAN。我似乎正在经历模式崩溃。

我尝试调整鉴别器以最小化Wasserstein距离,但这似乎无济于事。我还尝试减小条件向量的范围,以为可能是条件中的较大值淹没了噪声。

这就是我声明成本函数的方式

self.fake_images = self.generator(self.z, self.y, self.phase)

real_result, real_logits = self.discriminator(self.images, self.y, self.phase)

fake_result, fake_logits = self.discriminator(self.fake_images, self.y, self.phase, reuse=True)

d_fake_loss = tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.zeros_like(fake_result), logits=fake_logits))

d_real_loss = tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.ones_like(real_result), logits=real_logits))

self.d_loss = d_real_loss + d_fake_loss

self.g_loss = tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.ones_like(fake_result), logits=fake_logits))

t_vars = tf.trainable_variables()
self.d_vars = [var for var in t_vars if 'dis' in var.name]
self.g_vars = [var for var in t_vars if 'gen' in var.name]

0 个答案:

没有答案