대표적으로는 image classification 문제에서 정답이 아닌 이미지를 생성할 때 사용된다. 아래와 같은 GAN의 구조에서 G 가 generative, 즉 생성하는 모델인데 그 결과는 실제 데이터와 구분 짓기 위해 fake라고 한다.
-> Generative Adversarial Network
적대적이다.
GAN 구조를 살펴보면 생성하는 모델인 Ganerative model과 그것을 구분해내기 위해 Discriminator model이 있다.
그 두 모델을 경찰과 위조지폐범으로 비유하는 경우가 많은데, 딥러닝에 대한 기본 지식이 있는 사람이라면 쉽게 받아들일 수 있다.
먼저 Generative 모델은 입력으로 주어지는 noise를 갖고 fake data를 만들려고 한다. 물론 초기에는 아주 형편없는 이미지가 만들어진다. 당연히 discriminator model은 이를 쉽게 fake data라고 구분해낼 수 있다. 하지만 이러한 과정을 반복하면서 Generator는 discriminator의 감시망을 피할 수 있는 data를 만드는 법을 배운다.
물론, discriminator도 가만히 있지는 않는다. 몇 step을 반복한 후에는 generator를 고정시키고 discriminator를 학습시켜 발전된 fake data 역시 구분할 수 있게 발전한다. 이렇듯 서로 피드백하며 학습되는 구조 덕분에 adversarial이라는 이름이 붙게 된다.