Generative Adversarial Networks

GANs (mainly in image synthesis)

Survey Papers / Repos

Resources

Models

Loss functions

Regularization

Architecture

Conditional GANs

Others

Tricks

Metrics (my implementation: lzhbrian/metricsarrow-up-right)

  • Inception Score [1606.03498]arrow-up-right [1801.01973]arrow-up-right

    • Assumption

      • MEANINGFUL: The generated image should be clear, the output probability of a classifier network should be [0.9, 0.05, ...] (largely skewed to a class). p(yx)p(y|\mathbf{x}) is of low entropy.

      • DIVERSITY: If we have 10 classes, the generated image should be averagely distributed. So that the marginal distribution p(y)=1Ni=1Np(yx(i))p(y) = \frac{1}{N} \sum_{i=1}^{N} p(y|\mathbf{x}^{(i)}) __is of high entropy.

      • Better models: KL Divergence of p(yx)p(y|\mathbf{x}) and p(y)p(y) should be high.

    • Formulation

      • IS=exp(ExpgDKL[p(yx)p(y)])\text{IS} = \exp (\mathbb{E}_{\mathbf{x} \sim p_g} D_{KL} [p(y|\mathbf{x}) || p(y)] )

      • where

        • x\mathbf{x} is sampled from generated data

        • p(yx)p(y|\mathbf{x})​ is the output probability of Inception v3 when input is x\mathbf{x}​

        • p(y)=1Ni=1Np(yx(i))p(y) = \frac{1}{N} \sum_{i=1}^{N} p(y|\mathbf{x}^{(i)}) is the average output probability of all generated data (from InceptionV3, 1000-dim vector)

        • DKL(pq)=jpjlogpjqjD_{KL} (\mathbf{p}||\mathbf{q}) = \sum_{j} p_{j} \log \frac{p_j}{q_j}, where jj is the dimension of the output probability.

  • FID Score [1706.08500]arrow-up-right

Last updated