16.03.2021 Views

Advanced Deep Learning with Keras

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Disentangled

Representation GANs

As we've explored, GANs can generate meaningful outputs by learning the

data distribution. However, there was no control over the attributes of the outputs

generated. Some variations of GANs like Conditional GAN (CGAN) and Auxiliary

Classifier GAN (ACGAN), as discussed in the previous chapter are able to train

a generator that is conditioned to synthesize specific outputs. For example, both

CGAN and ACGAN can induce the generator to produce a specific MNIST digit.

This is achieved by using both a 100-dim noise code and the corresponding onehot

label as inputs. However, other than the one-hot label, we have no other ways

to control the properties of generated outputs.

For a review on CGAN and ACGAN, please see Chapter 4, Generative

Adversarial Networks (GANs), and Chapter 5, Improved GANs.

In this chapter, we will be covering the variations of GANs that enable us to

modify the generator outputs. In the context of the MNIST dataset, apart from

which number to produce, we may find that we want to control the writing style.

This could involve the tilt or the width of the desired digit. In other words, GANs

can also learn disentangled latent codes or representations that we can use to vary

the attributes of the generator outputs. A disentangled code or representation is

a tensor that can change a specific feature or attribute of the output data while

not affecting the other attributes.

[ 161 ]

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!