Augmented CycleGAN: Learning Many-to-Many Mappings from Unpaired Data
Amjad Almahairi Sai Rajeswar Alessandro Sordoni Philip Bachman Aaron Courville









 




















inlinelistenumerate*1
*[inlinelist,1]
	label=(*),


















 
 
 










tightitemize
 
    
    
         
                    






Augmented CycleGAN: Learning Many-to-Many Mappings from Unpaired Data



[
Augmented CycleGAN: Learning Many-to-Many Mappings 
 from Unpaired Data

















workat†


Amjad Almahairimila,workat
Sai Rajeswarmila
Alessandro Sordonimsr
Philip Bachmanmsr
Aaron Courvillemila,cifar


milaMontreal Institute for Learning Algorithms (MILA), Canada.
msrMicrosoft Research Montreal, Canada.
cifarCIFAR Fellow. †Work partly done at MSR Montreal

Amjad Almahairiamjad.almahairi@umontreal.ca






0.3in
]









 




Learning inter-domain mappings from unpaired data can improve performance in structured prediction tasks, such as image segmentation, by reducing the need for paired data. CycleGAN was recently proposed for this problem, but critically assumes the underlying inter-domain mapping is approximately deterministic and one-to-one. This assumption renders the model ineffective for tasks requiring flexible, many-to-many mappings. We propose a new model, called Augmented CycleGAN, which learns many-to-many mappings between domains. We examine Augmented CycleGAN qualitatively and quantitatively on several image datasets.




§ INTRODUCTION
 















The problem of learning mappings between domains from unpaired data has recently received increasing attention, especially in the context of image-to-image translation <cit.>. This problem is important because, in some cases, paired information may be scarce or otherwise difficult to obtain. For example, consider tasks like face transfiguration (male to female), where obtaining explicit pairs would be difficult as it would require artistic authoring. An effective unsupervised model may help when learning from relatively few paired examples, as compared to training strictly from the paired examples. Intuitively, forcing inter-domain mappings to be (approximately) invertible by a model of limited capacity acts as a strong regularizer.






Motivated by the success of Generative Adversarial Networks (GANs) in image generation <cit.>, existing unsupervised mapping methods such as CycleGAN <cit.> learn a generator which produces images in one domain given images from the other. 

Without the use of pairing information, there are many possible mappings that could be inferred. To reduce the space of the possible mappings, these models are typically trained with a cycle-consistency constraint which enforces a strong connection across domains, by requiring that mapping an image from the source domain to the target domain and then back to source will result in the same starting image. This framework has been shown to learn convincing mappings across image domains and proved successful in a variety of related applications <cit.>.







One major limitation of CycleGAN is that it only learns one-to-one mappings, i.e. the model associates each input image with a single output image. 


We believe that most relationships across domains are more complex, and better characterized as many-to-many.


For example, consider mapping silhouettes of shoes to
images of shoes. While the mapping that CycleGAN learns can be superficially convincing (e.g. it produces a single reasonable shoe with a particular style), we would like to learn a mapping that can capture diversity of the output (e.g. produces multiple shoes with different styles). 
The limits of one-to-one mappings are more dramatic when the source domain and target domain substantially differ. For instance, it would be difficult to learn a CycleGAN model when the two domains are descriptive facial attributes and images of faces.

We propose a model for learning many-to-many mappings between domains from unpaired data. Specifically, we “augment” each domain with auxiliary latent variables and extend CycleGAN's training procedure to the augmented spaces. The mappings in our model take as input a sample from the source domain and a latent variable, and output both a sample in the target domain and a latent variable (Fig. <ref>). The learned mappings are one-to-one in the augmented space, but many-to-many in the original domains after marginalizing over the latent variables.























Our contributions are as follows.


  * We introduce the Augmented CycleGAN model for learning many-to-many mappings across domains in an unsupervised way.

  * We show that our model can learn mappings which produce a diverse set of outputs for each input.


  * We show that our model can learn mappings across substantially different domains, and we apply it in a semi-supervised setting for mapping between faces and attributes with competitive results.


















§ UNSUPERVISED LEARNING OF MAPPINGS BETWEEN DOMAINS




 §.§ Problem Setting


Given two domains  and , we assume there exists a mapping, potentially many-to-many, between their elements. The objective is to recover this mapping using unpaired samples from distributions (a) and (b) in each domain. 


