Taming mode collapse in generative adversarial networks using cooperative realness discriminators

IET Image ProcessingEarly View ORIGINAL RESEARCHOpen Access Taming mode collapse in generative adversarial networks using cooperative realness discriminators Jinzhen Mu, Jinzhen Mu orcid.org/0000-0002-0702-4705 College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, China Shanghai Aerospace Control Technology Institute, Shanghai, China Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, ChinaSearch for more papers by this authorChunyan Chen, Chunyan Chen School of Automation and Electronic Information, Xiangtan University, Xiangtan, ChinaSearch for more papers by this authorWenshan Zhu, Wenshan Zhu College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, China Shanghai Aerospace Control Technology Institute, Shanghai, China Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, ChinaSearch for more papers by this authorShuang Li, Shuang Li College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, ChinaSearch for more papers by this authorYan Zhou, Corresponding Author Yan Zhou yanzhou@xtu.edu.cn orcid.org/0000-0002-2372-4947 School of Automation and Electronic Information, Xiangtan University, Xiangtan, China Correspondence Yan Zhou, School of Automation and Electronic Information, Xiangtan University, Xiangtan 411105, China. Email: yanzhou@xtu.edu.cnSearch for more papers by this author Jinzhen Mu, Jinzhen Mu orcid.org/0000-0002-0702-4705 College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, China Shanghai Aerospace Control Technology Institute, Shanghai, China Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, ChinaSearch for more papers by this authorChunyan Chen, Chunyan Chen School of Automation and Electronic Information, Xiangtan University, Xiangtan, ChinaSearch for more papers by this authorWenshan Zhu, Wenshan Zhu College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, China Shanghai Aerospace Control Technology Institute, Shanghai, China Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, ChinaSearch for more papers by this authorShuang Li, Shuang Li College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing, ChinaSearch for more papers by this authorYan Zhou, Corresponding Author Yan Zhou yanzhou@xtu.edu.cn orcid.org/0000-0002-2372-4947 School of Automation and Electronic Information, Xiangtan University, Xiangtan, China Correspondence Yan Zhou, School of Automation and Electronic Information, Xiangtan University, Xiangtan 411105, China. Email: yanzhou@xtu.edu.cnSearch for more papers by this author First published: 28 March 2022 https://doi.org/10.1049/ipr2.12487AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Share a linkShare onFacebookTwitterLinked InRedditWechat Abstract Generative adversarial networks (GANs) are able to produce realistic images. However, GANs may suffer mode collapse in their output data distribution. Here, we theoretically and empirically justify generalizing the GAN framework to multiple discriminators with one generator for improving generative performance. First, a comprehensive perspective is adopted to understand why mode collapse occurs. Second, an array of cooperative realness discriminators is introduced into the GAN framework to combat mode collapse and explore discriminator roles ranging from a formidable adversary to a forgiving teacher. Third, two types of simple yet effective regularization are proposed for generating realistic and diverse images. Experiments on various datasets show the effectiveness of the GAN compared to previous methods in alleviating mode collapse and improving the quality of the generated samples. 1 INTRODUCTION GANs [1] represent a new method of generating high-quality models from a given probability density. GANs utilize a game theoretic training scheme involving adversarial interaction between a generator and a discriminator to solve the min-max game optimization problem. Specifically, the generator of a GAN is trained to map random noise, usually drawn from a multivariate Gaussian distribution, to generate fake samples that are as realistic as possible, where the discriminator is utilized to distinguish the generated samples with respect to the real samples. Since the introduction of GANs, many variants have been proposed [2-5] to improve the generated image quality. Although GANs have already been successfully used in image generation and image editing [6-9], they are notoriously difficult to train, and it has been observed that they often suffer from mode collapse [10, 11], which causes the generator network to produce results with poor generalizability; that is, a limited variety of samples are produced, but many other modes are missed. As mentioned above, mode collapse is one of the most common and hardest problems to solve in GANs. Several solutions to mode collapse have been proposed, including training cooperative discriminators (e.g. MIX-plus-GANs [10], MCL-GAN [44]), unrolling optimization of the discriminator to fit the generator's objective (e.g. unrolled GAN [12]), jointly training a reconstructor network to reverse the generated distributions to the latent distributions (e.g. variational encoder enhancement GAN (VEEGAN) [13]), adding an auxiliary loss to prevent catastrophic forgetting (e.g. conditional variational autoencoder GAN (CVAE-GAN) [14] and self-supervised GAN [15]), packing on multiple samples to modify the discriminator (e.g. PacGAN [16] and improve GAN [3]), training multiple generators (e.g. evolutionary GAN [17], multiagent diverse GAN (MAD-GAN) [18] and multiple generator GAN (MGGAN) [19]), introducing different divergence metrics (e.g. RealnessGAN [20] and Wasserstein GAN (WGAN) [4]), adding an optimization process (e.g. InfoMax-GAN [21], random projection GAN (RPGAN) [22], GANs employing a gradient penalty (DRAGAN) [23], and minimum manifold coding GAN (MMCGAN) [24]), and utilizing regularizations to obtain meaningful gradients (e.g. mode seeking GAN (MSGAN) [25]). However, the aforementioned GAN methods are limited to a single perspective, while training GANs is a large-scale optimization problem. Thus, a new idea for effectively suppressing mode collapse is to simultaneously modify the discriminator settings to overcome the lack of useful gradient signals while controlling the generator to approximate the whole data distribution. Recently, multiplayer GANs have explored situations where there are multiple discriminators [10, 22, 26–29, 44]. The first published work to introduce multiple discriminators to GANs was multi-adversarial networks, in which discriminators can range from an unfavourable adversary to a forgiving teacher [26]. Generalization and equilibrium in generative adversarial nets (MIX-plus-GANs) [10] is the well-known paper that uses multiple discriminators. The dual discriminator GAN (D2GAN) [27] is a three-player min-max game that utilizes a combination of Kullback–Leibler (KL) and reverse KL divergences in the objective function and is the most closely related to our work. Built upon the D2GAN, generative adversarial networks with a competing peer discriminator (PeerGAN) [28] introduce a peer discriminator to the min-max game. Albuquerque et al. [29] show that training GAN variants with multiple discriminators is a practical approach even though extra capacity and computational cost are needed. Generative adversarial networks with multiple specialized discriminators (MCL-GAN) [44] use each discriminator behaves as an expert classifier and covers a separate mode in the underlying distribution. Although each of these proposed methods is empirically shown to help mitigate mode collapse, it is not well understood how the proposed changes relate to mode collapse. In contrast to the above works, we adopt a comprehensive perspective considering both the generator and the discriminator to understand why mode collapse occurs and summarize four probable reasons. One explanation is that a conventional discriminator outputs a single scalar, which may guide the generator from only one perspective. In other instances, the generator may receive noncomprehensive gradients from a single discriminator to update its model. Another reason is that the existence of undesirable local equilibria may generate sharp gradients of the discriminator that facilitate mode collapse. Proximity of the latent codes can also be a factor of mode collapse since the generator may stop exploring more minor modes when the latent codes are closer. In many previous methods [1–3, 5–19, 21–33], the discriminator has used only a single scalar, such as 0 (fake) or 1 (real), to estimate the similarity rate of the generated data distributions with respect to the real data distributions. However, humans naturally comprehend them based on multiple criteria. A single scalar is a summarization of multiple assessments that together reflects the overall realness of generated data. Such a compendious measurement may provide a single criterion to guide the generator, potentially leading to mode collapse. Because GAN training is actually a saddle point optimization, the learner would easily become trapped in a bad local optimum that may give rise to mode collapse. In standard GAN training, the generator only intends to fool the discriminator by mixing up generated data with real data. Therefore, without extra conditions being imposed, it would reduce to remembering a few fixed patterns rather than exploring more data patterns, potentially causing the mapped images to collapse into limited modes. When mode collapse to a small region occurs, the discriminator exhibits sharp gradients near some real data points and subsequently label such collapsed points as fake, thereby restricting the generator from mapping multiple vectors to more models and leading the game toward a degenerate equilibrium. In addition, when two latent codes are closer, the mapped images are more likely to be collapsed into the same mode. Therefore, we propose a different approach to address these issues where the generator is trained against an array of discriminators, each of which examines a different, randomly chosen, low-dimensional projection of the data. Each discriminator is unable to reject generated samples perfectly since it only obtains a partial view of these samples and continues to provide meaningful gradients to the generator throughout training. At the same time, to satisfy its objective of fooling all discriminators, the generator learns to match the true full data distribution. Thus, the problem of a lack of sufficient gradient signals provided by the discriminator can be overcome. We also introduce a local equilibrium regularization to constrain the norms of the discriminators' gradients near real points and a diversity regularization to extend the distances of each closely generated image as much as possible when the corresponding adjacent latent vectors are close. To summarize, our contributions are as follows: We adopt a comprehensive perspective considering both the generator and the discriminator to understand why mode collapse occurs. We use an array of cooperative discriminators to evaluate the generated samples from multiple perspectives. We introduce two types of regularization to encourage the generator to avoid undesirable local equilibria and enhance the likelihood of generating samples corresponding to multiple diverse modes. 2 PRELIMINARIES 2.1 Generative adversarial networks Given a discriminator D $D$ and a generator G $G$ , both parameterized via neural networks, the training process for a GAN can be formulated in terms of the following minimax objective function [1]: min G max D V ( D , G ) = E x ∼ p d ( x ) [ log ( D ( x ) ) ] + E z ∼ p z ( z ) [ log ( 1 − D ( G ( z ) ) ) ] = E x ∼ p d ( x ) [ log ( D ( x ) ) ] + E x ∼ p g ( x ) [ log ( 1 − D ( x ) ) ] = E x ∼ p d ( x ) [ log ( D ( x ) − 0 ) ] + E x ∼ p g ( x ) [ log ( 1 − D ( x ) ) ] \begin{eqnarray} \mathop {\min }\limits_G \mathop {\max }\limits_D V(D,G) &=& {E_{x\sim {p_d}(x)}}[\log (D(x))] + {E_{z\sim {p_z}(z)}}[\log (1 - D(G(z)))]\nonumber\\ &=& {E_{x\sim {p_d}(x)}}[\log (D(x))] + {E_{x\sim {p_g}(x)}}[\log (1 - D(x))]\nonumber\\ &=& {E_{x\sim {p_d}(x)}}[\log (D(x) - 0)] + {E_{x\sim {p_g}(x)}}[\log (1 - D(x))]\nonumber\\ \end{eqnarray} (1)where V $V$ is a value function, p z ( z ) ${p_z}(z)$ is the prior noise distribution, p d ( x ) ${p_d}(x)$ is the real data distribution, G ( z ) $G(z)$ represents the data generated after passing some randomly sampled noise, z $z$ is passed through the generator G $G$ , and p g ( x ) ${p_g}(x)$ is the generator's distribution. In the case of the generator, the objective is to minimize E z ∼ p z ( z ) [ log ( 1 − D ( G ( z ) ) ) ] ${E_{z\sim {p_z}(z)}}[\log (1 - D(G(z)))]$ or, equivalently, to maximize E x ∼ p d ( x ) [ log ( D ( x ) ) ] ${E_{x\sim {p_d}(x)}}[\log (D(x))]$ . As proven for the original GAN [1], under this training objective, the optimal D $D$ satisfies: D G ∗ ( x ) = p d ( x ) p d ( x ) + p g ( x ) \begin{equation}D_G^*(x) = \frac{{{p_d}(x)}}{{{p_d}(x) + {p_g}(x)}}\end{equation} (2)for a fixed G $G$ . When D $D$ is fixed in its optimal state, the optimal G $G$ satisfies: p g ( x ) = p d ( x ) \begin{equation}{p_g}(x) = {p_d}(x)\end{equation} (3) Based on: K L ( p g ( x ) | | p d ( x ) ) = ∫ p g ( x ) log p g ( x ) p d ( x ) d x = E x ∼ p ( x ) log p g ( x ) p d ( x ) \begin{eqnarray} KL({p_g}(x){\rm{||}}{p_d}(x)) =\! \int\!\! {{p_g}(x)\log \frac{{{p_g}(x)}}{{{p_d}(x)}}} dx = {E_{x\sim p(x)}}\log \frac{{{p_g}(x)}}{{{p_d}(x)}}\nonumber\\ \end{eqnarray} (4) J S ( P d ( x ) , P g ( x ) ) = 0.5 ∗ K L P d ( x ) | | P g ( x ) + P d ( x ) 2 + 0.5 ∗ K L P g ( x ) | | P g ( x ) + P d ( x ) 2 \begin{eqnarray} JS({P_d}(x),{P_g}(x)) &=& 0.5*KL\left({P_d}(x)||\frac{{{P_g}(x) + {P_d}(x)}}{2}\right)\nonumber\\ &&+\, 0.5*KL\left({P_g}(x)||\frac{{{P_g}(x) + {P_d}(x)}}{2}\right) \end{eqnarray} (5)we can obtain: min G max D V ( D , G ) = E x ∼ p d ( x ) log P d ( x ) 1 2 [ P d ( x ) + P g ( x ) ] + E x ∼ p g ( x ) log P g ( x ) 1 2 [ P d ( x ) + P g ( x ) ] − 2 l o g 2 \begin{eqnarray} \mathop {\min }\limits_G \mathop {\max }\limits_D V(D,G) &=& {E_{x\sim {p_d}(x)}} \left[\log \left(\frac{{{P_d}(x)}}{{\frac{1}{2}[{P_d}(x) + {P_g}(x)]}}\right)\right] \nonumber\\[14pt] &&+\, {E_{x\sim {p_g}(x)}} \left[\log \left(\frac{{{P_g}(x)}}{{\frac{1}{2}[{P_d}(x) + {P_g}(x)]}}\right)\right]\nonumber\\ &&-\, 2log2 \end{eqnarray} (6) Thus, we have: min G max D V ( D , G ) = 2 J S ( P d ( x ) | | P g ( x ) ) − 2 log 2 \begin{equation}\mathop {\min }\limits_G \mathop {\max }\limits_D V(D,G) = 2JS({P_d}(x)||{P_g}(x)) - 2\log 2\end{equation} (7) The above theoretical guarantees provide strong support for the success of GANs in many applications and have inspired multiple variants that improve upon the original design. Nevertheless, G $G$ is incentivized to map every z $z$ to the single x $x$ that is most likely to be classified as true data, potentially leading to the mode collapse problem. Another commonly asserted cause of the generation of less diverse samples in a GAN is that, given the optimal D $D$ , minimizing G $G$ is equivalent to minimizing the Jensen-Shannon (JS) divergence between the data and model distributions, which has been empirically proven to lead to a preference for generating samples corresponding to only a few modes while ignoring other modes. 2.2 RealnessGAN RealnessGAN [20] utilizes a distribution p realness ${p_{{\rm{realness}}}}$ in place of the single scalar (such as 0 or 1) that is output by the discriminator D $D$ in the original GAN design [1]. Given an input sample x $x$ , RealnessGAN has D ( x ) = { p realness ( x , u ) ; x , u ∈ Ω } $D(x) = \{ {p_{{\rm{realness}}}}(x,u);x,u \in \Omega \} $ , where Ω $\Omega $ is the set of possible outcomes of p realness ${p_{{\rm{realness}}}}$ and u $u$ can be viewed as a potential realness measure that is estimated based on certain criteria. In Equation (1), 1 and 0 are used as two virtual ground-truth scalars that represent the realness values of real and fake images, respectively; in contrast, RealnessGAN utilizes two distributions A 1 ${A_1}$ (real) and A 0 ${A_0}$ (fake), which are discrete distributions based on Ω $\Omega $ , to represent the realness distributions of real and fake images. As in standard GANs [1–3, 19, 26–29], where 0 and 1 can be replaced with other scalars such as −1 and 1, various choices for A 1 ${A_1}$ and A 0 ${A_0}$ are also available in RealnessGAN. Accordingly, the difference between two scalars is replaced with the Kullback–Leibler (KL) divergence. The objective of the minimax game between the generator G $G$ and the distributional discriminator D thus becomes: min G max D V ( D , G ) = E z ∼ p z ( z ) [ D KL ( A 1 | | D ( G ( z ) ) ] + E z ∼ p z ( z ) [ D KL ( A 0 | | D ( G ( z ) ) ] \begin{eqnarray}\mathop {\min }\limits_G \mathop {\max }\limits_D V(D,G) &=& {E_{z\sim {p_z}(z)}}[{D_{{\rm{KL}}}}({A_1}||D(G(z))] \nonumber\\ &&+\, {E_{z\sim {p_z}(z)}}[{D_{{\rm{KL}}}}({A_0}||D(G(z))]\end{eqnarray} (8) The concept of realness as a characteristic of the real and generated samples is essentially a random variable influenced by multiple factors that encourages the discriminator to learn a realistic distribution. As expressed in Equation (8), the discriminator evaluates fake samples from more than one perspective to deduce whether it is realistic. This modified measurement conveys more information to guide the generator to produce more diverse modes during training. 3 METHOD Because the generator utilizes gradient feedback from the discriminator as guidance to map the latent codes to realistic-looking samples, one can argue that a single generator trained against a single discriminator may have difficulty producing diverse samples because the discriminator may lack meaningful gradient signals. This situation, along with the minimax nature of the objective, leads to a risk of mode collapse for GANs [4, 17, 19, 26–29]. In this work, we propose a new method to address the challenge of mode collapse. During the initial phase of training, the discriminator is easily able to distinguish nearly all generated samples, leaving the generator without meaningful gradients. As training continues, the generator receives gradients from the single perspective of the discriminator to update its model, potentially leading to mode collapse. As an alternative, we propose to simultaneously train a single generator against an array of cooperative discriminators, each of which outputs a distribution from a different perspective of the data, to prevent generator collapse for a small model, as shown in Figure 1b. FIGURE 1Open in figure viewerPowerPoint Overviews of the original GAN and our approach. (a) The original GAN. A single generator competes with a single discriminator in this adversarial game. The gradients from the discriminator serve as feedback to guide the updating of the generator. (b) The proposed method. A single generator competes with an array of discriminators Mode collapse may result in the case of an undesirable local equilibrium, such that neither player has much of an incentive to switch to any other strategy within a small neighbourhood of that player's current strategy. Such local equilibria often exhibit sharp gradients of the discriminator and cross the zero point, which restricts the generator from exploring more models. We therefore utilize a negative max-log-gradient-norm value to regularize the discriminators in the ambient data space. When mode collapse to a small region occurs, the distances between mapped images will become shorter as the distances between the corresponding latent vectors decrease. To overcome this problem, we propose a regularization term that maximizes both the ratio of the distance between generated images with respect to the distance between their corresponding input latent codes and the ratio of the distance between discriminator outputs with respect to the distance between their corresponding generated images. 3.1 Cooperative realness discriminators The key idea of our approach is to train a single generator against an array of discriminators. Each discriminator receives a different random projection of the data as input and outputs a corresponding realness distribution. Individually, these discriminators are unable to perfectly separate the real and generated samples and thus provide stable gradients to the generator throughout the training process. Formally, we train a generator G $G$ against multiple discriminators { D k } k = 1 K $\{ {D_k}\} _{k = 1}^K$ . min G max { D k } V ( D k , G ) = E z ∼ p z ( z ) [ D KL ( A 1 | | D k ( W k T G ( z ) ) ] + E z ∼ p z ( z ) [ D KL ( A 0 | | D k ( W k T G ( z ) ) ] \begin{eqnarray} \mathop {\min }\limits_G \mathop {\max }\limits_{{\rm{\{ }}{D_k}{\rm{\} }}} V({D_k},G) &=& {E_{z\sim {p_z}(z)}}[{D_{{\rm{KL}}}}({A_1}||{D_k}(W_k^TG(z))] \nonumber\\ &&+\, {E_{z\sim {p_z}(z)}}[{D_{{\rm{KL}}}}({A_0}||{D_k}(W_k^TG(z))]\nonumber\\ \end{eqnarray} (9)where W k T $W_k^T$ , k ∈ { 1 , … , K } $k \in \{ 1,\ldots,K\} $ is a projection matrix in R d × m ${{\rm{R}}^{d \times m}}$ and W k T $W_k^T$ must be chosen to produce different levels of the original data. The projected inputs into each discriminator are lower-dimensional than the full image [22, 34, 35]. Each discriminator tries to maximize its accuracy at detecting generated samples from its own projected version, while the generator tries to ensure that each sample it generates simultaneously fools all discriminators for all projected versions of that sample. To do so, the projection matrices W k T $W_k^T$ must be chosen to produce "image-like" data. Thus, we use strided convolutions with random filters to achieve the projections W k T $W_k^T$ . The elements of these convolution filters are drawn from a Gaussian distribution, and the filters are then scaled to have a unit L2 norm. To promote more "mixing" of the input coordinates, we choose filter sizes that are larger than the stride (e.g. we use 8×8 filters when using a stride of 2). While still random, this essentially imposes a block-Toeplitz structure on W k T $W_k^T$ . Meanwhile, the realness distribution p realness ${p_{{\rm{realness}}}}$ is characterized as a discrete distribution over N $N$ outcomes Ω = { u 0 , u 1 , … , u N − 1 } $\Omega {\rm{ = \{ }}{u_0},{u_1},\ldots,{u_{N - 1}}\} $ . Given an input sample x $x$ of size M $M$ , the discriminator returns N $N$ probabilities on these outcomes, following: p r e a ln e s s ( x , u i ) = e θ i ( x ) / ∑ j e θ j ( x ) \begin{equation*}{p_{rea\ln ess}}(x,{u_i}) = {e^{{\theta _i}(x)}} \Big/ {\sum _j}{e^{{\theta _j}(x)}}\end{equation*} where θ = ( θ 0 , θ 1 , … , θ N − 1 ) $\theta {\rm{ = (}}{\theta _0},{\theta _1},\ldots,{\theta _{N - 1}})$ are the parameters of D $D$ , { θ i ( x 0 ) , θ i ( x 1 ) , … , θ i ( x M − 1 ) } $\{ {\theta _i}({x_0}),{\theta _i}({x_1}),\ldots,{\theta _i}({x_{M - 1}})\} $ which are logits computed by D $D$ for the i $i$ -th outcome, and { x 0 , x 1 , … , x M − 1 } ${\rm{\{ }}{x_0},{x_1},\ldots,{x_{M - 1}}\} $ are minibatches. Similarly, A 1 ${A_1}$ and A 0 ${A_0}$ are defined on Ω $\Omega $ . As described in [22], the generator is unable to learn to generate samples from high-dimensional distributions sufficiently quickly. This, in turn, makes it easier for a discriminator to learn to perfectly distinguish the samples produced by the generator, at which point the latter is left without useful gradients for further training. The formulation presented in Equation (9) addresses the mode collapse problem by randomly projecting the true distribution onto { W k T x } $\{ W_k^Tx\} $ manifolds. Accordingly, each discriminator D k ${D_k}$ examines a different random low-dimensional projection of the data and outputs a different realness distribution to provide gradients to the generator. The generator must simultaneously match all projections { W k T x } $\{ W_k^Tx\} $ to minimize the loss in Equation (9) and thus learns to generate diverse samples under the true distribution P d ( x ) ${P_d}(x)$ . Compared to multiple generator models (e.g. evolutionary GAN [17], MAD-GAN [18] and MGGAN [19]), we explore discriminator roles ranging from a formidable adversary to a forgiving teacher. Compared to multiple discriminator models (e.g. generalization and equilibrium in GANs (MIX-plus-GANs) [10], the generative multi-adversarial network (GMAN) [26], D2GAN [27], multiple-discriminator GAN (MDGAN) [29] and MCL-GAN [44]), we propose a single generator to function simultaneously against an array of discriminators, each of which cooperatively examines a different random, low-dimensional projection of the data. Compared to baselines (e.g. RealnessGAN [20] and RPGAN [22]), we generalize each discriminator to a new perspective by treating realness as a random variable that can be estimated from multiple angles, thereby providing sufficient gradients to ensure that the generator can learn the entire true data model. Note that our method shares similar theoretical guarantees with RealnessGAN [20] and PRGAN [22]. We then extend the theoretical analysis in RealnessGAN and PRGAN to the case of our cooperative GAN. Theorem 1.When G $G$ is fixed, for any outcome u $u$ and input sample x $x$ , the optimal discriminator D satisfies: D G ∗ ( x , u ) = p W k T d ( x ) A 1 ( u ) + p W k T g ( x ) A 0 ( u ) p W k T d ( x ) + p W k T g ( x ) \begin{equation}D_G^{\rm{*}}(x,u) = \frac{{{p_{W_k^Td}}(x){A_1}(u) + {p_{W_k^Tg}}(x){A_0}(u)}}{{{p_{W_k^Td}}(x) + {p_{W_k^Tg}}(x)}}\end{equation} (10) Proof: Given a fixed G $G$ , the objective of D $D$ is: min D V ( D , G ) = E x ∼ p W k T d ( x ) [ D KL ( A 1 | | D ( x ) ) ] + E x ∼ p W k T g ( x ) [ D KL ( A 0 | | D ( x ) ) ] = ∫ x p W k T d ( x ) ∫ u A 1 ( u ) log A 1 ( u ) D ( x , u ) + p W k T g ( x ) ∫ u A 0 ( u ) log A 0 ( u ) D ( x , u ) d u d x = ∫ x p W k T d ( x ) ∫ u A 1 ( u ) log A 1 ( u ) D ( x , u ) + p W k T g ( x ) ∫ u A 0 ( u ) log A 0 ( u ) D ( x , u ) d u d x = ∫ x ( p W k T d ( x ) h ( A 1 ) + p W k T g ( x ) h ( A 0 ) ) d x − ∫ x ∫ u ( p W k T d ( x ) h ( A 1 ) + p W k T g ( x ) h ( A 0 ) ) l o g D ( x , u ) d u d x = − ∫ x p W k T d ( x ) + p W k T g ( x ) × ∫ u p W k T d ( x ) A 1 ( u ) + p W k T g ( x ) A 0 ( u ) p W k T d ( x ) + p W k T g ( x ) × log D ( x , u ) + C 1 \begin{eqnarray} \mathop {\min }\limits_D V(D,G) &=& {E_{x\sim {p_{W_k^Td}}(x)}}[{D_{{\rm{KL}}}}({A_1}||D(x))] \nonumber\\[2pt] &&+\, {E_{x\sim {p_{W_k^Tg}}(x)}}[{D_{{\rm{KL}}}}({A_0}||D(x))]\nonumber\\[2pt] &=& \int_x \left( {p_{W_k^Td}} ({\rm x})\int_u {{A_1}} (u)\log \frac{{{A_1}(u)}}{{D(x,u)}}\right. \nonumber\\[2pt] &&+\, \left.{p_{W_k^Tg}}(x)\int_u {{A_0}(u} )\log \frac{{{A_0}(u)}}{{D(x,u)}}du \right) dx\nonumber\\[2pt] &=& \int_x \left( {p_{W_k^Td}}{\rm{(}}x)\int_u {{A_1}} (u)\log \frac{{{A_1}(u)}}{{D(x,u)}}\right. \nonumber\\[2pt] &&+\,\left. {p_{W_k^Tg}}(x)\int_u {{A_0}(u} )\log \frac{{{A_0}(u)}}{{D(x,u)}}du \right) dx\nonumber\\[2pt] &=& \int_x {({p_{W_k^Td}}{\rm{(}}x)h({A_1}) + {p_{W_k^Tg}}(x)h({A_0})} )dx\nonumber\\[2pt] &&-\, \int_x \int_u ({p_{W_k^Td}}(x)h({A_1}) \nonumber\\ &&+\, {p_{W_k^Tg}}(x)h({A_0}))logD(x,u)dudx \nonumber\\ &=& - \int_x {\left( {{p_{W_k^Td}}(x) + {p_{W_k^Tg}}(x)} \right)} \nonumber\\[2pt] &&\times\, \int_u {\frac{{{p_{W_k^Td}}(x){A_1}(u) + {p_{W_k^Tg}}(x){A_0}(u)}}{{{p_{W_k^Td}}(x) + {p_{W_k^Tg}}(x)}}}\nonumber\\ &&\times\, \log D(x,u) + {C_1} \end{eqnarray} (11)where h ( A 1 ) = ∫ u A 1 ( u ) log A 1 ( u ) D ( x , u ) d u $h({A_1}) = \int_u {{A_1}} (u)\log \frac{{{A_1}(u)}}{{D(x,u)}}d