Triple Generative Adversarial Nets

Chongxuan Li, Kun Xu, Jun Zhu, Bo Zhang

Introduction

Deep generative models (DGMs) can capture the underlying distributions of the data and synthesize new samples. Recently, significant progress has been made on generating realistic images based on Generative Adversarial Nets (GANs) . GAN is formulated as a two-player game, where the generator GG takes a random noise zz as input and produces a sample G(z)G(z) in the data space while the discriminator DD identifies whether a certain sample comes from the true data distribution p(x)p(x) or the generator. Both GG and DD are parameterized as deep neural networks and the training procedure is to solve a minimax problem:

where pz(z)p_{z}(z) is a simple distribution (e.g., uniform or normal) and U(⋅)U(\cdot) denotes the utilities. Given a generator and the defined distribution pgp_{g}, the optimal discriminator is D(x)=p(x)/(pg(x)+p(x))D(x)=p(x)/(p_{g}(x)+p(x)) in the nonparametric setting, and the global equilibrium of this game is achieved if and only if pg(x)=p(x)p_{g}(x)=p(x) , which is desired in terms of image generation.

GANs and DGMs in general have also proven effective in semi-supervised learning (SSL) , while retaining the generative capability. Under the same two-player game framework, Cat-GAN generalizes GANs with a categorical discriminative network and an objective function that minimizes the conditional entropy of the predictions given the real data while maximizes the conditional entropy of the predictions given the generated samples. Odena and Salimans et al. augment the categorical discriminator with one more class, corresponding to the fake data generated by the generator. There are two main problems in existing GANs for SSL: (1) the generator and the discriminator (i.e. the classifier) may not be optimal at the same time ; and (2) the generator cannot control the semantics of the generated samples.

For the first problem, as an instance, Salimans et al. propose two alternative training objectives that work well for either classification or image generation in SSL, but not both. The objective of feature matching works well in classification but fails to generate indistinguishable samples (See Sec.5.2 for examples), while the other objective of minibatch discrimination is good at realistic image generation but cannot predict labels accurately. The phenomena are not analyzed deeply in and here we argue that they essentially arise from the two-player formulation, where a single discriminator has to play two incompatible roles—identifying fake samples and predicting labels. Specifically, assume that GG is optimal, i.e p(x)=pg(x)p(x)=p_{g}(x), and consider a sample x∼pg(x)x\sim p_{g}(x). On one hand, as a discriminator, the optimal DD should identify xx as a fake sample with non-zero probability (See for the proof). On the other hand, as a classifier, the optimal DD should always predict the correct class of xx confidently since x∼p(x)x\sim p(x). It conflicts as DD has two incompatible convergence points, which indicates that GG and DD may not be optimal at the same time. Moreover, the issue remains even given imperfect GG, as long as pg(x)p_{g}(x) and p(x)p(x) overlaps as in most of the real cases. Given a sample form the overlapped area, the two roles of DD still compete by treating the sample differently, leading to a poor classifierThe results of minibatch discrimination approach in well support our analysis.. Namely, the learning capacity of existing two-player models is restricted, which should be addressed to advance current SSL results.

For the second problem, disentangling meaningful physical factors like the object category from the latent representations with limited supervision is of general interest . However, to our best knowledge, none of the existing GANs can learn the disentangled representations in SSL, though some work can learn such representations given full labels. Again, we believe that the problem is caused by their two-player formulation. Specifically, the discriminators in take a single data instead of a data-label pair as input and the label information is totally ignored when justifying whether a sample is real or fake. Therefore, the generators will not receive any learning signal regarding the label information from the discriminators and hence such models cannot control the semantics of the generated samples, which is not satisfactory.

To address these problems, we present Triple-GAN, a flexible game-theoretical framework for both classification and class-conditional image generation in SSL, where we have a partially labeled dataset. We introduce two conditional networks–a classifier and a generator to generate pseudo labels given real data and pseudo data given real labels, respectively. To jointly justify the quality of the samples from the conditional networks, we define a single discriminator network which has the sole role of distinguishing whether a data-label pair is from the real labeled dataset or not. The resulting model is called Triple-GAN because not only are there three networks, but we consider three joint distributions, i.e. the true data-label distribution and the distributions defined by the conditional networks (See Figure 1 for the illustration of Triple-GAN). Directly motivated by the desirable equilibrium that both the classifier and the conditional generator are optimal, we carefully design compatible utilities including adversarial losses and unbiased regularizations (See Sec. 3), which lead to an effective solution to the challenging SSL task, justified both in theory and practice.

