Lumiere, and s5unnyjjj

Conditional Generative Adversarial Nets[CGAN] 본문

Review (Paper, Code ...)/Paper Review

Conditional Generative Adversarial Nets[CGAN]

s5unnyjjj 2020. 9. 13. 09:10
반응형

paper: arxiv.org/abs/1411.1784

 

< Outline >

1. Introduction

2. Generative Adversarial Nets

3. Conditional Adversarial Nets

4. Result

5. Conclusion

 

----------------------------------------------------------------------------------------------------

 

1. Introduction

 Unconditioned generative model은 생성되는 데이터에 어떠한 제어가 없다. 반면 Conditional Adversarial Net은 Generative Discriminator에 condition 적용함으로써 Additional Information을 주게 되면 데이터 생성과정에 직접 영향을 주는 것이 가능해진다. 

 

2. Generative Adversarial Nets

 2개의 Adversarial models인 G(Generative model)과 D(Discriminative model)로 구성된다. Generative model은 데이터 분포를 입력으로 받아 실제에 가깝게 데이터를 생성하며 Discriminative model은 입력 받은 데이터가 진짜 데이터인지 G가 만들어낸 것인지를 판별한다.

 G와 D는 non-linear mapping funcion으로 Neural Network에서 층을 쌓기 위함이다.

 

 

3. Conditional Adversarial Nets

 기존 Generative Adversarial Net의 연장선으로 Generator Discriminator의 input layer에 추가 정보 y를 condition(조건)으로 부여한다. 그러므로 Generative에서의 input은 noise z와 condition y이고 Discriminator에서의 input은 Generative가 만든 x와 condition y이다.

 

 

4. Result

 1) Unimodal

 각 row별로 0~9까지 들어가서 주어진 조건 y에 따라 class가 분류된 결과이다.

 2) Multimodal

 - User tags + annotations

 User가 생성한 태그가 붙은 Flickr 이미지를 사용하였으며, User에 따라 다른 어휘로 같은 컨셉을 표현할 수 있도록 정규화가 중요하다. 또한 자동화된 이미지 태그 시에 cgan으로 이미지 특성에 조건부인 tag-vector 분포 생성을 증명한다.

 - Generated tags

 이미지와 태그 속성을 convolution model과 language model을 사용하여 추출하며 cosine similarity를 이용하여 이미지의 샘플에서 closet 10 words를 추출한다.

 

5. Conclusion

 조건부인 y라는 데이터를 추가한 것을 Conditional GAN이라 하며 CGAN이 class label(숫자 0~9)에 맞는 MNIST이미지를 생성하였다. Multi-modal과 이미지 태그에도 유용함을 보여주었다. 

 


>> 필자가 논문을 읽고 직접 구현한 코드를 아래의 링크에 업로드하였으니 참고바랍니다.

github.com/s5unnyjjj/cgan

>> 부족한 점이 많을 수 있기에 잘못된 내용이나 궁금한 사항이 있으면 댓글 달아주시기 바랍니다.

>> 긴 글 읽어주셔서 감사합니다. 

반응형
Comments