1 基本概念
隠れマルコフモデル(Hidden Markov Model, HMM)は、観測できない「隠れ状態」の系列がマルコフ過程に従い、各状態から観測データが確率的に生成される確率モデルである。時系列データや系列パターンの解析において基礎的な役割を果たし、音声認識、自然言語処理、バイオインフォマティクスなど多様な分野で応用されている。HMMは、隠れ状態系列と観測系列の同時確率分布をパラメータ化し、評価、復号、学習の三つの基本問題を効率的に解く枠組みを提供する。
1.1 隠れ状態と観測
隠れ状態は直接観測できない変数であり、離散的な値をとる。例えば音声認識では発声される音素、遺伝子解析ではDNAの機能領域などが隠れ状態に相当する。観測は各状態から確率的に生成される変数であり、連続値(音声波形の特徴量)または離散値(単語列)のいずれも扱える。状態数はあらかじめ定められ、各時刻において一つの状態が存在する。
1.2 マルコフ性と遷移確率
隠れ状態系列は一次のマルコフ性を満たす。すなわち、時刻tにおける状態は、直前の時刻t-1の状態のみに依存し、それ以前の状態とは独立である。この性質により、状態遷移確率行列Aが定義される。Aの要素a_{ij}は状態iから状態jへ遷移する確率を表し、各行の和は1となる。遷移確率は時不変であることが通常仮定される。
1.3 出力確率と初期分布
各状態は観測を生成する確率分布を持つ。離散観測の場合は出力確率行列B(要素b_j(k)は状態jから観測kが出力される確率)、連続観測の場合は混合ガウス分布などでモデル化される。初期状態分布πは、時刻1における状態の確率分布を表す。HMMのパラメータはλ=(A,B,π)で与えられる。
2 主要な問題
HMMには三つの基本的な問題が存在する。評価問題:与えられた観測系列がモデルから生成される確率を計算する。復号問題:観測系列から最も確からしい隠れ状態系列を推定する。学習問題:観測系列からモデルパラメータを最適化する。それぞれに対し効率的なアルゴリズムが開発されている。
2.1 評価問題:前向きアルゴリズム
| 観測系列O=(o_1,o_2,…,o_T)が与えられたとき、その確率P(O | λ)を計算する。単純な全探索では状態数Nに対してO(N^T)の計算量が必要だが、前向きアルゴリズムでは動的計画法によりO(N^2T)で計算できる。前向き変数α_t(i)=P(o_1,…,o_t, q_t=i | λ)を定義し、時系列に沿って再帰的に計算する。最終的にP(O | λ)=∑_i α_T(i)で得られる。 |
|---|
2.2 復号問題:ビタビアルゴリズム
| 観測系列から、最も確率の高い隠れ状態系列Q*=(q_1,…,q_T)を求める。ビタビアルゴリズムは動的計画法に基づき、各時刻で最適な経路を記録する。ビタビ変数δ_t(i)=max_{q_1,…,q_{t-1}} P(q_1,…,q_t=i, o_1,…,o_t | λ)を計算し、バックトラックにより最適経路を得る。計算量はO(N^2T)であり、音声認識や遺伝子解析で広く利用される。 |
|---|
2.3 学習問題:Baum-Welchアルゴリズム
観測系列のみからモデルパラメータλ=(A,B,π)を推定する問題。Baum-WelchアルゴリズムはEMアルゴリズムの一種であり、期待値最大化によりパラメータを反復更新する。観測系列に対する期待値を計算するEステップと、その期待値を最大化するMステップを交互に繰り返す。収束後、パラメータは局所最適解に達する。
3 パラメータ推定の詳細
3.1 EMアルゴリズムと期待値最大化
| Baum-WelchアルゴリズムはEMアルゴリズムの枠組みで解釈される。隠れ状態系列Qを潜在変数とみなし、観測Oの対数尤度log P(O | λ)を最大化する。EステップでQの条件付き期待値を計算し、Mステップでその期待値に基づきパラメータを更新する。 |
|---|
3.1.1 Eステップ:期待値の計算
| 前向き変数α_t(i)と後ろ向き変数β_t(i)を用いて、各時刻で状態iにいる確率γ_t(i)=P(q_t=i | O,λ)、および状態iからjへ遷移する確率ξ_t(i,j)=P(q_t=i,q_{t+1}=j | O,λ)を計算する。これらの値は観測系列全体に対する条件付き期待値を与える。 |
|---|
3.1.2 Mステップ:パラメータ更新
Eステップで得たγ_t(i)とξ_t(i,j)を用いて、パラメータを以下のように更新する。初期分布π_i=γ_1(i)、遷移確率a_{ij}=∑_t ξ_t(i,j)/∑_t γ_t(i)、出力確率b_j(k)=∑_{t:o_t=k} γ_t(j)/∑_t γ_t(j)。連続観測の場合は、混合ガウス分布の平均・分散を重み付き平均で更新する。
3.2 収束条件と局所最適解
Baum-Welchアルゴリズムは対数尤度を単調に増加させるが、初期値に依存して局所最適解に収束する。収束判定には尤度の変化率が閾値以下になることや、パラメータの変化量が十分小さいことを用いる。初期値の工夫(複数回のランダム初期化やk-meansによる事前推定)や、モデル選択規準(AIC、BIC)の利用が推奨される。
4 実用的な拡張
4.1 混合モデルとの関連
HMMは各状態の出力確率を混合分布(例:混合ガウス分布)でモデル化することが多い。これは状態内で観測の多峰性を表現するためであり、状態と混合成分の二重の潜在変数構造を持つ。混合モデルとの関連では、各状態の出力分布を非パラメトリックに拡張する方法や、教師なし学習の枠組みとしてHMMを解釈する研究が行われている。
4.2 状態数の決定とモデル選択
状態数Nはモデルの複雑さを決める重要なハイパーパラメータである。状態数が少なすぎるとデータを十分に表現できず、多すぎると過学習のリスクが生じる。モデル選択には、情報量規準(AIC、BIC)やクロスバリデーションが用いられる。また、ベイズ的アプローチとして無限状態HMM(階層ディリクレ過程HMM)も開発されている。
4.3 条件付き確率場との比較
条件付き確率場(Conditional Random Field, CRF)はHMMと類似した系列モデルであるが、観測系列を条件として状態系列の条件付き確率を直接モデル化する。HMMが生成モデルであるのに対し、CRFは識別モデルであり、観測間の依存関係をより柔軟に表現できる。HMMは独立な観測仮定を持つが、CRFでは観測特徴量の任意の関数を導入可能である。一方、HMMの学習はEMアルゴリズムで比較的容易であり、計算効率で優れる場合がある。
5 応用例
5.1 音声認識におけるHMM
音声認識では、各音素(またはサブワード単位)を隠れ状態とし、音声特徴量(MFCCなど)を観測とするHMMが長年主流であった。状態遷移は発声順序に対応し、出力分布は混合ガウス分布でモデル化される。ビタビアルゴリズムで最適な音素系列を求め、言語モデルと統合して認識結果を得る。近年は深層学習に置き換えられつつあるが、HMMの枠組みは音声認識の基礎として重要である。
5.2 遺伝子配列解析におけるHMM
DNAやタンパク質配列の解析では、遺伝子領域、イントロン・エクソンの境界、CpGアイランドなどの機能領域を隠れ状態としてHMMが用いられる。観測は塩基またはアミノ酸の種類である。GeneMarkやGenscanなどのソフトウェアで実装され、ゲノムアノテーションに貢献している。また、プロファイルHMMは複数配列アラインメントのモデル化に使われる。
5.3 時系列予測と異常検知
金融時系列やセンサーデータの予測・異常検知にもHMMが応用される。正常状態と異常状態を隠れ状態とし、観測値の挙動をモデル化することで、状態変化の検出や将来値の予測が可能となる。製造業における機械の故障予測や、ネットワークトラフィックの異常検知など実用的な場面で利用されている。拡張として、隠れセミマルコフモデル(HSMM)や、時変遷移確率を導入したモデルも研究されている。