In particular, theoretically, instead of competing as stated in the first problem, a good classifier will result in a good generator and vice versa in Triple-GAN (See Sec. 3.2 for the proof). Furthermore, the discriminator can access the label information of the unlabeled data from the classifier and then force the generator to generate correct image-label pairs, which addresses the second problem. Empirically, we evaluate our model on the widely adopted MNIST , SVHN and CIFAR10 datasets. The results (See Sec. 5) demonstrate that Triple-GAN can simultaneously learn a good classifier and a conditional generator, which agrees with our motivation and theoretical results.

Overall, our main contributions are two folded: (1) we analyze the problems in existing SSL GANs and propose a novel game-theoretical Triple-GAN framework to address them with carefully designed compatible objectives; and (2) we show that on the three datasets with incomplete labels, Triple-GAN can advance the state-of-the-art classification results of DGMs substantially and, at the same time, disentangle classes and styles and perform class-conditional interpolation.

Related Work

Recently, various approaches have been developed to learn directed DGMs, including Variational Autoencoders (VAEs) , Generative Moment Matching Networks (GMMNs) and Generative Adversarial Nets (GANs) . These criteria are systematically compared in .

One primal goal of DGMs is to generate realistic samples, for which GANs have proven effective. Specifically, LAP-GAN leverages a series of GANs to upscale the generated samples to high resolution images through the Laplacian pyramid framework . DCGAN adopts (fractionally) strided convolution layers and batch normalization in GANs and generates realistic natural images.

Recent work has introduced inference networks in GANs. For instance, InfoGAN learns explainable latent codes from unlabeled data by regularizing the original GANs via variational mutual information maximization. In ALI , the inference network approximates the posterior distribution of latent variables given true data in unsupervised manner. Triple-GAN also has an inference network (classifier) as in ALI but there exist two important differences in the global equilibria and utilities between them: (1) Triple-GAN matches both the distributions defined by the generator and classifier to true data distribution while ALI only ensures that the distributions defined by the generator and inference network to be the same; (2) the discriminator will reject the samples from the classifier in Triple-GAN while the discriminator will accept the samples from the inference network in ALI, which leads to different update rules for the discriminator and inference network. These differences naturally arise because Triple-GAN is proposed to solve the existing problems in SSL GANs as stated in the introduction. Indeed, ALI uses the same approach as to deal with partially labeled data and hence it still suffers from the problems. In addition, Triple-GAN outperforms ALI significantly in the semi-supervised classification task (See comparison in Table. 1).

To handle partially labeled data, the conditional VAE treats the missing labels as latent variables and infer them for unlabeled data. ADGM introduces auxiliary variables to build a more expressive variational distribution and improve the predictive performance. The Ladder Network employs lateral connections between a variation of denoising autoencoders and obtains excellent SSL results. Cat-GAN generalizes GANs with a categorical discriminator and an objective function. Salimans et al. propose empirical techniques to stabilize the training of GANs and improve the performance on SSL and image generation under incompatible learning criteria. Triple-GAN differs significantly from these methods, as stated in the introduction.

Method

We consider learning DGMs in the semi-supervised setting,Supervised learning is an extreme case, where the training set is fully labeled. where we have a partially labeled dataset with xx denoting the input data and yy denoting the output label. The goal is to predict the labels yy for unlabeled data as well as to generate new samples xx conditioned on yy. This is different from the unsupervised setting for pure generation, where the only goal is to sample data xx from a generator to fool a discriminator; thus a two-player game is sufficient to describe the process as in GANs. In our setting, as the label information yy is incomplete (thus uncertain), our density model should characterize the uncertainty of both xx and yy, therefore a joint distribution p(x,y)p(x,y) of input-label pairs.

