補 HMM 求解引數 狀態轉移矩陣 A

2022-05-06 20:39:07 字數 2255 閱讀 2836

昨天在看的時候, 才發現, hmm引數求解給忘了 狀態轉移矩陣a的求解, 我以為我做了...好氣哦, 不多比比, 直接來.

a 是狀態轉移矩陣, 表示在 已知前乙個狀態下, 求解後乙個概率(寫出來就是乙個條件概率)

\(p(z_ =j | z_k = i) = \frac =j, z_k = i)}\)

最基礎的條件概率公式哈

分母 \(p(z_k = 1)\) 可以通過前面的 f/b 演算法計算出來, 所以問題在於如何計算 \(p(z_, z_k=i)\) 這個聯合概率

由上, 我們的目標是如何計算 \(p(z_, z_k = i | x)\) , 在觀測值已知的情況下.

由 \(z_k 與 x_k\) 是一 一對應的關係, 通過貝葉斯公式可以得到:

\(p(z_k=i , z_=j| x) 與 p( z_k =i, z_=j, x) 是正比關係\)

跟之前同樣的套路,對 x 進行區間拆分, 即:

\(=p(z_k, z_, x_, x_, x_)\) 換個變數順序哈, 為了把 \(z_k, x_\)看為乙個整體, 求解技巧是為了最終形式簡潔

\(=p(z_k, x_, z_, x_, x_)\) 展開寫:

\(=p(z_k, x_) \ p(z_|z_k, x_) \ p(x_|z_k, x_, z_) \ p(x_|z_k, x_,z_, x_ )\)

同樣根據d-separation性質可將與條件概率無關的獨立變數進行省略, 化簡得到:

\(p(z_k, x_) \ p(z_|z_k) \ p(x_|z_) \ p(x_|z_)\)

這幾個項, 不就剛好對應:forward, 狀態轉移矩陣, 發射概率矩陣, backwark呀.

也就是可以算出所有的:

\(p(z_k=i , z_=1| x) 正比於 p( z_k =i, z_=1, x)\)

\(p(z_k=i , z_=2| x) 正比於 p( z_k =i, z_=2, x)\)

\(p(z_k=i , z_=3| x) 正比於 p( z_k =i, z_=3, x)\)

再進行乙個歸一化的操作, 則就算出了 \(p(z_k=i, z_=j|x)\) 的概率了, (用來估計a要用到的)

考慮 z, 假設有3個樣本, 通過之前的 f/b 演算法, 可以得到每個z_i 的概率分布.

樣本1

z1z2

z3z4

z5z6

0.60.5

0.60.7

0.60.2

0.30.3

0.20.2

0.10.3

0.10.2

0.20.1

0.30.5

樣本2

z1z2

z3z4

z50.5

0.40.3

0.60.3

0.30.4

0.50.3

0.10.2

0.20.2

0.10.6

樣本3

z1z2

z3z4

0.50.1

0.30.5

0.30.2

0.30.1

0.20.7

0.30.4

最後呢就計算出來狀態轉移矩陣 a.

用到的em演算法

隨機初始化 引數 \(\theta=(\pi, a, b)\)

while not 收斂:

​ e-step: (核心是為了計算 p(z|x)

​ 根據已知的 \(\theta=(\pi, a, b)\) 計算

​ \(p(z_k^ | x^i), i = 1, 2, ...n\) // 用 f/b 演算法求解

​ \(p(z_^i, z_^i | x^i), i = 1, 2...n\)

​ m-step:

​ 引數更新

​ \(\pi, a, b\)

不搞了 hmm 就先搞到這, 我感覺之前我還挺清晰的, 寫著寫著, 這些概率公式, 總感覺留有bug, 真心覺得, 概率模型賊不好理解, 一不小心就自己個就弄混了, 什麼條件概率, 全概率, 貝葉斯, 條件獨立 , 序列, 值概率....自己都寫崩潰了, 趕緊撤退, 戰略性放棄一波, 再惡補一波概率論先.

HMM裡面的引數介紹

當我們討論hmm裡面引數的時候,通常zi為離散型變數 為了好羅列zi的 我們通常為了方便將變數進行標記,如下圖所示 其中 引數a 代表狀態的轉移矩陣,大小為mm。i,j 表示為 某乙個z前面是i後面是j的概率是多少 引數b 用於生成觀測值 emission 大小為mm i,j表示再i的狀態下生成j的...

Baum Welch估計HMM引數例項

下面的例子來自於 what is the expectation maximization algorithm?題面是 假設你有兩枚硬幣a與b,這兩枚硬幣丟擲正面的概率分別為 theta a 和 theta b 下面給出一些觀測的結果,需要你去估計這兩個引數 theta a 與 theta b 假設...

放射變換引數求解

仿射變換 affine transformation或 affine map 是一種二維座標到二維座標之間的線性變換,它保持了二維圖形的 平直性 即 直線經過變換之後依然是直線 和 平行性 即 二維圖形之間的相對位置關係保持不變,平行線依然是平行線,且直線上點的位置順序不變 放射變換可以寫為如下的形...