天天看點

生成對抗網絡實戰入門到精通——DCGAN算法以及訓練增強手法

DCGAN

  • DCGAN
  • 原理
  • 改進
  • 網絡架構
  • ImprovedDCGAN
  • 訓練增強手法
  • 特征比對
  • 批次判别
  • 常見問題
  • 原理
  • 實作
  • 曆史平均
  • 單側标簽平滑(one-sided label smoothing)
  • 虛拟批次正态化(virtual batch normalization)

DCGAN

原理

把上述的 G和D 換成了兩個卷積神經網絡(CNN)。但不是直接換就可以了,DCGAN 對卷積神經網絡的結構做了一些改變,以提高樣本的品質和收斂的速度

改進

  1. 取消所有pooling 層。G網絡中使用微步幅度卷積(fractionally strided convolution)代替pooling層,D網絡中使用步幅卷積(strided convolution)代替 pooling層。
  2. 在D和G中均使用 batch normalization
  3. 去掉FC層,使網絡變為全卷積網絡
  4. G網絡中使用ReLU 作為激活函數,最後一層使用tanh
  5. D網絡中使用LeakyReLU 作為激活函數

網絡架構

生成對抗網絡實戰入門到精通——DCGAN算法以及訓練增強手法

生成器的輸入是一個 100 維的噪聲,中間會通過 4 層卷積層,每通過一個卷積層通道數減半,長寬擴大一倍 ,最終産生一個 64643 大小的圖檔輸出。值得說明的是,在很多引用 DCGAN 的 paper 中,誤以為這 4 個卷積層是 deconv(反卷積)層,但其實在DCGAN 的介紹中這 4 個卷積層是 fractionally strided convolution(微步幅度卷積),二者的差别如下圖所示:

生成對抗網絡實戰入門到精通——DCGAN算法以及訓練增強手法

上圖左邊是反卷積,用 33 的卷積核把 22 的矩陣反卷積成 44 的矩陣;而右邊是微步幅度卷積,用 33 的卷積核把 33 的矩陣卷積成 55 的矩陣,二者的差别在于,反卷積是在整個輸入矩陣周圍添 0,而微步幅度卷積會把輸入矩陣拆開,在每一個像素點的周圍添 0。 接下來我們再看一下 DCGAN 中 D 網絡的結構,由于原論文中沒有給出相關圖,我找了一篇近似論文中的圖說明:

生成對抗網絡實戰入門到精通——DCGAN算法以及訓練增強手法

D 可以看成是 G 結構反過來的樣子,那具體結構也沒什麼好說的了,簡言之不斷地做卷積,最終得到一個 0,1 之間的結果。

ImprovedDCGAN

訓練增強手法

GANs 的主要問題之一是收斂性不穩定,盡管 DCGAN 做了結構細化,訓練過程仍可能難以收斂。我們先來分析一下為什麼會出現收斂性不穩定。 GANs 的優化就是尋找兩玩家非合作博弈的納什均衡點。這裡的兩玩家指的就是生成器和判别器。

特征比對

為了不讓生成器盡可能地去蒙騙鑒别器,ImprovedDCGAN 希望以特征作為比對标準,而不是圖檔作為比對标準,于是提出了一種新的生成器的目标函數,即:

其中 f(x)是指的生成器把判别器的中間層輸出 f(x)作為目标(一般中間層都是 D 最後幾層,f(x)實際上是 feature map),這樣可以讓生成的中間層輸出和真實資料的中間層輸出盡可能相同。這種做法雖然不能保證到達均衡點,但是收斂的穩定性應該是有所提高。

批次判别

常見問題

收斂到同一個點,并沒有什麼機制可以讓生成器生成不一樣的内容。

原理

用 minibatch 判别器。也就是說每次不是判别單張圖檔,而是判别一批圖檔。

實作

将一個中間層 f(x)乘以一個 tensor,得到一個新的矩陣 M,計算 M 每一行之間的 L1 距離 o,以此為 f(x)下一層的輸入

假設 x 是從生成器生成的,并且收斂到同一點,那麼對應的 f(x)必然很相似,由 f(x)生成的 M也必然非常相似。而這些 M 每一行的 L1 距離c(xi,xj)也就會非常接近 0,這也導緻 o(X)幾乎是 0 向量。相對的,如果 x 是真實資料,那麼 o(X)一般不會太接近 0 向量,這樣判别器就可以更簡單的區分生成資料或真實資料(在生成器收斂到一點的情況下)。

曆史平均

在更新參數值時,把它們過去的值也納入考慮:

單側标簽平滑(one-sided label smoothing)

  • 判别式的目标函數中正負樣本的系數不再是 0-1,而是α和β,這樣判别式的目标就變成了下面這個式子。這相當于,原本判别器的目标數出值是[0=假圖像,1=真圖像],現在可能變成了[0=假圖像,0.9=真圖像]

虛拟批次正态化(virtual batch normalization)

繼續閱讀