<>GAN中的loss函数的构建
<>主要分为 G_Loss & D_Loss,分辨为generator和discriminator的损失函数
<>G_Loss:
设置这个loss的目的在于:尽可能使G(generator)产生的伪数据能够与真实数据一致(真实数据标签为1)
基于此:在tensorflow中,将该loss设置为如下格式
D_fake_loss =
tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.zeros_like(G_pro),
logits=G_logits)) self.G_loss = G_fake_loss
<>D_Loss:
设置这个loss的目的在于:让D(discrimination)尽可能将实际样本分为1,将伪样本分为0
基于此:在tensorflow中,将该loss设置为如下格式
D_real_loss =
tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.ones_like(D_pro),
logits=D_logits)) G_fake_loss =
tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(labels=tf.ones_like(G_pro),
logits=G_logits)) self.D_loss = D_real_loss + D_fake_loss
热门工具 换一换