Log In Sign Up

f-GAN: Training Generative Neural Samplers using Variational Divergence Minimization

by   Sebastian Nowozin, et al.

Generative neural samplers are probabilistic models that implement sampling using feedforward neural networks: they take a random input vector and produce a sample from a probability distribution defined by the network weights. These models are expressive and allow efficient computation of samples and derivatives, but cannot be used for computing likelihoods or for marginalization. The generative-adversarial training method allows to train such models through the use of an auxiliary discriminative neural network. We show that the generative-adversarial approach is a special case of an existing more general variational divergence estimation approach. We show that any f-divergence can be used for training generative neural samplers. We discuss the benefits of various choices of divergence functions on training complexity and the quality of the obtained generative models.


page 7

page 8


Non-saturating GAN training as divergence minimization

Non-saturating generative adversarial network (GAN) training is widely u...

Variational f-divergence Minimization

Probabilistic models are often trained by maximum likelihood, which corr...

Training Discriminative Models to Evaluate Generative Ones

Generative models are known to be difficult to assess. Recent works, esp...

Can Push-forward Generative Models Fit Multimodal Distributions?

Many generative models synthesize data by transforming a standard Gaussi...

Information Theoretic Structured Generative Modeling

Rényi's information provides a theoretical foundation for tractable and ...

Modelling nonlinear dependencies in the latent space of inverse scattering

The problem of inverse scattering proposed by Angles and Mallat in 2018,...

Learning to Draw Samples: With Application to Amortized MLE for Generative Adversarial Learning

We propose a simple algorithm to train stochastic neural networks to dra...

1 Introduction

Probabilistic generative models describe a probability distribution over a given domain , for example a distribution over natural language sentences, natural images, or recorded waveforms.

Given a generative model from a class of possible models we are generally interested in performing one or multiple of the following operations:

  • Sampling. Produce a sample from . By inspecting samples or calculating a function on a set of samples we can obtain important insight into the distribution or solve decision problems.

  • Estimation. Given a set of iid samples from an unknown true distribution , find that best describes the true distribution.

  • Point-wise likelihood evaluation. Given a sample , evaluate the likelihood .

Generative-adversarial networks (GAN) in the form proposed by [10]

are an expressive class of generative models that allow exact sampling and approximate estimation. The model used in GAN is simply a feedforward neural network which receives as input a vector of random numbers, sampled, for example, from a uniform distribution. This random input is passed through each layer in the network and the final layer produces the desired output, for example, an image. Clearly, sampling from a GAN model is efficient because only one forward pass through the network is needed to produce one exact sample.

Such probabilistic feedforward neural network models were first considered in [22] and [3], here we call these models generative neural samplers

. GAN is also of this type, as is the decoder model of a variational autoencoder 


In the original GAN paper the authors show that it is possible to estimate neural samplers by approximate minimization of the symmetric Jensen-Shannon divergence,



denotes the Kullback-Leibler divergence. The key technique used in the GAN training is that of introducing a second “

discriminator” neural networks which is optimized simultaneously. Because is a proper divergence measure between distributions this implies that the true distribution can be approximated well in case there are sufficient training samples and the model class is rich enough to represent .

In this work we show that the principle of GANs is more general and we can extend the variational divergence estimation framework proposed by Nguyen et al. [25] to recover the GAN training objective and generalize it to arbitrary -divergences.

More concretely, we make the following contributions over the state-of-the-art:

  • We derive the GAN training objectives for all -divergences and provide as example additional divergence functions, including the Kullback-Leibler and Pearson divergences.

  • We simplify the saddle-point optimization procedure of Goodfellow et al. [10] and provide a theoretical justification.

  • We provide experimental insight into which divergence function is suitable for estimating generative neural samplers for natural images.

2 Method

We first review the divergence estimation framework of Nguyen et al. [25] which is based on -divergences. We then extend this framework from divergence estimation to model estimation.

2.1 The f-divergence Family

