현실의 데이터는 보이는 변수만으로는 잘 설명되지 않는 경우가 많습니다. 시험 점수 뒤에는 실제 실력이 있고, 문서의 단어 뒤에는 주제가 있으며, 데이터 점들의 분포 뒤에는 보이지 않는 군집 구조가 숨어 있을 수 있습니다. 잠재변수는 이런 숨은 구조를 모델 안에 넣기 위한 개념이고, 그래픽모델은 그 구조를 그림처럼 정리하는 언어이며, EM은 잠재변수가 있을 때 학습을 가능하게 만드는 대표 알고리즘입니다.
먼저 알아둘 말
- 잠재변수: 직접 관측되지는 않지만 데이터를 설명하는 데 필요한 숨은 변수다.
- 그래픽모델: 변수들 사이의 조건부 의존관계를 그래프로 표현한 모델이다.
- 조건부 독립: 어떤 변수를 알면 다른 변수 사이의 의존이 사라지는 성질이다.
- EM 알고리즘: 잠재변수가 있을 때 숨은 변수 추정과 모수 업데이트를 번갈아 수행하는 알고리즘이다.
- E-step: 현재 모수 아래에서 잠재변수의 분포를 추정하는 단계다.
- M-step: 그 추정을 이용해 모수를 다시 최적화하는 단계다.
이 강의에서 답할 질문
- 왜 잠재변수를 도입하면 복잡한 데이터를 더 잘 설명할 수 있을까?
- 그래픽모델은 확률 구조를 어떻게 눈에 보이게 정리할까?
- EM은 보이지 않는 변수가 있어도 왜 학습을 진행할 수 있을까?
먼저 떠올릴 장면
- 학생의 실제 실력은 직접 보이지 않지만 시험 점수는 그 영향을 받는다.
- 문서의 주제는 직접 보이지 않지만, 어떤 단어가 자주 나오는지는 그 주제의 영향을 받는다.
- 데이터 점의 군집 소속은 관측되지 않지만, 분포를 이해하는 데는 핵심일 수 있다.
즉 관측 데이터만 보면 복잡해 보이는 현상도, 숨은 변수를 도입하면 더 단순한 구조로 보일 수 있습니다.
생각의 순서
- 먼저 잠재변수가 왜 필요한지 본다.
- 그다음 그래픽모델이 구조를 어떻게 표현하는지 본다.
- 마지막으로 EM이 보이지 않는 변수가 있는 학습을 어떻게 푸는지 본다.
본문
1. 잠재변수는 보이지 않는 구조를 모델에 넣는 방법이다
어떤 데이터는 관측값만으로 설명하려고 하면 지나치게 복잡해집니다. 하지만 "뒤에 숨은 원인"을 하나 도입하면 오히려 구조가 단순해질 수 있습니다.
예를 들어 데이터 점들이 두 개의 군집에서 왔다고 생각해 봅시다. 각 점이 어느 군집에 속하는지는 직접 보이지 않지만, 그 소속을 나타내는 숨은 변수를 넣으면 전체 분포를 훨씬 자연스럽게 설명할 수 있습니다.
즉 잠재변수는 그냥 보이지 않는 값을 하나 더 넣는 장식이 아니라, 복잡한 관측 분포를 더 단순한 생성 구조로 바꾸기 위한 장치입니다.
2. 그래픽모델은 변수 관계를 그림으로 표현한다
그래픽모델은 변수들을 노드로, 관계를 간선으로 표현합니다. 이 방식의 장점은 무엇이 직접적으로 연결되어 있고 무엇이 그렇지 않은지를 구조적으로 볼 수 있다는 점입니다.
그래픽모델이 중요한 이유는 다음과 같습니다.
- 어떤 변수가 어떤 변수에 직접 영향을 주는지 보인다.
- 어떤 조건부 독립이 성립하는지 파악할 수 있다.
- 복잡한 결합분포를 더 작은 조각으로 분해해 이해할 수 있다.
즉 그래픽모델은 확률식을 단순히 길게 쓰는 대신, 구조를 눈에 보이게 만드는 언어입니다.
3. 조건부 독립은 계산을 단순하게 만든다
그래픽모델의 핵심은 단순히 그림을 그리는 것이 아니라, 조건부 독립을 드러내는 데 있습니다.
어떤 변수들을 알고 나면 다른 변수들 사이의 의존성이 사라질 수 있습니다. 이 성질을 이용하면 복잡한 확률분포를 더 간단한 곱 형태로 나눌 수 있습니다.
그래서 그래픽모델은 해석뿐 아니라 계산에도 중요합니다. 구조가 보이면 추론과 학습을 더 효율적으로 할 수 있기 때문입니다.
4. 잠재변수가 있으면 직접 최대우도를 풀기 어려워진다
잠재변수가 없는 모델에서는 우도를 직접 최적화하는 것이 상대적으로 단순할 수 있습니다. 하지만 잠재변수가 끼어들면 이야기가 달라집니다. 왜냐하면 데이터 뒤의 숨은 상태를 모르기 때문입니다.
예를 들어 각 데이터가 어느 군집에서 왔는지 모르는 혼합모형을 생각하면, 우도를 바로 최대화하려고 할 때 이 숨은 할당이 걸림돌이 됩니다.
즉 문제는 두 가지가 동시에 얽혀 있습니다.
- 숨은 변수는 무엇인가?
- 그 숨은 변수를 가장 잘 설명하는 모수는 무엇인가?
EM은 이 두 문제를 번갈아 푸는 방식으로 접근합니다.
5. EM은 숨은 변수 추정과 모수 추정을 번갈아 한다
EM 알고리즘의 생각은 매우 직관적입니다.
- 현재 모수를 잠정적으로 믿고 숨은 변수를 추정한다.
- 그렇게 추정된 숨은 변수를 바탕으로 모수를 다시 고친다.
이 과정을 반복합니다.
E-step에서는 현재 모수
$$ \theta^{\mathrm{old}} $$
아래에서 잠재변수의 조건부분포를 계산합니다.
$$ p(z \mid x, \theta^{\mathrm{old}}) $$
즉 지금 모수가 맞다고 가정했을 때, 각 데이터가 어떤 숨은 상태일 가능성이 큰지를 추정하는 단계입니다.
M-step에서는 방금 얻은 그 추정 결과를 이용해 모수를 다시 최적화합니다. 즉 "숨은 변수가 이렇게 분포한다고 보면, 어떤 모수가 가장 잘 맞는가?"를 다시 푸는 단계입니다.
6. EM이 작동하는 직관은 빈칸 채우기와 다시 맞추기다
EM을 직관적으로 보면 다음과 같습니다.
- 보이지 않는 부분을 현재 추정으로 임시로 채운다.
- 그 채운 결과를 바탕으로 모수를 다시 맞춘다.
- 새 모수로 다시 보이지 않는 부분을 더 잘 추정한다.
이 반복을 통해 우도는 보통 증가하는 방향으로 움직입니다.
즉 EM은 "숨은 구조가 있어서 한 번에 풀기 어렵다면, 잠시 번갈아 풀자"는 아이디어입니다.
7. 대표 예는 혼합모형과 군집문제다
EM이 자주 등장하는 대표 예는 가우시안 혼합모형입니다. 각 데이터 점이 어느 가우시안 성분에서 왔는지는 보이지 않지만, 그 할당을 잠재변수로 두면 전체 구조를 설명할 수 있습니다.
이 경우
- E-step은 각 점이 각 군집에 속할 확률을 추정하고
- M-step은 그 추정 확률을 반영해 각 군집의 평균, 분산, 비율을 다시 맞춥니다.
토픽모델, 숨은 상태를 가진 확률모형, 잠재군집 문제에서도 같은 생각이 반복됩니다.
8. AI에서는 왜 중요한가
잠재변수와 EM은 단순히 오래된 통계기법이 아닙니다. 현대 AI에서도 계속 등장하는 발상입니다.
- 보이지 않는 구조를 도입해 데이터를 더 단순하게 설명한다.
- 확률적 추론과 표현학습을 연결한다.
- 생성모델과 잠재공간 모델의 기초 직관을 제공한다.
그래서 이 강의는 그래픽모델과 EM 자체를 외우는 것보다, "보이지 않는 구조를 넣으면 문제를 더 잘 설명할 수 있고, 그 구조가 안 보일 때는 번갈아 추정하는 방식이 필요하다"는 사고방식을 익히는 데 더 중요합니다.
예제
-
잠재변수의 예 문제: 군집화에서 잠재변수는 무엇이 될 수 있는가? 풀이: 각 데이터가 어느 군집에 속하는지를 나타내는 할당 변수가 잠재변수가 될 수 있다. 해설: 관측되는 것은 데이터 점이지만, 군집 소속 자체는 직접 보이지 않는다.
-
EM의 직관 문제: E-step과 M-step의 차이를 설명하라. 풀이: E-step은 현재 모수 아래에서 숨은 변수를 추정하고, M-step은 그 추정 결과를 사용해 모수를 다시 맞춘다. 해설: 보이지 않는 구조와 모수를 번갈아 갱신하는 것이 EM의 핵심이다.
-
그래픽모델의 장점 문제: 그래픽모델이 왜 유용한가? 풀이: 복잡한 확률 의존관계를 구조적으로 정리하고, 조건부 독립성을 드러내어 해석과 계산을 쉽게 만들기 때문이다. 해설: 그래픽모델은 확률 구조를 눈에 보이게 만드는 언어라고 볼 수 있다.
스스로 점검
연습 문제
- 잠재변수가 필요한 이유를 설명하라.
- 그래픽모델이 변수 관계를 어떻게 표현하는지 설명하라.
- EM 알고리즘의 두 단계를 설명하라.
- 가우시안 혼합모형에서 잠재변수가 무엇인지 설명하라.
복습 질문
- 잠재변수는 무엇을 설명하기 위해 등장하는가?
- 그래픽모델은 왜 확률 구조를 이해하기 쉽게 만드는가?
- EM은 어떤 종류의 문제에 적합한가?
체크포인트
- 잠재변수, 그래픽모델, EM의 역할을 구분할 수 있다.
- E-step과 M-step을 설명할 수 있다.
- 숨은 구조를 가진 모델의 직관을 이해한다.
- EM의 반복 논리를 말할 수 있다.