[GAN] GAN 모델 안정화를 위한 기법 - LSGAN
GAN 모델 안정화를 위한 기법 -LSGAN
LSGAN
LSGAN의 손실함수
LSGAN(Least Squares Generative Adversarial Networks)의 핵심 요소 중 하나는 그것의 손실함수이다. LSGAN은 전통적인 GAN의 교차 엔트로피 손실함수(Cross-Entropy Loss) 대신 최소제곱 손실함수(Least Squares Loss)를 사용한다.
이 손실함수는 GAN의 학습 안정성을 향상시키고 mode-collapsing 문제를 줄이는 데 중요한 역할을 한다
LSGAN의 손실함수 정의
- 생성자(G)의 손실함수: 생성자는 판별자가 생성된 데이터를 진짜로 분류하도록 속이려고 한다. 생성자의 손실은 판별자의 출력이 실제 데이터와 얼마나 가까운지를 측정한다.
- 판별자(D)의 손실함수: 판별자는 생성된 데이터와 실제 데이터를 정확히 구분하려고 한다. 판별자의 손실은 실제 데이터를 얼마나 정확히 진짜로, 생성된 데이터를 가짜로 분류하는지에 대한 오차를 측정한다.
LSGAN 손실함수의 특징
- 손실 최소화: 생성자와 판별자는 각각 자신의 손실을 최소화하려고 노력한다.
- 경계값 조정: LSGAN에서는 판별자의 출력을 0과 1 사이로 제한하는 대신, 연속적인 값으로 조정하여 보다 부드러운 그라디언트를 제공한다.
- 안정적인 학습: 최소제곱 손실함수는 경사 소실(Gradient Vanishing) 문제를 완화하고, 학습 과정을 안정화시킨다.
이진 분류할 대 Desition Boundary 에서 멀어질수록
파란선을 기준으로 위는 가짜 아래는 진짜로 판단
**+**모양은 가짜data를 나타내고, O는 진짜data를 나타냅니다.
그리고 마지막으로 ☆은 가짜data인데 진짜로 분류된 것들입니다. -> 그래서 적용한것이 Least Square입니다.
Least Square Decision boundary가 추가되었습니다. 이 Decision Boundary가 생김으로써 ☆들은 O와 멀리 떨어져 있을 수록 패널티를 받고 점점 O쪽으로 가까워집니다.
학습데이터를 생각하고, 여러 무리의 데이터들이 원형의 영역으로 샘플링되는 형태임
학습이 진행됨에 따라 오리지널 겐의 경우 -> Mode-Collapsing이 나타날 수 있음
하나의 그룹 데이터만 주구장창 생성할 수 있다.
오리지널 GAN과 Mode-Collapsing 문제
오리지널 GAN
- 오리지널 GAN은 생성자(Generator)와 판별자(Discriminator) 두 네트워크의 경쟁을 통해 학습이 진행된다.
- 생성자는 실제 데이터와 유사한 데이터를 생성하려 하고, 판별자는 생성된 데이터와 실제 데이터를 구분하려 한다.
Mode-Collapsing 문제
- Mode-collapsing은 생성자가 다양한 데이터를 생성하기보다 몇 가지 특정 패턴의 데이터만을 반복적으로 생성하는 현상이다.
- 이는 GAN의 학습 과정에서 생성자가 판별자를 속이는 방법을 찾으면서 발생한다. 생성자가 특정 패턴을 학습해 이를 반복적으로 생성하게 되는 것이다.
LSGAN의 등장
LSGAN의 특징
- LSGAN은 오리지널 GAN의 목적함수를 최소제곱 손실함수(Least Squares Loss)로 대체한다.
- 이는 판별자의 출력을 확률적인 것에서 연속적인 값으로 변환하여, 생성자가 보다 더 다양한 데이터를 생성하도록 유도한다.
LSGAN의 장점
- Mode-Collapsing 해결: 최소제곱 손실함수는 생성자가 다양성을 갖는 데이터를 생성하도록 유도하여 mode-collapsing 문제를 완화한다.
- 안정적인 학습: 전통적인 GAN에 비해 LSGAN은 학습 과정이 더 안정적이다.
LSGAN의 단점
- 과적합의 가능성: 특정 데이터셋에 대해 과도하게 최적화되는 경향이 있어, 일반화 능력이 저하될 수 있다.
- 세밀한 조정 필요: 최소제곱 손실함수의 파라미터를 적절히 조정하지 않으면, 여전히 원하는 결과를 얻기 어려울 수 있다.
GAN 모델 안정화를 위한 기법 - WGAN-GP
GP: 그래디언트 패널티
추가된 손실 함수의레귤러라이제이션 텀
GAN 학습 안정화 기법 요약
- 2-Player Game을 통해 학습하는 GAN모델은, 두 모델 중 어느 한 쪽이 과도하게 학습되고 다른 쪽은 전혀 학습이 되지 않는 등, 학습이 불안정해질 수 있음
- LSGAN, WGAN-GP 처럼 목적 함수를 새로이 정의하거나 regularization term 을 원래 목적 함수에 추가하여 학습함으로 써 안정화가능
- 이외에도 다양한 이론적인 유도 과정 및 경험적인 실험 과정을 통해 제안된 방법이 존재(Spectral Nomalization)\
이 글은 옵시디언 프로그램을 통해 티스토리에 게시되었습니다.