A straightforward application of the two-player GAN is infeasible because of the missing values on yy. Unlike the previous work , which is restricted to the two-player framework and can lead to incompatible objectives, we build our game-theoretic objective based on the insight that the joint distribution can be factorized in two ways, namely, p(x,y)=p(x)p(y∣x)p(x,y)=p(x)p(y|x) and p(x,y)=p(y)p(x∣y)p(x,y)=p(y)p(x|y), and that the conditional distributions p(y∣x)p(y|x) and p(x∣y)p(x|y) are of interest for classification and class-conditional generation, respectively. To jointly estimate these conditional distributions, which are characterized by a classifier network and a class-conditional generator network, we define a single discriminator network which has the sole role of distinguishing whether a sample is from the true data distribution or the models. Hence, we naturally extend GANs to Triple-GAN, a three-player game to characterize the process of classification and class-conditional generation in SSL, as detailed below.

Triple-GAN consists of three components: (1) a classifier CC that (approximately) characterizes the conditional distribution pc(y∣x)≈p(y∣x)p_{c}(y|x)\approx p(y|x); (2) a class-conditional generator GG that (approximately) characterizes the conditional distribution in the other direction pg(x∣y)≈p(x∣y)p_{g}(x|y)\approx p(x|y); and (3) a discriminator DD that distinguishes whether a pair of data (x,y)(x,y) comes from the true distribution p(x,y)p(x,y). All the components are parameterized as neural networks. Our desired equilibrium is that the joint distributions defined by the classifier and the generator both converge to the true data distribution. To this end, we design a game with compatible utilities for the three players as follows.

We make the mild assumption that the samples from both p(x)p(x) and p(y)p(y) can be easily obtained.In semi-supervised learning, p(x)p(x) is the empirical distribution of inputs and p(y)p(y) is assumed same to the distribution of labels on labeled data, which is uniform in our experiment. In the game, after a sample xx is drawn from p(x)p(x), CC produces a pseudo label yy given xx following the conditional distribution pc(y∣x)p_{c}(y|x). Hence, the pseudo input-label pair is a sample from the joint distribution pc(x,y)=p(x)pc(y∣x)p_{c}(x,y)=p(x)p_{c}(y|x). Similarly, a pseudo input-label pair can be sampled from GG by first drawing y∼p(y)y\sim p(y) and then drawing x∣y∼pg(x∣y)x|y\sim p_{g}(x|y); hence from the joint distribution pg(x,y)=p(y)pg(x∣y)p_{g}(x,y)=p(y)p_{g}(x|y). For pg(x∣y)p_{g}(x|y), we assume that xx is transformed by the latent style variables zz given the label yy, namely, x=G(y,z),z∼pz(z)x=G(y,z),z\sim p_{z}(z), where pz(z)p_{z}(z) is a simple distribution (e.g., uniform or standard normal). Then, the pseudo input-label pairs (x,y)(x,y) generated by both CC and GG are sent to the single discriminator DD for judgement. DD can also access the input-label pairs from the true data distribution as positive samples. We refer the utilities in the process as adversarial losses, which can be formulated as a minimax game:

where α∈(0,1)\alpha\in(0,1) is a constant that controls the relative importance of generation and classification and we focus on the balance case by fixing it as 1/21/2 throughout the paper.

The game defined in Eqn. (1) achieves its equilibrium if and only if p(x,y)=(1−α)pg(x,y)+αpc(x,y)p(x,y)=(1-\alpha)p_{g}(x,y)+\alpha p_{c}(x,y) (See details in Sec. 3.2). The equilibrium indicates that if one of CC and GG tends to the data distribution, the other will also go towards the data distribution, which addresses the competing problem. However, unfortunately, it cannot guarantee that p(x,y)=pg(x,y)=pc(x,y)p(x,y)=p_{g}(x,y)=p_{c}(x,y) is the unique global optimum, which is not desirable. To address this problem, we introduce the standard supervised loss (i.e., cross-entropy loss) to CC, RL=E(x,y)∼p(x,y)[−log⁡pc(y∣x)]\mathcal{R}_{\mathcal{L}}=E_{(x,y)\sim p(x,y)}[-\log p_{c}(y|x)], which is equivalent to the KL-divergence between pc(x,y)p_{c}(x,y) and p(x,y)p(x,y). Consequently, we define the game as:

2 Theoretical Analysis and Pseudo Discriminative Loss

We now provide a formal theoretical analysis of Triple-GAN under nonparametric assumptions and introduce the pseudo discriminative loss, which is an unbiased regularization motivated by the global equilibrium. For clarity of the main text, we defer the proof details to Appendix A.

First, we can show that the optimal DD balances between the true data distribution and the mixture distribution defined by CC and GG, as summarized in Lemma 3.1.

