我是隱馬爾可夫模型的新手。我理解主要思想,並且我嘗試了一些Matlab內置的HMM函數來幫助我理解更多。隱馬爾可夫模型每種狀態的多個觀察值
如果我有觀察序列和相應的狀態,例如
seq = 2 6 6 1 4 1 1 1 5 4
states = 1 1 2 2 2 2 2 2 2 2
我可以使用hmmestimate函數來計算過渡和發射概率矩陣爲:
[TRANS_EST, EMIS_EST] = hmmestimate(seq, states)
TRANS_EST =
0.5000 0.5000
0 1.0000
EMIS_EST =
0 0.5000 0 0 0 0.5000
0.5000 0 0 0.2500 0.1250 0.1250
在這個例子中,觀察結果只是一個值。
下面的示例圖片描述了我的情況。 如果我有狀態:{睡眠,工作,體育},並且我有一組觀察值:{發光,開燈,心率> 100 .....} 如果我使用數字來表示每個觀察值,在我的處境每個州在同一時間有多個觀測,
seq = {2,3,5} {6,1} {2} {2,3,6} {4} {1,2} {1}
states = 1 1 2 2 2 2 2
我不知道如何實現這個Matlab中得到的過渡和發射概率矩陣。我很迷茫,下一步該做什麼?我使用正確的方法嗎?
謝謝!
嗨,leon,我正在處理類似的問題。你有沒有找到解決辦法?我一直在廣泛搜索,但甚至找不到一篇論文或一個實現示例來驗證具有多個觀測變量對於HMM是可能的。據我所知,具有多個觀察序列(具有相同變量)是可能的,但如果序列實際上屬於不同的變量,我不確定情況是什麼。 – Rhubarb 2013-07-03 16:25:53
Hi Berkan,HMM不適合這個問題。我正在研究其他選項 – leon 2013-07-04 17:13:44
我剛剛在您的博客上發送了一條消息。你能詳細說明爲什麼你認爲HMM不適合這個嗎?我一直在閱讀這一個星期,如上所述,對這個問題還不太確定。我認爲你一直在看問題的時間比我長,所以任何指示或解釋(至於爲什麼不可能)將非常受歡迎。 – Rhubarb 2013-07-05 08:51:22