https://arxiv.org/pdf/1406.2661
* "$ $" 표시는 수식 표시
Abstract
- 생성 모델을 adversarial process를 통해 추정하는 framework
- 2개의 모델을 동시에 훈련
- $G$ (generative model)
- : 데이터 분포를 포착하는 생성 모델이다. 이 모델의 훈련 절차는 모델 D가 실수할 확률을 최대화하는 것
- $D$ (discriminative model)
- : 샘플이 모델 G보다는 training data에서 나왔을 확률을 추정하는 판별 모델
Introduction
- Generative model
- maximum likelihood estimation과 관련된 많은 부정확한 확률 계산을 근사하는 것에 대한 어려움과 linear units의 장점 활용에 어려움이 있었음 ⇒ 본 논문에서는 이러한 어려움을 개선할 수 있는 새로운 generative model 추정 절차(adversarial nets framework)를 제안
- Adversarial nets
- generative model은 adversary(적대자)와 맞서 싸운다.
- discriminative model은 샘플이 모델 분포에서 왔는지 데이터 분포에서 왔는지를 판단하는 것을 배운다. 쉽게 설명하면, generative model는 위조 지폐를 만드는 위조팀이라고 할 수 있으며, discriminative model은 위조 지폐를 탐지하는 경찰팀이다. 여기서의 경쟁은 위조품이 진품과 구별되지 않을때까지 양쪽 팀이 그들의 방법을 개선하도록 한다.
Adversarial nets
- generator’s distribution over data $x$ : $p_g$
- input noise variables : $p_z (z)$
- 매개변수 $θ_g$를 가진 다층 퍼셉트론으로 표현되는 data space으로의 mapping : $G(z;θ_g)$
- 단일 스칼라를 출력하는 두번째 다층 퍼셉트론 : $D(x;θ_d)$
- $x$가 $p_g$보다 데이터로부터 왔을 확률을 나타내는 것 : $D(x)$
⇒ $D$를 학습 데이터와 $G$에서 샘플링한 데이터 모두에 올바른 레이블을 지정하는 확률을 최대화하도록 학습시킨다. 우리는 동시에 $log(1-D(G(z)))$를 최소화하는 $G$를 학습시킨다.
D&G → minimax game player이며 이 게임값의 함수 V(G,D) 식
- figure1
- 파란색 점선 : updating the discriminative distribution($D$)
- 검은색 점선 : data generating distribution ($p_x$)
- 초록색 실선 : generative distribution ($p_g$)
- 수평 선 : $x$의 영역 파트
- 밑의 수평 선 : $z$가 샘플링된 영역 (여기서는 uniformly)
- 위쪽 화살표 : $x = G(z)$ 매핑이 변환된 샘플에 대해 비균일 분포 $p_g$를 어떻게 부여하는 지 보여준다. $G$는 $p_g$의 높은 밀도 영역에서는 수축하고 낮은 밀도 영역에서 확장한다.
- $D$를 최적화하는 k steps(k는 hyper parameter)& $G$를 최적화하는 one step → 이는 $G$가 천천히 변하는 한 $D$는 최적의 솔루션 근처에서 유지되게 함
(a) 수렴에 가까운 adversarial pair을 고려한다 : $p_g$는 $p_{data}$와 비슷하며 $D$는 부분적으로 정확한 분류기이다.
(b) 알고리즘 내부 루프에서 D는 데이터로부터의 샘플을 판별하도록 학습하고 $D^*(x) = p_{data}(x) / (p_{data}(x) + p_g (x))$로 수렴한다
(c) $G$를 업데이트하고 난후, $D$의 gradient는 $G(z)$가 데이터로 더욱 분류되는 쪽의 영역으로 가도록 한다
(d) 여러 단계를 학습 후 , G와 D가 충분한 용량을 가지면, 둘 다 더이상 개선할 수 없는 지점에 도달하며, 이는 $p_g = p_{data}$ 이며 판별자는 더이상 두 분포의 차이를 구별할 수 없게 된다. 즉, $D(x) = 1/2$
Theoretical Results
- Algorithm 1
- Global Optimality of $p_g = p_{data}$
- Proposition 1. $G$는 고정되어 있고, optimal discriminator $D$가 다음과 같을 때
-
- Theorem 1. 가상 훈련 기준 $C(G)$의 전역 최솟값은 $p_g = p_{data}$인 경우에만 달성된다. 그 시점에서 $C(G)$는 -log4 값을 달성
- Convergence of Algorithm 1
- proposition 2. $G$와 $D$의 용량이 충분하고, 알고리즘1의 각 단계에서 판별자가 주어진 $G$의 최적값에 도달할 수 있도록 허락되고, 생성 분포 $p_g$가 (1)기준을 개선하도록 업데이트 된다면 → $p_g$는 $p_{data}$에 수렴한다.
- (1) 기준
Experiments
- adversarial nets를 MNSIT, Toronto Face Database, CIFAR-10를 포함한 범위의 데이터셋으로 훈련시켰다.
- 그림 2와 3 → 훈련 후 생성자 네트워크에서 생성된 샘플을 보여준다. 이 샘플들이 기존의 다른 방법으로 생성된 샘플들보다 낫다는 주장보다는, 이러한 샘플들은 최소한 문헌들에 나오는 더 나은 generative model과 경쟁할 정도임을 주장하며 adversarial framework의 잠재력을 강조한다.
Advantages and disadvantages
- 단점
- 명확한 $p_g(x)$의 표현이 없다는 점
- 훈련 중에 D와 G의 동기화가 잘 이루어져야 함
- 장점
- 마코프 체인이 필요 없다
- gradients를 얻는데 오직 backprop만 사용됨
- 학습 중 별도의 추론 불필요
- 다양한 함수들을 모델에 통합 가능
Conclusions and future work