본문 바로가기

학부/논문 리뷰

Least Square Generative Adversarial Networks (LS-GAN) 논문 리뷰

728x90
반응형
 CV 프로젝트 (2) - 논문 리뷰

2023.10.30 - [학부/논문 리뷰] - Generative Adversarial Nets (GAN) 논문 리뷰

 

지난 포스팅 때 봤던 GAN 모델은 사실 지금까지 많은 변화를 거쳐 온 모델이다. 그 중, 정말 간단한 modification만으로도 좋은 성능을 얻을 수 있었던 LS-GAN에 대한 논문 리뷰를 하고자 한다. 

이 또한 CV 프로젝트의 일부였으며, GAN 모델과 관련된 지식을 얻기 위한 리뷰이다.

 

[논문 링크]

https://arxiv.org/pdf/1611.04076.pdf

 


Abstract


Abstract

GANs을 이용한 unsupervised learning → 큰 성공

일반적인 GANs의 loss function = sigmoid cross entropy loss function

⇒ 하지만 이 loss function은 vanishing gradients problem 문제를 유발할 수 있다.

따라서, 우리는 loss function을 least square loss function을 적용하는 LS-GANs를 제안한다.

LS-GANs의 objective function을 최소화하는 것 ⇒ Pearson $X^2$ divergence를 최소화하는 것

LS-GANs의 장점

  • Regular GANs들보다 더 좋은 퀄리티의 이미지를 생성한다.
    • LSUN과 CIFAR10 등의 5개의 scene datasets으로 평가했으며, 더 좋은 퀄리티임을 입증했다.
  • 학습 과정에서 더 안정적이다.
    • 기존 GANs 과의 비교 실험을 통해 입증한다.


Introduction


Introduction

기존 GAN에서 Discriminator (D)는 sigmoid cross entropy loss 함수를 사용

⇒ D는 자신이 받은 sample에 대한 진위 여부, 즉 “진짜”일 확률을 output으로 내보내게 된다.

파란색 라인이 original GAN의 decision boundary이며, 빨간색 라인이 LS-GAN의 decision boundary이다. 하나씩 살펴보면,

original GANs에서 decision boundary 아래는 ‘진짜’, 위쪽은 ‘가짜’라고 판별한다고 할 때, 별표 (generator가 만든 fake sample)은 진짜로 구별되기 때문에 generator는 더 이상 학습하지 않고 업데이트를 종료한다. 이미 fake sample을 D가 진짜라고 혼동할 만큼 학습이 되었기 때문이다.

하지만, 실제로 보면 real data의 distribution과는 다소 거리가 멀게 fake sample을 생성했다.

⇒ 이 문제는, 기존 data sample과 거리가 먼 fake sample을 바탕으로 업데이트 하는 과정에서 gradient vanishing problem을 일으킬 수 있다.

이를 수정하기 위해 LS-GANs이 등장한다.

보는 것처럼, 기존 데이터 sample에 더 가깝게 fake sample이 생성되도록 decision boundary가 수정되었다. Least square decision boundary를 사용하면, 멀리 떨어져 있는 fake sample들도 real data의 distribution과 decision boundary에 더 가깝게 끌어올 수 있게 되면서 원본 데이터와 더 유사한 샘플 데이터들을 생성할 수 있게 된다.

LS-GANs은 decision boundary와 fake sample의 거리를 기반으로 학습을 진행하며, 이 과정에서 더 많은 gradient를 generator에 update 시킬 수 있다. 또한, batch normalization없이 상대적으로 좋은 state를 얻을 수 있다는 것도 입증했다.

이 논문이 기여하는 바는 다음과 같다.

  • Least square loss function 적용 → objective function을 최소화하는 것이 Pearson X^2 divergence를 최소화하는 것과 같음
    • 실제 이미지에 더 realistic한 이미지를 생성하는 것을 확인할 수 있다.
  • 2개의 network architecture을 design했다.
    • 하나는 다양한 종류의 데이터 셋에 의해 평가되는 112 x 112 resolution의 이미지 생성 모델
      • SOTA method보다 훨씬 높은 퀄리티의 이미지를 생성
    • 많은 클래스를 가진 task에 사용할 수 있는 모델
      • 실제 handwritten chinese character 데이터 셋으로 평가하여 읽을 수 있는 중국어를 생성할 수 있다.

 


