AI

[AI/DL] GAN(Generative Adversarial Networks): Generator vs Discriminator 의 경쟁적인 가짜 찾아내기

깃짱 2024. 12. 6. 18:00
반응형

🌏 GAN(Generative Adversarial Networks)의 기본 개념

Generative Adversarial Networks(GAN)는 Ian Goodfellow에 의해 처음 제안된 생성 모델로, 두 개의 신경망, Generator와 Discriminator가 경쟁적으로 학습하며 고품질 데이터를 생성하는 강력한 딥러닝 모델입니다.

✅ GAN의 구조와 학습 원리

GAN은 Generator와 Discriminator로 구성됩니다.

  • Generator(G)
    • 잠재 공간(latent space) z에서 샘플을 입력받아 실제 데이터와 유사한 데이터를 생성합니다.
    • 목표: Discriminator를 속여 가짜 데이터를 진짜로 인식하도록 만듭니다.
  • Discriminator(D)
    • 실제 데이터와 Generator가 생성한 데이터를 입력받아 "진짜"와 "가짜"를 구분합니다.
    • 목표: 진짜 데이터를 정확히 진짜로, 가짜 데이터를 정확히 가짜로 구분하는 것입니다.

✅ GAN의 학습 목표: Minimax 게임

GAN의 학습은 Generator와 Discriminator 간의 minimax 게임으로 정의됩니다.

 

  • Discriminator의 손실
    • 진짜 데이터 (x)에서 (D(x))를 최대화 
    • 가짜 데이터 (G(z))에서 (D(G(z)))를 최소화 
  • Generator의 손실
    • (D(G(z)))를 최대화

🔎 손실 함수에 로그를 사용하는 이유

로그 함수를 사용하는 이유는 다음과 같습니다:

  1. 확률 기반 손실 계산: (D(x))와 (1-D(G(z)))의 확률적 차이를 명확히 반영합니다.
  2. 학습 안정성: 작은 확률 변화도 손실 값에 큰 영향을 미쳐 세밀한 학습을 유도합니다.

🌏 GAN 평가 방법

GAN의 성능 평가는 쉽지 않습니다. 생성된 데이터가 실제 데이터와 얼마나 유사한지 평가하기 위해 다양한 정성적 및 정량적 방법이 사용됩니다.

✅ 정량적 평가 방법

  1. Inception Score (IS)
    • Inception 모델을 사용하여 생성된 데이터의 품질과 다양성을 평가.
    • 값이 높을수록 생성된 데이터가 고품질이며 다양한 클래스를 포함함을 의미합니다.
  2. Frechet Inception Distance (FID)
    • 생성 데이터와 실제 데이터 분포 간의 거리를 계산.
    • 값이 낮을수록 두 분포가 유사함을 나타냅니다.
  3. Maximum Mean Discrepancy (MMD)
    • 생성 데이터와 실제 데이터의 통계적 유사성을 측정.

🌏 DCGAN(Deep Convolutional GAN)의 등장

✅ 기존 GAN의 한계

기존 GAN에는 다음과 같은 한계가 있었습니다

  • 학습이 불안정하여 결과가 일관되지 않음.
  • Generator가 단순히 데이터셋을 암기할 위험.
  • 모델의 내부 작동 방식을 이해하기 어려움.

✅ DCGAN의 개선점

DCGAN(Deep Convolutional GAN)은 기존 GAN을 발전시킨 모델로, 안정적이고 고품질 이미지를 생성할 수 있습니다.

  1. Deconvolution 기반의 구조
    • Generator는 역합성곱(deconvolution)을 사용하여 잠재 공간에서 고해상도 이미지를 생성.
    • 잠재 변수 (z)의 작은 변화가 생성된 이미지의 연속적인 변화를 유도.
  2. 구조적 특징
    • 입력: 잠재 공간 (z) (100차원의 벡터).
    • 출력: 고품질의 이미지.
    • 여러 합성곱 계층을 거치며 이미지를 점진적으로 확대.

✅ DCGAN의 결과

  • 기존 GAN에 비해 생성된 이미지의 품질이 매우 뛰어남.
  • 실생활에서 활용 가능한 수준의 고품질 이미지를 생성

 

도움이 되었다면, 공감/댓글을 달아주면 깃짱에게 큰 힘이 됩니다!🌟
비밀댓글과 메일을 통해 오는 개인적인 질문은 받지 않고 있습니다. 꼭 공개댓글로 남겨주세요!

 

반응형