시계열 분석 은닉 마르코프 모형 [ 모델 동작 방식]

 은닉 마르코프 모형 (hidden markov model(HMM)은 특히 시계열 모델링에 유용하다.  또한 시계열 분석에 학습될 데이터에 올바르게 라벨링 된 정답이 존재하지 않는 비지도 학습이 적용된 회귀 한 경우이기 때문에 흥미롭기도 하다.  

HMM 은 앞서 살펴본 칼만 필터의 실험에서 얻었던 직관,  즉 관측 가능 변수가 시스템을 가장 잘 묘사하지 못한다는 개념에서 영감을 받았다. 

선형 가우스 모델에 적용된 칼만 필터처럼 과정에는 상태가 있으며 관측이 그 상태에 대한 정보를 준다는 개념을 상정 한다. 

 모델의 동작방식

 HMM은 직접적으로 관측이 불가능한 상태를 가진 시스템을 상정한다.  마르코프 과정이라고 불리는 이 시스템은 미래 사건의 확률이 시스템의 현재 상태만으로도 충분히 계산 될 수 있기에 '기억 없음' 이라는 의미를 지닌다.   즉 시스템의 현재와 과거 상태를 모두 알더라도 시스템의 현재 상태만 아는 것보다 유용하지 않다. 

마르코프 과정은 종종 행렬로 묘사 되고는 한다.  예를 들어 상태 A와 B 사이에서 출렁이는 시스템이 있다고 가정해 보자.  두 상태 모두 다른 시간 단계에서 통계적으로 다른 상태로 바꾸는 것보다는 현 상태를 유지할 가능성이 높다고 가정하자.  그러면 이런 시스템은 다음과 같은 행렬로 묘사 할 수 있다. 

마르코프 행렬


 현재 시스템이 상태가 A, 즉(1,0) 이라고 상상해보자 (상태 B는(0,1), 이때 시스템 상태를 A를 유지 할 확률은 0.7이며, 상태 B로 바뀔 확률은 0.3이다.  그리고 우리가 가장 최근 이전 시스템 상태를 알 필요가 없다.  이것이 바로 마르코프 과정을 의미 한다. 

 은닉 마르코프 모형은 관측으로 부터 시스템의 상태를 직접적으로 추론 할 수 없다는 것을 제외 하면 마르코프 모형과 같은 종류의 시스템을 표현한다.  단 관측 시스템의 상태에 대한 단서를 제공한다. 


HMM에 대한 과정으로 특정 시간에서 시스템의 실제 상태를 x(t)로 표현합니다.  또 특정시간에서 관측가능한 데이터는 y(t)로 표현 합니다. y(t)입장에서 오르지 x(t)만 고려하지 않는다.  즉 x(t)를 이미 알고 있다면  x(t-1)은 y(t)예측에 추가 정보를 제공하지 않는 것이다.  마찮가지로 x(t+1)의 예측에는 x(t)의 영향만 있을 뿐. x(t-1)로 부터 어떠한 추가 정보도 없다.  이것은 바로 마르코프가 바라보는 시스템이다. 

현실적인 애플리케이션의 상황에서는 상태들의 출력이 겹치는 경우가 많다.  따라서 어떤 상태가 출력을 생성했는지 100% 완벽하게 이해하는 것은 어렵다.  예를 들어 아래 그래프와 같이 데이터에  HMM을 적용한다고 생각해 보자.  이 데이터는 네 개의 상태로 시뮬레이션 된 것이다.  그러나 시각적인 정보만으로는 상태가 몇 개 존재하는지, 무엇이 각 상태를 구분 짓는지, 시스템의 상태 간 전환 지점은 어디인지 파악하기가 쉽지 않다. 


이 시계열은 네 가지 상태로 시뮬레이션 되었지만, 시각적으로 네 개 상태의 존재 및 각 상태의 끝을 확인하기 어렵다. 


HMM의 실제 사용 사례는 다음과 같다. 

  • 금융시장의 체제 전환 식별
  • DNA 염기순서 정보의 분류, 예측, 복원
  • ECG 데이터에 반영된 수면 단계 인식

# 참고서적 :  실적 시계열 분석 - 한빛 미디어


댓글 없음:

댓글 쓰기

[주식 클로드 자동매매 프로젝트] 제2편. 데이터 인프라 구축 — 모델보다 데이터가 먼저다

 머신러닝 모델을 이야기하기 전에, 그 모델이 먹는 데이터가 어디서 어떻게 왔는지부터 정직하게 밝혀야 한다. 이 프로젝트에서 가장 많은 시간이 들어간 부분은 화려한 모델 튜닝이 아니라, "내가 정말 그 데이터를 갖고 있는가"를 확인하...