은닉 마르코프 모델(Hidden Markov Model)

•
2026년 10월 25일 발행•2026년 10월 25일 수정
요약

관측할 수 없는 상태가 마르코프 과정을 따라 변하며 관측값을 확률적으로 생성한다고 가정하는 순차 데이터 확률 모델

중급
조건부 확률과 마르코프 연쇄, 동적 계획법에 대한 이해가 필요하며, EM 알고리즘의 원리를 알아야 학습 과정을 이해할 수 있다.

#개념

은닉 마르코프 모델(Hidden Markov Model, HMM)은 직접 관측할 수 없는 상태가 마르코프 과정을 따라 변하고, 각 시점의 상태가 관측 가능한 기호나 값을 확률적으로 생성한다고 가정하는 확률 모델이다. 순차 데이터의 이면에 있는 구조를 추정하는 대표적인 생성 모델(Generative Model)로, 음성 인식과 자연어 처리, 생물정보학에서 오랫동안 표준 도구로 쓰였다.
HMM의 통계적 성질과 추정 방법은 1960년대 후반 Baum 등이 정립했고, 1970년대 IBM과 CMU의 음성 인식 연구에 적용되며 널리 퍼졌다. 1989년 Rabiner가 발표한 튜토리얼 논문은 HMM의 세 가지 기본 문제와 해법을 체계적으로 정리해 지금까지 표준 문헌으로 인용된다. HMM은 마르코프 연쇄(Markov Chain)에 관측 계층을 덧붙인 형태로 이해할 수 있다.
HMM은 은닉 상태 집합 $S = \{s_1, \dots, s_N\}$와 관측 기호 집합 $V = \{v_1, \dots, v_M\}$ 위에서 세 가지 확률 분포로 정의되며, 이를 묶어 $\lambda = (A, B, \pi)$로 표기한다. 모델을 이루는 구성 요소는 다음과 같다.
HMM의 구성 요소
  • 은닉 상태(Hidden State): 시점 $t$의 상태 $q_t$로, 직접 관측되지 않으며 품사, 음소, 시장 국면처럼 해석 가능한 범주를 나타낸다.
  • 관측(Observation): 시점 $t$에 실제로 관측되는 값 $o_t$이다. 단어, 음향 특징 벡터, 염기, 수익률처럼 이산 기호이거나 연속 벡터일 수 있다.
  • 전이 확률(Transition Probability): $a_{ij} = P(q_{t+1}=s_j \mid q_t=s_i)$로 정의되는 $N \times N$ 행렬 $A$이며, 각 행의 합은 1이다.
  • 방출 확률(Emission Probability): $b_j(o_t) = P(o_t \mid q_t=s_j)$로, 상태가 주어졌을 때 관측이 생성될 확률이다. 연속 관측에는 가우시안 혼합 모델 같은 밀도 함수를 쓴다.
  • 초기 확률(Initial Probability): $\pi_i = P(q_1=s_i)$로, 첫 시점에 각 상태에서 시작할 확률이다.
HMM은 두 가지 핵심 가정을 둔다. 1차 마르코프 가정은 다음 상태가 현재 상태에만 의존한다는 것이고, 출력 독립 가정은 관측 $o_t$가 같은 시점의 상태 $q_t$에만 의존한다는 것이다. 이 가정 덕분에 상태열 $Q$와 관측열 $O$의 결합 확률은 $P(O, Q \mid \lambda) = \pi_{q_1} b_{q_1}(o_1) \prod_{t=2}^{T} a_{q_{t-1}q_t} b_{q_t}(o_t)$처럼 단순한 곱으로 분해된다.
Rabiner는 HMM을 실제로 활용하기 위해 풀어야 하는 문제를 세 가지로 정리했다. 길이 $T$의 관측열에 대해 가능한 상태열을 모두 나열하면 계산량이 $O(N^T)$로 폭증하므로, 세 문제 모두 동적 계획법(Dynamic Programming)을 이용해 효율적으로 푼다.
HMM의 세 가지 문제
  • 평가(Evaluation): 모델 $\lambda$가 주어졌을 때 관측열의 확률 $P(O \mid \lambda)$를 계산하는 문제이며, 순방향 알고리즘으로 푼다. 여러 모델 중 관측을 가장 잘 설명하는 모델을 고르는 분류에 쓰인다.
  • 디코딩(Decoding): 관측열을 가장 잘 설명하는 은닉 상태열 $Q^*$를 찾는 문제이며, 비터비 알고리즘으로 푼다.
  • 학습(Learning): 관측열만으로 $P(O \mid \lambda)$를 최대화하는 매개변수 $\lambda$를 추정하는 문제이며, 바움-웰치 알고리즘으로 푼다.
