Simplify next-generation deep learning by implementing powerful generative models using Python, TensorFlow and Keras Key Features β’ Understand the common architecture of different types of GANs β’ Train, optimize, and deploy GAN applications using TensorFlow and Keras β’ Build generative models
Generative Adversarial Networks Projects : Build Next-Generation Generative Models Using TensorFlow and Keras.
β Scribed by Ahirwar, Kailash
- Publisher
- Packt Publishing Ltd
- Year
- 2019
- Tongue
- English
- Leaves
- 310
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
In this book, we will use different complexities of datasets in order to build end-to-end projects. With every chapter, the level of complexity and operations will become advanced. It consists of 8 full-fledged projects covering approaches such as 3D-GAN, Age-cGAN, DCGAN, SRGAN, StackGAN, and CycleGAN with real-world use cases.
β¦ Table of Contents
Cover
Title Page
Copyright and Credits
About Packt
Contributors
Table of Contents
Preface
Chapter 1: Introduction to Generative Adversarial Networks
What is a GAN?
What is a generator network?
What is a discriminator network?
Training through adversarial play in GANs
Practical applications of GANs
The detailed architecture of a GAN
The architecture of the generator
The architecture of the discriminator
Important concepts related to GANs
Kullback-Leibler divergence
Jensen-Shannon divergence
Nash equilibrium
Objective functions
Scoring algorithms
The inception score The FreΜchet inception distanceVariants of GANs
Deep convolutional generative adversarial networks
StackGANs
CycleGANs
3D-GANs
Age-cGANs
pix2pix
Advantages of GANs
Problems with training GANs
Mode collapse
Vanishing gradients
Internal covariate shift
Solving stability problems when training GANs
Feature matching
Mini-batch discrimination
Historical averaging
One-sided label smoothing
Batch normalization
Instance normalization
Summary
Chapter 2: 3D-GAN --
Generating Shapes Using GANs
Introduction to 3D-GANs
3D convolutions
The architecture of a 3D-GAN The architecture of the generator networkThe architecture of the discriminator network
Objective function
Training 3D-GANs
Setting up a project
Preparing the data
Download and extract the dataset
Exploring the dataset
What is a voxel?
Loading and visualizing a 3D image
Visualizing a 3D image
A Keras implementation of a 3D-GAN
The generator network
The discriminator network
Training a 3D-GAN
Training the networks
Saving the models
Testing the models
Visualizing losses
Visualizing graphs
Hyperparameter optimization
Practical applications of 3D-GANs
Summary Chapter 3: Face Aging Using Conditional GANIntroducing cGANs for face aging
Understanding cGANs
The architecture of the Age-cGAN
The encoder network
The generator network
The discriminator network
Face recognition network
Stages of the Age-cGAN
Conditional GAN training
The training objective function
Initial latent vector approximation
Latent vector optimization
Setting up the project
Preparing the data
Downloading the dataset
Extracting the dataset
A Keras implementation of an Age-cGAN
The encoder network
The generator network
The discriminator network
Training the cGAN Training the cGANInitial latent vector approximation
Latent vector optimization
Visualizing the losses
Visualizing the graphs
Practical applications of Age-cGAN
Summary
Chapter 4: Generating Anime Characters Using DCGANs
Introducing to DCGANs
Architectural details of a DCGAN
Configuring the generator network
Configuring the discriminator network
Setting up the project
Downloading and preparing the anime characters dataset
Downloading the dataset
Exploring the dataset
Cropping and resizing images in the dataset
Implementing a DCGAN using Keras
Generator
Discriminator
β¦ Subjects
Machine learning;Neural networks (Computer science);Artificial intelligence
π SIMILAR VOLUMES
<p><span>Generative adversarial networks (GANs) were introduced by Ian Goodfellow and his co-authors including Yoshua Bengio in 2014, and were to referred by Yann Lecun (Facebookβs AI research director) as βthe most interesting idea in the last 10 years in ML.β GANsβ potential is huge, because they
Key Features Learn generative learning approach of ML and its key differences from the discriminative learning approach. Understand why GANs are difficult to train, and key techniques to make their training stable to get impressive results. Implement multiple variants of GANs for solving prob