09.16 概率上所說的“隱馬爾可夫模型(HMM)”到底是個什麼東西?

假設有三個不同的骰子:一個常見的6面骰子(骰

6),還加上一個4面骰子(骰4)和一個8面骰子(骰8),如果均為公平骰子,三種骰子得到每一個面的概率分別為1/6、1/4、和1/8,如圖7-3-1所示。

現在,我們開始擲這3個骰子,每次從三個骰子(骰6、骰4、骰8)裡隨機地挑一個,等概率的情況下,挑到每一個骰子的概率都是1/3。然後反覆地重複 “挑骰子、拋骰子、挑骰子、拋骰子……”,便會產生一系列的狀態(骰子面上的數字)。例如,我們有可能得到如下一個數字序列A:

3 5 8 4 7 1 6 5 2 2 1…… (7-3-1)

概率上所說的“隱馬爾可夫模型(HMM)”到底是個什麼東西?

圖7-3-1:擲三種骰子

個骰子得到的,比如說,三個骰子都有可能得到數字3,不過,數字7、8只有骰8才能拋出來……等等。

根據以上的說法,序列(7-3-1)只是一個從外界觀察到的“骰子面”數字序列,並不等同於3個骰子實際拋丟的序列B:

46868668486 (7-3-2)

概率上所說的“隱馬爾可夫模型(HMM)”到底是個什麼東西?

圖7-3-2:隱馬爾可夫模型1

但兩者發生的概率之間有某種關聯。一般來說,將序列(7-3-1)叫做可觀察序列,序列(7-3-2)叫做隱藏序列,因為被隱藏的序列(7-3-2)是一個馬爾可夫鏈,所以,這個擲骰子例子構成了一個“隱馬爾可夫模型”,如圖7-3-2所示。圖7-3-2中,隱藏著的馬爾可夫鏈的狀態轉換概率矩陣用A表示,在3個骰子等概率選擇的情形下,矩陣A中的所有概率都是1/3。但事實上這個概率矩陣可以根據問題之需要而任意設定。

使用更為數學化的語言:隱馬爾可夫模型λ是由初始狀態概率向量π、狀態轉移概率矩陣A和觀測概率矩陣B三個基本要素決定的,可以用三元符號表示為:

λ =(π, A, B)。

不少實際問題可以被抽象成隱馬爾可夫模型,還有一個最常見的簡單例子是維基百科中所舉的從朋友的活動情況來猜測當地的氣象模型,如圖7-3-3所示。

從三個基本要素,可以歸納出隱馬爾可夫模型的三個基本問題:給定HMM求一個觀察序列的概率,稱之為“評估”;搜索最有可能生成一個觀察序列的隱藏狀態序列,稱之為“解碼”;從給定的觀察序列生成一個HMM,稱之為“學習”。對這些不同問題的解答,有多種分析和算法,我們不在此贅述。

隱馬爾可夫模型是隨機過程,即一系列隨機變量的延伸,但人工智能需要解決的問題可能是多維的隨機變量。比如說,如果語音可以看作是一維的時間序列的話,圖像就是二維的,而視頻則涉及到三維的隨機變量。更一般而言,將隨機變量的概率和統計之理論,與圖論結合起來,不僅僅限於時間相關的“過程”,而是形成了各種多維的概率圖(或網絡)的概念,諸如貝葉斯網絡、馬爾可夫隨機場等。

概率上所說的“隱馬爾可夫模型(HMM)”到底是個什麼東西?

圖7-3-3:隱馬爾可夫模型2

(摘自《從擲骰子到阿爾法狗:趣談概率》,作者:張天蓉)

概率上所說的“隱馬爾可夫模型(HMM)”到底是個什麼東西?


分享到:


相關文章: