讨论WGAN与Wasserstein距离的近似程度.

1. WGAN

Wasserstein GAN中,作者采用Wasserstein距离构造了GAN的目标函数,优化目标为真实分布\(P_{data}\)和生成分布$P_G$之间的Wasserstein距离:

\[\mathop{\min}_{G} \mathop{\max}_{D, ||D||_L \leq K} \{ \Bbb{E}_{x \text{~} P_{data}(x)}[D(x)]-\Bbb{E}_{x \text{~} P_{G}(x)}[D(x)] \}\]

或写作交替优化的形式:

\[\begin{aligned} θ_D &\leftarrow \mathop{\arg \max}_{\theta_D} \frac{1}{n} \sum_{i=1}^{n} { D(x^i)} - \frac{1}{n} \sum_{i=1}^{n} {D(G(z^i))} \\ \theta_G &\leftarrow \mathop{\arg \min}_{\theta_G} -\frac{1}{n} \sum_{i=1}^{n} {D(G(z^i))} \end{aligned}\]

其中要求判别器$D$是$K$阶Lipschitz连续的,即应满足:

\[| D(x_1)-D(x_2) | ≤K | x_1-x_2 |\]

在实践中把判别器$D(\cdot)$约束为Lipschitz连续函数是比较困难的。

WGAN中,通过weight clipping实现该约束:在每次梯度更新后,把判别器$D$的参数$θ_D$的取值限制在$[-c,c]$之间($c$常取$0.01$):

\[\begin{aligned} θ_D &\leftarrow\text{clip}(\theta_D,-c,c) \end{aligned}\]

WGAN-GP中,使用$|D|_L \leq 1$的一个充分条件\(\|\nabla_xD\| \leq 1\),将其作为梯度惩罚项加入目标函数:

\[\begin{aligned} θ_D \leftarrow \mathop{\arg \max}_{\theta_D} &\frac{1}{n} \sum_{i=1}^{n} { D(x^i)} - \frac{1}{n} \sum_{i=1}^{n} {D(G(z^i))} \\&- \lambda (||\nabla_xD(x)||-1)^2 \end{aligned}\]

2. 更强的Wasserstein距离近似

本文作者指出,上述两种形式在训练过程中均不能很好地近似Wasserstein距离。因此提出了更加近似Wasserstein距离的处理方法。

⚪ c-transform

c-transform是指做如下近似:

\[D(G(z^i)) ≈ \mathop{\min}_{j} \{ c(x^j-G(z^i))- D(x^j)\}\]

对于1-Wasserstein距离取$c=d_2$。对应目标函数:

\[\begin{aligned} θ_D \leftarrow \mathop{\arg \max}_{\theta_D} &\frac{1}{n} \sum_{i=1}^{n} { D(x^i)} + \frac{1}{n} \sum_{i=1}^{n} \mathop{\min}_{j} \{ c(x^j-G(z^i))- D(x^j)\} \end{aligned}\]

⚪ c,ε-transform

c,ε-transform可以近似$(1,\epsilon)$ -Sinkhorn散度$S_1^{\epsilon}$,当$\epsilon \to 0$时$S_1^{\epsilon} \to W_1$。

c,ε-transform是指做如下近似:

\[D(G(z^i)) ≈ -\epsilon \log (\frac{1}{n} \sum_{j=1}^{n} \exp (-\frac{1}{\epsilon}(D(x^j)-c(x^j-G(z^i)))))\]

对于1-Wasserstein距离取$c=d_2$。对应目标函数:

\[\begin{aligned} θ_D \leftarrow \mathop{\arg \max}_{\theta_D} &\frac{1}{n} \sum_{i=1}^{n} { D(x^i)} - \frac{1}{n} \sum_{i=1}^{n} \epsilon \log (\frac{1}{n} \sum_{j=1}^{n} \exp (-\frac{1}{\epsilon}(D(x^j)-c(x^j-G(z^i))))) \end{aligned}\]

⚪ 实验分析

结果表明,上述变换能够更好地近似1-Wasserstein距离和Sinkhorn散度: