HMM - パラメータ学習問題 (パラメータを解く)

        まず、観測シーケンスとそれに対応する状態シーケンス がわかっている場合は \left \{ \left (o _{1},i_{1} \right ),\left (o _{2},i_{2} \right ),...,\left (o _{T} ,i_{T} \右 ) \右 \}、周波数を通じて初期状態確率 (π)、状態遷移確率 (A)、および生成された観測確率 (B) を直接計算できます。

a_{ij}=\frac{A_{ij}}{\sum_{N}^{n=1}A_{in}}

b_{i}\left ( x \right )=\frac{B_{i}\left ( x \right )}{\sum_{m=1}^{M}B_{i}\left ( m \right ) }

        例として a_{ij} 、状態シーケンス内の状態 i から j への遷移の数を数え A_{ij} 、すべての状態遷移の合計で割って\sum_{N}^{n=1}A_{in}、対応する状態遷移確率を取得します。

        しかし、音声認識の HMM モデルでは、観測状態に対応する隠れ状態列が存在しないことが多く、このときパラメータをどのように解決すればよいでしょうか\lambda =\left ( \pi ,A,B \right )?

ビタビ学習アルゴリズム(ハードアライメント)、バウムウェルチ学習アルゴリズム(ソフトアライメント)の        2つの方法があります。

         一連の観測を考慮して、最大値が得られるようなO=\left (o _{1},o _{2},...,o _{T} \right )パラメータを求めます。\lambda =\left ( \pi ,A,B \right )P\left ( O|\lambda \right )

        この時点では、記事の冒頭の問題と比較すると、状態シーケンスが不明であり、EM アルゴリズムを必要とする隠れ変数を含むパラメータ推定問題と同等です。

        EMアルゴリズムの正式名称はExpectation Maximizationアルゴリズム、つまり期待値最大化アルゴリズムです。EM アルゴリズムは、機械学習のトップ 10 手法の 1 つです。1977 年に Arthur P. Dempster、Nan Laird、Donald Rubin によって正式に提案されました。これは、いくつかの関連する変数が既知である場合に、未知の変数を推定するための反復アルゴリズムです。

EM のアルゴリズム フローは比較的単純で、その手順は次のとおりです。

step1: 分布パラメータの初期化

ステップ 2: 収束するまでステップ E と M を繰り返します。

a) ステップ E -期待値の計算: パラメータの仮定値に従って、未知の変数の期待値が与えられ、欠損値に適用されます。

b)  M ステップ-最大化計算: 未知の変数の推定値に従って、現在のパラメータの最尤推定値が与えられます。

1.ビタビ学習アルゴリズム(ハードアライメント)

        まず、HMM 初期モデル パラメータを初期化する必要があります\lambda =\left ( \pi ,A,B \right )。  

        アルゴリズムのステップ:

        1) ビタビ アルゴリズムを通じて最適パスを解決します。(ハードアライメント)

        2) この時点で、新しい観測シーケンスとそれに対応する状態シーケンスが取得され\left \{ \left (o _{1},i_{1} \right ),\left (o _{2},i_{2} \right ),...,\left (o _{T} ,i_{T} \右 ) \右 \}、新しいモデル パラメーターが計算されます\lambda =\left ( \pi ,A,B \right )

        3) 収束するまで 1) 2) を繰り返します。

2. Baum-Welch 学習アルゴリズム (ソフト アライメント)

        与えられた隠れ状態 I と観察状態 O に対して、 \ラムダ パラメーターの対数最尤推定関数は次のようになります。

L\left ( \lambda \right ) = logP\left ( I,O|\lambda \right )

        モデル\ラムダ と観測変数 O が与えられた場合、隠れ状態 I が発生する条件付き確率は次のようになります。

P=P\left ( I|O,\lambda \right )

        次に、Q 関数は、与えられたモデル パラメーターと観測変数の前提に基づく隠れ変数の条件付き確率分布期待値 (E ステップ) に関する完全なデータの対数尤度関数であると定義し、それを最大化するだけで済みます。

        Q\left ( \lambda, \overline{\lambda } \right )=\sum_{I}^{}logP\left ( O,I|\lambda \right )P\left ( I|O,\overline{\ラムダ } \right )

        最初の \ラムダ パラメータは必要な最大化パラメータを表し、2 番目のパラメータは \overline{\lambda パラメータの現在の推定値を表し、各反復では Q 関数の最大値が求められます。

        後半は次のとおりです。

        P\left ( I|O,\overline{\lambda } \right )=\frac{P\left ( I,O|\overline{\lambda } \right )}{P\left ( O|\overline{\ラムダ } \right )}

        ここで、分母は推定パラメータの定数です。

        新しい Q 関数:

       Q\left ( \lambda, \overline{\lambda } \right )=\sum_{I}^{}logP\left ( O,I|\lambda \right )P\left ( I,O|\overline{\ラムダ } \right )

        の:

        P\left ( O,I|\lambda \right )=\pi _{i_{1}}\prod_{t=1}^{T-1}a_{i_{t}i_{t+1}}\ prod_{t=1}^{T-1}b_{i_{t}}\left ( o_{t} \right )

        Q 関数を対数展開すると、次のようになります。

        Q\left ( \lambda, \overline{\lambda } \right )= \sum_{I}^{}\left (log\pi _{i}+\sum_{t=1}^{T-1}loga_ {i_{t}i_{t+1}}+\sum_{t=1}^{T}logb_{i_{t}}\left ( o_{t} \right ) \right )P\left ( I, O|\overline{\lambda } \right )

        観察によって、括弧内の 3 つの項目が解決したいパラメータであり、それらは互いに加算されることがわかります。そのため、全体の最大値を見つけるには、それらを個別に最大化するだけで済みます (M ステップ)。

        最初の項目を例として挙げます。

        \sum_{I}^{}log\pi _{i}P\left ( I,O|\overline{\lambda } \right )=\sum_{n=1}^{N}log\pi _{i }P\left ( O,i_{1}=n| \overline{\lambda }\right ),\sum_{n=1}^{N}\pi _{i}=1

        ラグランジュ乗数法という条件で極値を求めましょう!

        その後、取得したパラメータを Q 関数の反復計算に戻し、パラメータの変化がほとんどなくなったら反復を終了し、パラメータを返します\lambda =\left ( \pi ,A,B \right )

        EM プロセスでは状態シーケンスが 0 または 1 のいずれかである (つまり、計算されたシーケンスが固定されている) ため、ビタビ学習アルゴリズムはハード アライメントと呼ばれます。Baum-Welch 学習アルゴリズムは、特定の状態を決定するのではなく、その最尤度を計算し、フレームが特定の確率で特定の状態に属するため、ソフト アライメントと呼ばれます。

おすすめ

転載: blog.csdn.net/weixin_43284996/article/details/127336621
HMM