This can be formulated as a conditional generative modeling task where we try to estimate the true conditionals p(a|b) and p(b|a) using samples from the true marginals.

An important assumption here is that elements in domains  and  are highly dependent; otherwise, it is unlikely that the model would uncover a meaningful relationship without any pairing information.



 §.§ CycleGAN Model

The CycleGAN model <cit.> estimates these conditionals using two mappings : ↦ and : ↦, parameterized by neural networks, which satisfy the following constraints:


  * Marginal matching: The output of each mapping should match the empirical distribution of the target domain, when marginalized over the source domain.

  * Cycle-consistency: Mapping an element from one domain to the other, and then back, should produce a sample close to the original element.



Marginal matching in CycleGAN is achieved using the generative adversarial networks framework (GAN) <cit.>. Mappings  and  are given by neural networks trained to fool adversarial discriminators D_ and D_, respectively. Enforcing marginal matching on target domain , marginalized over source domain , involves minimizing an adversarial objective with respect to :

    _GAN^B(, D_) =   _b ∼(b)[ log D_(b) ] +
       _a ∼(a)[ log(1- D_((a))) ],

while the discriminator D_ is trained to maximize it. A similar adversarial loss _GAN^A(, D_) is defined for marginal matching in the reverse direction.

Cycle-consistency enforces that, when starting from a sample a from A,
the reconstruction a' = ((a)) remains close to the original a.
For image domains, closeness between a and  a^' is typically measured with L_1 or L_2 norms. When using the L_1 norm, cycle-consistency starting from  can be formulated as:

    _CYC^A(, ) =   _a ∼(a)((a)) - a _1.

And similarly for cycle-consistency starting from . The full CycleGAN objective is given by:

    ^A_GAN(, D_) + ^B_GAN(, D_)   + 
       γ_CYC^A(, ) + γ_CYC^B(, ),

where γ is a hyper-parameter that balances between marginal matching and cycle-consistency.

The success of CycleGAN can be attributed to the complementary roles of marginal matching and cycle-consistency in its objective. Marginal matching encourages generating realistic samples in each domain. Cycle-consistency encourages a tight relationship between domains. It may also help prevent multiple items from one domain mapping to a single item from the other, analogous to the troublesome mode collapse in adversarial generators <cit.>.















 §.§ Limitations of CycleGAN
 



A fundamental weakness of the CycleGAN model is that it learns deterministic mappings. In CycleGAN, and in other similar models <cit.>, the conditionals between domains correspond to delta functions: p̂(a | b) = δ((b)) and p̂(b | a) = δ((a)), and cycle-consistency forces the learned mappings to be inverses of each other. When faced with complex cross-domain relationships, this results in CycleGAN learning an arbitrary one-to-one mapping instead of capturing the true, structured conditional distribution more faithfully.

Deterministic mappings are also an obstacle to optimizing cycle-consistency when the domains differ substantially in complexity, in which case mapping from one domain (e.g. class labels) to the other (e.g. real images) is generally one-to-many. Next, we discuss how to extend CycleGAN to capture more expressive relationships across domains.



 §.§ CycleGAN with Stochastic Mappings
 
A straightforward approach for extending CycleGAN to model many-to-many relationships is to equip it with stochastic mappings between A and B. Let  be a latent space with a standard Gaussian prior p(z) over its elements. We define mappings : ×↦ and : ×↦[To avoid clutter in notation, we reuse the same symbols of deterministic mappings.]. Each mapping takes as input a vector of auxiliary noise and a sample from the source domain, and generates a sample in the target domain. Therefore, by sampling different z ∼ p(z), we could in principle generate multiple b's conditioned on the same a and vice-versa.
We can write the marginal matching loss on domain  as:

    ^B_GAN(, D_) = _b ∼(b)   [ log D_(b) ] +
    _a ∼(a) 
     z ∼ p(z)   [ log(1- D_((a,z))) ].
 
Cycle-consistency starting from  is now given by:

    _CYC^A(, ) = _a ∼(a) 
     z_1, z_2 ∼ p(z)((a, z_1), z_2) - a _1

The full training loss is similar to the objective in Eqn. <ref>. We refer to this model as Stochastic CycleGAN.










