📚 [Archive] CS & AI 스터디/[PR] 논문 리뷰 📝

생성형 AI의 시작 : Generative Adversarial Nets 논문 리뷰

히주 2025. 1. 6. 00:59

 생성형 AI의 시작을 본격적으로 알린 모델은 2014년 발표된 논문인 "Generative Adversarial Nets (GANs)"입니다. 이 논문은 두 개의 신경망(생성자와 판별자)이 경쟁적으로 학습하는 방식으로 이전까지의 머신러닝 및 딥러닝 모델과는 차별화된 방식을 제시해 줍니다.

GAN은 생성 모델(Generative Model)의 한 종류로 데이터의 확률 분포를 학습하여 새로운 데이터를 생성하는 것을 목표로 합니다. 이미지, 오디오, 비디오 등 다양한 형태의 데이터를 생성할 수 있으며 이는 데이터 증강, 이미지 합성, 비디오 생성 및 복원, 스타일 전이, 텍스트-이미지 변환 등 창의적인 분야에서 광범위하게 활용되고 있습니다.

논문 리뷰를 통해 GAN의 구조와 작동 원리를 공부하고 다양한 응용 분야에서의 활용 사례를 다뤄보려 합니다.

 


논문 한눈에 요약하기

GAN(Generative Adversarial Network)생성 모델과 판별 모델을 동시에 훈련하는 적대적 학습을 통해 데이터의 확률 분포를 학습하는 새로운 프레임워크
 > 생성 모델(G) : 실제 데이터처럼 보이는 데이터를 생성
 > 판별 모델(D) : 생성된 데이터가 진짜 데이터인지 가짜 데이터인지 구별함

훈련이 진행될수록 G는 점점 더 진짜 같은 데이터를 생성하고 D는 판별하는 능력이 향상됨.
최적의 상태 G가 실제 데이터 분포를 완벽하게 복제하고 D는 진짜와 가짜를 구별하지 못해 모든 데이터에 대해 1/2의 확률을 출력하게 됨.

 


 

🧠 GAN의 탄생 배경

1. 딥러닝의 목표

딥러닝은 다양한 데이터(이미지, 오디오, 텍스트 등)의 확률 분포를 모델링하는 것을 목표로 함.

이를 통해 AI는 인간이 다루는 복잡한 데이터도 인식하고 생성할 수 있음.

2. 이전까지의 한계

  • 딥러닝의 성공 사례는 대부분 판별 모델(discriminative model)에서 이루어졌으며 감각 데이터를 레이블로 매핑하는 데 사용됨.
  • 반면, 생성 모델(generative model)은 확률 계산 과정에서 발생하는 비가역적인 확률 문제로 인해 덜 성공적이었음.

 

❓ 최대 우도 추정(MLE)이란?

  • 데이터에서 가장 잘 설명되는 확률 분포의 파라미터를 찾는 방법임.
  • 고양이와 강아지를 구분하는 모델을 예로 들면 모델이 고양이를 90% 확률로 예측할 때 MLE는 이 확률을 더 높이기 위해 모델을 조정하는 방식임.

❓ 비가역적인 확률 계산(MLE)이란?

 

  • MLE는 모델이 특정 확률을 예측할 때 그 확률을 역으로 계산하는 과정이 필요함.
  • 하지만 이미지, 오디오와 같은 고차원 데이터에서는 역방향 계산이 매우 어렵거나 불가능함.
  • 예를 들어 GAN이 고양이 이미지를 생성했을 때 이 이미지가 실제 고양이일 확률을 정확하게 계산하는 것이 어려움.

 

 

🔧 활성화 함수의 장점 활용이 어려운 이유

  • 활성화 함수는 비선형성을 추가해 복잡한 패턴을 학습하도록 도와줌.
  • 그러나 MLE 기반 생성 모델에서는 역계산이 필요하기 때문에 ReLU와 같은 비선형 활성화 함수는 역방향 계산을 더 어렵게 만듦.
  • 결과적으로 생성 모델의 학습이 불안정하거나 제대로 작동하지 않는 경우가 발생함.

 


 

🚀 GAN – 새로운 생성 모델의 시대

이 논문에서는 위의 문제를 해결하는 새로운 생성 모델 추정 절차를 제안함.

 

