초짜 대학원생의 입장에서 이해하는 Deep Convolutional Generative Adversarial Network (DCGAN) (1)
Unsupervise Representation Learning with Deep Convolutional Generative Adversarial Networks.pdf
생성 영상의 해상도
기존 GAN은 MNIST와 같이 비교적 단순한 이미지는 괜찮은 이미지를 생성하였지만, CIFAR-10과 같은 복잡한 영상에 대해서는 그렇게 좋은 이미지 생성 x
→ 이전에 높은 품질의 이미지 생성이 가능한 GAN 모델은 LAPGANs가 유일
→ LAPGANs의 문제: 구조로부터 기인하는 노이즈로 인해 물체들이 흔들린 듯한 형체로 생성
결과의 불안정성
Measure for sample evaluation → DCGAN이 해결했거나 하려는 문제는 아님.
Generator의 성능을 판단하는 기준이 모호 → 잘했는지 못했는지 정량적으로 평가 불가
맞는 측정 방법 또한 주관적인 판단에 가까움
아직 많은 연구가 필요한 부분
DCGAN 논문에서는 측정방법을 사용하지 않아도 최소한 생성 모델(Generator)이 학습이 잘 되었다는 것을 어떻게 보여줄 수 있는지 잘 분석해있음
→ 이미지를 외워서 보여주는 것이 아니란 것을 확인시켜야함
→ Generator의 Input 공간인 Latent Space에서 움직일때 급작스러운 변화가 아닌 부드러운 변화를 보여줘야함.
Max Pooling 같이 미분되지 않는 부분을 Convolution으로 대체 → All convolutional net 사용
Generator와 Discriminator에 BatchNorm 추가
→ Generator의 Output Layer와 Discriminator의 Input Layer에는 BN을 추가하지 않음
→ GAN의 고질적인 문제인 Mode Collapsing 문제를 어느정도 완화
Fully connected Layers를 쓰지않고 제거
Tanh를 사용하는 Output layer을 제외한 모든 Generator에 있는 Layer에 ReLU 사용
Discriminator에 있는 모든 Layer에 LeakyReLU 사용