李宏毅GAN学习笔记(1)

GAN Lecture 1


Yann LeCun: Adversarial training is the coolest thing since sliced bread.

Outline

  • Basic Idea of GAN
  • GAN as Structured Learning
  • Can Generator Learn by Itself?
  • Can Discriminator Generate?
  • A Little Bit Theory

Basic Idea of GAN

Generation

李宏毅GAN学习笔记(1)_第1张图片

Generation: it is a neural network or a function.

李宏毅GAN学习笔记(1)_第2张图片

input vector: each dimension of input vector represents some characterstics.

李宏毅GAN学习笔记(1)_第3张图片

Discriminator

Discriminator: it is a neural network or a function.

李宏毅GAN学习笔记(1)_第4张图片

output scalar: large value means real, smaller value means fake.

李宏毅GAN学习笔记(1)_第5张图片

GAN Algorithm


  • Initialize generator and discriminator

  • In each training iteration:

    Step 1: fix generator G, and update discriminator D

    李宏毅GAN学习笔记(1)_第6张图片

    Step 2: fix discriminator D, and update generator G

    李宏毅GAN学习笔记(1)_第7张图片


Initialize for D and for G

  • In each training iteration:

    • Sample m examples from database
    • Sample m noise samples from a distrubution
    • Obtaining generated data
    • Update discriminator parameters to maximize

    Learning D

    • Sample m noise samples from a distribution
    • Update generator parameters to maxmize

    Learning G

GAN as Structured Learning

李宏毅GAN学习笔记(1)_第8张图片
李宏毅GAN学习笔记(1)_第9张图片
李宏毅GAN学习笔记(1)_第10张图片

Structured Learning Approach

  • Bottom Up: Learn to generate the object at the component level

    缺乏大局观

  • Top Down: Evaluating the whole object, and find the best one

李宏毅GAN学习笔记(1)_第11张图片

Can Generator Learn by Itself?

李宏毅GAN学习笔记(1)_第12张图片
李宏毅GAN学习笔记(1)_第13张图片

若使用Auto-Encoder技术作为Generator,那么需要更深的网络结构。

Can Discriminator Generate?

李宏毅GAN学习笔记(1)_第14张图片
李宏毅GAN学习笔记(1)_第15张图片

Discriminator -- Training

  • General Algorithm
    • Given a set of positive example, randomly generate a set of negative examples.
  • In each iteration
    • Learn a discriminator D that can discriminate positive and negative examples.
    • Generate negative examples by discriminator D:
李宏毅GAN学习笔记(1)_第16张图片

Generator v.s. Discriminator

  • Generator
    • Pros:
      • Easy to generate even with deep model.
    • Cons:
      • Imitate the appearance.
      • Hard to learn the correlation between components.

  • Discriminator
    • Pros:
      • Considering the big picture.
    • Cons:
      • Generation is not always feasible, especially when your model is deep.
      • How to do negative sampling?

Discriminator + Generator -- Training

  • General Algorithm
    • Given a set of positive example, randomly generate a set of negative examples.
  • In each iteration
    • Learn a discriminator D that can discriminate positive and negative examples.
    • Generate negative examples by discriminator D:
李宏毅GAN学习笔记(1)_第17张图片
李宏毅GAN学习笔记(1)_第18张图片

你可能感兴趣的:(李宏毅GAN学习笔记(1))