AI VIDEO BRIEFING
최대우도 학습 정리: 코넬 CS 6785 생성 모델 강의로 보는 KL 발산과 몬테카를로 추정
코넬대 심층 생성 모델 강의 4강 정리. 두 분포의 가까움을 재는 KL 발산에서 출발해 기대 로그우도를 끌어내고, 몬테카를로 추정과 미니배치 경사하강으로 이어지는 생성 모델 학습의 원리를 차근히 짚어 나간다.

핵심 메시지
쉽게 이해하기
강의는 지금까지의 흐름을 되짚는 것으로 시작한다. 데이터에 확률 분포를 맞추는 것이 목표인데, 앞선 강의들이 다룬 것은 '어떤 형태의 분포를 후보로 둘 것인가'였고 이번 주제는 그 후보 집합 안에서 파라미터를 어떻게 고를 것인가다. 예제로 쓰이는 손글씨 숫자 데이터는 28×28 크기에 각 픽셀이 0 또는 1이어서 가능한 이미지의 수가 2의 784제곱에 이른다. 이렇게 큰 공간에서는 모든 경우에 값을 따로 지정할 수 없으므로, 다룰 수 있으면서도 데이터의 구조를 담아낼 만큼 표현력 있는 제한된 형태를 골라야 한다.
학습 목적을 정하는 일은 판별 모델보다 훨씬 애매하다. 생성 모델은 밀도 추정, 예측, 표현 학습이나 구조 발견, 생성 품질처럼 서로 다른 과제에 쓰이기 때문이다. 강의는 그중 밀도 추정에 초점을 맞추고, 확률을 잘 매기는 모델이라면 나머지 과제도 어느 정도 풀릴 것이라는 기대를 근거로 삼는다.
여기서 KL 발산이 등장한다. 항상 0 이상이고 두 분포가 같을 때만 0이 되는 성질 덕분에 최소화 대상으로 적합하다. 식을 로그의 차이로 풀어 쓰면 앞 항은 모델 파라미터와 무관하므로 버릴 수 있고, 결국 데이터에 높은 확률을 매기라는 기대 로그우도의 최대화만 남는다. 다만 이 식에도 여전히 데이터 분포가 들어 있어 그대로는 계산할 수 없다.
그 간극을 메우는 도구가 몬테카를로 추정이다. 분포에서 뽑은 표본들에 대해 함수값을 평균 내면 기대값의 추정치가 되고, 이 추정량은 평균적으로 참값과 같으며 표본이 늘수록 분산이 줄어 참값에 수렴한다. 이를 적용하면 학습 목적은 훈련 데이터의 로그 확률 평균을 최대화하는 익숙한 형태가 된다. 동전 던지기 예에서 앞면 세 번, 뒷면 두 번이면 최적 파라미터가 0.6이 되고, 일반적으로는 앞면 횟수를 전체 횟수로 나눈 값이 된다.
마지막으로 강의는 신경망으로 넘어간다. 고전적인 베이지안 네트워크는 조건부마다 파라미터가 독립이라 각각 공식으로 풀리지만, 하나의 큰 행렬이나 합성곱 필터를 여러 조건부가 나눠 쓰는 신경망에서는 그런 분해가 성립하지 않는다. 그래서 경사하강을 쓰고, 데이터가 수백만 개일 때는 배치를 뽑아 그래디언트를 근사한다. 이어 과소적합과 과대적합, 정규화, 조건부 우도까지 짚은 뒤 다음 주제인 변분 오토인코더를 예고하며 끝난다.
주요 인사이트
- KL 발산은 두 분포의 순서를 바꾸면 전혀 다른 목적함수가 된다. 겉보기에는 비슷해 보여도 성질이 크게 달라지며, 강의는 이 차이가 뒤에 다룰 모델들에서 중요해진다고 예고한다.
- 수강생 질문에서 나온 지적도 인상적이다. 이 목적함수는 모델이 가능한 모든 입력에 0이 아닌 확률을 주도록 밀어붙이는데, 실제 이미지는 전체 공간 중 저차원 영역에만 몰려 있어 유인이 어긋난다는 것이다.
- 데이터가 아주 많으면 과대적합을 덜 걱정해도 될 것 같지만, 강의는 대형 확산 모델이 학습 이미지를 거의 그대로 재생성한 사례를 들며 암기가 실제 문제라고 짚는다. 저작권이 있는 이미지라면 더욱 그렇다.
- 드롭아웃 같은 정규화 기법이 대형 생성 모델에서도 여전히 유효하다는 점, 그리고 가중치 공유 자체가 파라미터 수를 줄이는 일종의 정규화라는 점이 함께 언급된다.
- 최대우도는 만능이 아니다. 밀도 추정에 맞춘 목적일 뿐 이미지 생성 품질과 완벽히 일치하지 않고, 데이터의 숨은 요인을 찾는 표현 학습 기능도 자기회귀 모델에는 내장돼 있지 않다.
자주 묻는 질문
KL 발산을 최소화하는 것과 우도를 최대화하는 것이 왜 같은 일인가요?
KL 발산 식을 로그의 차이로 풀어 쓰면 두 항이 나오는데, 앞 항은 데이터 분포만으로 결정되어 모델 파라미터와 관계가 없습니다. 파라미터를 고르는 것이 목적이라면 그 항은 상수처럼 버릴 수 있고, 남은 항에 붙은 음의 부호 때문에 발산을 줄이는 것이 기대 로그우도를 키우는 것과 같아집니다.
몬테카를로 추정을 믿을 수 있는 근거는 무엇인가요?
강의는 세 가지 성질을 듭니다. 표본 평균의 기대값이 원래 구하려는 기대값과 정확히 같아 편향이 없고, 표본 수를 늘리면 참값으로 수렴하며, 분산이 표본 수가 커질수록 0으로 줄어든다는 점입니다.
왜 신경망 생성 모델은 공식 대신 경사하강을 써야 하나요?
고전적인 베이지안 네트워크에서는 조건부마다 파라미터가 완전히 분리돼 각각 따로, 그것도 간단한 공식으로 풀 수 있습니다. 반면 신경망은 하나의 행렬이나 합성곱 필터를 여러 조건부가 공유하기 때문에 문제가 분리되지 않고 닫힌 해도 없어 반복적인 최적화가 필요합니다.
미니배치를 쓰는 이유가 단순히 속도 때문인가요?
속도가 직접적인 동기이지만 원리는 앞서 나온 몬테카를로와 같습니다. 전체 합을 데이터 수로 나누면 각 데이터가 균등한 확률로 뽑히는 기대값 형태가 되고, 배치는 거기서 뽑은 표본이므로 배치의 평균 그래디언트가 전체 그래디언트의 추정치가 됩니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