GAN의 문제점 (Mode Collapse)

Ian Goodfellow가 2014년 내놓은 GAN(Generative Adversarial Nets)은 획기적인 아이디어로써 이미지 생성분야에서 강세를 보이고 있습니다. 하지만 이러한 GAN도 한계점이 있는데 그 한계점들 중 Mode collapse에 대해 알아보도록 하겠습니다.

Mode Collapse란?

Mode collapse는 generator가 서로 다른 data가 모인 input $z$ (학습 data set)를 같은 output (generator 함수)으로 mapping하고자 할때 발생합니다. 그 중에서 partial mode collapse라는것이 흔하게 발생한다고 합니다. 이는 generator가 동일한 색깔이나 텍스쳐를 가지고 여러 이미지를 만들려고 할때 발생합니다. 예를들어, 하나의 generator로 같은 강아지를 서로 다른 시각에서 바라본 여러 이미지를 만든다고 할때 발생합니다. 그렇다면 mode collapse는 어떻게 나타날까요?
출처 : 참고문헌 [3]
위 그림은 Unrolled GAN paper에서 발췌한 그림입니다. 위쪽에 있는것이 Model collapse 현상을 개선한 unrolled GAN이고, 아래쪽이 우리가 일반적으로 알고있는 GAN입니다. 그림에 대해 간략하게 설명해 드리자면, 우리는 오른쪽 Target과 같은 분포의 generator를 만들고 학습하고 싶습니다. 왼쪽에 있는 그림들은 5000번마다 generator가 만드는 분포를 그린것입니다. 일반 GAN을 살펴보면 일정한 곳으로 converge하지 않고 여러 지점으로 옮겨 다닌다는 것을 알 수 있습니다. 이것을 대표적으로 알 수 있는 예시로 Unrolled GAN paper에서는 MNIST 문제를 들었습니다.
출처 : 참고문헌 [3]
MNIST는 0~9까지 손글씨로 적은 숫자들을 모은 데이터 셋입니다. 바로 이전의 그림처럼 여러 데이터 셋으로 분리가 되는 경우입니다. 이전의 그림과 동일하게 위에는 Unrolled GAN이고,아래는 vanilla GAN입니다. GAN만으로는 MNIST와 같이 여러 종류의 데이터가 있는 경우 한 가지 모양만 나타내고 있음을 알 수 있습니다. 그렇지만 우리가 원했던 결과는 0~9까지 숫자가 적절히 나타나는 Unrolled GAN의 경우이죠. 그렇다면 mode collapse는 왜 생기는 걸까요?

Mode Collapse가 생기는 원인

Discriminator하고 generator가 학습이 서로 상호작용을 하면서 같이 학습이 진행 되어야 하는데 한쪽이 너무 학습이 잘 되어버려서(학습의 불균형) mode collapse가 발생을 하게 됩니다. GAN을 실제로 구현을 할때, discriminator하고 generator를 각각 따로 학습을 하게 됩니다. 그러다 보니 앞서 말했던것 처럼 둘의 학습의 정도에는 차이가 있을 수 있습니다. 만약, discriminator가 너무 학습이 잘 되어서 완벽하게 generate된 이미지를 구분할 수 있는 경우를 생각해보도록 하겠습니다. generator는 어떠한 이미지를 내더라도 discriminator를 속일 수 없고, 더이상 학습이 진행이 되지 않을 것입니다. 반대의 경우도 마찬가지 입니다. 한쪽이 너무 잘 되어버리면 다른쪽은 학습이 더이상 진행이 되지 않고 멈추어버리게 됩니다. 이렇게 되면 generator는 한 종류의 이미지만 계속 생성하게 됩니다.

참고문헌

아래와 같은 논문과 블로그를 참고하였습니다.
1. GAN : https://arxiv.org/abs/1701.00160
2. http://jaejunyoo.blogspot.com/2017/01/generative-adversarial-nets-1.html
3. Unrolled GAN : https://arxiv.org/abs/1611.02163
4. http://jaejunyoo.blogspot.com/2017/02/unrolled-generative-adversarial-network-1.html
5. https://jijeng.github.io/2019/04/18/mode-collapse-in-gan/

댓글

이 블로그의 인기 게시물

선형 회귀 모델(Linear Regression Model) -1

회귀-분산 분해 (The Bias-Variance Decomposition)