機率與貝氏方法

隱馬可夫模型(hidden Markov model)

/ HID-un MAR-kof MOD-ul /

隱馬可夫模型,描述這樣一種情形:某樣東西正沿著一串你看不見的隱藏狀態在變化,但它每一步都會留下一個可見的線索。設想隔壁房間裡有位朋友,你看不到他的心情(高興、疲憊、煩躁),卻能聽見他在哼歌、嘆氣,還是沉默。你試著從這串聲音裡,推斷出那看不見的心情序列。「馬可夫」這一部分,是一個化簡的承諾:明天的心情只取決於今天的,而與整段歷史無關。

模型有兩個活動部件。轉移規則掌管隱藏狀態如何從一步漂移到下一步——高興的心情有多大可能保持高興、又有多大可能滑向疲憊。發射規則掌管每個隱藏狀態如何產生它那可見的線索——疲憊的心情有多大可能引出一聲嘆息。給定一段記錄下來的線索序列,經典而高效的演算法便能算出整段序列的機率、找出隱藏狀態最可能的那一條路徑,並單憑資料把規則學出來。

它為何重要:隱馬可夫模型曾在數十年間是語音辨識的主力,至今仍驅動著DNA中的基因查找、詞性標註與活動追蹤——凡是有一個隱藏過程在時間中展開、又只透過帶雜訊的信號現身之處,都有它。誠實的局限,源自那個馬可夫承諾:由於假定下一個狀態只記得緊鄰的過去、忘掉其餘一切,模型在處理長程結構時便力不從心。在豐富的資料上,現代神經序列模型常常勝過它;但隱馬可夫模型仍因「可解釋、省資料、可精確求解」而備受珍視。

從海藻推斷天氣。你看不見每天是晴是雨(隱藏狀態),但掛在屋外的一片海藻是乾、是潮、還是濕透(觀測)。濕透的海藻讓「雨」變得可能,乾燥則讓「晴」變得可能。給定一週的海藻讀數——乾、潮、濕透、濕透、潮——模型便能重建出最可能的那一串隱藏天氣。

隱馬可夫模型用維特比演算法,從一串帶雜訊的線索(海藻)裡,推斷出一段看不見的序列(天氣)。

馬可夫假設——下一個狀態只取決於當前那個——既是模型的長處,也是它的天花板。它讓計算變得精確而廉價,卻也刻意遺忘了長程的上下文,因此隱馬可夫模型無法像現代基於注意力的模型那樣,捕捉跨越許多步的依賴關係。

又稱
HMM隐马尔可夫模型隱馬可夫模型隐式马尔可夫模型