Generative Adversarial Networks are a promising modern application of Deep Learning that allows models to generate examples. However, GANs are complex, difficult to tune, and limited to small examples. We will explore recent GAN progress with a model that generates faces conditional on desired features, like 'smiling' and 'bangs'. Accessible to anyone comfortable with keras or tensorflow.
Target Audience Data Scientists, researchers, and software developers familiar with keras, tensorflow, or similar recent Deep Learning tools. It is expected that most in audience will be able to build models and begin to train them on a local machine. Such students will not leave the tutorial with fully trained models. While students are not expected to have remote access to a machine configured with CUDA and tensorflow-gpu, the instructor will.
Outcomes After attending, students in the target audience should be able to - Identify and explain the essential components of Generative Adversarial Networks including Deep Convolutional versions. - Modify existing GAN implementations. - Design a GAN for a novel application. - Understand and explain recent improvements in GAN loss functions.
0-20 minutes: We code We will download the CelebA dataset and build a base convolutional classifier for this dataset. This will function as a review for anyone familiar with these concepts and this part of the model will be used later in the tutorial.
20-50 minutes: I code Instructor will cover theoretical concepts used by GANs. Instructor will provide a demo of how these concepts are used to build generative models.
50-70 minutes: We code We will implement a standard Deep Convolutional GAN on the CelebA dataset.
70-80 minutes: I code We will discuss recent modifications to loss functions including Wasserstein loss, relativistic loss, and infogan loss.
80-90 minutes: I code Instructor will demo a complete DCGAN using relativistic and infogan loss.