GAN Lecture 2 (2018): Conditional Generation



先前提到的GAN是使用一個隨機vector來產生object,這邊我們希望控制input的vector,輸出我們希望看到的object,例如,輸入一個文字,然後產生一張對應輸入文字的圖片

Conditional GAN

一般的GAN吃的是一個隨機sample的vector,也就是下圖中的normal distribution z。

在conditional GAN裡面,額外再給一個contional text, c

Conditional GAN就是要根據這段text以及sample出來的vector來generate結果

最後在丟給discriminator,discriminator會產生一個scalar,告訴我們這個 object 好或不好

訓練時,discriminator要給real image 高分,generated image低分

但光是這樣是不夠的,因為這樣discriminator只會檢查image品質好不好,會無視input的 text (舉例來說,text給個是train,generator畫出一張高品質貓貓的照片,generarion一樣會給高分)

因此,conditional GAN不能只看generator的輸出,他同時也要看generator的輸入

也就是說,這時discrimintor要考慮兩件事

如果x是一張模糊的圖,給低分。

如果x是一張清晰的圖,但文字不match,給低分。

Algorithm