GAN

kangmin·2024년 10월 9일

GAN

GAN은 generative adversial network의 줄임말로, generative model의 한 종류입니다.
generator와 데이터를 구별하는 discriminator가 경쟁하는 과정을 통해서 데이터를 학습합니다. generator는 점점 더 실제와 같은 데이터를 생성하게 되고, discriminator는 점점 더 실제와 가짜 데이터를 잘 구별할 수 있게 됩니다. 결론적으로 generator가 실제 데이터와 매우 유사한 데이터를 생성할 수 있게 됩니다.

구조

generator를 G, generator의 parameter를 θ\theta, discriminator를 D, discriminator의 parameter를 ϕ\phi라고 정의하자. 또한 1을 실제 데이터, 0을 가짜 데이터를 나타내는 label이라고 정의하자. 그렇다면 GAN의 목적함수는 아래와 같이 표현할 수 있습니다.

Discriminator는 위 식에서 D(x)D(x)를 최대한 1에 가깝게 만들고, D(G(z))D(G(z))를 최대한 0에 가깝게 만듦으로써 목적함수를 최대화하는 것을 목적으로 합니다. 여기서 x는 실제 데이터를 의미하고 z는 가짜 데이터를 생성하는 분포를 의미합니다. 그러므로 D(x)D(x)를 최대한 1에 가깝게 만듦으로써 실제 데이터를 1로 분류하고, D(G(z))D(G(z))를 최대한 0에 가깝게 만듦으로써 가짜 데이터를 0으로 분류하도록 discriminator를 학습합니다.

0개의 댓글