테마
10회 · 숨은 변수와 EM · 노트
4 정규 혼합의 EM
4.1 E 단계와 M 단계
개 정규 성분의 혼합 에서 이고 이다. 숨은 자료는 이름표 다(예제 2.2(a)).
명제 4.1 (정규 혼합의 EM) E 단계는 책임(responsibility)
을 구하는 것이고, 로 두면 M 단계는
이다(의 식에는 새 를 쓴다).
증명 전략 완전 자료 로그가능도는 지시변수 에 대해 선형이다. E 단계는 지시변수를 그 조건부 기댓값인 책임으로 바꾸고, M 단계는 의 항과 성분별 항으로 나뉜 를 따로 최대화한다.
완전 자료 로그가능도는 다음과 같다.
예제 2.2(a)이다. 첫 항은 에만, 나머지는 성분별 모수에만 의존한다.1 2, 기댓값의 선형성
아래에서 이고, 등호는 일 때다.Gibbs 부등식, 2회 정리 8.3
성분 의 항을 로 미분하면 이므로 이다.1계 조건, 오목성
로 미분하면 이므로 이다.9회 예제 1.2(c)의 계산
이름표를 알면 성분 의 MLE는 그 성분에 속한 관측들의 평균과 분산이다. 모르니, 각 관측을 책임에 따라 성분들에 “나눠 준” 다음 같은 계산을 한다. 는 성분 의 실질적인 관측 수다. 여러 변수이면 평균은 같은 꼴이고 공분산 행렬은 이다.
알고리즘 4.2 (정규 혼합의 EM (수치적으로 안전한 판))
- 1.
시작값: -평균(8절)의 결과나 무작위로 고른 관측을 평균으로, 전체 공분산을 공분산으로, .
- 2.
E 단계: 를 로그로 계산하고 . 이때 도 함께 얻는다.
- 3.
M 단계: 명제 4.1.
- 4.
의 증가가 정한 값보다 작아지면 멈춘다. 여러 시작점에서 돌려 이 가장 큰 것을 고른다.
()는 지수를 취하기 전에 가장 큰 값을 빼서 넘침과 밑돌기를 막는다. 성분에서 멀리 떨어진 관측은 가 보다 작아져 그냥 계산하면 0이 되고, 책임이 이 된다(연습 4.4).
4.2 이름표와 대칭
명제 4.3 (이름표 바꾸기) 성분의 번호를 아무 순열 로 바꾼 는 를 만족한다. 따라서 개 성분이 서로 다른 최대점 하나는 개의 최대점으로 나타난다.
증명 는 더하는 순서에 무관하다.
추정에는 해가 없다. 어느 성분을 “첫째”로 부를지 정하면(예: ) 된다. 그러나 표준오차나 사후분포(16회)를 계산할 때는 이 대칭이 문제를 일으킨다. 더 미묘한 대칭도 있다.
예제 4.4 (같은 곳에서 출발하면 갈라지지 않는다) 모든 성분을 같은 값 에서 출발시키면 모든 관측의 책임이 로 에 무관하다. M 단계는 모든 성분에 같은 가중평균 와 가중분산 을 준다. EM은 영원히 “한 정규”에 머문다. 이 점 은 실제로 혼합 로그가능도의 정류점이다(연습 4.2). 대개 안장점이어서 가능도를 늘리는 방향이 있지만, EM은 대칭을 스스로 깨지 못한다. 시작값을 다르게 잡아야 하는 이유다.
연습문제
연습 4.1 (M 단계의 유도 ★★) 명제 4.1의 식을 를 미분해 유도하라. 여러 변수일 때 의 식은 어떻게 되는가? (의 미분은 이다.)
풀이
에서 에 관한 부분은 이고, 미분하면 . 여러 변수이면 을 로 미분해 .
연습 4.2 (같은 출발점 ★★) 예제 4.4의 점에서 혼합 로그가능도의 기울기가 모든 모수 방향으로 0임을 보여라. (힌트: 명제 2.5와 .)
풀이
모든 성분이 이면 . , . 방향은 혼합 밀도가 로 에 무관하므로 0이다.
연습 4.3 (Poisson 혼합 ★★) 두 Poisson의 혼합 의 E 단계와 M 단계를 유도하라. M 단계의 는 책임으로 무게를 단 평균이다.
풀이
, , , . 도수 자료이면 각 값에 도수를 무게로 곱한다.
연습 4.4 (logsumexp ★) 일 때 를 그대로 계산하면 무엇이 나오는가? logsumexp로 계산하면? 두 성분 모두에서 멀리 떨어진 관측의 책임을 계산할 때 이것이 왜 필요한지 설명하라.
풀이
은 배정밀도에서 0이므로 . logsumexp는 . 두 성분 모두에서 먼 관측은 두 밀도가 모두 0으로 밑돌아 책임이 이 된다. 로그에서 최댓값을 빼면 상대적인 크기가 보존된다.