Age ProgressionRegression by Conditional Adversari
Age ProgressionRegression by Conditional Adversari
Abstract
1
portant, most existing works focus on age progression. Very 2. Related Work
few works can achieve good performance of face rejuvenat-
ing, especially for rendering baby face from an adult be- 2.1. Age Progression and Regression
cause they are mainly surface-based modeling which sim- In recent years, the study on face age progression has
ply remove the texture from a given image [17, 13, 7]. On been very popular, with approaches mainly falling into
the other hand, researchers have made great progress on two categories, physical model-based and prototype-based.
age progression. For example, the physical model-based Physical model-based methods model the biological pattern
methods [26, 25, 13, 21] parametrically model biological and physical mechanisms of aging, e.g., the muscles [24],
facial change with age, e.g., muscle, wrinkle, skin, etc. wrinkle [22, 25], facial structure [21, 13] etc. through ei-
However, they suffer from complex modeling, the require- ther parametric or non-parametric learning. However, in
ment of sufficient dataset to cover long time span, and order to better model the subtle aging mechanism, it will
are computationally expensive; the prototype-based meth- require a large face dataset with long age span (e.g., from 0
ods [27, 11, 23, 28] tend to divide training data into differ- to 80 years old) of each individual, which is very difficult
ent age groups and learn a transformation between groups. to collect. In addition, physical modeling-based approaches
However, some can preserve personality but induce severe are computationally expensive.
ghosting artifacts, others smooth out the ghosting effect On the other hand, prototype-based approaches [1, 11]
but lose personality, while most relaxed the requirement of often divide faces into groups by age, e.g., the average face
paired images over long time span, and the aging pattern can of each group, as its prototype. Then, the difference be-
be learned between two adjacent age groups. Nonetheless, tween prototypes from two age groups is considered the ag-
they still need paired samples over short time span. ing pattern. However, the aged face generated from aver-
aged prototype may lose the personality (e.g., wrinkles). To
In this paper, we investigate the age progres- preserve the personality, [23] proposed a dictionary learning
sion/regression problem from the perspective of generative based method — age pattern of each age group is learned
modeling. The rapid development of generative adversarial into the corresponding sub-dictionary. A given face will be
networks (GANs) has shown impressive results in face im- decomposed into two parts: age pattern and personal pat-
age generation [18, 30, 20, 16]. In this paper, we assume tern. The age pattern was transited to the target age pat-
that the face images lie on a high-dimensional manifold as tern through the sub-dictionaries, and then the aged face
shown in Fig.1. Given a query face, we could find the corre- is generated by synthesizing the personal pattern and tar-
sponding point (face) on the manifold. Stepping along the get age pattern. However, this approach presents serious
direction of age changing, we will obtain the face images ghosting artifacts. The deep learning-based method [28]
of different ages while preserving personality. We propose represents the state-of-the-art, where RNN is applied on
a conditional adversarial autoencoder (CAAE) network to the coefficients of eigenfaces for age pattern transition. All
learn the face manifold. By controlling the age attribute, it prototype-based approaches perform the group-based learn-
will be flexible to achieve age progression and regression at ing which requires the true age of testing faces to localize
the same time. Because it is difficult to directly manipulate the transition state which might not be convenient. In ad-
on the high-dimensional manifold, the face is first mapped dition, these approaches only provide age progression from
to a latent vector through a convolutional encoder, and then younger face to older ones. To achieve flexible bidirectional
the vector is projected to the face manifold conditional on age changes, it may need to retrain the model inversely.
age through a deconvolutional generator. Two adversarial Face age regression, which predicts the rejuvenating re-
networks are imposed on the encoder and generator, respec- sults, is comparatively more challenging. Most age re-
tively, forcing to generate more photo-realistic faces. gression works so far [17, 7] are physical model-based,
where the textures are simply removed based on the learned
The benefit of the proposed CAAE can be summarized transformation over facial surfaces. Therefore, they cannot
from four aspects. First, the novel network architecture achieve photo-realistic results for baby face predictions.
achieves both age progression and regression while gener-
2.2. Generative Adversarial Network
ating photo-realistic face images. Second, we deviate from
the popular group-based learning, thus not requiring paired Generating realistically appealing images is still chal-
samples in the training data or labeled face in the test data, lenging and has not achieved much success until the rapid
making the proposed framework much more flexible and advancement of the generative adversarial network (GAN).
general. Third, the disentanglement of age and personal- The original GAN work [8] introduced a novel framework
ity in the latent vector space helps preserving personality for training generative models. It simultaneously trains two
while avoiding the ghosting artifacts. Finally, CAAE is ro- models: 1) the generative model G captures the distribution
bust against variations in pose, expression, and occlusion. of training samples and learns to generate new samples im-
itating the training, and 2) the discriminative model D dis-
criminates the generated samples from the training. G and Latent space
D compete with each other using a min-max game as Eq. 1, 𝒙𝟏
[𝒛𝟏 , 𝒍𝟏 ]
Personality (𝒛)
where z denotes a vector randomly sampled from certain
distribution p(z) (e.g., Gaussian or uniform), and the data E 𝒙𝟐 𝓜
G 𝒙𝟏
distribution is pdata (x), i.e., the training data x ∼ pdata (x). [𝒛𝟐 , 𝒍𝟐 ]
Age (𝒍)
min max Ex∼pdata (x) [log D(x)]+ 𝒙𝟐
G D
(1) Label
Ez∼p(z) [log(1 − D(G(z)))]
Figure 2. Illustration of traversing on the face manifold M. The
The two parts, G and D, are trained alternatively. input faces x1 and x2 are encoded to z1 and z2 by an encoder E,
One of the biggest issues of GAN is that the training pro- which represents the personality. Concatenated by random age la-
cess is unstable, and the generated images are often noisy bels l1 and l2 , the latent vectors [z1 , l1 ] and [z2 , l2 ] are constructed
and incomprehensible. During the last two years, several as denoted by the rectangular points. The colors indicate corre-
approaches [20, 19, 9, 3, 4, 10, 18] have been proposed to spondence of personality. Arrows and circle points denote the
traversing direction and steps, respectively. Solid arrows direct
improve the original GAN from different perspectives. For
traversing along the age axis while preserving the personality. The
example, DCGAN [20] adopted deconvolutional and con-
dotted arrow performs a traversing across both the age and per-
volutional neural networks to implement G and D, respec- sonality axes. The traversing in the latent space is mapped to the
tively. It also provided empirical instruction on how to build face manifold M by a generator G, as illustrated by the points and
a stable GAN, e.g., replacing the pooling by strides convo- arrows with corresponding markers and colors. Each point on M
lution and using batch normalization. CGAN [19] modi- is a face image, thus achieving age progression and regression.
fied GAN from unsupervised learning into semi-supervised
learning by feeding the conditional variable (e.g., the class
label) into the data. The low resolution of the generated im- preserving the personality. Starting from the red rectangu-
age is another common drawback of GAN. [4, 10] extended lar point [z2 , l2 ] (corresponding to x2 ) and evenly stepping
GAN into sequential or pyramid GANs to handle this prob- bidirectionally along the age axis (as shown by the solid red
lem, where the image is generated step by step, and each arrows), we could obtain a series of new points (red cir-
step utilizes the information from the previous step to fur- cle points). Through another mapping G (i.e. a generator),
ther improve the image quality. Some GAN-related works those points are mapped to the manifold M – generating a
have shown visually impressive results of randomly draw- series of face images, which will present the age progres-
ing face images [29, 18, 30, 20, 16]. However, GAN gener- sion/regression of x2 . By the same token, the green points
ates images from random noise, thus the output image can- and arrows demonstrate the age progressing/regression of
not be controlled. This is undesirable in age progression and x1 based on the learned manifold and the mappings. If we
regression, where we have to ensure the output face looks move the point along the dotted arrow in the latent space,
like the same person as queried. both personality and age will be changed as reflected on M.
We will learn the mappings E and G to ensure the generated
3. Traversing on the Manifold faces lie on the manifold, which indicates that the generated
faces are realistic and plausible for a given age.
We assume the face images lie on a high-dimensional
manifold, on which traversing along certain direction could 4. Approach
achieve age progression/regression while preserving the
personality. This assumption will be demonstrated ex- In this section, we first present the pipeline of the pro-
perimentally in Sec. 4.2. However, modeling the high- posed conditional adversarial autoencoder (CAAE) network
dimensional manifold is complicated, and it is difficult to (Sec. 4.1) that learns the face manifold (Sec. 4.2). The
directly manipulate (traversing) on the manifold. Therefore, CAAE incorporates two discriminator networks, which are
we will learn a mapping between the manifold and a lower- the key to generating more realistic faces. Sections 4.3 and
dimensional space, referred to as the latent space, which is 4.4 demonstrate their effectiveness, respectively. Finally,
easier to manipulate. As illustrated in Fig. 2, faces x1 and Section 4.5 discusses the difference of the proposed CAAE
x2 are mapped to the latent space by E (i.e., an encoder), from other generative models.
which extracts the personal features z1 and z2 , respectively.
4.1. Conditional Adversarial Autoencoder
Concatenating with the age labels l1 and l2 , two points are
generated in the latent space, namely [z1 , l1 ] and [z2 , l2 ]. The detailed structure of the propose CAAE network is
Note that the personality z and age l are disentangled in shown in Fig. 3. The input and output face images are
the latent space, thus we could simply modify age while 128 × 128 RGB images x ∈ R128×128×3 . A convolutional
128x128x64 Generator 𝑮
128x128x3 64x64x64 64x64x128
32x32x128 8x8x512 32x32x256 128x128x3
8x8x1024
16x16x256 16x16x512
50
Input z Output
face l face
Conv_3 Conv_4 FC_1
Reshape Deconv_1
Conv_2 Reshape FC_2
Conv_1 Deconv_2
Deconv_3
Encoder 𝑬 Deconv_4
L2 loss
1x1xn
Figure 3. Structure of the proposed CAAE network for age progression/regression. The encoder E maps the input face to a vector z
(personality). Concatenating the label l (age) to z, the new latent vector [z, l] is fed to the generator G. Both the encoder and the generator
are updated based on the L2 loss between the input and output faces. The discriminator Dz imposes the uniform distribution on z, and the
discriminator Dimg forces the output face to be photo-realistic and plausible for a given age label.
neural network is adopted as the encoder. The convolu- Simultaneously, the uniform distribution is imposed on z
tion of stride 2 is employed instead of pooling (e.g., max through Dz – the discriminator on z. We denote the distri-
pooling) because strided convolution is fully differentiable bution of the training data as pdata (x), then the distribution
and allows the network to learn its own spacial downsam- of z is q(z|x). Assuming p(z) is a prior distribution, and
pling [20]. The output of encoder E(x) = z preserves the z ∗ ∼ p(z) denotes the random sampling process from p(z).
high-level personal feature of the input face x. The out- A min-max objective function can be used to train E and
put face conditioned on certain age can be expressed by Dz ,
G(z, l) = x̂, where l denotes the one-hot age label. Unlike min max Ez∗ ∼p(z) [log Dz (z ∗ )] +
existing GAN-related works, we incorporate an encoder to E Dz
(3)
avoid random sampling of z because we need to generate Ex∼pdata (x) [log(1 − Dz (E(x)))]
a face with specific personality which is incorporated in z.
By the same token, the discriminator on face image, Dimg ,
In addition, two discriminator networks are imposed on E
and G with condition l can be trained by
and G, respectively. The Dz regularizes z to be uniform
distributed, smoothing the age transformation. The Dimg min max Ex,l∼pdata (x,l) [log Dimg (x, l)] +
G Dimg
forces G to generate photo-realistic and plausible faces for (4)
arbitrary z and l. The effectiveness of the two discrimina- Ex,l∼pdata (x,l) [log(1 − Dimg (G(E(x), l)))]
tors will be further discussed in Secs. 4.3 and 4.4, respec- Finally the objective function becomes
tively.
min max λL (x, G(E(x), l)) + γT V (G(E(x), l))
E,G Dz ,Dimg
4.2. Objective Function
+Ez∗ ∼p(z) [log Dz (z ∗ )]
The real face images are supposed to lie on the face man- (5)
+Ex∼pdata (x) [log(1 − Dz (E(x)))]
ifold M, so the input face image x ∈ M. The encoder E
maps the input face x to a feature vector, i.e., E(x) = z ∈ +Ex,l∼pdata (x,l) [log Dimg (x, l)]
Rn , where n is the dimension of the face feature. Given +Ex,l∼pdata (x,l) [log(1 − Dimg (G(E(x), l)))] ,
z and conditioned on certain age label l, the generator G where T V (·) denotes the total variation which is effective
generates the output face x̂ = G(z, l) = G(E(x), l). Our in removing the ghosting artifacts. The coefficients λ and γ
goal is to ensure the output face x̂ lies on the manifold while balance the smoothness and high resolution.
sharing the personality and age with the input face x (during Note that the age label is resized and concatenated to the
training). Therefore, the input and output faces are expected first convolutional layer of Dimg to make it discriminative
to be similar as expressed in Eq. 2, where L(·, ·) denotes L2 on both age and human face. Sequentially updating the net-
norm. work by Eqs. 2, 3, and 4, we could finally learn the manifold
min L (x, G(E(x), l)) (2) M as illustrated in Fig. 4.
E,G
𝒙𝟏 With 𝑫𝒛 Without 𝑫𝒛
𝒛𝟏 𝒛𝟏
𝒙𝟐
𝒛𝟐 𝒛𝟐
With 𝑫𝒛
Without 𝑫𝒛
Figure 5. Effect of Dz , which forces z to a uniform distribution.
For simplicity, z is illustrated in a 2-D space. Blue dots indicate
z’s mapped from training faces through the encoder. With Dz ,
the distribution of z will approach uniform. Otherwise, z may
present “holes”. The rectangular points denote the corresponding
z mapped from the input faces x1 and x2 , and the dotted arrow in-
dicates the traversing from z1 to z2 . The intermediate points along
Figure 4. Illustration of the learned face manifold M. The hor- the traversing are supposed to generate a series of plausible mor-
izontal axis indicates the traversing of age, and the vertical axis phing faces from x1 to x2 . Without Dz , the learned z presents a
indicates different personality. sparse distribution along the path of traversing, causing the gener-
ated face to look unreal. The series of figures at the bottom shows
the traversing with and without Dz .
4.3. Discriminator on z
The discriminator on z, denoted by Dz , imposes a prior ditional on age. Although minimizing the distance between
distribution (e.g., uniform distribution) on z. Specifically, the input and output images as expressed in Eq. 2 forces the
Dz aims to discriminate the z generated by encoder E. Si- output face to be close to the real ones, Eq. 2 does not en-
multaneously, E will be trained to generate z that could fool sure the framework to generate plausible faces from those
Dz . Such adversarial process forces the distribution of the unsampled faces. For example, given a face that is unseen
generated z to gradually approach the prior. We use uniform during training and a random age label, the pixel-wise loss
distribution as the prior, forcing z to evenly populate the la- could only make the framework generate a face close to the
tent space with no apparent “holes”. As shown in Fig. 5, the trained ones in a manner of interpolation, causing the gen-
generated z’s (depicted by blue dots in a 2-D space) present erated face to be very blurred. The Dimg will discriminate
uniform distribution under the regularization of Dz , while the generated faces from real ones in aspects of reality, age,
the distribution of z exhibits a “hole” without the applica- resolution, etc. Fig. 6 demonstrates the effect of Dimg .
tion of Dz . Exhibition of the “hole” indicates that face im- Comparing the generated faces with and without Dimg ,
ages generated by interpolating between arbitrary z’s may it is obvious that Dimg assists the framework to generate
not lie on the face manifold – generating unrealistic faces. more realistic faces. The outputs without Dimg could also
For example, given two faces x1 and x2 as shown in Fig. 5, present aging but the effect is not as obvious as that with
we obtain the corresponding z1 and z2 by E under the con- Dimg because Dimg enhances the texture especially for
ditions with and without Dz , respectively. Interpolating be- older faces.
tween z1 and z2 (dotted arrows in Fig. 5), the generated
faces are expected to show realistic and smooth morphing 4.5. Differences from Other Generative Networks
from x1 to x2 (bottom of Fig. 5). However, the morphing
In this section, we comment on the similarity and differ-
without Dz actually presents distorted (unrealistic) faces in
ence of the proposed CAAE with other generative networks,
the middle (indicated by dashed box), which corresponds to
including GAN [8], variational autoencoder (VAE) [12],
the interpolated z’s passing through the “hole”.
and adversarial autoencoder (AAE) [18].
4.4. Discriminator on Face Images VAE vs. GAN: VAE uses a recognition network to
predict the posterior distribution over the latent variables,
Inheriting the similar principle of GAN, the discrimina- while GAN uses an adversarial training procedure to di-
tor Dimg on face images forces the generator to yield more rectly shape the output distribution of the network via
realistic faces. In addition, the age label is imposed on back-propagation [18]. Because VAE follows an encoding-
Dimg to make it discriminative against unnatural faces con- decoding scheme, we can directly compare the generated
0~5 16~20 41~50 61~70 formed in Sec. 5.3. Finally, the tolerance to occlusion and
35
variation in pose and expression is illustrated in Sec. 5.4 .
7 16~20 0~5 6~10 11~15 16~20 21~30 31~40 41~50 51~60 61~70 71~80
5 58~68
8 31~40
0 15~20
35 61~80
45 60~80
5 69~80
3 69~80 0~5 6~10 11~15 16~20 21~30 31~40 41~50 51~60 61~70 71~80
Figure 7. Comparison to prior works of face aging. The first column shows input faces, and second column are the best aged faces cited
from prior works. The rest columns are our results from both age progression and regression. The red boxes indicate the comparable results
to the prior works.
18 31~40 35 35 21~30 24
19 6~10 07 42 61~70 61
Figure 8. Comparison to the ground truth. Figure 10. Tolerance to occlusion and variation in pose and ex-
pression. The very left column shows the input faces, and the right
columns are generated faces by CAAE from younger to older ages.
in Fig. 7. We also compare with age regression works using The first input face presents relatively more dramatic expression,
the FT demo [6] as shown in Fig. 9. Our results obviously the second input shows only the face profile, and the last one is
show higher fidelity, demonstrating the capability of CAAE partially occluded by facial marks.
in achieving smooth face aging and rejuvenation. CAAE
better preserves the personality even with a long age span.
In addition, our results provide richer texture (e.g., wrinkle
6. Discussion and Future Works
for old faces), making old faces look more realistic. An-
other survey is conducted to statistically evaluate the perfor- In this paper, we proposed a novel conditional adver-
mance as compared with prior works, where for each testing sarial autoencoder (CAAE), which first achieves face age
image, the volunteer is to select the better result from CAAE progression and regression in a holistic framework. We de-
or prior works, or hard to tell. We collect 235 paired images viated from the conventional routine of group-based train-
of 79 subjects from previous works [28, 11, 23, 25]. We re- ing by learning a manifold, making the aging progres-
ceive 47 responses and 1508 votes in total with 52.77% in- sion/regression more flexible and manipulatable — from an
dicating CAAE is better, 28.99% indicating the prior work arbitrary query face without knowing its true age, we can
is better, and 18.24% indicating they are equal. This result freely produce faces at different ages, while at the same
further verifies the superior performance of the proposed time preserving the personality. We demonstrated that with
CAAE. two discriminators imposed on the generator and encoder,
respectively, the framework generates more photo-realistic
faces. Flexibility, effectiveness, and robustness of CAAE
Input