본문으로 건너뛰기

© 2026 Molayo

Qiita헤드라인2026. 05. 25. 08:08

【문과 합격자의 도해】 G검정 「GAN (Generative Adversarial Network: 적대적 생성 네트워크)」 완전 공략|원리부터

요약

G검정 합격을 위한 GAN(Generative Adversarial Network)의 핵심 원리와 파생 모델을 정리한 가이드입니다. 생성기와 식별기의 경쟁 원리를 위조지폐범과 감정사의 비유로 쉽게 설명하며, 주요 파생 모델들의 특징을 요약합니다.

핵심 포인트

  • GAN은 생성기와 식별기의 경쟁을 통한 비지도 학습 모델임
  • 학습 과정은 미니맥스 게임(Minimax Game)으로 정식화됨
  • 모드 붕괴(Mode Collapse)는 특정 패턴만 생성하는 대표적 문제임
  • DCGAN, CycleGAN, StyleGAN 등 다양한 파생 모델의 특징 숙지 필요

G검정 공부를 하다 보면, GAN (Generative Adversarial Network: 적대적 생성 네트워크) 라는 용어를 반드시 마주하게 됩니다. '적대적'이라는 무시무시한 이름에 더해, 파생 모델이 대량으로 등장하기 때문에 문과 출신인 저는 처음에 상당히 혼란스러웠습니다.

이 기사에서는 2026년 1월에 G검정에 합격한 문과 출신 필자가, GAN의 원리부터 시험에 나오는 파생 모델까지를 비유를 곁들여 깔끔하게 정리합니다.

※ 이 기사는 JDLA 공식 자료가 아닙니다. 개인의 학습 경험에 기반한 내용입니다.

GAN은 2014년에 Ian Goodfellow 씨가 제안한 생성 모델로, 두 개의 네트워크를 경쟁시킴으로써 리얼한 데이터를 생성합니다.

역할네트워크 이름하는 일
위조지폐범Generator (생성기)랜덤 노이즈로부터 가짜 데이터(이미지 등)를 만듦
감정사Discriminator (식별기)입력된 데이터가 진짜인지 가짜인지 판별함

저는 이것을 "위조지폐범 vs 감정사"의 비유로 외웠습니다.

  • 위조지폐범 (Generator)은 감정사를 속일 수 있을 정도로 정교한 위조지폐를 만들려고 노력함
  • 감정사 (Discriminator)는 진짜와 가짜를 정확하게 구별하려고 노력함

이 두 사람이 절차탁마함으로써, 최종적으로 Generator는 진짜와 구별할 수 없는 데이터를 생성할 수 있게 됩니다.

  • Generator가 랜덤 노이즈로부터 가짜 데이터를 생성함
  • Discriminator가 진짜 데이터와 가짜 데이터를 받아 진위 여부를 판정함
  • Discriminator의 판정 결과를 바탕으로, 두 네트워크가 동시에 학습함 - 반복하는 사이에 Generator의 생성 정밀도가 향상됨

최종적인 이상적인 상태는 Discriminator가 진짜와 가짜를 구별할 수 없게 되는 (정답률 50%) 상태입니다.

시험에서는 다음과 같은 지식이 질문됩니다.

  • GAN은 비지도 학습 (Unsupervised Learning) 으로 분류됨 - 제안자는 Ian Goodfellow (2014년) - Generator와 Discriminator의 미니맥스 게임 (Minimax Game) 으로 정식화됨 - 학습이 불안정해지기 쉬움 (모드 붕괴 (Mode Collapse) 가 대표적인 문제)

Generator가 특정 패턴만을 생성하게 되는 현상입니다. 예를 들어 손글씨 숫자를 생성하는 GAN에서, '3'만을 계속 생성해 버리는 것과 같은 상태입니다. Discriminator를 속일 수 있는 '쉬운 답'으로 도망쳐 버리는 이미지입니다.

G검정에서는 파생 모델의 이름과 특징을 묻는 문제가 나옵니다. 아래 표로 한 번에 정리합시다.