For any fixed CC and GG, the optimal DD of the game defined by the utility function U(C,G,D)U(C,G,D) is:

where pα(x,y):=(1−α)pg(x,y)+αpc(x,y)p_{\alpha}(x,y):=(1-\alpha)p_{g}(x,y)+\alpha p_{c}(x,y) is a mixture distribution for α∈(0,1)\alpha\in(0,1).

Given DC,G∗D_{C,G}^{*}, we can omit DD and reformulate the minimax game with value function UU as: V(C,G)=max⁡DU(C,G,D),V(C,G)=\max_{D}U(C,G,D), whose optimal point is summarized as in Lemma 3.2.

The global minimum of V(C,G)V(C,G) is achieved if and only if p(x,y)=pα(x,y)p(x,y)=p_{\alpha}(x,y).

We can further show that CC and GG can at least capture the marginal distributions of data, especially for pg(x)p_{g}(x), even there may exist multiple global equilibria, as summarized in Corollary 3.2.1.

Given p(x,y)=pα(x,y)p(x,y)=p_{\alpha}(x,y), the marginal distributions are the same for pp, pcp_{c} and pgp_{g}, i.e. p(x)=pg(x)=pc(x)p(x)=p_{g}(x)=p_{c}(x) and p(y)=pg(y)=pc(y)p(y)=p_{g}(y)=p_{c}(y).

The conclusion essentially motivates our design of Triple-GAN, as we can ensure that both CC and GG will converge to the true data distribution if the model has been trained to achieve the optimum.

Because label information is extremely insufficient in SSL, we propose pseudo discriminative loss RP=Epg[−log⁡pc(y∣x)]\mathcal{R}_{\mathcal{P}}=E_{p_{g}}[-\log p_{c}(y|x)], which optimizes CC on the samples generated by GG in the supervised manner. Intuitively, a good GG can provide meaningful labeled data beyond the training set as extra side information for CC, which will boost the predictive performance (See Sec. 5.1 for the empirical evidence). Indeed, minimizing pseudo discriminative loss with respect to CC is equivalent to minimizing DKL(pg(x,y)∣∣pc(x,y))D_{KL}(p_{g}(x,y)||p_{c}(x,y)) (See Appendix A for proof) and hence the global equilibrium remains following Corollary 3.3.1. Also note that directly minimizing DKL(pg(x,y)∣∣pc(x,y))D_{KL}(p_{g}(x,y)||p_{c}(x,y)) is infeasible since its computation involves the unknown likelihood ratio pg(x,y)/pc(x,y)p_{g}(x,y)/p_{c}(x,y). The pseudo discriminative loss is weighted by a hyperparameter αP\alpha_{\mathcal{P}}. See Algorithm 1 for the whole training procedure, where θc\theta_{c}, θd\theta_{d} and θg\theta_{g} are trainable parameters in CC, DD and GG respectively.

Practical Techniques

In this section we introduce several practical techniques used in the implementation of Triple-GAN, which may lead to a biased solution theoretically but work well for challenging SSL tasks empirically.

One crucial problem of SSL is the small size of the labeled data. In Triple-GAN, DD may memorize the empirical distribution of the labeled data, and reject other types of samples from the true data distribution. Consequently, GG may collapse to these modes. To this end, we generate pseudo labels through CC for some unlabeled data and use these pairs as positive samples of DD. The cost is on introducing some bias to the target distribution of DD, which is a mixture of pcp_{c} and pp instead of the pure pp. However, this is acceptable as CC converges quickly and pcp_{c} and pp are close (See results in Sec.5).

Since properly leveraging the unlabeled data is key to success in SSL, it is necessary to regularize CC heuristically as in many existing methods to make more accurate predictions. We consider two alternative losses on the unlabeled data. The confidence loss minimizes the conditional entropy of pc(y∣x)p_{c}(y|x) and the cross entropy between p(y)p(y) and pc(y)p_{c}(y), weighted by a hyperparameter αB\alpha_{\mathcal{B}}, as \mathcal{R}_{\mathcal{U}}=H_{p_{c}}(y|x)+\alpha_{\mathcal{B}}E_{p}\big{[}-\log p_{c}(y)\big{]}, which encourages CC to make predictions confidently and be balanced on the unlabeled data. The consistency loss penalizes the network if it predicts the same unlabeled data inconsistently given different noise ϵ\epsilon, e.g., dropout masks, as RU=Ex∼p(x)∣∣pc(y∣x,ϵ)−pc(y∣x,ϵ′)∣∣2,\mathcal{R}_{\mathcal{U}}=E_{x\sim p(x)}||p_{c}(y|x,\epsilon)-p_{c}(y|x,\epsilon^{\prime})||^{2}, where ∣∣⋅∣∣2||\cdot||^{2} is the square of the l2l_{2}-norm. We use the confidence loss by default except on the CIFAR10 dataset (See details in Sec. 5).