Statistical divergences such as the well-known Kullback-Leibler divergence measure the difference between two given probability distributions. A large class of different divergences are the so called -divergences [5, 21], also known as the Ali-Silvey distances [1]. Given two distributions and that possess, respectively, an absolutely continuous density function and with respect to a base measure defined on the domain , we define the -divergence,


where the generator function is a convex, lower-semicontinuous function satisfying . Different choices of recover popular divergences as special cases in (2). We illustrate common choices in Table 5. See supplementary material for more divergences and plots.

2.2 Variational Estimation of -divergences

Nguyen et al. [25] derive a general variational method to estimate -divergences given only samples from and . We will extend their method from merely estimating a divergence for a fixed model to estimating model parameters. We call this new method variational divergence minimization (VDM) and show that the generative-adversarial training is a special case of this more general VDM framework.

For completeness, we first provide a self-contained derivation of Nguyen et al’s divergence estimation procedure. Every convex, lower-semicontinuous function has a convex conjugate function , also known as Fenchel conjugate [14]. This function is defined as


The function is again convex and lower-semicontinuous and the pair is dual to another in the sense that . Therefore, we can also represent as . Nguyen et al. leverage the above variational representation of in the definition of the -divergence to obtain a lower bound on the divergence,


where is an arbitrary class of functions . The above derivation yields a lower bound for two reasons: first, because of Jensen’s inequality when swapping the integration and supremum operations. Second, the class of functions may contain only a subset of all possible functions.

By taking the variation of the lower bound in (4) w.r.t. , we find that under mild conditions on  [25], the bound is tight for


where denotes the first order derivative of . This condition can serve as a guiding principle for choosing and designing the class of functions . For example, the popular reverse Kullback-Leibler divergence corresponds to resulting in , see Table 5.

We list common -divergences in Table 5 and provide their Fenchel conjugates and the domains in Table 6. We provide plots of the generator functions and their conjugates in the supplementary materials.

Name Generator
Reverse KL
Squared Hellinger


Table 1: List of -divergences together with generator functions. Part of the list of divergences and their generators is based on [26]. For all divergences we have , where is convex and lower-semicontinuous. Also we have which ensures that for any distribution . As shown by [10] GAN is related to the Jensen-Shannon divergence through .

2.3 Variational Divergence Minimization (VDM)

We now use the variational lower bound (4) on the -divergence in order to estimate a generative model given a true distribution .

To this end, we follow the generative-adversarial approach [10] and use two neural networks, and . is our generative model, taking as input a random vector and outputting a sample of interest. We parametrize through a vector and write . is our variational function, taking as input a sample and returning a scalar. We parametrize using a vector and write .

We can learn a generative model by finding a saddle-point of the following -GAN objective function, where we minimize with respect to and maximize with respect to ,


To optimize (6) on a given finite training data set, we approximate the expectations using minibatch samples. To approximate we sample instances without replacement from the training set. To approximate we sample instances from the current generative model .

2.4 Representation for the Variational Function

To apply the variational objective (6) for different -divergences, we need to respect the domain of the conjugate functions . To this end, we assume that variational function is represented in the form and rewrite the saddle objective (6) as follows:


where without any range constraints on the output, and is an output activation function specific to the -divergence used. In Table 6

we propose suitable output activation functions for the various conjugate functions

and their domains.111Note that for numerical implementation we recommend directly implementing the scalar function robustly instead of evaluating the two functions in sequence; see Figure 1. Although the choice of is somewhat arbitrary, we choose all of them to be monotone increasing functions so that a large output corresponds to the belief of the variational function that the sample comes from the data distribution as in the GAN case; see Figure 1. It is also instructive to look at the second term in the saddle objective (7). This term is typically (except for the Pearson divergence) a decreasing function of the output favoring variational functions that output negative numbers for samples from the generator.

Name Output activation Conjugate
Kullback-Leibler (KL)
Reverse KL
Squared Hellinger

Table 2: Recommended final layer activation functions and critical variational function level defined by . The critical value can be interpreted as a classification threshold applied to to distinguish between true and generated samples.

We can see the GAN objective,


