AI VIDEO BRIEFING

GAN 원리 정리 — 우도 없는 학습, 두 표본 검정과 젠슨-섀넌 발산이 만든 생성 모델

코넬대 심층 생성 모델 강의가 GAN을 처음 다룬 회차다. 우도 최대화의 한계에서 출발해 두 표본 검정, 판별자가 학습하는 밀도비, 젠슨-섀넌 발산과 모드 붕괴까지 GAN의 이론적 뼈대를 차례로 정리했다.

우도를 계산하지 않고 학습한다 — 코넬대 강의로 짚어 본 GAN의 출발점 영상 대표 이미지

핵심 메시지

  • 자기회귀 모델, 변분 오토인코더, 정규화 흐름은 모두 데이터의 로그 우도를 계산하기 위해 복잡한 장치를 동원했다. GAN은 아예 우도를 쓰지 않는 목적함수로 갈아탄다.
  • 로그 우도와 표본 품질은 따로 논다. 99%가 잡음인 모델도 차원이 커지면 우도가 데이터 분포와 비슷해 보일 수 있고, 반대로 학습 데이터를 통째로 외운 모델은 표본은 완벽하지만 시험 데이터의 확률이 0이 된다.
  • 두 표본 검정은 두 표본 집합이 같은 분포에서 나왔는지를 묻는 통계 기법이다. 좋은 검정통계량을 손으로 설계하기는 어렵지만, GAN은 어느 쪽이 진짜인지 이미 알고 있으므로 그 통계량 자체를 학습해 버린다.
  • 최적 판별자는 데이터 분포와 모델 분포의 밀도비를 학습한다. 밀도 추정이라는 비지도 과제를 진짜·가짜를 맞히는 지도학습으로 바꿔 푸는 셈이다.
  • 최적 판별자를 대입하면 생성자의 목적함수는 젠슨-섀넌 발산이 된다. 이 발산은 모드를 좇는 성질이 있어 선명한 표본을 얻는 대신 다양성을 잃기 쉽고, 이것이 모드 붕괴와 이어진다.

쉽게 이해하기

이 영상은 코넬대 심층 생성 모델 강의에서 GAN을 처음 다루는 회차이며, 그동안 배운 모델들을 되짚는 것으로 시작한다. 자기회귀 모델은 확률의 연쇄 법칙에서 출발해 각 조건부 항을 매개변수화했고, 변분 오토인코더는 잠재 변수를 도입한 대가로 다루기 힘든 적분을 떠안아 변분 추론이라는 장치를 동원해야 했다. 정규화 흐름은 이를 단순화하려 잠재 공간과 관측 공간을 잇는 가역 사상을 썼지만, 이번에는 야코비 행렬식이라는 부담이 따라왔다. 강의자가 짚는 공통점은 이 모든 수고가 결국 데이터의 로그 우도를 계산하기 위한 것이었다는 점이다. 그렇다면 애초에 우도를 쓰지 않는 목적함수를 쓰면 어떨까, 이 질문이 이 강의와 다음 강의를 관통하는 출발점이다.

로그 우도의 최대화는 데이터 분포와 모델 분포 사이의 KL 발산을 최소화하는 것과 같다. 모델 계열이 모든 분포를 담을 만큼 무한하다면 완벽한 답에 도달하겠지만, 현실의 모델은 참 분포를 거의 담지 못하고 데이터도 유한하다. 목적함수를 완벽하게 최적화할 수 없을 때는 어떤 목적함수를 고르느냐가 어떤 타협을 하게 될지를 결정하는데, 강의는 봉우리가 둘인 분포를 봉우리 하나짜리 가우시안으로 근사하는 예를 든다. KL 발산은 두 봉우리를 모두 덮으려 폭이 넓고 뭉툭한 분포를 만들고, 젠슨-섀넌 발산은 한쪽 봉우리만 잘 맞추고 다른 쪽은 아예 버린다.

