Seminar 7

Definition

$$ min_G max_D V(D,G) = \mathbb{E}_{x\sim P} \log D(x) + \mathbb{E}_{z\sim \mathcal{N}} \log(1 - D(G(z))) $$

Let generator $G$ have parameters $\theta$ and discriminator $D$ paramenters $\psi$.

Learning

D update

Theory requires: $$ \psi_{t+1} \leftarrow \operatorname{argmax}_{\psi} \mathbb{E}_{x\sim P} \log D\left(x;\psi\right) + \mathbb{E}_{z\sim \mathcal{N}} \log \left(1 - D\left(G(z;\theta_t);\psi\right)\right) $$

In practice gradient step only.

G update, variant 1

$$ \theta_{t+1} \leftarrow \theta_t - \epsilon_t \frac{\partial}{\partial\theta} \mathbb{E}_{z\sim \mathcal{N}} \log \left(1 - D\left(G(z;\theta_t);\psi_{t+1}\right)\right) $$

G update, variant 2

$$ \theta_{t+1} \leftarrow \theta_t + \epsilon_t \frac{\partial}{\partial\theta} \mathbb{E}_{z\sim \mathcal{N}} \log D\left(G(z;\theta_t);\psi_{t+1}\right)$$

The first corresponds to definition. What does the second correspond to?

  • $$ min_G max_D V(D,G) = \mathbb{E}_{x\sim P} \log D(x) - \mathbb{E}_{z\sim \mathcal{N}} \log(D(G(z))) $$
  • $$ max_G max_D V(D,G) = \mathbb{E}_{x\sim P} \log D(x) + \mathbb{E}_{z\sim \mathcal{N}} \log(D(G(z))) $$

Nice article about GAN (not tutorial).

Evaluating generative models