2. Related Work


2. Related Work

Deep Generative model은 주어진 데이터에 대한 확률 분포를 모델링하려는 시도였다.

  • RBMs (Restricted Boltzmann Machines) → DBNs (Deep Belief Networks), DBMs (Deep Boltzmann Machines)
    • 많은 Deep generative model의 기초가 되는 RBMs을 확장하여 DBNs, DBMs가 개발되었고 이들을 통해 많은 이미지 분류, 생성 task가 진행
    • 하지만 approximation method를 모델 학습에 사용하는 모델들은 모두 intractable partition function, intractable posterior distribution (어려운 계산 문제나 사후 분포 확률을 구하는 문제)에 어려움을 겪게 됨.
  • VAEs
    • Gradient-based optimization method를 활용하여 학습을 시키지만, 이는 생성된 이미지를 흐릿하게 만들 가능성이 있다.
  • GANs
    • 위의 모델들과 달리, Approximation method를 사용하지 않고 미분 가능한 네트워크를 통해 훈련할 수 있다.
    • Unsupervised learning에 강한 모습을 보이며, 이미지 생성이나 이미지 간 변화와 같은 구체적인 task에도 적용할 수 있다.

GANs의 한계점

  • 하지만, GANs의 큰 성공에도 불구하고 생성된 이미지의 퀄리티를 향상 시키는 데에는 여전히 어려운 문제이다.
    • 따라서, DC-GANs이 등장했으며 LAPGANs과 같은 방법론이 등장했다.
    • 또한, 중간 단계의 discriminator에서 중요한 통계 정보와 생성된 샘플 간의 평균 제곱 오차를 최소화하는 기법인 feature matching도 제안되었다.
  • GANs의 학습 과정에서의 안정성은 중요한 문제 중 하나이다.
    • discriminator를 energy function으로 보고 auto-encoder architecture을 사용하여 GANs의 학습 안정성을 향상
    • generator와 discriminator를 더 밸런스 있게 만듬
      • unrolled objective function
      • reconstruction module
        • real sample과 reconstruction sample들의 distance를 regularizer로 사용하여 더 안정성 있는 gradient 획득
      • arbitrary f-divergence
    • 다양한 divergence와 generalization method를 이용하여 GANs 학습을 다양한 확률 기반 학습으로 framework화 했다.
      • Wassertein distance가 Jensen-Shannon divergence보다 더 낫다.
      • Loss-sensitive GAN
        • real sample loss < fake sample loss ⇒ vanishing gradient를 막을 수 있다.


3. Method


3. Method

3.1 Generative Adversarial Networks

기존 GANs의 objective function을 소개

  • D : discriminator
  • G : generator
    • G의 목표는 $p_g$를 학습하는 것.
  • $p_g$ : data x의 distribution
  1. G는 input variable $z$를 sampling 하면서 학습 시작
  2. input variable $z$를 data space에 미분 가능한 네트워크로 mapping : $G(z; θ_g)$
  3. 반면에 D는 이미지가 G로부터 생성된 것인지, 진짜 샘플인지 인식하는 것에 초점을 두는 classifier로 학습 :$D(x;\theta_d)$

3.2 Least Squares Generative Adversarial Networks

D를 classifier로 보고 regular GANs은 sigmoid cross entropy loss function을 사용

LS-GANs은 이로 인해 비롯되는 vanishing gradient problem에 대응하기 위해 discriminator를 위한 a-b coding scheme을 사용한다.

  • a : fake data label
  • b : real data label

LS-GANs의 objective function이며 c는 D가 진짜라고 판별할 G가 원하는 값을 의미한다.


3.2.1 Benefits of LSGANs

2가지 측면에서 benefits을 이야기할 수 있다.

  • regular GANs은 decision boundary에 맞춰 길게 늘어져 있는 sample에 대한 loss가 거의 없으나, LS-GANs에서는 그럼에도 loss를 만들어 페널티를 부여함으로써 훨씬 더 realistic한 이미지를 생성할 수 있다.
  • 위의 방법들에 의해 generator를 업데이트 할 때, 훨씬 더 많은 gradient를 생성하여 vanishing gradient problem을 완화시키면서 학습의 안정성을 확보할 수 있다.
    • (a)에서 loss가 saturate되어 있지만, (b)에서는 단 하나의 점에서만 loss가 최솟값을 가짐으로써 학습 과정에서 훨씬 안정적인 모습을 보여준다.