우도가 표본 품질의 좋은 대리 지표가 아니라는 점도 두 가지 인위적인 예로 드러난다. 하나는 1%만 데이터 분포에서, 99%는 잡음에서 표본을 뽑는 모델이다. 표본은 대부분 잡음이지만 데이터 차원이 커질수록 상수항의 상대적 비중이 줄어 로그 우도는 데이터 분포의 것과 비슷해 보인다. 다른 하나는 학습 데이터를 그대로 외운 모델로, 표본은 학습 데이터와 똑같으니 보기에 완벽하지만 확률 질량이 전부 학습 데이터에 몰려 있어 시험 데이터의 확률은 0이 되고 로그 우도는 최악이 된다. 그래서 강의는 표본 품질을 직접 재는 목적함수로 눈을 돌리고, 우도를 아예 계산하지 않는 이런 학습 방식을 우도 없는 학습이라 부른다. 여기서 통계학의 두 표본 검정이 등장하는데, 두 표본 집합이 같은 분포에서 나왔다는 귀무가설을 세우고 검정통계량이 임계값을 넘으면 기각하는 방식이다. 문제는 좋은 검정통계량을 찾기가 매우 어렵다는 것이다. 평균만 비교하면 평균이 같고 분산이 다른 분포에 속고, 평균과 분산을 함께 비교해도 그 둘이 같은 가우시안과 라플라스 분포는 구분하지 못한다. GAN의 묘수는 여기에 있다. 우리는 한쪽 표본이 데이터에서, 다른 쪽이 모델에서 나왔다는 정답을 이미 알고 있으므로, 검정통계량을 손으로 설계할 게 아니라 진짜와 가짜를 최대한 갈라내는 분류기로 학습해 버리면 된다.

생성자는 잠재 변수에서 관측 변수로 가는, 표본을 뽑을 수 있는 임의의 매개변수화된 과정이다. 신경망일 수도 있고 미분방정식계나 시뮬레이터일 수도 있다. 중요한 차이는 출력물인데, 변분 오토인코더가 분포의 평균과 분산 같은 매개변수를 내놓는 것과 달리 생성자는 표본을 곧바로 내놓는다. 그래서 확률 분포의 공식을 결코 적을 수 없고 분포가 표본을 통해 암묵적으로만 정의되며, 이런 이유로 GAN 계열을 암묵적 모델이라 부른다. 판별자는 표본을 받아 진짜인지 가짜인지 라벨을 내놓는 함수이고 목적함수는 교차 엔트로피를 쓴 평범한 이진 분류인데, 수식을 풀면 최적 판별자는 데이터 분포와 모델 분포의 밀도비 형태가 된다. 강의는 이를 베이즈 정리와 전확률 법칙으로 유도해 보이며, 밀도 추정이라는 비지도 과제를 지도학습으로 푸는 접근의 한 사례라고 정리한다.

최적 판별자의 밀도비를 생성자 목적함수에 대입하면 두 개의 KL 발산의 합, 곧 젠슨-섀넌 발산이 나온다. 이 발산은 KL 발산과 달리 대칭이고 제곱근을 취하면 삼각부등식을 만족하는 거리가 되며, 분모가 두 분포의 혼합이라 데이터가 존재하는 모든 점에 확률을 할당하도록 강제하지 않는다. 강의자는 변분 오토인코더의 이미지가 흐릿한 이유를 모든 이미지를 조금씩 근사하려다 어느 것도 잘 못하게 되는 KL 발산의 성질로 설명한다. 실제 학습은 데이터와 잡음의 미니배치를 뽑아 생성자와 판별자를 반대 방향으로 번갈아 갱신하는 식이며, 강의자는 이 알고리즘이 이론적 증명이 아니라 시행착오에서 나왔다고 전한다. 고안자인 이언 굿펠로가 어느 날 저녁 아이디어를 주고받다 집에 돌아와 그날 밤 구현했더니 작동했고, 이론적 정당화는 논문을 쓰면서 나중에 붙였다는 것이다.