순방향 알고리즘(Forward Algorithm)은 시점 $t$까지의 관측을 생성하면서 상태 $s_j$에 도달할 확률 $\alpha_t(j) = P(o_1, \dots, o_t, q_t=s_j \mid \lambda)$를 재귀적으로 계산한다. 점화식은 $\alpha_{t+1}(j) = \left[\sum_{i=1}^{N} \alpha_t(i) a_{ij}\right] b_j(o_{t+1})$이고, 마지막에 $P(O \mid \lambda) = \sum_i \alpha_T(i)$를 구하므로 계산량이 $O(N^2T)$로 줄어든다. 같은 방식으로 뒤에서부터 계산하는 역방향 확률 $\beta_t(i)$도 정의된다.
비터비 알고리즘(Viterbi Algorithm)은 순방향 알고리즘의 합을 최댓값으로 바꾼 형태이다. $\delta_{t+1}(j) = \max_i [\delta_t(i) a_{ij}] b_j(o_{t+1})$을 계산하면서 최댓값을 준 이전 상태를 역추적 포인터로 저장하고, 마지막 시점에서 거꾸로 따라가 최적 상태열을 복원한다. 1967년 Viterbi가 합성곱 부호의 복호 알고리즘으로 제안했으며, 실제 구현에서는 언더플로를 막기 위해 로그 확률의 합으로 계산한다.
바움-웰치 알고리즘(Baum-Welch Algorithm)은 기댓값 최대화(Expectation-Maximization, EM) 알고리즘을 HMM에 적용한 것으로, 순방향-역방향 알고리즘이라고도 한다. E 단계에서 $\alpha$와 $\beta$로 각 시점의 상태 점유 확률 $\gamma_t(i)$와 상태 쌍 전이 확률 $\xi_t(i,j)$를 구하고, M 단계에서 이 기대 횟수를 정규화해 $A$, $B$, $\pi$를 갱신한다. 우도는 반복마다 감소하지 않지만 국소 최적점에 수렴할 수 있어 초기화가 결과에 큰 영향을 준다.
은닉 상태가 레이블로 주어진 데이터, 예를 들어 품사가 달린 말뭉치가 있다면 EM 없이 전이와 방출 빈도를 세어 최대 우도 추정을 바로 할 수 있다. 이 경우 학습 데이터에 없던 단어 때문에 확률이 0이 되는 문제를 막기 위해 스무딩(Smoothing)을 함께 적용한다.
HMM은 순차 데이터의 숨은 구조를 다루는 여러 분야에서 활용되었다. 특히 은닉 상태에 음소, 품사, 유전자 영역처럼 명확한 의미를 부여할 수 있고 상태 사이의 전이 규칙이 비교적 단순한 문제에서 강점을 보였다. 대표적인 활용 분야는 다음과 같다.
주요 활용 분야
  • 음성 인식: 음소나 삼음소(Triphone)를 상태로, 음향 특징 벡터를 관측으로 두고 방출 확률을 가우시안 혼합 모델로 표현한 HMM-GMM이 2010년 무렵까지 표준 구조였다. 이후 방출 모델을 심층 신경망으로 바꾼 DNN-HMM 하이브리드를 거쳐 종단간 모델로 발전했다.
  • 품사 태깅: 품사를 은닉 상태로, 단어를 관측으로 두고 비터비 디코딩으로 문장 전체의 품사열을 결정한다. 개체명 인식과 형태소 분석의 초기 통계 모델도 같은 구조를 썼다.
  • 생물정보학: 유전자 예측 도구는 엑손·인트론·유전자 간 영역을 상태로 두고 DNA 염기열에서 유전자 구조를 추정한다. 단백질 서열 정렬과 단백질 계열 분류를 위한 프로파일 HMM도 널리 쓰인다.
  • 금융 국면 전환: 강세장·약세장·고변동성 같은 시장 국면을 은닉 상태로, 수익률을 관측으로 두어 국면 전환 시점을 추정한다. Hamilton의 마르코프 국면 전환 모형과 같은 계열이다.
HMM은 구조가 단순하고 해석이 쉬우며 적은 데이터로도 학습할 수 있다는 장점이 있다. 그러나 효율적인 계산을 가능하게 해 준 마르코프 가정과 출력 독립 가정은 동시에 모델의 표현력을 제한하며, 주요 한계는 다음과 같다.
HMM의 한계
  • 짧은 의존성: 1차 마르코프 가정 때문에 멀리 떨어진 시점 사이의 의존 관계를 직접 표현하기 어렵다. 고차 HMM으로 확장하면 상태 공간이 지수적으로 커진다.
  • 관측 독립 가정: 관측이 현재 상태에만 의존한다고 보기 때문에 앞뒤 단어, 접미사, 대소문자처럼 서로 겹치는 풍부한 특징을 함께 쓰기 어렵다.
  • 생성 모델의 비효율: 레이블 예측에 필요한 $P(Q \mid O)$ 대신 결합 확률 $P(O, Q)$를 모델링하므로, 관측 분포까지 학습하느라 표현력이 분산된다.
  • 상태 수 선택: 은닉 상태의 개수를 사전에 정해야 하며, 비지도 학습에서는 학습된 상태가 원하는 의미와 일치한다는 보장이 없다.