💡핵심 아이디어💡

  • 확률을 직접 계산하지 않고 생성 모델과 판별 모델을 경쟁시키는 방식으로 학습함.
  • 생성 모델이 새로운 데이터를 만들면 판별 모델은 그 데이터가 진짜인지 가짜인지 구별함.
  • 이러한 과정에서 생성 모델은 점점 더 진짜 같은 데이터를 생성하고 판별 모델은 더 정교해짐.
  • 결국 확률을 직접 추정하지 않고도 생성 모델이 실제 데이터 분포를 학습할 수 있게 됨.

 

🔍 GAN의 학습 과정 예시

  • 생성 모델 : 위조 지폐를 만드는 범죄자
  • 판별 모델 : 위조 지폐를 감별하는 경찰

범죄자가 위조 지폐를 만들고 경찰이 이를 감별하는 과정에서 위조 기술과 감별 기술이 모두 발전함.

궁극적으로 경찰이 위조 지폐를 전혀 감별할 수 없는 단계에 이르면 GAN은 진짜 같은 데이터를 생성하게 됨.

 


 

🤓 GAN의 학습 과정

 

위 그래프는 생성자와 판별자의 학습 과정을 시각적으로 나타낸 것임.

📈그래프 구성 요소

검은 점(Black dots): 실제 데이터의 분포 (진짜 데이터)
초록색 선(Green line): 생성자가 만들어낸 데이터 분포 (가짜 데이터)
파란색 점선(Blue dotted line): 판별자가 가짜와 진짜를 구별하는 확률
x축: 데이터 공간
z축: 잠재 변수(latent variable) 공간

 

🪜단계별 GAN 학습 과정

1. 초기 단계 – 랜덤 데이터 생성

(a) 생성자(G)는 아직 충분히 학습되지 않은 상태로 랜덤 노이즈와 같은 비정상적인 데이터를 생성함.

2. 학습 진행 – 생성자의 분포 조정

(b) 생성자가 점진적으로 실제 데이터 분포를 모방하기 시작함.

3. 중간 단계 – 생성자와 판별자의 경쟁

(c) 생성자의 분포가 실제 데이터 분포에 점점 더 근접해짐.

4. 수렴 상태 – 실제 데이터와 유사한 생성

(d) GAN이 수렴하게 되며 생성자의 데이터 분포는 실제 데이터와 거의 동일하게 됨.

 

 


 

🧪 실험 (Experiments)

GAN은 다양한 데이터셋에서 실험되었음.

MNIST, TFD(Toronto Face Database), CIFAR-10에서 생성기를 훈련함.

⚙️ 네트워크 구성

생성기(G) 네트워크

- ReLU시그모이드(sigmoid) 활성화 함수를 사용함.

 

판별기(D) 네트워크

- Maxout 활성화 함수를 사용하고 드롭아웃(dropout)을 적용하여 과적합을 방지함.

 

📊 실험 결과 (Results)

  • MINIST 및 TFD 데이터셋을 기반으로 테스트 데이터에 대해서 파르젠 윈도우 기반 로그우도 추정 결과가 나와있음.
    • MINIST에서는 테스트 세트의 평균 로그우도를 보고하였으며 표준 오차는 예제 간의 분산으로 계산되었음.
    • TED에서는 각 데이터 폴드에 대해 검증 세트를 사용해 𝜎를 조정하고 각 폴드에서의 평균 로그우도를 계산함.
  • GAN은 기존 생성 모델 대비 더 나은 성능을 보임.

 

🖼️ 샘플의 시각화

아래 그림은 훈련 후 생성기에서 생성된 샘플을 보여줌.

 


 

✅ 장점과 단점

장점

  • 마르코프 체인이 필요 없음 – 더 효율적인 학습 가능 .
  • 역전파만으로 학습 가능 .
  • 비선형 활성화 함수(ReLU 등)를 자유롭게 사용 가능 .
  • 매우 복잡하고 고차원적인 데이터에서도 성공적으로 생성 가능 .

단점

  • 생성 모델과 판별 모델이 동기화되어야 함 .
  • 판별기가 너무 빠르게 학습되면 생성기가 효과적으로 학습되지 않음 .
  • 헬베티카 시나리오: 생성기가 모든 를 동일한 로 매핑하여 다양성이 부족해질 위험이 있음 .

 

❓ 마르코프 체인이란?

  • 마르코프 체인은 현재 상태만으로 미래 상태를 예측하는 확률 모델 .
  • 핵심 개념: 과거는 잊고 현재 상태만이 다음 상태를 결정함.
    • EX1) 날씨 예측 – "오늘 맑으면 내일 맑을 확률은 70%" 같은 방식.
    • EX2) 보드 게임 – "현재 칸에서 주사위를 던져 다음 칸으로 이동하는 것 . "