as a special instance of (7) by identifying each terms in the expectations of (7) and (8). In particular, choosing the last nonlinearity in the discriminator as the sigmoid , corresponds to output activation function is ; see Table 6.

Figure 1: The two terms in the saddle objective (7) are plotted as a function of the variational function .

2.5 Example: Univariate Mixture of Gaussians

KL KL-rev JS Jeffrey Pearson
0.2831 0.2480 0.1280 0.5705 0.6457
0.2801 0.2415 0.1226 0.5151 0.6379
1.0100 1.5782 1.3070 1.3218 0.5737
1.0335 1.5624 1.2854 1.2295 0.6157
1.8308 1.6319 1.7542 1.7034 1.9274
1.8236 1.6403 1.7659 1.8087 1.9031
train test KL KL-rev JS Jeffrey Pearson
KL 0.2808 0.3423 0.1314 0.5447 0.7345
KL-rev 0.3518 0.2414 0.1228 0.5794 1.3974
JS 0.2871 0.2760 0.1210 0.5260 0.92160
Jeffrey 0.2869 0.2975 0.1247 0.5236 0.8849
Pearson 0.2970 0.5466 0.1665 0.7085 0.648
Table 3:

Gaussian approximation of a mixture of Gaussians. Left: optimal objectives, and the learned mean and the standard deviation:

(learned) and (best fit). Right: objective values to the true distribution for each trained model. For each divergence, the lowest objective function value is achieved by the model that was trained for this divergence.

To demonstrate the properties of the different -divergences and to validate the variational divergence estimation framework we perform an experiment similar to the one of [24].


We approximate a mixture of Gaussians by learning a Gaussian distribution. We represent our model

using a linear function which receives a random and outputs , where are the two scalar parameters to be learned. For the variational function we use a neural network with two hidden layers having units each and tanh activations. We optimise the objective by using the single-step gradient method presented in Section 3. In each step we sample batches of size each for both and and we use a step-size of for updating both and . We compare the results to the best fit provided by the exact optimization of w.r.t. , which is feasible in this case by solving the required integrals in (2) numerically. We use (learned) and (best fit) to distinguish the parameters sets used in these two approaches.

Results. The left side of Table 3 shows the optimal divergence and objective values and as well as the resulting means and standard deviations. Note that the results are in line with the lower bound property, that is, we have . There is a good correspondence between the gap in objectives and the difference between the fitted means and standard deviations. The right side of Table 3 shows the results of the following experiment: (1) we train and using a particular divergence, then (2) we estimate the divergence and re-train while keeping fixed. As expected, performs best on the divergence it was trained with. Further details showing detailed plots of the fitted Gaussians and the optimal variational functions are presented in the supplementary materials.

In summary, the above results demonstrate that when the generative model is misspecified and does not contain the true distribution, the divergence function used for estimation has a strong influence on which model is learned.

3 Algorithms for Variational Divergence Minimization (VDM)

We now discuss numerical methods to find saddle points of the objective (6). To this end, we distinguish two methods; first, the alternating method originally proposed by Goodfellow et al. [10], and second, a more direct single-step optimization procedure.

In our variational framework, the alternating gradient method can be described as a double-loop method; the internal loop tightens the lower bound on the divergence, whereas the outer loop improves the generator model. While the motivation for this method is plausible, in practice the choice taking a single step in the inner loop is popular. Goodfellow et al. [10] provide a local convergence guarantee.

3.1 Single-Step Gradient Method

Motivated by the success of the alternating gradient method with a single inner step, we propose a simpler algorithm shown in Algorithm 1. The algorithm differs from the original one in that there is no inner loop and the gradients with respect to and are computed in a single back-propagation.

1:function SingleStepGradientIteration() 2:     Sample and , from and , respectively. 3:     Update: . 4:     Update: . 5:end function
Algorithm 1 Single-Step Gradient Method

Here we show that Algorithm 1 geometrically converges to a saddle point if there is a neighborhood around the saddle point in which is strongly convex in and strongly concave in . These conditions are similar to the assumptions made in [10] and can be formalized as follows:


