Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. (2014). Generative adversarial nets. In Advances in neural information processing systems (pp. 2672-2680).
1. Introduction
GAN 개념적 이해
- 경찰과 지폐 위조범 비유
- Discriminator은 경찰로서 진짜와 가짜를 잘 구분하도록 학습한다
- Generator는 지폐 위조범으로서 Discriminator 경찰이 잘 구분하지 못할 정도록 진짜와 비슷한 가짜를 생성한다
2. Related work
GAN 이전의 생성 모델을 위한 시도
- 확률 분포의 파라미터를 예측하려는 시도 (Boltzman Machine)
- Approximation이 너무 많이 필요
- Generative Machine
- 사전에 정의한 단순한 확률 분포를 제공하면 데이터를 생성하는 모델
- 생성 모델을 위한 General Stochastic Backpropagation 사용. 이를 VAE와 연결,
- Discriminative Criterion 사용 (NCE, Noise Contrastive Estimation)
- 모델 2개 사용 (Predictability Minimization)
- Generator와 Discriminator를 사용하는 GAN처럼 모델을 2개 정의해서 사용하지만 동작 구조에는 차이가 있음
Adversarial Examples ≠ Generative Adversarial Network
3. Adversarial nets
GAN의 Value Function (Loss Function)
- minGmaxDV(D,G)=Ex∼pdata(x)[logD(x)]+Ez∼pz(z)[1−logD(G(z))]
- Discriminator의 관점에서는 실제 데이터로부터 추출된 x∼pdata에 대해서는 D(x) 가 최대가 되어야 하며(D(x)를 1로 예측),
가짜로 생성된 z∼pz에 대해서는 logD(G(z))가 최소가 되어야한다.(D(G(z))를 0으로 예측) - Generator의 관점에서는 가짜로 생성된 z∼pz에 대해서는 logD(G(z))가 최대가 되어야한다.(D(G(z))를 1로 예측)
- Discriminator의 관점에서는 실제 데이터로부터 추출된 x∼pdata에 대해서는 D(x) 가 최대가 되어야 하며(D(x)를 1로 예측),
4. Theretical Results
증명 1: 최적의 상태가 존재
- V(D,G)에 대해서 최적의 상태는 pdata와 pg 가 동일할 때, Discriminator는 1/2로 예측하는 경우이다.
- pdata와 pg 가 동일 → 실제 데이터 분포와 Generator가 생성한 데이터 분포가 동일
- Discriminator는 1/2로 예측 → Discriminator가 실제 데이터와 가짜 데이터를 구분하지 못함
증명 2: GAN으로 최적의 상태 도달 가능
- V(D,G)가 Convex Function이므로 Gradient Descent로 최적의 해를 도달할 수 있다
5. Experiments
6. Advantages and disadvantages
장점: 간편한 계산
- Gradient Descent Algorithm으로 계산하는 것이 Markov 기반의 연산보다 효율적
단점: 생성 결과가 별로인 경우
- Generator가 실제 데이터에 있는 여러 개의 범주 중 하나의 범주만을 생성하는 문제 발생 가능
- Discriminator의 파라미터를 갱신하지 않고 Generator를 학습하면 생기는 문제