隠れマルコフモデル
隠れマルコフモデル(かくれマルコフモデル、テンプレート:Lang-en)は確率モデルの一つである。「システムがパラメータ未知のマルコフ過程である」と仮定し、観測可能な情報からその未知のパラメータを推定する。音声認識、ゲノミクス、形態素解析(自然言語処理)などに応用されている。連続的かつ伸縮しうる信号列のパターン抽出には適しているが、反面、長い距離をはさんで呼応しているような信号列からのパターン認識には、間の距離の長さに応じて状態数を増やす必要があり、計算量の観点から実用的ではない。また、局所最適に陥りやすいため、対象に応じて適切なパラメータの初期値を設定してやる(適切なモデルトポロジーを導入する)必要がある。
ビタビアルゴリズム(Viterbi algorithm)
モデルパラメータが既知の時に、与えられた配列を出力した可能性(尤度)が最も高い状態列(最尤状態列)を計算するアルゴリズム。動的計画法の一種。ある時点 t での最尤状態遷移列はtまでに観測された情報と、t-1 までで最も確からしい(=尤もらしい)最尤状態遷移列だけに依存する、という仮定がある。例えば、出力 'A' と 'B' を確率0.5ずつで出力し、他の状態にまれにしか遷移しない状態 A と、出力 'A' と 'C' を確率0.5ずつで出力し、他の状態にまれにしか遷移しない状態Bがあった場合、時点 t で 'A' が出力され、時点 t-1 で最尤だと推定された状態遷移列からの遷移確率が 状態 A の方が高いならば、時点 t では状態 A にいたと推定される。しかし、t+1 以降で 'C' の出力が続いた場合、全体としての尤度は状態 B に遷移していたほうが高くなる。また、このアルゴリズムを使用するには、観測可能なイベントは観測不可能な状態遷移と1対1対応していることが求められる。
バウム・ウェルチアルゴリズム(Baum-Welch algorithm)
モデルが出力した配列から、モデルパラメータを推定するアルゴリズム。前向きアルゴリズム、後ろ向きアルゴリズム、EMアルゴリズムから構成される。前向きアルゴリズムおよび後ろ向きアルゴリズムは動的計画法の一種であり、ある時点で各状態にいる確率を求めるアルゴリズムである。