← All writing

Essay

GAN Overview

Legacy notes on generative adversarial networks and applications.

Why GAN

  • Only involve neural network and back propagation.
  • Generate much more realistic and diverse pictures.
  • Can control feature(Z) to generate specific data.
  • Promising in the field of unsupervised learning.

What is GAN

Generative adversarial networks are a branch of unsupervised machine learning, implemented by a system of two neural networks competing against each other in a zero-sum game framework. They were first introduced by Ian Goodfellow et al. in 2014.

basic structure

image

Generator and Discriminator

Figure: “Semantic Image Inpainting with Perceptual and Contextual Losses”

Brief Theory

minGmaxDV(D,G)=ExPdata(x)[logD(x)]+EzPz(z)[log(1D(G(z)))]min_G max_D V(D, G) = \mathbb{E}_{x\sim P_{data}(x)}[logD(x)] + \mathbb{E}_{z\sim P_z(z)}[log(1-D(G(z)))]

  • If Pdata(x)P_{data}(x) > PG(x)P_{G}(x), then xx is a point with higher probability of coming from the data than being a generated sample.

  • If Pdata(x)P_{data}(x) < PG(x)P_{G}(x), then xx has low probability of being a data point, but high probability of being generated by our model.

Figure: “Generative Adversarial Nets”

Training Result

  • Generator: PG(x)=Pdata(x)P_G(x) = P_{data}(x)
  • Discriminator: D(x)=Pdata(x)Pdata(x)+PG(x)D(x) = \frac{P_{data}(x)}{P_{data}(x) + P_G(x)}

Detail Proof: “Generative Adversarial Nets”

Applications

Unclassified

DCGAN

Vector arithmetic on the z input space

Figure: “Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks”

Name confused: deconvolution, transposed convolution, Fractionally Strided Convolution

Conditional adversarial

acGAN

Paper: “Conditional Image Synthesis With Auxiliary Classifier GANs”

image to image

Paper: “Image-to-Image Translation with Conditional Adversarial Networks”

infoGAN

Invertible cGAN

Paper: “Invertible Conditional GANs for image editing”

State of the Art

PPGAN

Paper: “Plug & Play Generative Networks: Conditional Iterative Generation of Images in Latent Space”

Theory Breakthrough

Wasserstein GAN

Contribution:

  • Explain and solve training instability theoretically and practically.
  • Don not need any fancy tricks (even MLP works).
  • Have a better indicator to monitor the training process.
  • More diverse images generated.

Solution:

  • Use different loss function (without log function).
  • Weights clip.
  • Without optimization involving momentum.

Paper: “Towards Principled Methods for Training Generative Adversarial Networks” Paper: “Wasserstein GAN” Reference: 浠や汉鎷嶆鍙粷鐨刉asserstein GAN

Problems

  • What is the right metric to quantify images’ quality?
  • Generator hard to generate discrete data (e.g. NLP).
  • How can GAN be combined with our current works?

All in one page

zhangqianhui/AdversarialNetsPapers The classical papers and codes about generative adversarial nets