天天看點

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

1、參考資料:

部落格園 - 劉建平随筆:https://www.cnblogs.com/pinard/p/6945257.html

哔站up主 - 白手起家的百萬富翁:https://www.bilibili.com/video/BV1DK411W7jJ?from=search&seid=2670213518419567446

哔站up主 - asia1987:https://www.bilibili.com/video/BV13C4y1W7iB/?spm_id_from=trigger_reload

2、馬爾可夫模型(MM)

如下圖例子1:先玩-->再吃-->再睡,就是一條馬爾科夫鍊,是可觀測到的,我們可以直接求解這條馬爾科夫鍊的機率。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

如下圖例子2:天氣情況是可觀測的,已知晴天、多雲、雨天之間的轉換機率,如果今天是晴天,就可以推斷出明天各種天氣的機率,同樣後天的天氣可以由明天的天氣進行計算。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

 3、隐馬爾可夫模型(HMM)

如下圖例子2變形:天氣情況是不可觀測的(即隐藏狀态),但我們發現水藻的幹燥與否和天氣有關,而水藻又是可觀測的,我們可以通過水藻來推測這三天的天氣情況。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

 從上面的例子我們不難看出:隐馬爾可夫模型是根據我們可見的東西(水藻)去推測我們真正想要的東西(天氣)。

4、HMM五元組、三要素

  • 觀測序列-O (水藻狀态,可觀測)               (序列長度:任意)
  • (隐藏)狀态序列-I (天氣狀态,不可觀測)     (序列長度:任意,目前看下來其長度同觀測序列)
  • 初始狀态機率向量-Π                              (向量大小:(1*N)T)
  • 狀态轉移機率矩陣-A                              (矩陣大小:狀态N*狀态N)
  • 觀測狀态機率矩陣-B (也叫發射矩陣B)        (矩陣大小:狀态N*觀測M)

其中後三項為HMM的三要素:λ=(Π,A,B)

 5、HMM兩個基本假設

  • 齊次馬爾可夫性假設(一階馬爾可夫假設):目前時刻的隐藏狀态,隻依賴于上一時刻的隐藏狀态,與其它時刻狀态和觀測值都是無關的。
  • 觀測獨立性假設(隐藏狀态假設):目前時刻的觀測值,隻依賴于目前時刻的隐藏狀态,與其它時刻狀态和觀測值都是無關的。
從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

 PS:還有一種說法,多了一個轉換函數穩定性假設。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

6、應用HMM來求解的三個基本問題

  • 機率計算:給定模型λ=(π,A,B)和觀測序列O,求觀測序列O出現的機率。           (前向-後向算法)
  • 解碼問題:給定模型λ=(π,A,B)和觀測序列O,求機率最大的隐藏狀态序列I。      (viterbi算法)
  • 學習問題:給定觀測序列O,求觀測序列O機率最大時模型λ=(π,A,B)的參數。   (極大似然估計算法)
從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

7、執行個體一

有三個骰子(D4四面體,D6六面體,D8八面體),每個面都寫有一個數字(如下圖),進行有放回的抽樣。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

由上可知:觀測值是骰子上的數字,有8種,即M=8;隐藏狀态是幾面體骰子,有3種,即N=3;

按照HMM五元組:

  • 在完成一輪有放回抽樣,我們可以得到一個觀測序列O如下
  • 隐藏狀态序列 I 未知,待求
  • 初始狀态機率向量π如下,一般平均初始化
  • 狀态轉移機率矩陣A如下,一般經驗、統計得到
  • 觀測機率分布矩陣B如下,一般經驗或按照實際情況計算得到
從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)

8、執行個體二

股市有三種隐藏狀态(牛市、低迷的市場、橫盤),有三種觀測狀态(上漲、下跌、不變),HMM五元組如下圖。

從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)
從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)
從馬爾可夫模型(Markov Model)到隐馬爾可夫模型(Hidden Markov Model)