위클리페이퍼

GAN에서 생성자(Generator)와 판별자(Discriminator)의 역할은 각각 무엇인가요?

upstack 2026. 9. 6. 22:18

GAN(Generative Adversarial Network, 생성적 적대 신경망)은 서로 대립하는 두 개의 인공지능 모델인 생성자(Generator)와 판별자(Discriminator)가 경쟁하며 학습하는 딥러닝 프레임워크입니다.

두 모델의 관계는 흔히 '위조지폐 범어(생성자)'와 '경찰(판별자)'의 비유로 자주 설명됩니다.

1. 생성자 (Generator)

  • 역할: 가짜 데이터를 만들어 내는 '위조지폐 범'
  • 목표: 판별자를 완벽히 속여 진짜로 착각할 만한 가짜 데이터를 생성하는 것
  • 동작 방식: 무작위 노이즈(Random Noise) 값을 입력받아, 실제 데이터의 패턴과 유사한 가짜 데이터(이미지, 음성 등)를 만들어 냅니다.
  • 학습 과정: 판별자에게 가짜 데이터를 보여준 뒤, 판별자가 이를 '진짜'로 오인하면 포상을 받는 방식으로 가짜 데이터의 품질을 계속 높여갑니다.

2. 판별자 (Discriminator)

  • 역할: 데이터의 진위 여부를 가려내는 '경찰'
  • 목표: 입력받은 데이터가 진짜(Real)인지 생성자가 만든 가짜(Fake)인지를 정확히 구분하는 것
  • 동작 방식: 진짜 데이터 세트와 생성자가 만든 가짜 데이터를 모두 받아, 해당 데이터가 진짜일 확률(0~1 사이 값)을 출력합니다.
  • 학습 과정: 진짜 데이터는 진짜(1)로, 가짜 데이터는 가짜(0)로 정확하게 판별해 내도록 스스로의 감별 능력을 향상시킵니다.

3. 두 모델의 경쟁과 상호작용

GAN의 핵심은 두 모델이 적대적(Adversarial)으로 경쟁하며 동시에 발전한다는 점입니다.

  1. 초기에는 생성자가 만든 가짜 데이터의 품질이 낮아 판별자가 쉽게 적발합니다.
  2. 판별자의 정밀한 감별을 피하기 위해 생성자는 점차 실제와 유사한 정교한 데이터를 만듭니다.
  3. 생성자의 실력이 올라감에 따라 판별자 역시 더 미세한 차이를 구별