728x90
반응형
GAN(Generative Adversarial Networks)는 최근 생성적 모델을 학습시키는 새로운 방법으로 소개되었다. GAN은 생성기와 분류기의 경쟁적 학습에 의해 실제 이미지와 유사한 가짜 이미지를 만들어 내지만, 어떤 이미지를 만들어 낼지는 알 수 없었다. 이러한 문제를 해결하고자 조건을 추가하였다.
1. Conditional GAN
- z는 Latent vector(잠재 변수- 100차원의 정규화된 모델에 의한 랜덤변수), y는 조건, x는 생성된 데이터
- 초록색 부분(y = Condition)을 제외하면, GAN과 동일하다.
- 조건 데이터는 이미지 뿐만 아니라 다양한 형태(one-hot vector, image, word..)를 가질수 있다.
- 생성기와 분류기에서 입력 데이터로 Concatenation(데이터의 차원수를 늘려 정보를 포함)을 통해 활용
- 학습과정
- 생성기에서 z와 y를 입력으로 데이터를 생성한다(가짜 데이터)
- 생성된 가짜 이미지는 정답데이터와 손실함수(Reconstruction Loss = L1_Loss)를 적용 후 backward
- 분류기에서 생성된 가짜 이미지와 정답 데이터(0)를 손실함수(Adversarial Loss = Binary Cross Entropy Loss) 적용
- 분류기에서 정답 이미지와 정답 데이터(1)를 손실 함수(Adversarial Loss = Binary Cross Entropy Loss) 적용
- (3, 4)에서 구해진 값을 2로 나누어 backward
- 3,4에서는 학습할 때, 정답 데이터로 동일한 크기의 변수를 생성하고 거짓이면 0, 정답이면 1로 채워서 학습한다.
- Objective function
GAN과 동일하게 생성기와 분류기 간의 MINMAX 게임을 통해 학습을 하며, y가 조건부로 들어가게 된다.
2. 실험 결과
MNIST 데이터를 활용했을때, 원하는 데이터가 정렬되서 나온것을 볼 수 있다.
반응형
'Image processing > 논문 Review' 카테고리의 다른 글
[Shadow Detection] Instance Shadow Detection (0) | 2020.02.24 |
---|---|
Squeeze-and-Excitation Networks (0) | 2020.01.16 |
Scene Graph Generation 논문에 대한 이해 (0) | 2019.12.04 |
오토 인코더(Auto-Encoder)의 이해 (0) | 2019.06.01 |
Saliency detection이란? (0) | 2019.01.07 |