Geometric GAN

Jae Hyun Lim, Jong Chul Ye, Geometric GAN.

很有趣, GAN的训练过程可以分成

  1. 寻找一个超平面区分real和fake;
  2. 训练判别器, 使得real和fake分得更开;
  3. 训练生成器, 使得real趋向错分一侧.

主要内容

Geometric GAN

McGAN

本文启发自McGAN, 在此基础上, 有了下文.

结合SVM

设想, GAN的判别器D(x)=S(w,Φζ(x))D(x) = S(\langle w, \Phi_{\zeta}(x) \rangle), 其中SS是一个**函数, 常见如sigmoid, 先假设其为identity(即D(x)=w,Φζ(x)D(x)=\langle w, \Phi_{\zeta}(x) \rangle).

McGAN 是借助w,Φζ(x)\langle w, \Phi_{\zeta}(x)\rangle来构建IPM, 并通过此来训练GAN. 但是,注意到, 若将Φζ(x)\Phi_{\zeta}(x)视作从xx中提取出来的特征, 则w,Φζ(x)\langle w, \Phi_{\zeta}(x)\rangle便是利用线性分类器进行分类,那么很自然地可以将SVM引入其中(训练判别器的过程.

minw,b12w2+Ci(ξi+ξi)subjecttow,Φζ(xi)+b1ξii=1,,nw,Φζ(gθ(zi))+bξi1i=1,,nξi,ξi0,i=1,,n. \begin{array}{rcl} \min_{w, b} & \frac{1}{2} \|w\|^2 + C \sum_i (\xi_i + \xi_i') & \\ \mathrm{subject \: to} & \langle w, \Phi_{\zeta}(x_i) \rangle + b \ge 1-\xi_i & i=1,\ldots, n\\ & \langle w, \Phi_{\zeta}(g_{\theta}(z_i)) \rangle + b \le \xi_i'-1 & i=1,\ldots,n \\ & \xi_i, \xi_i' \ge 0, \: i=1,\ldots,n. \end{array}

类似于
minw,bRθ(w,b;ζ),(13) \tag{13} \min_{w,b} \: R_{\theta}(w,b;\zeta),
其中
Rθ(w,b;ζ)=12Cnw2+1ni=1nmax(0,1w,Φζ(xi)b)+1ni=1nmax(0,1+w,Φζ(gθ(zi))+b).(14) \tag{14} \begin{array}{ll} R_{\theta}(w,b;\zeta) = & \frac{1}{2C n} \|w\|^2 + \frac{1}{n} \sum_{i=1}^n \max (0, 1-\langle w, \Phi_{\zeta} (x_i) \rangle -b) \\ & + \frac{1}{n} \sum_{i=1}^n \max (0, 1+ \langle w, \Phi_{\zeta}(g_{\theta}(z_i))\rangle+b). \end{array}

进一步地, 用以训练ζ\zeta:
minw,b,ζRθ(w,b;ζ).(15) \tag{15} \min_{w,b,\zeta} \: R_{\theta}(w,b;\zeta).

SVM关于ww有如下最优解
wSVM:=i=1nαiΦζ(xi)i=1nβiΦζ(gθ(zi)), w^{SVM} := \sum_{i=1}^n \alpha_i \Phi_{\zeta}(x_i) - \sum_{i=1}^n \beta_i \Phi_{\zeta} (g_{\theta}(z_i)),
其中αi,βi\alpha_i, \beta_i只有对支持向量非零.

定义
M={ϕΞwSVM,ϕ+b1} \mathcal{M} = \{\phi \in \Xi | |\langle w^{SVM}, \phi \rangle + b | \le 1\}
为margin上及其内部区域的点.
Geometric GAN

于是
Rθ(w,b;ζ)=1ni=1nwSVM,siΦζ(gθ(zi))tiΦζ(xi)+constant,(18) \tag{18} \begin{array}{ll} R_{\theta}(w,b;\zeta) = \frac{1}{n} \sum_{i=1}^n \langle w^{SVM}, s_i \Phi_{\zeta} (g_{\theta}(z_i))-t_i \Phi_{\zeta}(x_i) \rangle + \mathrm{constant}, \end{array}
其中
ti={1,Φζ(xi)M0,otherwise,si={1,Φζ(gθ(zi))M0,otherwise.(19) \tag{19} t_i = \left \{ \begin{array}{ll} 1, & \Phi_{\zeta}(x_i) \in \mathcal{M} \\ 0, & \mathrm{otherwise} \end{array} \right. , \quad s_i = \left \{ \begin{array}{ll} 1, & \Phi_{\zeta}(g_{\theta}(z_i)) \in \mathcal{M}\\ 0, & \mathrm{otherwise}. \end{array} \right.

训练ζ\zeta

于是ζ\zeta由此来训练
ζζ+η1ni=1nwSVM,tiζΦζ(xi)siζΦζ(gθ(zi)). \zeta \leftarrow \zeta +\eta \frac{1}{n} \sum_{i=1}^n \langle w^{SVM}, t_i \nabla_{\zeta} \Phi_{\zeta}(x_i) - s_i \nabla_{\zeta}\Phi_{\zeta} (g_{\theta}(z_i)) \rangle .

训练gθg_{\theta}

就是固定w,b,ζw,b,\zeta训练θ\theta.

所以
minθLw,b,ζ(θ), \min_{\theta} \: L_{w, b, \zeta}(\theta),
其中
Lw,b,ζ(θ)=1ni=1nD(gθ(zi)), L_{w,b,\zeta}(\theta)= -\frac{1}{n} \sum_{i=1}^n D(g_{\theta}(z_i)),
于是
θθ+η1ni=1nwSVM,siθΦζ(gθ(zi)). \theta \leftarrow \theta+\eta \frac{1}{n} \sum_{i=1}^n \langle w^{SVM}, s_i \nabla_{\theta}\Phi_{\zeta} (g_{\theta}(z_i)) \rangle .

理论分析

nn \rightarrow \infty的时候
Geometric GAN
Geometric GAN
Geometric GAN

定理1: 假设(D,g)(D^*,g^*)是(24), (25)交替最小化解, 则pg(x)=px(x)p_{g^*}(x)=p_x(x)几乎处处成立, 此时R(D,G=2R(D^*,G^*)=2.

注: 假体最小化是指在固定gg^*下, R(D,g)R(D^*,g^*)最小,在固定DD^*L(D,g)L(D^*,g^*)最小.

证明

Geometric GAN

Geometric GAN
Geometric GAN

注:文中附录分析了各种GAN的超平面分割解释, 挺有意思的.