로그인 바로가기 하위 메뉴 바로가기 본문 바로가기

인공지능 및 기계학습 개론Ⅰ

임시 이미지 KAIST 산업및시스템공학과 문일철 KOOC (KAIST Open Online Course)
http://www.edwith.org/machinelearning1_17/forum/130419
좋아요 3563 수강생 17081

안녕하세요 조교입니다,

오늘은 generative model의 또 다른 trade-off인 FID-IS 관계에 대해 살펴보도록 하겠습니다.

FID는 real image와 fake image 사이의 latent feature들 간의 distributional discrepancy를 재는 것입니다. 반면, IS는 미리 학습된 classifier 모델에 의해 fake image가 얼마나 특정 class에 포함될 확률이 높은가를 통해 성능을 재는 것입니다. 그렇기 때문에 둘 다 생성 모델의 성능 지표로 사용이 가능하지만, 조금의 차이가 발생합니다.

먼저, FID는 feature 공간에서의 discrepancy를 재는 것이기 때문에 image가 사람은 확연히 가짜라고 판별할 수 있어도 feature 공간 상에서 적당히 두 class feature의 중간정도의 섞인 feature가 나온다면 그것이 FID 성능에 큰 영향을 주진 않습니다. 즉, 극단적인 예시로 FID는 절반은 real data, 절반은 사람은 real/fake를 구별할 수 있는 fake data로 주면 그 값이 아주 낮습니다. 왜냐하면 fake data가 real feature의 중간 중간에 껴있기 때문에 얼마든지 distributionally overall shape은 유사할 수 있기 때문입니다.

반면, IS는 feature 공간 상에서의 discrepancy가 아니라 마지막 class probability를 보기 때문에 훨씬 더 image가 fake같은지 real인데 특정 class로 분류될거같은지를 잘 설명해줍니다. 하지만 문제가 있습니다. IS는 image distribution이 어떻든 상관 없이 class probability가 높기만 하면 좋은 성능을 보장합니다.

그런데 한번 생성 모델이 보통 어떻게 학습되는지 살펴보겠습니다. 생성 모델은 두가지 방향으로 주로 학습됩니다. 생성된 데이터가 다양하나 퀄리티가 좋지 못한 모델이 한 방향 (likelihood-based model ex. VAE, flow, energy-based)이 되겠습니다. 다른 방향으로는 likelihood-free GAN model로 생성된 데이터가 다양하지 못하지만 퀄리티는 매우 좋은 모델이 되겠습니다. 이렇게 다른 두가지 학습 방향은 generative distribution 측면에서 서술해본다면, likelihood-based model은 학습된 생성 분포가 다양하지만 mode 사이의 미세한 영역에서의 probability의 변화까지는 학습하지 못합니다. 그에 비해, likelihood-free model은 큼지막한 mode들만을 학습하기 때문에 class-conditional GAN 모델은 보통은 아주 좋은 IS를 가지게 됩니다. 왜냐하면 class에 딱 하나의 image만 정확하게 샘플링 해도 IS는 아주 좋은 값을 가질 수 있으니까요. 반면, class-conditional GAN 모델은 FID가 클래스별로 생성은 하지만 다양성이 떨어지면 FID는 좋을 수 없습니다.

Class-conditional diffusion model은 어떨까요? 이 모델 또한 클래스별로 다양한 이미지를 생성하지만 GAN과 유사한 성능의 이미지를 생성하지는 못합니다. 그렇기 때문에 GAN과 유사한 성능의 이미지를 생성하기 위해 guidance technique들이 제시되어 왔고, 현재 diffusion model계에서 아주 활발하게 연구되고 있는 영역이 되겠습니다.