These assumptions are necessary except for the “strong” part in order to define the type of saddle points that are valid solutions of our variational framework. Note that although there could be many saddle points that arise from the structure of deep networks [6], they do not qualify as the solution of our variational framework under these assumptions.

For convenience, let’s define . Now the convergence of Algorithm 1 can be stated as follows (the proof is given in the supplementary material):

Theorem 1.

Suppose that there is a saddle point with a neighborhood that satisfies conditions (9). Moreover, we define and assume that in the above neighborhood, is sufficiently smooth so that there is a constant such that for any in the neighborhood of . Then using the step-size in Algorithm 1, we have

That is, the squared norm of the gradient decreases geometrically.

3.2 Practical Considerations

Here we discuss principled extensions of the heuristic proposed in

[10] and real/fake statistics discussed by Larsen and Sønderby222 Furthermore we discuss practical advice that slightly deviate from the principled viewpoint.

Goodfellow et al. [10] noticed that training GAN can be significantly sped up by maximizing instead of minimizing for updating the generator. In the more general -GAN Algorithm (1) this means that we replace line 4 with the update


thereby maximizing the generator output. This is not only intuitively correct but we can show that the stationary point is preserved by this change using the same argument as in [10]; we found this useful also for other divergences.

Larsen and Sønderby recommended monitoring real and fake

statistics, which are defined as the true positive and true negative rates of the variational function viewing it as a binary classifier. Since our output activation

are all monotone, we can derive similar statistics for any -divergence by only changing the decision threshold. Due to the link between the density ratio and the variational function (5), the threshold lies at (see Table 6). That is, we can interpret the output of the variational function as classifying the input as a true sample if the variational function is larger than , and classifying it as a sample from the generator otherwise.

We found Adam [17]

and gradient clipping to be useful especially in the large scale experiment on the LSUN dataset.

4 Experiments

We now train generative neural samplers based on VDM on the MNIST and LSUN datasets.

MNIST Digits.

We use the MNIST training data set (60,000 samples, 28-by-28 pixel images) to train the generator and variational function model proposed in [10] for various -divergences. With

as input, the generator model has two linear layers each followed by batch normalization and ReLU activation and a final linear layer followed by the sigmoid function. The variational function

has three linear layers with exponential linear unit [4] in between. The final activation is specific to each divergence and listed in Table 6. As in [27] we use Adam with a learning rate of and update weight . We use a batchsize of 4096, sampled from the training set without replacement, and train each model for one hour. We also compare against variational autoencoders [18] with 20 latent dimensions.

Results and Discussion.

We evaluate the performance using the kernel density estimation (Parzen window) approach used in 

[10]. To this end, we sample 16k images from the model and estimate a Parzen window estimator using an isotropic Gaussian kernel bandwidth using three fold cross validation. The final density model is used to evaluate the average log-likelihood on the MNIST test set (10k samples). We show the results in Table 4, and some samples from our models in Figure 2.

The use of the KDE approach to log-likelihood estimation has known deficiencies [31]. In particular, for the dimensionality used in MNIST () the number of model samples required to obtain accurate log-likelihood estimates is infeasibly large. We found a large variability (up to 50 nats) between multiple repetitions. As such the results are not entirely conclusive. We also trained the same KDE estimator on the MNIST training set, achieving a significantly higher holdout likelihood. However, it is reassuring to see that the model trained for the Kullback-Leibler divergence indeed achieves a high holdout likelihood compared to the GAN model.

Training divergence KDE (nats) SEM Kullback-Leibler 416 5.62 Reverse Kullback-Leibler 319 8.36 Pearson 429 5.53 Neyman 300 8.33 Squared Hellinger -708 18.1 Jeffrey -2101 29.9 Jensen-Shannon 367 8.19 GAN 305 8.97 Variational Autoencoder [18] 445 5.36 KDE MNIST train (60k) 502 5.99 Table 4: Kernel Density Estimation evaluation on the MNIST test data set. Each KDE model is build from 16,384 samples from the learned generative model. We report the mean log-likelihood on the MNIST test set (

) and the standard error of the mean. The KDE MNIST result is using 60,000 MNIST training images to fit a single KDE model.