In principle, stochastic mappings can model multi-modal conditionals, and hence generate a richer set of outputs than deterministic mappings.
However, Stochastic CycleGAN suffers from a fundamental flaw: the cycle-consistency in Eq. <ref> encourages the mappings to ignore the latent z.
Specifically, the unimodality assumption implicit in the reconstruction error from Eq. <ref> forces the mapping  to be many-to-one when cycling A→ B → A^', since any b generated for a given a must map to a^' = (b, z) ≈ a, for all z.
For the cycle B → A → B^',  is similarly forced to be many-to-one. The only way for to  and  to be both many-to-one and mutual inverses is if they collapse to being (roughly) one-to-one. We could possibly mitigate this degeneracy by introducing a VAE-like encoder and exchanging the L_1 error in Eq. <ref> for a more complex variational bound on conditional log-likelihood. In the next section, we discuss an alternative approach to learning complex, stochastic mappings between domains.







§ APPROACH


In order to learn many-to-many mappings across domains,
we propose to 
learn to map between pairs of items (a, z_b) ∈× and (b, z_a) ∈×, where  and  are latent spaces that capture any missing information when transforming an element from  to , and vice-versa. For example, when generating a female face (b ∈) which resembles a male face (a ∈), the latent code z_b ∈ can capture female face variations (e.g. hair length or style) independent from a. Similarly, z_a ∈ captures variations in a generated male face independent from the given female face. This approach can be described as learning mappings between augmented spaces × and × (Figure <ref>); hence, we call it Augmented CycleGAN.
By learning to map a pair (a, z_b) ∈× to (b, z_a) ∈×, we can
[label=(*)]

  * learn a stochastic mapping from a to multiple items in  by sampling different z_b ∈_b, and
 
  * infer latent codes z_a containing information about a not captured in the generated b, which allows for doing proper reconstruction of a.

As a result, we are able to optimize both marginal matching and cycle consistency while using stochastic mappings.
We present details of our approach in the next sections.
[Our model captures many-to-many relationships because it captures both one-to-many and many-to-one: one item in A maps to many items in B, and many items in B map to one item in A (cycle). The same is true in the other direction.]







 §.§ Augmented CycleGAN

Our proposed model has four components. First, the two mappings : ×↦ and : ×↦, which are the conditional generators of items in each domain. These models are similar to those used in Stochastic CycleGAN. We also have two encoders :×↦ and :×↦, which enable optimization of cycle-consistency with stochastic, structured mappings.
All components are parameterized with neural networks – see Fig. <ref>.
We define mappings over augmented spaces in our model as follows. Let (z_a) and (z_b) be standard Gaussian priors over  and , which are independent from (b) and (a). Given a pair (a, z_b) ∼(a)(z_b), 

we generate a pair (b̃, z̃_a) as follows: 

    b̃   = (a, z_b), z̃_a = (a, b̃).

That is, we first generate a sample in domain , then we use it along with a to generate latent code z̃_a. Note here that by sampling different z_b ∼(z_b), we can generate multiple b̃'s conditioned on the same a. In addition, given the pair (a, b̃), we can recover information about a which is not captured in b̃, via z̃_a. 
Similarly, given a pair (b, z_a)∼(b)(z_a), we generate a pair (ã, z̃_b) as follows: 

    ã   = (b, z_a), z̃_b = (b, ã).

Learning in Augmented CycleGAN follows a similar approach to CycleGAN – optimizing both marginal matching and cycle-consistency losses, albeit over augmented spaces. 



  
Marginal Matching Loss

We adopt an adversarial approach for marginal matching over × where we use two independent discriminators D_ and D_ to match generated pairs to real samples from the independent priors (b) and (z_a), respectively. Marginal matching loss over  is defined as in Eqn <ref>. 







Marginal matching over  is given by:

    _GAN^(, , D_) =    _z_a ∼(z_a)[ log D_(z_a) ] + 
       _a ∼(a)
     z_b ∼(z_b)[ log(1- D_(z̃_a)) ],

where z̃_a is defined by Eqn <ref>.
As in CycleGAN, the goal of marginal matching over  is to insure that generated samples b̃ are realistic. 
For latent codes z̃_a, marginal matching acts as a regularizer for the encoder, encouraging the marginalized encoding distribution to match a simple prior (z_a). This is similar to adversarial regularization of latent codes in adversarial autoencoders <cit.>.
We define similar losses _GAN^A(, D_) and _GAN^(, , D_) for marginal matching over ×.



  
Cycle Consistency Loss 