Another consideration is to compute the gradients of Ex∼p(x),y∼pc(y∣x)[log⁡(1−D(x,y))]E_{x\sim p(x),y\sim p_{c}(y|x)}[\log(1-D(x,y))] with respect to the parameters θc\theta_{c} in CC, which involves summation over the discrete random variable yy, i.e. the class label. On one hand, integrating out the class label is time consuming. On the other hand, directly sampling one label to approximate the expectation via the Monte Carlo method makes the feedback of the discriminator not differentiable with respect to θc\theta_{c}. As the REINFORCE algorithm can deal with such cases with discrete variables, we use a variant of it for the end-to-end training of our classifier. The gradients in the original REINFORCE algorithm should be Ex∼p(x)Ey∼pc(y∣x)[∇θclog⁡pc(y∣x)log⁡(1−D(x,y))]E_{x\sim p(x)}E_{y\sim p_{c}(y|x)}[\nabla_{\theta_{c}}\log p_{c}(y|x)\log(1-D(x,y))]. In our experiment, we find the best strategy is to use most probable yy instead of sampling one to approximate the expectation over yy. The bias is small as the prediction of CC is rather confident typically.

Experiments

We now present results on the widely adopted MNIST , SVHN , and CIFAR10 datasets. MNIST consists of 50,000 training samples, 10,000 validation samples and 10,000 testing samples of handwritten digits of size 28×2828\times 28. SVHN consists of 73,257 training samples and 26,032 testing samples and each is a colored image of size 32×3232\times 32, containing a sequence of digits with various backgrounds. CIFAR10 consists of colored images distributed across 10 general classes—airplane, automobile, bird, cat, deer, dog, frog, horse, ship and truck. There are 50,000 training samples and 10,000 testing samples of size 32×3232\times 32 in CIFAR10. We split 5,000 training data of SVHN and CIFAR10 for validation if needed. On CIFAR10, we follow to perform ZCA for the input of CC but still generate and estimate the raw images using GG and DD.

We implement our method based on Theano and here we briefly summarize our experimental settings.Our source code is available at https://github.com/zhenxuan00/triple-gan Though we have an additional network, the generator and classifier of Triple-GAN have comparable architectures to those of the baselines (See details in Appendix F). The pseudo discriminative loss is not applied until the number of epochs reach a threshold that the generator could generate meaningful data. We only search the threshold in {200,300}\{200,300\}, αP\alpha_{\mathcal{P}} in {0.1,0.03}\{0.1,0.03\} and the global learning rate in {0.0003,0.001}\{0.0003,0.001\} based on the validation performance on each dataset. All of the other hyperparameters including relative weights and parameters in Adam are fixed according to across all of the experiments. Further, in our experiments, we find that the training techniques for the original two-player GANs are sufficient to stabilize the optimization of Triple-GAN.

For fair comparison, all the results of the baselines are from the corresponding papers and we average Triple-GAN over 10 runs with different random initialization and splits of the training data and report the mean error rates with the standard deviations following .

Firstly, we compare our method with a large body of approaches in the widely used settings on MNIST, SVHN and CIFAR10 datasets given 100, 1,000 and 4,000 labelsWe use these amounts of labels as default settings throughout the paper if not specified., respectively. Table 1 summarizes the quantitative results. On all of the three datasets, Triple-GAN achieves the state-of-the-art results consistently and it substantially outperforms the strongest competitors (e.g., Improved-GAN) on more challenging SVHN and CIFAR10 datasets, which demonstrate the benefit of compatible learning objectives proposed in Triple-GAN. Note that for a fair comparison with previous GANs, we do not leverage the extra unlabeled data on SVHN, while some baselines do.