이러한 한계를 보완하기 위해 등장한 것이 조건부 무작위장(Conditional Random Field, CRF)이다. CRF는 관측열 전체를 조건으로 상태열의 조건부 확률 $P(Q \mid O)$를 직접 모델링하는 판별 모델이어서 서로 겹치는 특징을 자유롭게 쓸 수 있다. 선형 체인 CRF는 HMM과 같은 그래프 구조를 가지고 디코딩에 비터비 알고리즘을 그대로 쓰므로, HMM의 판별적 대응물로 볼 수 있다.
순환 신경망(Recurrent Neural Network, RNN)은 이산 상태 대신 연속값 은닉 벡터를 두고 이를 결정론적으로 갱신한다는 점에서 HMM과 다르다. 은닉 벡터는 과거 전체를 요약할 수 있어 긴 문맥을 다루는 데 유리하고, 대규모 데이터에서는 대부분의 과제에서 HMM보다 높은 성능을 보인다. 반면 HMM은 확률적 해석이 명확하고 적은 데이터로도 학습되며, 상태의 의미를 사람이 이해할 수 있다는 장점이 있다.
현재 음성 인식과 자연어 처리의 주류는 신경망 기반 모델로 넘어갔지만, HMM의 아이디어는 여전히 살아 있다. 연결주의 시간 분류(CTC)와 신경망 트랜스듀서(Transducer)의 정렬 확률 계산은 순방향-역방향 알고리즘과 같은 동적 계획법을 사용하며, BiLSTM-CRF처럼 신경망 위에 구조화된 디코딩 층을 얹는 방식도 HMM에서 출발한 계보에 있다.
실무에서는 hmmlearn 같은 라이브러리로 이산·가우시안·가우시안 혼합 방출을 갖는 HMM을 손쉽게 학습할 수 있다. 사용자 행동 로그를 탐색·비교·구매 의도 같은 잠재 단계로 분할하거나, 센서 시계열에서 장비의 정상·열화·고장 상태를 추정하는 것처럼 해석 가능한 상태 추정이 필요할 때 여전히 유용한 선택지이다.

#관련 용어

순방향 알고리즘
동적 계획법으로 관측열의 확률을 효율적으로 계산하는 알고리즘
비터비 알고리즘
관측열을 가장 잘 설명하는 최적 은닉 상태열을 찾는 동적 계획법 알고리즘
바움-웰치 알고리즘
EM 알고리즘으로 관측열만을 이용해 HMM의 매개변수를 추정하는 학습 방법
마르코프 결정 과정
마르코프 성질을 갖는 상태 전이에 행동과 보상을 더한 순차 의사결정 모델
조건부 무작위장(CRF)
관측열이 주어졌을 때 레이블열의 조건부 확률을 직접 모델링하는 판별 모델
품사 태깅
문장의 각 단어에 명사·동사 등 품사를 부여하는 작업

#직무 연관도

DA
Data Analyst
보통
행동 로그나 시계열을 해석 가능한 잠재 상태로 분할해 패턴을 분석
DS
Data Scientist
높음
순차 데이터의 잠재 구조를 모델링하고 시퀀스 레이블링·상태 추정 문제를 설계
DE
Data Engineer
낮음
음성·텍스트 처리 파이프라인에서 HMM 기반 디코딩 모듈을 구현하고 운영

#사용 사례

통신의료금융전자상거래제조
개요
은닉 마르코프 모델은 관측 뒤에 숨은 상태의 순차적 변화를 추정해야 하는 곳에서 쓰인다. 통신 분야에서는 음성 인식과 채널 복호에, 의료 분야에서는 유전자 예측과 생체 신호의 상태 분류에, 금융 분야에서는 시장 국면 전환 탐지에, 전자상거래에서는 사용자 행동 단계 분할에, 제조 분야에서는 설비 상태 모니터링에 활용된다.
사례
전자상거래 앱의 세션 로그에서 페이지 조회·검색·장바구니 담기 같은 이벤트를 관측으로, 탐색·비교·구매 의도를 은닉 상태로 둔 HMM을 학습하고, 비터비 디코딩으로 현재 사용자가 구매 의도 단계에 들어섰는지 추정해 추천 지면의 노출 전략을 바꾼다.

#참고 자료

#추천 포스트

© 2024 diki All rights reserved.