본문 바로가기
Machine Learning

ML #11 : 머신러닝 예측, 은닉 마르코프 모델 (HMM) 개념 및 예시

by 무적물리 2020. 4. 22.

마르코프 모델이란?

은닉 마르코프 모델은 과거의 데이터를 기반으로 예측을 하는 방법입니다. 예를 들면 지난 3일간의 날씨가 3일전 흐림, 2일전 맑음, 어제 비 였다면 내일의 날씨는 어떻게 될지를 확률로 예측하는 방법입니다.



어떠한 시점에서 가능한 상태를 확인하는 것이 마르코프 모델이며, 일정한 시간 간격으로 어떠한 상태로 발전하는지를 확률적으로 표현하는 방식입니다. 마르코프의 가정은 시간 t에서의 상태는 오직 가장 최근 r개 데이터에만 의존한다는 것입니다. 마르코프 모델은 상태가 옮겨지는 상황에 따라 두가지 모델로 구분할 수 있습니다. 에르고딕 모델(Ergodic)과 좌우 모델(Left-to-Right) 입니다.


- 마르코프 가정 : 시간 t에서의 상태는 오직 가장 최근 r개 데이터에만 의존

- 마르코프 모델 : 에르고딕 모델(Ergodic), 좌우 모델(Left-to-Right)


에르고딕(Ergodic) 모델

에르고딕 모델이란 어떤 상태가 시간에 따라 이동하다가 과거의 상태가 미래에 발생할 수 있다는 것입니다. 예를 들면, 날씨는 예측하는 경우에 어제가 맑고 향후에도 맑을 수 있으므로 날씨 예측에서 에르고딕 모델을 사용합니다. 



좌우(Left-to-Right) 모델

어떤 상태에서 뒤로 돌아갈 수 없는 모델이 좌우 모델입니다. 맑음, 흐림과 같은 상태가 향후에도 나타나는 날씨 예측과 같은 경우에는 사용이 불가합니다. 하지만, 음성 인식이나 필기 인식과 같이 어떤 패턴이 지나간 후에 다시 나타나지 않을 때 사용 가능합니다.



은닉 마르코프 모델이란?

Hidden Markov Models (HMM)이란, 마르코프 모델에서 숨겨진 부분이 생겼을 때, 숨겨진 부분을 추정하는 모델입니다. 예를 들면, 마르코프 모델의 날씨 관측 방법에서 현재 날씨와 같이 상태를 볼 수 없다면 다른 방법을 사용해서 날씨를 관측해야 합니다. 날씨라는 상태가 은닉되어 있을 때, 은닉 마르코프 모델이라고 볼 수 있습니다.


그렇다면, 현재 상태를 확인하는 방법 외 다른 방법을 사용해서 날씨를 관측해야합니다. 친구가 우산을 들고 온 날 비올 확률이 80%, 우산을 들고오지 않은 날 비 올 확률이 10% 였다면 이러한 데이털를 사용해서 현재 날씨를 예측할 수 있습니다. 이러한 다른 관측치로 상태를 예측하는 것을 은닉 마르코프 모델이라고 합니다.


은닉 마르코프 모델 파라미터

N : 모델의 상태 수

M : 관측 가능한 심볼의 수

A : 상태 전이 확률 분포

B : 관측 심볼 확률 분포

π : 초기 상태 확률 분포


댓글