기대-최대화 (EM)

데이터로부터의 추론, 추정, 의사결정

때로는 가장 중요한 변수가 결코 관측되지 않는 변수일 때가 있습니다. 이 점은 어느 군집에서 왔을까? 이 문서를 만들어 낸 주제는 무엇일까? 이런 숨은 잠재 변수 Z는 최대 가능도를 어렵게 만듭니다. 로그 안에 합이 들어가 버려서, 로그 가능도를 그냥 최대화할 수 없기 때문입니다. 기대-최대화(EM)가 바로 그 우아한 해법입니다.

EM은 어려운 공동 최적화를 두 개의 쉬운 단계로 나누어 번갈아 수행하며, 수렴할 때까지 반복합니다.

EM이 매 회차마다 실제로 끌어올리는 양은 로그 가능도의 하한인 ELBO(증거 하한)입니다. E-단계가 그 하한을 바짝 조이고, M-단계가 그것을 끌어올립니다.

머신러닝에서의 위치EM은 가우시안 혼합 모델과 군집화 뒤에서 돌아가는 엔진이며, 그 E/M 구조는 변분 오토인코더의 개념적 조상입니다. VAE의 인코더는 E-단계 역할(잠재 변수 z 추론)을 하고, 디코더와 ELBO 목적 함수는 M-단계 역할을 합니다. «잠재 변수 추론과 파라미터 갱신을 번갈아 하며 하한을 최대화한다»는 이 패턴은 현대의 잠재 변수 모델 어디에서나 볼 수 있습니다.
▶ 기대-최대화 (EM)
← 생성 vs 판별집중 부등식 (간단히) →