GAN Lecture 6 (2018): WGAN, EBGAN



Normal GAN

一般GAN所使用的JS divergence可能不太夠,因為大多數的情況,$P_G$與$P_{data}$往往是沒有任何重疊,理由如下:

  1. data本質:我們通常相信,image是一個高維空間中的低維manifold (關於manifold,可以參考 Neighbor Embedding ),兩個低維manifold overlap的地方幾乎是可以忽略的。如圖,兩個1維manifold折疊,丟到2維平面,幾乎不會有重疊

  2. Sampling:即便data本質上有overlap,但我們通常只會從data中sample一些點出來,除非sample很多點,不然sample出來的點幾乎可以看成完全沒有交集的distribution

如果兩個distrubution沒有重合,他們算出來的JSD就是log2,不管距離多遠都一樣,所以以下圖來說,$P_{G_0}$與$P_{G_1}$是一樣差的,所以對generator來說,他可能不會把generator update成$P_{G_1}$,訓練就會卡住

Least Square GAN (LSGAN)

本來train好一個generator,他會帶領藍色點點,順著紅線gradient的方向,改變generator的image,最終希望可以跟綠點點重合

但實際上藍色點點可能根本不會動,因為那邊紅線微分幾乎=0,根本動不了

而LS GAN 做的方法就是把sigmoid換成linear,這麼一來,原本是classification的problem就變成了regression的problem

如果是positive example:越接近1越好,反之,越接近0越好

Wasserstein GAN (WGAN)

WGAN用的不是JS Divergence,他用的是Earth Mover’s Distance,或稱Wasserstein Distance(不屬於f-divergance)