3.2.2 Relation to f-divergence

기존 GANs 논문들은 Jensen-Shannon divergence (JSD)를 최소화하는 방법을 고려한다.

우리는 LS-GANs과 f-divergence의 관계를 고려하여, LS-GANs을 푸는 문제에 작은 조건을 추가하면 결국 Pearson X^2 divergence를 최소화 하는 것과 같은 것이라는 것을 알 수 있다.

LS-GANs의 objective function을 조금 더 확장하면 (4)의 식이 된다.

여기서 $min \,V_{LSGAN}(G)$의 식에 $[(D(x) -c)^2]$가 추가되어도 이 식에는 G가 관여하는 부분이 없으므로 solution에는 차이가 없다.

여기서 GAN의 G가 고정되어 있을 떄, optimal discriminator D에 대한 식은 (5)와 같이 정의되므로

여기서 $min \,V_{LSGAN}(G)$의 식에 (5)의 식을 대입하면 아래처럼 전개된다.

결국, $a,b,c$에 대한 조건이 $b-c =1, b-a =2$를 만족할 때 $p_d + p_g$와 $2p_g$ 사이의 $Pearson X^2 divergence$를 최소화하는 것과 같은 말이다.


3.2.3 Parameters Selection

  • 위의 조건처럼 $b-c =1, b-a =2$ 를 만족하도록 parameter를 setting
  • 혹은, $c=b$ 로 setting함으로써 realistic한 이미지 생성이 가능

3.3 Model Architectures

최초의 모델은 위의 모델처럼 디자인 되었으며 VGG 모델에서 motivate 되었다.

2번째 모델은 많은 class를 가진 task를 수행할 때 사용되기 위해 디자인되었다.

다중 클래스 작업에서는 deterministic relationship을 만들기 어렵기 때문에, conditional GANs를 사용하여 label 정보를 조건으로 사용해서 deterministic relationship을 생성한다.

One-Hot encoding은 메모리 / 계산 시간 비용 측면에서 현실적으로 불가

⇒ Linear mapping layer : 큰 레이블 벡터를 작은 벡터로 매핑 후, 작은 벡터를 layer에 concatenate

따라서, conditional LSGAN의 objective function은 다음과 같다.

 


4.Experiments


4. Experiments

4.1과 4.2는 dataset에 관한 내용이므로 패스

4.3 Stability Comparison

LS-GAN과 regular GAN의 안정성을 비교하는 실험

안정성을 테스트하기 위해 Batch Normalization (BN) 유무에 따른 결과를 비교한다.

  • (a)와 (b)는 BN이 없으며 Adam을 사용
  • (c)와 (d)는 BN이 없으며 RMSProp 사용
  • 결과를 살펴보면 mode collapse 현상이 일어나지 않고 다양한 이미지가 생성된 것을 확인할 수 있다.

4.4 Handwritten Chinese Characters

3740개의 class를 포함한 chinese dataset 활용 → LSGAN은 readable한 character를 생성

 


5. Conclusion and Future Work


5. Conclusions and Future Work

LS-GANs을 제안

  • 2개의 model architecture
    • several scene datasets으로 evaluation
    • handwritten chinese character dataset
  • learning process에서의 stability 향상

이러한 발견들을 바탕으로 더 복잡한 데이터 셋(ImageNet)으로 확장 + decision boundary로 fake sample들을 끌어당기는 것이 아니라, generated sample 그 자체로 real data에 가까워지게 만드는 연구가 추후 진행될 task이다.


느낀 점


 

지난 GAN 논문 리뷰를 하면서도 느꼈듯이, 생각보다 엄청 거창한 이론들을 접목시키지 않고 간단해 보이는 설정 하나로 이렇게 성능이 갈린다는 것이, AI 분야에서 얼마나 많은 variation들로 변화를 줄 수 있는 지를 체감할 수 있게 했다.

물론, 직접 코드 구현을 해보진 못했지만 이와 같은 논문들을 읽는 것만으로도 모델에 대한 다양한 insight를 얻을 수 있어서 좋았다.

학부생 입장이지만, 이렇게 논문을 읽으면서 교과서로 공부하는 것과는 또 다른 재미를 느낄 수 있어서 좋았다.

 

 

728x90
반응형