確率論において、隠れマルコフモデル(HMM)は、観測値が潜在的(または隠れた)マルコフ過程(以下、HMMは観測可能なプロセスが存在することを必要とする。その結果は既知の方法で。直接観察することはできないが、目標は状態について学ぶことである観察することによってマルコフモデルの定義により、HMMには、結果がその時結果のみによって「影響を受ける」必要があるでそしてその結果そしてで条件付きで独立している必要があるで与えられたその時HMMのパラメータ推定は、最尤推定法を用いて行うことができます。線形連鎖HMMの場合、パラメータ推定にはバウム・ウェルチ法を用いることができます。
隠れマルコフモデルは、熱力学、統計力学、物理学、化学、経済学、金融、信号処理、情報理論、パターン認識(音声認識[ 1 ] 、手書き認識、ジェスチャー認識[ 2 ] 、品詞タグ付け、楽譜追跡[ 3 ] 、部分放電[ 4 ]、バイオインフォマティクス[ 5 ] [ 6 ]など)への応用で知られています。
させてそして離散時間確率過程であり、その二人は隠れマルコフモデルである場合
させてそして連続時間確率過程である。隠れマルコフモデルである場合
プロセスの状態(それぞれ)これらは隠れ状態と呼ばれ、(それぞれ)これは放出確率または出力確率と呼ばれます。

離散的な形式では、隠れマルコフ過程は、復元抽出を伴う壺問題の一般化として視覚化できます(次のステップに進む前に、壺から取り出した各アイテムが元の壺に戻されます)。[ 7 ]
観察者からは見えない部屋に精霊がいる。部屋にはX1、X2、X3、…という壺があり、それぞれの壺には既知の種類のボールが入っていて、各ボールにはy1、y2、y3、…という固有のラベルが付いている。精霊はその部屋にある壺を一つ選び、そこからランダムにボールを一つ取り出す。そして、そのボールをコンベアベルトに乗せる。観察者はボールの順番は観察できるが、ボールがどの壺から取り出されたかは分からない。
精霊には壺を選ぶための手順がある。
したがって、これはマルコフ過程と呼ばれます。図1の上部で表すことができます。
マルコフ過程は観測できず、ラベル付きボールのシーケンスのみが観測されるため、この配置は隠れマルコフ過程と呼ばれます。これは、図 1 の図の下部で示されており、各状態でボール y1、y2、y3、y4 が取り出せることがわかります。観測者が壺の構成を知っていて、コンベアベルト上の 3 つのボール (たとえばy1、y2、y3) のシーケンスを観測したとしても、観測者は、精霊が 3 番目のボールをどの壺 (つまり、どの状態) から取り出したのかを確信することはできません。ただし、観測者は、3 番目のボールが各壺から来た可能性など、他の情報を計算することができます。
遠く離れて暮らすアリスとボブという二人の友人が、毎日電話でその日の出来事を語り合っているとします。ボブは公園を散歩すること、買い物、そしてアパートの掃除という3つの活動にしか興味がありません。何をするかは、その日の天気によって決まります。アリスは天気に関する確かな情報は持っていませんが、大まかな傾向は把握しています。アリスはボブが毎日何をしたかを話すのを聞いて、その日の天気がどんなだったかを推測しようとします。
アリスは、天気は離散マルコフ連鎖として機能していると考えている。天気の状態は「雨」と「晴れ」の2つだが、アリスはそれらを直接観察することはできない。つまり、それらはアリスには隠されている。毎日、ボブは天気に応じて「散歩」「買い物」「掃除」のいずれかの活動を行う可能性がある。ボブはアリスに自分の活動を伝えるので、それが観測値となる。このシステム全体は、隠れマルコフモデル(HMM)である。
アリスは地域の一般的な気象傾向と、ボブが平均的に何をするのが好きなのかを知っている。つまり、HMMのパラメータは既知である。これらはPythonでは次のように表現できる。
状態= ( "雨" , "晴れ" )観測値= ( "歩く " , "買い物 " , "掃除 " )開始確率= { "雨" : 0.6 , "晴れ" : 0.4 }transition_probability = { "Rainy" : { "Rainy" : 0.7 , "Sunny" : 0.3 }, "Sunny" : { "Rainy" : 0.4 , "Sunny" : 0.6 }, }emission_probability = { "Rainy" : { "walk" : 0.1 , "shop" : 0.4 , "clean" : 0.5 }, "Sunny" : { "walk" : 0.6 , "shop" : 0.3 , "clean" : 0.1 }, }このコードでは、 は、start_probabilityボブが最初にアリスに電話をかけたときの HMM の状態についてのアリスの信念を表します (アリスが知っているのは、平均的に雨が降る傾向があるということだけです)。ここで使用されている特定の確率分布は、平衡分布ではありません{'Rainy': 0.57, 'Sunny': 0.43}。平衡分布は (遷移確率が与えられた場合) ほぼ です。transition_probabilityは、基となるマルコフ連鎖の天候の変化を表します。この例では、今日が雨の場合、明日が晴れる確率は 30% です。 はemission_probability、ボブが各日に特定の活動を行う可能性を表します。雨の場合は、彼がアパートを掃除している確率は 50% です。晴れの場合は、彼が散歩に出かけている確率は 60% です。

同様の例は、ビタビアルゴリズムのページでさらに詳しく説明されています。
下の図は、インスタンス化された HMM の一般的なアーキテクチャを示しています。各楕円形は、複数の値のいずれかを取ることができる確率変数を表しています。確率変数x ( t )は時刻tにおける隠れ状態です(上記の図のモデルでは、x ( t ) ∈ { x1 , x2 , x3 } )。確率変数y ( t )は時刻tにおける観測値です ( y ( t ) ∈ { y1 , y2 , y3 , y4 } )。図中の矢印 (しばしばトレリス図と呼ばれます)は、条件付き依存関係を示しています。
図から明らかなように、時刻tにおける隠れ変数x ( t )の条件付き確率分布は、すべての時刻における隠れ変数xの値が与えられた場合、隠れ変数x ( t − 1 )の値のみに依存し、時刻t − 2以前の値は影響を与えません。これはマルコフ性と呼ばれます。同様に、観測変数y ( t )の値は、隠れ変数x ( t )の値(いずれも時刻tにおける値)のみに依存します。
ここで検討する標準的な隠れマルコフモデルでは、隠れ変数の状態空間は離散的ですが、観測値自体は離散的(通常はカテゴリ分布から生成される)または連続的(通常はガウス分布から生成される)のいずれかです。隠れマルコフモデルのパラメータには、遷移確率と放出確率(出力確率とも呼ばれる)の2種類があります。遷移確率は、時刻t − 1の隠れ状態が与えられた場合に、時刻tの隠れ状態を選択する方法を制御します。
隠れ状態空間は、カテゴリ分布としてモデル化されたN 個の可能な値のいずれかで構成されると仮定します。(他の可能性については、以下の拡張に関するセクションを参照してください。)これは、時刻tにおける隠れ変数が取り得るN個の可能な状態のそれぞれについて、時刻t + 1における隠れ変数のN個の可能な状態のそれぞれへの遷移確率が存在し、合計で次のようになることを意味します。遷移確率。任意の状態からの遷移確率の集合は、合計が1になる必要があります。したがって、N × Nの遷移確率行列はマルコフ行列です。他の遷移確率が分かれば任意の遷移確率を決定できるため、遷移パラメータの総数はN ( N − 1)個になります。
さらに、N 個の可能な状態それぞれについて、その時点での隠れ変数の状態が与えられた場合の、特定の時点での観測変数の分布を決定する一連の放出確率が存在します。このセットのサイズは、観測変数の性質に依存します。たとえば、観測変数がカテゴリ分布によって支配されるM 個の可能な値を持つ離散変数である場合、 M − 1 個の個別のパラメータが存在し、すべての隠れ状態にわたって合計でN ( M − 1) 個の放出パラメータが存在します。一方、観測変数が任意の多変量ガウス分布に従って分布する M 次元ベクトルである場合、平均と共分散行列を制御するパラメータの合計は放出パラメータ。(このような場合、 Mの値が小さい場合を除き、観測ベクトルの個々の要素間の共分散の性質を制限する方が実際的である可能性がある。例えば、要素同士が独立していると仮定するか、あるいは、より緩やかな仮定として、一定数の隣接要素以外とは独立していると仮定する。)


以下に概説するように、隠れマルコフモデルにはいくつかの推論上の問題が伴います。
この課題は、モデルのパラメータが与えられた場合、特定の出力シーケンスが発生する確率を最適な方法で計算することです。そのためには、考えられるすべての状態シーケンスについて合計する必要があります。
一連の事象を観測する確率
長さLのものは次のように与えられる。
ここで、合計は考えられるすべての隠れノードのシーケンスにわたって計算される。
関連するタスクの多くは、モデルのパラメータと一連の観測値が与えられた場合に、潜在変数の1つ以上が発生する確率を問うものです。。
課題は、モデルのパラメータと一連の観測値が与えられたときに、シーケンスの最後にある最後の潜在変数の隠れ状態の分布を計算することです。つまり、このタスクは、潜在変数のシーケンスを、プロセスが時間軸上の一連の時点で通過する基礎的な状態とみなし、各時点での観測値に対応するものとした場合に使用されます。そして、プロセスの最終状態について尋ねることは自然なことです。
この問題は、順方向アルゴリズムを使用することで効率的に処理できます。例として、隠れマルコフネットワークにアルゴリズムを適用して、。
これはフィルタリングに似ていますが、シーケンスの途中のどこかで潜在変数の分布について質問します。つまり、一部の人にとって上記の観点からすると、これは、過去のある時点kにおける隠れた状態の確率分布を、時刻tを基準として表したものと考えることができます。
前方後方アルゴリズムは、すべての隠れ状態変数の平滑化値を計算するのに適した方法です。
このタスクは、前の2つのタスクとは異なり、特定の観測シーケンスを生成した隠れ状態のシーケンス全体の同時確率を問うものです(右の図を参照)。このタスクは、HMMをフィルタリングや平滑化のタスクが適用できる問題とは異なる種類の問題に適用する場合に一般的に適用できます。例としては、品詞タグ付けがあります。この場合、隠れ状態は、観測された単語のシーケンスに対応する基底となる品詞を表します。この場合、関心があるのは、フィルタリングや平滑化が計算するような単一の単語の品詞ではなく、品詞のシーケンス全体です。
このタスクでは、考えられるすべての状態シーケンスの中で最大値を見つける必要があり、ビタビアルゴリズムによって効率的に解決できます。
上記の問題のいくつかについては、統計的有意性について尋ねることも興味深いかもしれません。ある帰無分布から抽出されたシーケンスが、特定の出力シーケンスの確率以上(順方向アルゴリズムの場合)または最大状態シーケンス確率(ビタビアルゴリズムの場合)を持つ確率はどれくらいでしょうか?[ 8 ] HMMを 使用して特定の出力シーケンスに対する仮説の関連性を評価する場合、統計的有意性は、出力シーケンスの仮説を棄却できなかったことに関連する偽陽性率を示します。
HMMにおけるパラメータ学習タスクは、出力シーケンスまたはそのようなシーケンスのセットが与えられたときに、最適な状態遷移確率と放出確率のセットを見つけることです。このタスクは通常、出力シーケンスのセットが与えられたときにHMMのパラメータの最尤推定値を導出することです。この問題を正確に解くための扱いやすいアルゴリズムは知られていませんが、Baum–WelchアルゴリズムまたはBaldi–Chauvinアルゴリズムを使用して局所的な最尤推定値を効率的に導出できます。Baum–Welchアルゴリズムは、期待値最大化アルゴリズムの特殊なケースです。
HMM を時系列予測に使用する場合、精度と安定性の両方の観点から、単一の最尤モデルを見つけるよりも、マルコフ連鎖モンテカルロ(MCMC) サンプリングなどのより高度なベイズ推論法の方が優れていることが証明されています。 [ 9 ] MCMC は計算負荷が大きいため、計算のスケーラビリティも重要な場合は、ベイズ推論の変分近似に頼ることもできます。例えば、[ 10 ]実際、近似変分推論は期待値最大化に匹敵する計算効率を提供し、精度プロファイルは厳密な MCMC タイプのベイズ推論よりわずかに劣るだけです。

HMMは、直接観測できないデータシーケンス(ただし、そのシーケンスに依存する他のデータは観測可能)を復元することを目的とする多くの分野に適用できます。応用例としては、以下のようなものがあります。
隠れマルコフモデルは、1960年代後半にレオナルド・E・バウムや他の著者らによって一連の統計論文で記述されました。 [ 29 ] [ 30 ] [ 31 ] [ 32 ] [ 33 ] HMMの最初の応用例の1つは、1970年代半ばに始まった音声認識でした。 [ 34 ] [ 35 ] [ 36 ] [ 37 ]言語学の観点から見ると、隠れマルコフモデルは確率的正規文法と同等です。[ 38 ]
1980年代後半には、HMMが生物学的配列、特にDNAの解析に適用されるようになった[ 39 ] 。それ以来、HMMはバイオインフォマティクスの分野で広く使われるようになった[ 40 ]。
上述の隠れマルコフモデルでは、隠れ変数の状態空間は離散的ですが、観測値自体は離散的(通常はカテゴリ分布から生成される)または連続的(通常はガウス分布から生成される)のいずれかです。隠れマルコフモデルは、連続状態空間を許容するように一般化することもできます。そのようなモデルの例としては、隠れ変数に関するマルコフ過程が線形力学系であり、関連する変数間に線形関係があり、すべての隠れ変数と観測変数がガウス分布に従う場合などが挙げられます。先ほど述べた線形力学系のような単純なケースでは、厳密な推論は扱いやすい(この場合はカルマンフィルタを使用する)ですが、一般に、連続潜在変数を持つHMMでは厳密な推論は不可能であり、拡張カルマンフィルタやパーティクルフィルタなどの近似法を使用する必要があります。
今日では、隠れマルコフモデルにおける推論はノンパラメトリック設定で行われ、依存構造によって モデルの識別可能性が確保され[ 41 ]、学習可能性の限界はまだ研究中である[ 42 ] 。
隠れマルコフモデルは生成モデルであり、観測値と隠れ状態の同時分布、あるいは同等に、隠れ状態の事前分布(遷移確率)と状態が与えられた場合の観測値の条件付き分布(放出確率)の両方をモデル化します。上記のアルゴリズムは、遷移確率に対して一様事前分布を暗黙のうちに仮定しています。しかし、他のタイプの事前分布を使用して隠れマルコフモデルを作成することも可能です。遷移確率のカテゴリ分布を考慮すると、明らかな候補はディリクレ分布です。これは、カテゴリ分布の共役事前分布です。通常、対称ディリクレ分布が選択されます。これは、どの状態が他の状態よりも本質的に起こりやすいかについての無知を反映しています。この分布の単一のパラメータ(集中パラメータと呼ばれる)は、結果として得られる遷移行列の相対的な密度または疎性を制御します。1を選択すると、一様分布が得られます。1より大きい値を選択すると、密な行列が生成され、その中で、状態のペア間の遷移確率はほぼ等しくなります。 1 未満の値では、各ソース状態に対して無視できない遷移確率を持つ宛先状態が少数しかない疎行列になります。また、2 レベルの事前ディリクレ分布を使用することもできます。この場合、1 つのディリクレ分布 (上側の分布) が別のディリクレ分布 (下側の分布) のパラメータを決定し、それが遷移確率を決定します。上側の分布は状態の全体的な分布を決定し、各状態が発生する可能性を決定します。その集中パラメータは、状態の密度または疎性を決定します。両方の集中パラメータが疎な分布を生成するように設定されているこのような 2 レベルの事前分布は、たとえば、一部の品詞が他の品詞よりもはるかに頻繁に発生する教師なし品詞タグ付けに役立つ可能性があります。一様な事前分布を仮定する学習アルゴリズムは、一般的にこのタスクでうまく機能しません。このような非一様な事前分布を持つモデルのパラメータは、ギブスサンプリングまたは期待値最大化アルゴリズムの拡張バージョンを使用して学習できます。
前述のディリクレ事前分布を用いた隠れマルコフモデルの拡張では、ディリクレ分布の代わりにディリクレ過程を使用します。このタイプのモデルでは、未知の、場合によっては無限の数の状態を許容します。前述の2つのレベルのディリクレ分布を用いたモデルと同様に、2レベルのディリクレ過程を使用するのが一般的です。このようなモデルは、階層的ディリクレ過程隠れマルコフモデル、略してHDP-HMMと呼ばれます。これは元々「無限隠れマルコフモデル」 [ 43 ]という名前で記述され、さらに「階層的ディリクレ過程」[ 44 ]で形式化されました。
別のタイプの拡張では、標準的な HMM の生成モデルの代わりに識別モデルを使用します。このタイプのモデルは、同時分布をモデル化するのではなく、観測値が与えられた場合の隠れ状態の条件付き分布を直接モデル化します。このモデルの例として、いわゆる最大エントロピー マルコフ モデル(MEMM) があり、これはロジスティック回帰(「最大エントロピーモデル」とも呼ばれる)を使用して状態の条件付き分布をモデル化します。このタイプのモデルの利点は、観測値の任意の特徴 (つまり関数) をモデル化できるため、対象となる問題のドメイン固有の知識をモデルに注入できることです。この種のモデルは、隠れ状態とその関連する観測値との間の直接的な依存関係をモデル化することに限定されません。むしろ、近くの観測値の特徴、関連する観測値と近くの観測値の組み合わせ、あるいは実際には、特定の隠れ状態から任意の距離にある任意の観測値の特徴を、隠れ状態の値を決定するために使用されるプロセスに含めることができます。さらに、生成モデルでこのような特徴量を使用する場合とは異なり、これらの特徴量が互いに統計的に独立している必要はありません。最後に、単純な遷移確率の代わりに、隣接する隠れ状態のペアに対する任意の特徴量を使用できます。このようなモデルの欠点は次のとおりです。(1) 隠れ状態に適用できる事前分布の種類が著しく制限されます。(2) 任意の観測値が発生する確率を予測することはできません。この2番目の制限は、HMMの一般的な使用法の多くではこのような予測確率を必要としないため、実際には問題にならないことがよくあります。
先に述べた識別モデルの変種として、線形連鎖条件付き確率場があります。これは、MEMMや類似モデルのような有向グラフモデルではなく、無向グラフモデル(マルコフ確率場とも呼ばれる)を使用します。このタイプのモデルの利点は、MEMMに見られるいわゆるラベルバイアスの問題がなく、より正確な予測が可能になることです。欠点は、MEMMよりも学習に時間がかかる場合があることです。
さらに別のバリアントとして、階乗隠れマルコフモデルがあり、これは単一の観測値を、一連の対応する隠れ変数に基づいて条件付けすることができます。単一のマルコフ連鎖ではなく、独立したマルコフ連鎖。これは単一のHMMに相当し、州(あると仮定して)各チェーンの状態)であるため、このようなモデルでの学習は困難です。長さのシーケンスの場合単純なビタビアルゴリズムの計算量は正確な解を見つけるには、ジャンクションツリーアルゴリズムを使用できますが、複雑さ。実際には、変分法などの近似手法を用いることができる。[ 45 ]
上記のモデルはすべて、隠れた状態間のより遠い依存関係を許容するように拡張できます。たとえば、特定の状態が単一の前の状態ではなく、前の 2 つまたは 3 つの状態に依存することを許容します。つまり、遷移確率は 3 つまたは 4 つの隣接する状態のセットを包含するように拡張されます (または一般的には隣接状態)。このようなモデルの欠点は、それらをトレーニングするための動的計画法アルゴリズムが実行時間、隣接する州と合計観測値(つまり長さ-マルコフ連鎖)。この拡張機能は、バイオインフォマティクス、 DNA配列のモデリングで広く使用されています。
最近の別の拡張は、補助的な基礎プロセスを追加してデータの特殊性をモデル化するトリプレット マルコフ モデル[ 46 ]です。このモデルには多くのバリエーションが提案されています。証拠理論とトリプレット マルコフ モデル[ 47 ]の間に確立された興味深い関連性についても言及する必要があります。これにより、マルコフコンテキストでデータを融合[ 48 ]したり、非定常データをモデル化したりすることが可能になります。 [ 49 ] [ 50 ]最近の文献では、代替的なマルチストリーム データ融合戦略も提案されています。たとえば、 [ 51 ]などです。
最後に、隠れマルコフモデルを用いて非定常データのモデリングの問題に取り組むための別の論理が2012年に提案されました。[ 52 ]これは、観測データの時間的ダイナミクスの変化を捉えるために、小さなリカレントニューラルネットワーク(RNN)、具体的にはリザーバーネットワーク[ 53 ]を採用することにあります。高次元ベクトルの形でエンコードされたこの情報は、HMMの状態遷移確率の条件変数として使用されます。このような設定の下では、最終的に非定常HMMが得られ、その遷移確率は、非現実的なアドホックな時間的変化モデルとは対照的に、データから推測される方法で時間とともに変化します。
2023年に、隠れマルコフモデル用の2つの革新的なアルゴリズムが導入されました。これらのアルゴリズムは、条件付き分布のみを利用して、結合分布を明示的にモデル化する必要なく、HMMの事後分布を計算できるようにします。[ 54 ] [ 55 ] HMMの結合法則の知識が必要で、学習に計算負荷がかかる可能性があるフォワードバックワードアルゴリズムやビタビアルゴリズムなどの従来の方法とは異なり、識別フォワードバックワードアルゴリズムと識別ビタビアルゴリズムは、観測法則の必要性を回避します。[ 56 ] [ 57 ]このブレークスルーにより、HMMを識別モデルとして適用できるようになり、さまざまなアプリケーションで隠れマルコフモデルを活用するための、より効率的で汎用性の高いアプローチが提供されます。
縦断的データに適したモデルは、潜在マルコフモデルと呼ばれます。[ 58 ]このモデルの基本バージョンは、個々の共変量、ランダム効果を含め、多レベルデータなどのより複雑なデータ構造をモデル化するように拡張されています。潜在マルコフモデルの完全な概要、特にモデルの仮定と実際の使用法については、[ 59 ]に記載されています。

マルコフ遷移行列と状態に関する不変分布が与えられた場合、部分シフトの集合に確率測度を課すことができる。例えば、右図に示す状態に関するマルコフ連鎖を考えてみよう。不変分布の区別を無視することでこの部分シフトの空間は、サブシフトの別の空間へまた、この投影は確率測度をサブシフト上の確率測度に投影します。。
興味深いのは、サブシフトの確率測度がはマルコフ連鎖によって生成されません複数の順序さえありません。直感的には、これは、長いシーケンスを観察すると、そうすれば、つまり、システムの観測可能な部分は、無限に過去の何かに影響を受ける可能性があるということである。[ 60 ] [ 61 ]
逆に、6 つのシンボル上の部分シフトの空間が存在し、それが 2 つのシンボル上の部分シフトに射影され、より小さい部分シフト上の任意のマルコフ測度は、どの次数においてもマルコフではない逆像測度を持つ(例 2.6 [ 61 ])。