본문 바로가기
TIL _Today I Learned/2024.11

[DAY 91] 중간 프로젝트_ EM 알고리즘

by gamdong2 2024. 11. 27.
[천재교육] 프로젝트 기반 빅데이터 서비스 개발자 양성 과정 9기
학습일 : 2024.11.27

📕 학습 목록

  • EM 알고리즘이란?

 

📗 기억할 내용

1. EM 알고리즘이란?

1) 정의

  • 통계학과 기계 학습에서 숨겨진 변수(Hidden Variables)가 포함된 확률 모델의 최우추정(MLE) 또는 최대 사후 확률 추정(MAP)을 수행하는 데 사용되는 반복적 최적화 알고리즘

 

2) 핵심 개념

① 숨겨진 변수 (Hidden Variable)

  • 데이터에서 직접 관찰되지 않는 변수로, 이를 고려해야 모델을더 정확하게 만들 수 있음
  • ex: 학생의 실제 능력(시험 점수는 관찰 가능하지만 능력은 숨겨진 변수) 

② 기대와 최적화의 반복

  • EM 알고리즘은 숨겨진 변수의 분포를 예측하고 예측 결과를 바탕으로 모델을 개선하는 두 단계를 반복함

 

3) 주요 단계

아래 두 단계를 반복하며 파라미터가 수렴할 때까지 진행함

① Expectation 단계 (E-step)

  • 관찰 데이터와 현재 모델 파라미터를 사용하여 숨겨진 변수의 분포(기댓값)를 추정

② Maximization 단계 (M-step)

  • E-step 에서 계산된 기댓값을 사용해 모델 파라미터를 최대화함

 

4) 작동 원리

① 초기값 설정

  • 모델의 초기 파라미터 (θ^(0)) 를 설정

② E-step (숨겨진 데이터의 기댓값 계산)

  • 현재 모델 파라미터  (θ^(t)) 를 사용해 숨겨진 변수의 조건부 확률 분포를 추정

③ M-step (파라미터 업데이트)

  • E-step 에서 계산한 값으로 모델의 파라미터를 업데이트

④ 반복

  • 위 과정을 반복하여 모델 파라미터 θ 가 수렴할 때 까지 진행

 

5) EM 알고리즘의 특징

 

  • 장점
    • 숨겨진 변수나 누락된 데이터가 있는 경우에도 잘 작동
    • 간단하고 직관적인 구조로 다양한 문제에 적용 가능
  • 단점
    • 초기값에 따라 결과가 달라질 수 있음
    • 지역 최적해(Local Optimum)에 빠질 가능성이 있음

 

 

6) 예시: 혼합 가우시안 모델 (Mixture of Gaussians)

 

[문제]

주어진 데이터가 여러 개의 가우시안 분포로 이루어졌다고 가정하고, 각 데이터가 어느 분포에 속하는지 & 분포의 파라미터(평균, 분산)를 추정

 

[과정]

① 초기화

  • 각 가우시안 분포의 초기 평균, 분산, 혼합 계수(weight)를 설정

② E-step

  • 각 데이터가 특정 가우시안 분포에 속할 확률을 계산

③ M-step

  • E-step에서 계산한 확률을 기반으로 각 가우시안 분포의 평균, 분산, 혼합 계수를 업데이트 

④ 반복

  • 수렴할 때까지 E-step 과 M-step을 반복

 

7) 수학적 이해

  • EM 알고리즘은 관찰된 데이터의 우도(likelihood)를 최대화 함

  • 직접 계산이 어려운 경우, Q 함수로 근사하여 최적화를 반복

 

8) 응용 분야

 

  • 군집화 (Clustering): 혼합 가우시안 모델을 활용한 데이터 클러스터링
  • 자연어 처리 (NLP): 토픽 모델링(Latent Dirichlet Allocation)
  • 이미지 처리: 누락된 데이터 복원
  • 의학: 질병 진단에서 숨겨진 상태 추정

 

 

 

 

 

📙 내일 일정

  • 중간 프로젝트