We define two cycle-consistency constraints in Augmented CycleGAN starting from each of the two augmented spaces, as shown in Fig. <ref>. 
In cycle-consistency starting from ×, we ensure that given a pair (a,z_b) ∼(a)(z_b), the model is able to produce a faithful reconstruction of it after being mapped to (b̃, z̃_̃ã). This is achieved with two losses; first for reconstructing a ∼(a):

    _CYC^A(, , ) = _a ∼(a)
     z_b ∼(z_b) a' - a _1 , 
    b̃   = (a, z_b),  z̃_a = (a, b̃),  a' = (b̃, z̃_a).

The second is for reconstructing z_b ∼(z_b):

    _CYC^(, ) =   _a ∼(a)
     z_b ∼(z_b) z_b' - z_b _1 , 
     
    
    z_b' = (a, b̃),      b̃ = (a, z_b).

These reconstruction costs represent an autoregressive decomposition of the basic CycleGAN cycle-consistency cost from Eq. <ref>, after extending it to the augmented domains. Specifically, we decompose the required reconstruction distribution p(b, z_a | a, z_b) into the conditionals p(b | a, z_b) and p(z_a | a, z_b, b).

Just like in CycleGAN, the cycle loss in Eqn. <ref> enforces the dependency of generated samples in  on samples of . Thanks to the encoder , the model is able to reconstruct a because it can recover information loss in generated b̃ through z̃_a. 
On the other hand, the cycle loss in Eqn. <ref> 
enforces the dependency of a generated sample b̃ on the given latent code z_b. In effect, it increases the mutual information between z_b and b conditioned on a, i.e. I(b,z_b|a) <cit.>.


















Training Augmented CycleGAN in the direction × to × is done by optimizing:











    _GAN^B(D_, ) + _GAN^z_a(D_, , )   + 
       γ_1 _CYC^A(, , ) + γ_2 _CYC^z_b(, ),

where γ_1 and γ_2 are a hyper-parameters used to balance objectives. We define a similar objective for the direction going from × to ×, and train the model on both objectives simultaneously.





 §.§ Semi-supervised Learning with Augmented CycleGAN

In cases where we have access to paired data, we can leverage it to train our model in a semi-supervised setting  (Fig. <ref>).
Given pairs sampled from the true joint, i.e. (a, b) ∼(a,b), we can define a supervision cost for the mapping  as follows:

    _SUP^A(, ) =   _(a,b) ∼(a,b)(b, z̃_a) - a _1 ,

where z̃_a = (a, b) infers a latent code which can produce a given b via (b, z̃_a). We also apply an adversarial regularization cost on the encoder, in the form of Eqn. <ref>. Similar supervision and regularization costs can be defined for  and , respectively.














 §.§ Modeling Stochastic Mappings





We note here some design choices that we found important for training our stochastic mappings. We discuss architectural and training details further in Sec. <ref>.

In order to allow the latent codes to capture diversity in generated samples, we found it important to inject latent codes to layers of the network which are closer to the inputs. This allows the injected codes to be processed with a larger number of remaining layers and therefore capture high-level variations of the output, as opposed to small pixel-level variations.
We also found that Conditional Normalization (CN) <cit.> for conditioning layers can be more effective than concatenation, which is more commonly used <cit.>.
The basic idea of CN is to replace parameters of affine transformations in normalization layers <cit.> of a neural network with a learned function of the conditioning information. We apply CN by learning two linear functions f and g which take a latent code z as input and output scale and shift parameters of normalization layers in intermediate layers, i.e. γ = f(z) and β = g(z). When activations are normalized over spatial dimensions only, we get Conditional Instance Normalization (CIN), and when they are also normalized over batch dimension, we get Conditional Batch Normalization (CBN).













§ RELATED WORK


There has been a surge of interest recently in unsupervised learning of cross-domain mappings, especially for image translation tasks. Previous attempts for image-to-image translation have unanimously relied on GANs to learn mappings that produce compelling images. In order to constrain learned mappings, some methods have relied on cycle-consistency based constraints similar to CycleGAN <cit.>, while others relied on weight sharing constraints <cit.>. However, the focus in all of these methods was on learning conditional image generators that produce single output images given the input image.
Notably, <cit.> propose to map inputs from both domains into a shared latent space. This approach may constrain too much the space of learnable mappings, for example in cases where the domains differ substantially (class labels and images).