Figure 2: MNIST model samples trained using KL, reverse KL, Hellinger, Jensen from top to bottom.
LSUN Natural Images.

Through the DCGAN work [27] the generative-adversarial approach has shown real promise in generating natural looking images. Here we use the same architecture as as in [27] and replace the GAN objective with our more general -GAN objective.

We use the large scale LSUN database [34] of natural images of different categories. To illustrate the different behaviors of different divergences we train the same model on the classroom category of images, containing 168,103 images of classroom environments, rescaled and center-cropped to 96-by-96 pixels.

Setup. We use the generator architecture and training settings proposed in DCGAN [27]. The model receives and feeds it through one linear layer and three deconvolution layers with batch normalization and ReLU activation in between. The variational function is the same as the discriminator architecture in [27]

and follows the structure of a convolutional neural network with batch normalization, exponential linear units 

[4] and one final linear layer.

Results. Figure 3 shows 16 random samples from neural samplers trained using GAN, KL, and squared Hellinger divergences. All three divergences produce equally realistic samples. Note that the difference in the learned distribution arise only when the generator model is not rich enough.

(a) GAN

(b) KL

(c) Squared Hellinger
Figure 3: Samples from three different divergences.

5 Related Work

We now discuss how our approach relates to existing work. Building generative models of real world distributions is a fundamental goal of machine learning and much related work exists. We only discuss work that applies to neural network models.

Mixture density networks [2]

are neural networks which directly regress the parameters of a finite parametric mixture model. When combined with a recurrent neural network this yields impressive generative models of handwritten text 


NADE [19] and RNADE [33] perform a factorization of the output using a predefined and somewhat arbitrary ordering of output dimensions. The resulting model samples one variable at a time conditioning on the entire history of past variables. These models provide tractable likelihood evaluations and compelling results but it is unclear how to select the factorization order in many applications .

Diffusion probabilistic models [29] define a target distribution as a result of a learned diffusion process which starts at a trivial known distribution. The learned model provides exact samples and approximate log-likelihood evaluations.

Noise contrastive estimation (NCE) [13]

is a method that estimates the parameters of unnormalized probabilistic models by performing non-linear logistic regression to discriminate the data from artificially generated noise. NCE can be viewed as a special case of GAN where the discriminator is constrained to a specific form that depends on the model (logistic regression classifier) and the generator (kept fixed) is providing the artificially generated noise (see supplementary material).

The generative neural sampler models of [22] and [3] did not provide satisfactory learning methods; [22] used importance sampling and [3]expectation maximization. The main difference to GAN and to our work really is in the learning objective, which is effective and computationally inexpensive.

Variational auto-encoders (VAE) [18, 28] are pairs of probabilistic encoder and decoder models which map a sample to a latent representation and back, trained using a variational Bayesian learning objective. The advantage of VAEs is in the encoder model which allows efficient inference from observation to latent representation and overall they are a compelling alternative to -GANs and recent work has studied combinations of the two approaches [23]

As an alternative to the GAN training objective the work [20] and independently [7] considered the use of the kernel maximum mean discrepancy (MMD) [12, 9] as a training objective for probabilistic models. This objective is simpler to train compared to GAN models because there is no explicitly represented variational function. However, it requires the choice of a kernel function and the reported results so far seem slightly inferior compared to GAN. MMD is a particular instance of a larger class of probability metrics [30] which all take the form , where the function class is chosen in a manner specific to the divergence. Beyond MMD other popular metrics of this form are the total variation metric (also an -divergence), the Wasserstein distance, and the Kolmogorov distance.

In [16] a generalisation of the GAN objective is proposed by using an alternative Jensen-Shannon divergence

that mimics an interpolation between the KL and the reverse KL divergence and has Jensen-Shannon as its mid-point. It can be shown that with

close to and it leads to a behavior similar the objectives resulting from the KL and reverse KL divergences (see supplementary material).