Secondly, we evaluate our method with 20, 50 and 200 labeled samples on MNIST for a systematical comparison with our main baseline Improved-GAN , as shown in Table 2. Triple-GAN consistently outperforms Improved-GAN with a substantial margin, which again demonstrates the benefit of Triple-GAN. Besides, we can see that Triple-GAN achieves more significant improvement as the number of labeled data decreases, suggesting the effectiveness of the pseudo discriminative loss.

Finally, we investigate the reasons for the outstanding performance of Triple-GAN. We train a single CC without GG and DD on SVHN as the baseline and get more than 10%10\% error rate, which shows that GG is important for SSL even though CC can leverage unlabeled data directly. On CIFAR10, the baseline (a simple version of Π\Pi model ) achieves 17.7% error rate. The smaller improvement is reasonable as CIFAR10 is more complex and hence GG is not as good as in SVHN. In addition, we evaluate Triple-GAN without the pseudo discriminative loss on SVHN and it achieves about 7.8%7.8\% error rate, which shows the advantages of compatible objectives (better than the 8.11% error rate of Improved-GAN) and the importance of the pseudo discriminative loss (worse than the complete Triple-GAN by 2%). Furthermore, Triple-GAN has a comparable convergence speed with Improved-GAN , as shown in Appendix E.

2 Generation

We demonstrate that Triple-GAN can learn good GG and CC simultaneously by generating samples in various ways with the exact models used in Sec. 5.1. For fair comparison, the generative model and the number of labels are the same to the previous method .

In Fig. 2 (a-b), we first compare the quality of images generated by Triple-GAN on SVHN and the Improved-GAN with feature matching ,Though the Improved-GAN trained with minibatch discrimination can generate good samples, it fails to predict labels accurately. which works well for semi-supervised classification. We can see that Triple-GAN outperforms the baseline by generating fewer meaningless samples and clearer digits. Further, the baseline generates the same strange sample four times, labeled with red rectangles in Fig. 2 . The comparison on MNIST and CIFAR10 is presented in Appendix B. We also evaluate the samples on CIFAR10 quantitatively via the inception score following . The value of Triple-GAN is 5.08±0.095.08\pm 0.09 while that of the Improved-GAN trained without minibatch discrimination is 3.87±0.033.87\pm 0.03, which agrees with the visual comparison. We then illustrate images generated from two specific classes on CIFAR10 in Fig. 2 (c-d) and see more in Appendix C. In most cases, Triple-GAN is able to generate meaningful images with correct semantics.

Further, we show the ability of Triple-GAN to disentangle classes and styles in Fig. 3. It can be seen that Triple-GAN can generate realistic data in a specific class and the latent factors encode meaningful physical factors like: scale, intensity, orientation, color and so on. Some GANs can generate data class-conditionally given full labels, while Triple-GAN can do similar thing given much less label information.

Finally, we demonstrate the generalization capability of our Triple-GAN on class-conditional latent space interpolation as in Fig. 4. Triple-GAN can transit smoothly from one sample to another with totally different visual factors without losing label semantics, which proves that Triple-GANs can learn meaningful latent spaces class-conditionally instead of overfitting to the training data, especially labeled data. See these results on MNIST in Appendix D.

Overall, these results confirm that Triple-GAN avoid the competition between CC and GG and can lead to a situation where both the generation and classification are good in semi-supervised learning.

Conclusions

We present triple generative adversarial networks (Triple-GAN), a unified game-theoretical framework with three players—a generator, a discriminator and a classifier, to do semi-supervised learning with compatible utilities. With such utilities, Triple-GAN addresses two main problems of existing methods . Specifically, Triple-GAN ensures that both the classifier and the generator can achieve their own optima respectively in the perspective of game theory and enable the generator to sample data in a specific class. Our empirical results on MNIST, SVHN and CIFAR10 datasets demonstrate that as a unified model, Triple-GAN can simultaneously achieve the state-of-the-art classification results among deep generative models and disentangle styles and classes and transfer smoothly on the data level via interpolation in the latent space.

The work is supported by the National NSF of China (Nos. 61620106010, 61621136008, 61332007), the MIIT Grant of Int. Man. Comp. Stan. and New Bus. Pat. “Int. Man. Eval. In. Stan. R. & V.”, the Youth Top-notch Talent Support Program, Tsinghua Tiangong Institute for Intelligent Computing, the NVIDIA NVAIL Program and a Project from Siemens.

References

Appendix A Detailed Theoretical Analysis