Unsupervised learning of mappings have also been addressed recently in language translation, especially for machine translation <cit.> and text style transfer <cit.>. 
These methods also rely on some notion of cycle-consistency over domains in order to constrain the learned mappings. 
They rely heavily on the power of the RNN-based decoders to capture complex relationships across domains while we propose to use auxiliary latent variables. The two approaches may be synergistic, as it was recently suggested in <cit.>.




Recently, <cit.> proposed the BiCycleGAN model for learning multi-modal mappings but in fully supervised setting. This model extends the pix2pix framework in <cit.> by learning a stochastic mapping from the source to the target, and shows interesting diversity in the generated samples. 
Several modeling choices in BiCycleGAN resemble our proposed model, including the use of stochastic mappings and an encoder to handle multi-modal targets. However, our approach focuses on unsupervised many-to-many mappings, which allows it to handle domains with no or very little paired data. 









§ EXPERIMENTS
 




 §.§ Edges-to-Photos
 
We first study a one-to-many image translation task between edges (domain ) and photos of shoes (domain ).[ Public code available at: <https://github.com/aalmah/augmented_cyclegan>]

Training data is composed of almost 50K shoe images with corresponding edges <cit.>, but as in previous approaches (e.g. <cit.>), we assume no pairing information while training unsupervised models. Stochastic mappings in our Augmented CycleGAN (AugCGAN) model are based on ResNet conditional image generators of <cit.>, where we inject noise with CIN to all intermediate layers.


As baselines, we train: CycleGAN, Stochastic CycleGAN (StochCGAN) and Triangle-GAN (Δ-GAN) of <cit.> which share the same architectures and training procedure for fair comparison. [Δ-GAN architecture differs only in the two discriminators, which match conditionals/joints instead of marginals.]







  
Quantitative Results

First, we evaluate conditionals learned by each model by measuring the ability of the model of generating a specific edge-shoe pair from a test set. We follow the same evaluation methodology adopted in <cit.>, which opt for an inference-via-optimization approach to estimate the reconstruction error of a specific shoe given an edge. Specifically, given a trained model with mapping  and an edge-shoe pair (a,b) in the test set, we solve the optimization task z_b^* = _z_b(a,z_b) - b _1 and compute reconstruction error (a,z_b^*)-b_1. Optimization is done with RMSProp as in <cit.>. We show the average errors over a predefined test set of 200 samples in Table <ref> for: AugCGAN (unsupervised and semi-supervised with 10% paired data), unsupervised CycleGAN and StochCGAN, and a semi-supervised Δ-GAN, all sharing the same architecture. Our unsupervised AugCGAN model outperforms all baselines including semi-supervised Δ-GAN, which indicates that reconstruction-based cycle-consistency is more effective in learning conditionals than the adversarial approach of Δ-GAN. 
As expected, adding 10% supervision to AugCGAN improves shoe predictions further. 
In addition, we evaluate edge predictions given real shoes from test set as well. We report mean squared error (MSE) similar to <cit.>, where we normalize over all edge pixels. The Δ-GAN model with our architecture outperforms the one reported in <cit.>, but is outperformed by our unsupervised AugCGAN model. Again, adding 10% supervision to AugCGAN reduces MSE even further.



  
Qualitative Results 
We qualitatively compare the mappings learned by our model AugCGAN and StochCGAN. Fig. <ref> shows generated images of shoes given an edge a ∼(a) (row) and z_b ∼ p(z_b) (column) from both model, and Fig. <ref> shows cycles starting from edges and shoes. Note that here the edges are sampled from the data distribution and not produced by the learnt stochastic mapping .
In this case, both models can


  * generate diverse set of shoes with color variations mostly defined by z_b, and

  * perform reconstructions of both edges and shoes.


While we expect our model to achieve these results, the fact that StochCGAN can reconstruct shoes perfectly without an inference model may seem at first surprising. However, this can be explained by the “steganography" behavior of CycleGAN <cit.>: the model hides in the generated edge ã imperceptible information about a given shoe b (e.g. its color), in order to satisfy cycle-consistency without being penalized by the discriminator on . 
A good model of the true conditionals p(b|a), p(a|b) should reproduce the hidden joint distribution and consequently the marginals by alternatively sampling from conditionals. Therefore, we examine the behavior of the models when edges are generated from the model itself (instead of the empirical data distribution). In Fig. <ref>, we plot
multiple generated shoes given an edge generated by the model, i.e. ã, and 5 different z_b sampled from p(z_b). In StochCGAN, the mapping (ã, z_b) collapses to a deterministic function generating a single shoe for every z_b. This distinction between behaviour on real and synthetic data is undesirable, e.g. regularization benefits of using unpaired data may be reduced if the model slips into this “regime switching” style. In AugCGAN, on the other hand, the mapping seem to closely capture the diversity in the conditional distribution of shoes given edges. 

Furthermore, in Fig. <ref>, we run a Markov chain by generating from the learned mappings multiple times, starting from a real shoe. Again AugCGAN produces diverse samples while StochCGAN seems to collapse to a single mode.


We  investigate “steganography” behavior in both AugCGAN and StochCGAN using a similar approach to <cit.>, where we corrupt generated edges with noise sampled from 𝒩(0,ϵ^2), and compute reconstruction error of shoes. Fig. <ref> shows L_1 reconstruction error as we increase ϵ. AugCGAN seems more robust to corruption of edges than in StochCGAN, which confirms that information is being stored in the latent codes instead of being completely hidden in generated edges.













































 §.§ Male-to-Female
 










 








 


We study another image translation task of translating between male and female faces. Data is based on CelebA dataset <cit.> where we split it into two separate domains using provided attributes. Several key features distinguish this task from other image-translation tasks:


  * there is no predefined correspondence in real data of each domain,

  * the relationship is many-to-many between domains, as we can map a male to female face, and vice-versa, in many possible ways, and

  * capturing realistic variations in generated faces requires transformations that go beyond simple color and texture changes.

The architecture of stochastic mappings are based on U-NET conditional image generators of <cit.>, and again with noise injected to all intermediate layers.
Fig. <ref> shows results of applying our model to this task on 128 × 128 resolution CelebA images.

We can see that our model depicts meaningful variations in generated faces without compromising their realistic appearance. In Fig. <ref> we show 64 × 64 generated samples in both domains from our model ((a) and (b)), and compare them to both: (c) our model but with noise injected noise only in last 3 layers of the 's network, and (d) StochCGAN with the same architecture.
We can see that in Fig. <ref>-(c) variations are very limited, which highlights the importance of processing latent code with multiple layers. StochCGAN in this task produces almost no variations at all, which highlights the importance of proper optimization of cycle-consistency for capturing meaningful variations.
We verify these results quantitatively using LPIPS distance <cit.>, where we average distance between 1000 pairs of generated female faces (10 random pairs from 100 male faces). AugCGAN (Fig. <ref>-(b)) achieves highest LPIPS diversity score with 0.108 ± 0.003, while AugCGAN with z in low-level layers (Fig. <ref>-(c)) gets 0.059 +/- 0.001, and finally StochCGAN (Fig. <ref>-(d)) gets 0.008 +/- 0.000, i.e. severe mode collapse.






























































 §.§ Attributes-to-Faces

In this task, we make use of the CelebA dataset in order map from descriptive facial attributes A to images of faces B and vice-versa. We report both quantitative and qualitative results. For the quantitative results, we follow <cit.> and test our models in a semi-supervised attribute prediction setting. We let the model train on all the available data without the pairing information and only train with a small amount of paired data as described in Sec. 3.2. We report Precision (P) and normalized Discounted Cumulative Gain (nDCG) as the two metrics for multi-label classification problems. As an additional baseline, we also train a supervised classifier (which has the same architecture as ) on the paired subset. The results are reported in Table <ref>. In Fig. <ref>, we show some generation obtained from the model in the direction attributes to faces. We can see that the model generates reasonable diverse faces for the same set of attributes.





§ CONCLUSION


In this paper we have introduced the Augmented CycleGAN model for learning many-to-many cross-domain mappings in unsupervised fashion. This model can learn stochastic mappings which leverage auxiliary noise to capture multi-modal conditionals. Our experimental results verify quantitatively and qualitatively the effectiveness of our approach in image translation tasks. Furthermore, we apply our model in a challenging task of learning to map across attributes and faces, and show that it can be used effectively in a semi-supervised learning setting.





§ ACKNOWLEDGEMENTS

Authors would like to thank Zihang Dai for valuable discussions and feedback. We are also grateful for ICML anonymous reviewers for their comments.


icml2018