6 Discussion

Generative neural samplers offer a powerful way to represent complex distributions without limiting factorizing assumptions. However, while the purely generative neural samplers as used in this paper are interesting their use is limited because after training they cannot be conditioned on observed data and thus are unable to provide inferences.

We believe that in the future the true benefits of neural samplers for representing uncertainty will be found in discriminative models and our presented methods extend readily to this case by providing additional inputs to both the generator and variational function as in the conditional GAN model [8].

Acknowledgements. We thank Ferenc Huszár for discussions on the generative-adversarial approach.


Appendix A Introduction

We provide additional material to support the content presented in the paper. The text is structured as follows. In Section B we present an extended list of f-divergences, corresponding generator functions and their convex conjugates. In Section C we provide the proof of Theorem 2 from Section 3. In Section D we discuss the differences between current (to our knowledge) GAN optimisation algorithms. Section E provides a proof of concept of our approach by fitting a Gaussian to a mixture of Gaussians using various divergence measures. Finally, in Section F we present the details of the network architectures used in Section 4 of the main text.

Appendix B -divergences and Generator-Conjugate Pairs

In Table 5 we show an extended list of f-divergences together with their generators and the corresponding optimal variational functions . For all divergences we have , where is convex and lower-semicontinuous. Also we have which ensures that for any distribution . As shown by [10] GAN is related to the Jensen-Shannon divergence through . The GAN generator function does not satisfy hence .

Table 6 lists the convex conjugate functions of the generator functions in Table 5, their domains, as well as the activation functions we use in the last layers of the generator networks to obtain a correct mapping of the network outputs into the domains of the conjugate functions.

The panels of Figure 4 show the generator functions and the corresponding convex conjugate functions for a variety of f-divergences.

Name Generator
Total variation
Reverse Kullback-Leibler
Squared Hellinger


-divergence ()
Table 5: List of -divergences together with generator functions and the optimal variational functions.
Name Output activation Conjugate
Total variation
Kullback-Leibler (KL)
Reverse KL
Squared Hellinger

-div. (, )
-div. ()
Table 6: Recommended final layer activation functions and critical variational function level defined by . The objective function for training a generative neural sampler given a true distribution and an auxiliary variational function is . For any sample the variational function produces a scalar . The output activation provides a differentiable map , defining . The critical value can be interpreted as a classification threshold applied to to distinguish between true and generated samples. is the Lambert- product log function.
Figure 4: Generator-conjugate pairs in the variational framework of Nguyen et al. [25]. Left: generator functions used in the -divergence . Right: conjugate functions in the variational divergence lower bound .

Appendix C Proof of Theorem 1

In this section we present the proof of Theorem 2 from Section 3 of the main text. For completeness, we reiterate the conditions and the theorem.

We assume that is strongly convex in and strongly concave in such that


These assumptions are necessary except for the “strong” part in order to define the type of saddle points that are valid solutions of our variational framework.

We define and use the notation

With this notation, Algorithm 1 in the main text can be written as

Given the above assumptions and notation, in Section 3 of the main text we formulate the following theorem.

Theorem 2.

Suppose that there is a saddle point with a neighborhood that satisfies conditions (11) and (12). Moreover we define and assume that in the above neighborhood, is sufficiently smooth so that there is a constant and


for any in the neighborhood of . Then using the step-size in Algorithm 1, we have

where is the smoothness parameter of . That is, the squared norm of the gradient decreases geometrically.


First, note that the gradient of can be written as

Therefore we notice that,


In other words, Algorithm 1 decreases by an amount proportional to the squared norm of .

Now combining the smoothness (13) with Algorithm 1, we get

where we used sufficient decrease (14) and in the second inequality, and the final equality follows by taking . ∎

Appendix D Related Algorithms

Due to recent interest in GAN type models, there have been attempts to derive other divergence measures and algorithms. In particular, an alternative Jensen-Shannon divergence has been derived in [16] and a heuristic algorithm that behaves similarly to the one resulting from this new divergence has been proposed in [15].