For any fixed CC and GG, the optimal discriminator DD of the game defined by the utility function U(C,G,D)U(C,G,D) is

where pα(x,y):=(1−α)pg(x,y)+αpc(x,y)p_{\alpha}(x,y):=(1-\alpha)p_{g}(x,y)+\alpha p_{c}(x,y) is a mixture distribution for α∈(0,1)\alpha\in(0,1).

Given the classifier and generator, the utility function can be rewritten as

Note that the function f(D(x,y))f(D(x,y)) achieves the maximum at p(x,y)p(x,y)+pα(x,y)\frac{p(x,y)}{p(x,y)+p_{\alpha}(x,y)}.

The global minimum of V(C,G)V(C,G) is achieved if and only if p(x,y)=pα(x,y)p(x,y)=p_{\alpha}(x,y).

Given DC,G∗D_{C,G}^{*}, we can reformulate the minimax game with value function UU as:

Following the proof in GAN, the V(C,G)V(C,G) can be rewritten as

where JSDJSD is the Jensen-Shannon divergence, which is always non-negative and the unique optimum is achieved if and only if p(x,y)=pα(x,y)=(1−α)pg(x,y)+αpc(x,y)p(x,y)=p_{\alpha}(x,y)=(1-\alpha)p_{g}(x,y)+\alpha p_{c}(x,y). ∎

Given p(x,y)=pα(x,y)p(x,y)=p_{\alpha}(x,y), the marginal distributions are the same for pp, pcp_{c} and pgp_{g}, i.e. p(x)=pg(x)=pc(x)p(x)=p_{g}(x)=p_{c}(x) and p(y)=pg(y)=pc(y)p(y)=p_{g}(y)=p_{c}(y).

Remember that pg(x,y)=p(y)pg(x∣y)p_{g}(x,y)=p(y)p_{g}(x|y) and pc(x,y)=p(x)pc(y∣x)p_{c}(x,y)=p(x)p_{c}(y|x). Take integral with respect to xx on both sides of p(x,y)=pα(x,y)p(x,y)=p_{\alpha}(x,y) to get

Similarly, it can be shown that pg(x)=p(x)=pc(x)p_{g}(x)=p(x)=p_{c}(x) by taking integral with respect to yy. ∎

Pseudo discriminative loss We prove the equivalence of the pseudo discriminative loss in the main text and KL-divergence DKL(pg(x,y)∣∣pc(x,y))D_{KL}(p_{g}(x,y)||p_{c}(x,y)) as follows:

Note that the last equality holds as pc(x)=p(x)p_{c}(x)=p(x) and Hpg(y∣x)−DKL(pg(x)∣∣p(x))H_{p_{g}}(y|x)-D_{KL}(p_{g}(x)||p(x)) is a constant with respective to θc\theta_{c}. Therefore, if we only optimize CC, these two losses are equivalent.

Appendix B Unconditional Generation

We compare the samples generated from Triple-GAN and Improved-GAN on the MNIST and CIFAR10 datasets as in Fig. 5, where Triple-GAN shares the same architecture of generator and number of labeled data with the baseline. It can be seen that Triple-GAN outperforms the GANs that are trained with the feature matching criterion on generating indistinguishable samples.

Appendix C Class-conditional Generation on CIFAR10

We show more class-conditional generation results on CIFAR10 in Fig. 6. Again, we can see that Triple-GAN can generate meaningful images in specific classes.

Appendix D Disentanglement and Interpolation on the MNIST dataset

We present the disentanglement of class and style and class-conditional interpolation on the MNIST dataset as in Fig. 7. We have the same conclusion as in main text that Triple-GAN is able to transfer smoothly on the data level with clear semantics.

Appendix E Convergence Speed

Though Triple-GAN has one more network, its convergence speed is at least comparable with Improved-GAN, as presented in Fig. 8. Both the models are trained on SVHN dataset with default settings and Triple-GAN can get good results in tens of epochs. The reason that the learning curve of Triple-GAN is oscillatory may be the larger variance of the gradients due to the presence of discrete variables. Also note that we apply pseudo discriminative loss at epoch 200 and then the test error is reduced significantly in 100 epochs.

Appendix F Detailed Architectures

We list the detailed architectures of Triple-GAN on MNIST, SVHN and CIFAR10 datasets in Table 3, Table 4 and Table 5, respectively.