Adversarial Nets
$D$ and $G$ play the following two-player minimax game with value function $V(G,D)$
$$
\min_{G} \max_{D}V(D,G) = \mathbb{E}{x \sim p{data}(x)}[\log D(x)] + \mathbb{E}_{z\sim p_z(z)}[\log (1-D(G(z)))]
$$
- $p_g$ : Generator’s distribution
- $p_z(z)$ : prior on input noise variables
- $G(z;\theta_g)$ : Generator mapping noise to data space with parameters $\theta_g$
- $D(x;\theta_d)$ : Discriminator outputing probability that $x$ came from data with parameters $\theta_d$
Pedagogical Explanation
$\cdots$ : Discriminative distribution $D$
$\cdots$ : Data generating distribution $p_x$
—— : Generative distribution $p_g(G)$
$\uparrow$ : how mapping $x = G(z)$ imposes the non-uniform distribution $p_g$ on transformed samples

- $p_g$ is similar to $p_{data}$ and $D$ is partially an accurate classifier

- Inner loop of algorithm $D$ is trained to discriminate samples from data, converging to $D^{*}(x) = \frac{p_{data}(x)}{p_{data}(x)+p_g(x)}$

- After an update to $G$, gradient of $D$ has guided $G(z)$ to dlow to regions that are more likely to be classified as data

- After several steps of training, $p_g = p_{data}$.
- Discriminator is unable to differentiate between two distributions
- $D(x) = \frac{1}{2}$
