Tutorial: GAN Dissection What is learned inside a GAN? David Bau - - PowerPoint PPT Presentation

tutorial gan dissection
SMART_READER_LITE
LIVE PREVIEW

Tutorial: GAN Dissection What is learned inside a GAN? David Bau - - PowerPoint PPT Presentation

Setup here: http://bit.ly/gandtut Tutorial: GAN Dissection What is learned inside a GAN? David Bau To follow along: http://bit.ly/ gandtut We will go through a Jupyter notebook. Ideal machine has git, conda, and a GPU. Setup here:


slide-1
SLIDE 1

Tutorial: GAN Dissection

What is learned inside a GAN? David Bau To follow along: http://bit.ly/gandtut

We will go through a Jupyter notebook. Ideal machine has git, conda, and a GPU.

Setup here: http://bit.ly/gandtut

slide-2
SLIDE 2

Input: random vector z

Generative Adversarial Networks

The generator learns to beat a discriminator….

Generator G trained to fool D Discriminator D trained to tell G’s fakes from real Goal: make D think it’s real!

Setup here: http://bit.ly/gandtut

slide-3
SLIDE 3

In the end the generator can synthesize terrific images. But how does it work? What does it actually learn?

What do we learn?

Setup here: http://bit.ly/gandtut

slide-4
SLIDE 4

Each representation is a set of channels Each step increases data resolution, reduces depth

Output: random realistic image x

height depth

Input: random vector z

Each layer is a learned nonlinear convolution What happens inside? Examine each channel

  • 1. Run the network
  • 2. Collect activations
  • 3. Analyze each unit

Our Plan: GAN Dissection

Setup here: http://bit.ly/gandtut

slide-5
SLIDE 5

You can play along. Tutorial setup…

Instructions on http://bit.ly/gandtut

git clone --branch tutorial https://github.com/CSAILVision/gandissect.git cd gandissect script/setup_env.sh # Create a conda environment with dependencies script/make_dirs.sh # Create the dataset and dissect directories source activate netd # Enter the conda environment pip install -v -e . # Link the local netdissect package into the env cd notebooks jupyter notebook & # Run jupyter

Then run the notebook called: dissect_progan.ipynb

Setup here: http://bit.ly/gandtut