모델명특징키워드
DCGANCNN을 GAN에 도입하여 고품질 이미지 생성을 실현합성곱 (Convolution), 안정적인 학습
CGAN (Conditional GAN)조건 (레이블)을 지정하여 생성을 제어조건부 생성
Pix2Pix쌍(Pair)이 있는 이미지를 사용하여 이미지 변환을 학습이미지 $\rightarrow$ 이미지 변환
CycleGAN쌍이 없는 상태에서 이미지의 스타일 변환이 가능말 $\rightarrow$ 얼룩말, unpaired
StyleGAN스타일 정보를 단계적으로 주입하여 초고해상도 이미지를 생성얼굴 이미지 생성, NVIDIA
Progressive GAN저해상도에서 단계적으로 해상도를 높이며 학습단계적 학습
WGANWasserstein 거리를 사용하여 학습을 안정화학습 안정화

저는 다음과 같이 이름에서 기능을 연상하여 외웠습니다.

  • DCGAN $\rightarrow$ Deep Convolutional $\rightarrow$ "깊은 합성곱"으로 CNN을 사용
  • CGAN $\rightarrow$ Conditional $\rightarrow$ "조건부"로 지정한 이미지를 생성
  • Pix2Pix $\rightarrow$ Pixel to Pixel $\rightarrow$ 픽셀 단위로 이미지를 변환 (Pair 필요)
  • CycleGAN $\rightarrow$ 갔다가 돌아오는 "사이클" $\rightarrow$ Pair 없이 상호 변환
  • StyleGAN $\rightarrow$ "스타일"을 조작 $\rightarrow$ 헤어스타일만 바꾸는 등의 부분 제어

솔직히 말하면, 수식을 쫓는 것은 포기했습니다. 대신 다음과 같은 접근 방식이 효과적이었습니다.

  • 비유를 통해 구조를 이해하기: 위조지폐범과 감정사의 비유가 가장 적절했습니다.

  • 파생 모델은 '무엇을 할 수 있는가'로 외우기: 수식이 아니라 입력과 출력의 변화에 주목하세요.

  • 실제 생성 결과 이미지를 보기: YouTube에서 StyleGAN의 얼굴 이미지 생성을 보며 '대단하다'고 실감하면 기억에 오래 남습니다.

  • 표로 정리하여 비교하기: 위의 표처럼 일람표로 만들면 차이점이 명확해집니다.

  • GAN의 제안자와 연도(Goodfellow, 2014)를 말할 수 있는가

  • Generator(생성자)와 Discriminator(판별자)의 역할을 설명할 수 있는가

  • Mode Collapse(모드 붕괴)가 무엇인지 설명할 수 있는가

  • DCGAN, CGAN, Pix2Pix, CycleGAN, StyleGAN의 차이점을 말할 수 있는가

  • GAN이 Unsupervised Learning(비지도 학습)임을 기억하고 있는가

GAN은 '두 개의 네트워크를 경쟁시켜 학습한다'는 단순한 발상이 베이스입니다. 문과 출신이라면 수식을 무리하게 쫓기보다, '어떤 것을 할 수 있는 모델인가', '다른 모델과 어떻게 다른가'에 집중하면 효율적으로 점수를 얻을 수 있습니다.

파생 모델은 이름이 비슷해서 혼란스러울 때가 많지만, 이름의 유래 → 기능 → 대표적인 응용 순으로 외우면 정리하기 쉽습니다.

G검정 학습에는 분야별로 체계적으로 정리된 교재가 도움이 됩니다. 저도 시험 전에 도움을 받았던 사이트를 소개합니다.

GAN을 포함한 Deep Learning(딥러닝) 분야의 해설이 충실하여 시험 대비에 활용할 수 있습니다.

이 기사는 JDLA 인증 공식 콘텐츠가 아닙니다. 필자 개인의 학습 경험에 기반한 비공식 정보 공유입니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0