In this section we summarise (some of) the current algorithms and show how they are related. Note that some algorithms use heuristics that do not correspond to saddle point optimisation, that is, in the corresponding maximization and minimization steps they optimise alternative objectives that do not add up to a coherent joint objective. We include a short discussion of [13] because it can be viewed as a special case of GAN.

To illustrate how the discussed algorithms work, we define the objective function


where we introduce two scalar parameters, and , to help us highlight the differences between the algorithms shown in Table 7.

Algorithm Maximisation in Minimisation in
NCE [13] NA
GAN-1 [10]
GAN-2 [10]
GAN-3 [15]
Table 7: Optimisation algorithms for the GAN objective (15).

Noise-Contrastive Estimation (NCE)

NCE [13] is a method that estimates the parameters of an unnormalised model by performing non-linear logistic regression to discriminate between the model and artificially generated noise. To achieve this NCE casts the estimation problem as a ML estimation in a binary classification model where the data is augmented with artificially generated data. The “true” data items are labeled as positives while the artificially generated data items are labeled as negatives. The discriminant function is defined as where denotes the distribution of the artificially generated data, typically a Gaussian parameterised by the empirical mean and covariance of the true data. ML estimation in this binary classification model results in an objective that has the form (15) with amd , where the expectations are taken w.r.t. the empirical distribution of augmented data. As a result, NCE can be viewed as a special case of GAN where the generator is fixed and we only have maximise the objective w.r.t. the parameters of the discriminator. Another slight difference is that in this case the data distribution is learned through the discriminator not the generator, however, the method has many conceptual similarities to GAN.

GAN-1 and GAN-2

The first algorithm (GAN-1) proposed in [10] performs a stochastic gradient ascent-descent on the objective with and , however, the authors point out that in practice it is more advantageous to minimise instead of , we denote this by GAN-2. This is motivated by the observation that in the early stages of training when is not sufficiently well fitted, can saturate fast leading to weak gradients in . The term, however, can provide stronger gradients and leads to the same fixed point. This heuristic can be viewed as using in the maximisation step and in the minimisation step333 A somewhat similar observation regarding the artificially generated data is made in [13]: in order to have meaningful training one should choose the artificially generated data to be close the the true data, hence the choice of an ML multivariate Gaussian..


In [15] a further heuristic for the minimisation step is proposed. Formally, it can be viewed as a combination of the minimisation steps in GAN-1 and GAN-2. In the proposed algorithm, the maximisation step is performed similarly (), but the minimisation is done using and . This choice is motivated by KL optimality arguments. The author makes the observation that the optimal discriminator is given by


and thus, close to optimality, the minimisation of corresponds to the minimisation of the reverse KL divergence . This approach can be viewed as choosing and in the minimisation step.

Remarks on the Weighted Jensen-Shannon Divergence in [16]

The GAN/variational objective corresponding to alternative Jensen-Shannon divergence measure proposed in [16] (see Jensen-Shannon-weighted in Table 1) is


Note that we have the correspondence. According to the definition of the variational objective, when is close to optimal then in the minimisation step the objective function is close to the chosen divergence. In this case the optimal discriminator is


The objective in (17) vanishes when , however, when is only is close to and , it can behave similarly to the KL and reverse KL objectives, respectively. Overall, the connection between GAN-3 and the optimisation of (17) can only be considered as approximate. To obtain an exact KL or reverse KL behavior one can use the corresponding variational objectives. For a simple illustration of how these divergences behave see Section 2.5 and Section E below.

Appendix E Details of the Univariate Example

We follow up on the example in Section 2.5 of the main text by presenting further details about the quality and behavior of the approximations resulting from using various divergence measures. For completeness, we reiterate the setup and then we present further results.

Figure 5: Gaussian approximation of a mixture of Gaussians. Gaussian approximations obtained by direct optimisation of (dashed-black) and the optimisation of (solid-colored). Right-bottom: optimal variational functions (dashed) and (solid-red).

Setup. We approximate a mixture of Gaussian 444The plots on Figure 5 correspond to with