- 1 -
12. 발전된 GAN 모델
1강. 발전된 여러 GAN 모델의 원리
학습목표
- WGAN의 원리에 대해 설명할 수 있다.
- CGAN과 ACGAN의 원리에 대해 설명할 수 있다.
- InfoGAN의 원리에 대해 설명할 수 있다.
학습내용 - WGAN 원리
- CGAN과 ACGAN 원리 - InfoGAN 원리
1. WGAN 원리
(1) WGAN 개념과 구조
∙ Wasserstein GAN
∙ 적대적 생성 신경망(GAN)의 비용함수를 Wasserstein Distance로 설정하여 최적화를 진행하는 신경망
① Vanilla GAN
-
과
가 진짜일 확률을 출력하는 함수를 통해 신경망을 학습② Wasserstein GAN
-
과
의 Wasserstein Distance 계산을 통해 신경망을 학습(2) Wasserstein Distance
∙ Real Data와 Fake Data를 각각의 Gaussian에서 Sampling하고 와 _ 만 학습
∙ 는 계단 함수의 형태를 나타내지만 _는 선형 함수 형태를 나타내 의미 있 는 Gradient를 생성
[출처] https://arxiv.org/pdf/1701.07875.pdf
(3) WGAN
∙ WGAN 판별기를 훈련시킬 때는 생성기가 생성한 가짜 데이터와 진짜 데이터 에서 추출한 실제 데이터가 필요
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
- 3 -
∙ WGAN 생성기 훈련에는 생성기가 생성한 진짜인 척하는 가짜 데이터가 필요
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
2. CGAN과 ACGAN 원리 (1) CGAN 개념과 구조
∙ 생성 모델을 학습시키는 GAN을 기반으로 GAN의 조건부(Conditional) 버전으 로 기존 모델에 간단히 y를 추가하여 만든 적대적 신경망
[출처] https://arxiv.org/pdf/1411.1784.pdf
∙ CGAN을 이용한 MNIST 생성 결과
[출처] https://github.com/PacktPublishing/Advanced-Deep-Learning-with-Keras/
(2) ACGAN 개념과 구조
∙ Auxiliary Classifier GAN(ACGAN)은 판별망을 두 개의 Classifier로 구성
(3) CGAN와 ACGAN 비교
∙ CGAN 생성기 훈련
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
∙ ACGAN 생성기 훈련
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
- 5 -
∙ CGAN과 ACGAN 결과 비교
[출처] https://github.com/PacktPublishing/Advanced-Deep-Learning-with-Keras/
3. InfoGAN 원리 (1) 분해된 표현
∙ 입력 정보인 벡터에 대해서 해석 가능한 분해된 코드를 추가한 입력 벡터
(2) InfoGAN 개념과 구조
∙ 입력 코드와 출력 관측 사이의 상호 정보를 최대화해 비지도 방식으로 분해된 표현을 학습
∙ InfoGAN 판별기 훈련
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
∙ InfoGAN 생성기 훈련
[출처] 위키북스-케라스로 구현하는 고급 딥러닝 알고리즘
(3) InfoGAN 결과
∙ 분류 코드에 따른 결과
- 7 -
∙ 특성1(두께)에 따른 결과
∙ 특성2(회전)에 따른 결과
평가하기
1. 비용함수를 Wasserstein Distance로 설정하여 최적화를 진행하는 신경망을 고르시오.
① CGAN
② ACGAN
③ WGAN
④ LSGAN
- 정답 : ③번
해설 : WGAN은 Wasserstein GAN의 약자로, GAN의 비용함수를 Wasserstein Distance로 설정하여 최적화를 진행하는 신경망이다.
2. GAN의 판별기에서 Real/Fake 구분과 Class를 구분하는 두 개의 분류기로 구성된 신경 망을 고르시오.
① Conditional GAN
② Auxiliary Classifier GAN
③ Wasserstein GAN
④ Least Square GAN
- 정답 : ②번
해설 : ACGAN은 Auxiliary Classifier GAN의 약자로, 실제와 허구 데이터 구분과 데이터가 속하는 Class를 구분하는 두개의 분류기로 구성된다.
- 9 - 학습정리
1. WGAN 원리
∙ GAN의 비용함수를 Wasserstein Distance로 설정하여 최적화를 진행하는 WGAN
2. CGAN과 ACGAN 원리
∙ GAN을 기반으로 기존 모델에 condition을 추가하여 만든 CGAN과 ACGAN
3. InfoGAN 원리
∙ 다른 특성에 영향을 주지 않으면서 출력 데이터의 특정 특징이나 특성을 바꿀 수 있는 InfoGAN