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 데이터 셋으로 평가하여 읽을 수 있는 중국어를 생성할 수 있다.
- 하나는 다양한 종류의 데이터 셋에 의해 평가되는 112 x 112 resolution의 이미지 생성 모델
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
- G는 input variable $z$를 sampling 하면서 학습 시작
- input variable $z$를 data space에 미분 가능한 네트워크로 mapping : $G(z; θ_g)$
- 반면에 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를 얻을 수 있어서 좋았다.
학부생 입장이지만, 이렇게 논문을 읽으면서 교과서로 공부하는 것과는 또 다른 재미를 느낄 수 있어서 좋았다.
'학부 > 논문 리뷰' 카테고리의 다른 글
BLIP-Diffusion: Pre-trained Subject Representation for Controllable Text-to-Image Generation and Editing 논문 리뷰 (0) | 2024.01.25 |
---|---|
Denoising Diffusion Probabilistic Models (DDPM) 논문 리뷰 (0) | 2024.01.20 |
Generative Adversarial Nets (GAN) 논문 리뷰 (0) | 2023.10.25 |
[RoBERTa: A Robustly Optimized BERT Pretraining Approach] 논문 리뷰 (0) | 2023.08.14 |
EfficientNet 논문 리뷰 (0) | 2023.05.18 |