GAN의 강점은 표본 품질이다. 2014년 등장 이후 4년 만에 사실적인 대형 이미지를 만들어 냈고 오디오 같은 다른 영역에도 적용됐으며, 강의 시점 기준으로 한 해 반 전까지는 이미지 품질에서 독보적이었다가 이후 확산 모델이 비슷한 수준에 올라섰다. 강의자는 잘 학습된 GAN과 확산 모델의 품질은 비슷하지만 GAN 쪽이 학습하기 훨씬 까다롭다고 평한다. 최소최대 게임이라는 구조 탓에 순조롭던 손실이 갑자기 폭발하거나 무한 루프에 빠지거나 기울기가 사라지는 일이 흔하고, 가장 악명 높은 실패는 모드 붕괴다. 열 개의 가우시안 혼합으로 만든 실험에서 생성자는 한 봉우리를 완벽하게 흉내 내다 들키면 다른 봉우리로 옮겨 가기를 반복하며 결코 전체 분포를 학습하지 못하고, MNIST로 학습한 모델이 같은 숫자만 계속 내놓는 것도 같은 현상이다. 정리하면 GAN은 표본 품질이 뛰어나고 미분 가능하며 표본을 뽑을 수 있는 과정이면 무엇이든 생성자로 쓸 수 있는 반면, 이산 변수에는 역전파가 되지 않고 최적화가 어렵다는 약점을 안는다.

주요 인사이트

  • 목적함수를 바꾸는 일은 성능 조정이 아니라 무엇을 포기할지 정하는 선택이다. KL 발산은 모드를 덮고 젠슨-섀넌 발산은 모드를 좇는데, 이 차이가 흐릿한 이미지와 선명하지만 단조로운 이미지라는 결과의 차이로 나타난다.
  • 평가 지표를 목표로 삼으면 지표가 목표를 배신한다. 99% 잡음 모델과 학습 데이터 암기 모델은, 로그 우도가 표본 품질의 대리 지표로 얼마나 쉽게 무너지는지를 극단적으로 보여 준다.
  • 손으로 설계한 검정통계량은 언제나 속일 수 있다. GAN은 이 한계를 통계량을 고정된 규칙이 아니라 학습 대상으로 바꾸는 방식으로 넘어섰고, 판별자를 진짜와 가짜의 분류기로 학습시키는 것만으로 두 분포의 밀도비를 얻는다.
  • 표본으로만 정의되는 암묵적 모델은 확률 공식을 포기하는 대신 자유를 얻는다. 정규화 흐름이 야코비 행렬식 때문에 사상의 형태를 제약받았던 것과 달리, GAN은 미분 가능하고 표본을 뽑을 수 있으면 무엇이든 생성자로 쓸 수 있다.
  • 모드 붕괴는 버그가 아니라 목적함수에서 따라 나오는 성질이다. 한 봉우리만 잘 맞춰도 손해가 없다는 젠슨-섀넌 발산의 특성이, 같은 숫자만 찍어 내는 모델로 그대로 드러난다.

자주 묻는 질문

GAN이 로그 우도를 쓰지 않는 이유는 무엇인가요?

로그 우도를 계산하려면 변분 추론이나 야코비 행렬식 같은 복잡한 장치가 필요한 데다, 우도가 표본 품질과 잘 맞아떨어지지도 않기 때문입니다. GAN은 우도를 전혀 계산하지 않고 양쪽에서 뽑은 표본만으로 두 분포를 비교하는 목적함수를 씁니다.

판별자는 결국 무엇을 학습하나요?

최적 판별자는 데이터 분포와 모델 분포의 밀도비 형태가 됩니다. 진짜와 가짜를 맞히는 지도학습을 시키는 것만으로 두 분포의 밀도비라는 정보를 얻게 되는 셈이고, 이 비율이 자연스러운 검정통계량 역할을 합니다.

모드 붕괴는 왜 일어나나요?

생성자 목적함수가 실질적으로 젠슨-섀넌 발산이고, 이 발산은 데이터 분포의 모든 지점에 확률을 할당하도록 강제하지 않습니다. 그래서 한 봉우리만 잘 흉내 내 판별자를 속이는 국소 최적에 갇히기 쉽고, 들키면 다른 봉우리로 옮겨 가기를 반복하며 전체 분포를 학습하지 못합니다.

GAN과 확산 모델의 차이는 무엇인가요?

강의자는 잘 학습된 GAN과 확산 모델의 이미지 품질은 비슷한 수준이지만, 상대적으로 GAN 쪽이 학습하기 훨씬 어렵다고 설명합니다. GAN은 생성자와 판별자의 최소최대 게임이라는 구조 때문에 최적화가 불안정합니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식

#GAN#생성모델#젠슨섀넌발산#모드붕괴#딥러닝강의