先來(lái)梳理一下我們之前所寫(xiě)的代碼,原始的生成對(duì)抗網(wǎng)絡(luò),所要優(yōu)化的目標(biāo)函數(shù)為:
此目標(biāo)函數(shù)可以分為兩部分來(lái)看:
①固定生成器 G,優(yōu)化判別器 D, 則上式可以寫(xiě)成如下形式:
可以轉(zhuǎn)化為最小化形式:
我們編寫(xiě)的代碼中,d_loss_real = tf.reduce_mean(tf.nn.sigmoid_cross_entropy_with_logits(logits = D_logits, labels = tf.ones_like(D))),由于我們判別器最后一層是 sigmoid ,所以可以看出來(lái) d_loss_real 是上式中的第一項(xiàng)(舍去常數(shù)概率 1/2),d_loss_fake 為上式中的第二項(xiàng)。