以下內容學習来累、摘錄自《數學之美》
隱含馬爾可夫模型是一個并不復雜的數學模型领虹,到目前為止赐写,它一直被認為是解決大多數自然語言處理問題最為快速、有效的方法乘粒。它成功地解決了復雜的語音識別豌注、機器翻譯等問題。
雖然書中說這個并不復雜灯萍,但說實話轧铁,書中詳細的數學公式還是挺燒腦的:)
隱含馬爾可夫模型( Hidden Markov Model)其實并不是19世紀俄羅斯數學家馬爾可夫( Andrey Markov)發(fā)明的,而是美國數學家鮑姆( LeonardE.Baum)等人在20世紀六七十年代發(fā)表的一系列論文中提出的旦棉,隱含馬爾可夫模型的訓練方法(鮑姆-韋爾奇算法)也是以他的名字命名的齿风。
要介紹隱含馬爾可夫模型,還是要從馬爾可夫鏈說起绑洛。到了19世紀救斑,概率論的發(fā)展從對(相對靜態(tài)的)隨機變量的研究發(fā)展到對隨機變量的時間序列S1,S2真屯,S3脸候,…,St,…运沦,即隨機過程(動態(tài)的)的研究泵额。在哲學的意義上,這是人類認識的一個飛躍携添。但是梯刚,隨機過程要比隨機變量復雜得多。
馬爾可夫為了簡化問題薪寓,提出了一種簡化的假設亡资,即隨機過程中各個狀態(tài)St的概率分布,只與它的前一個狀態(tài)St-1有關向叉,即P(S l S1锥腻,S2,S3母谎,…瘦黑,St-1)=P(St | St-1)。比如奇唤,對于天氣預報幸斥,硬性假定今天的氣溫只跟昨天有關而與前天無關。當然這種假設未必適合所有的應用咬扇,但是至少對以前很多不好解決的問題給出了近似解甲葬。這個假設后來被命名為馬爾可夫假設。
圍繞著隱含馬爾可夫模型有三個基本問題:1.給定一個模型懈贺,如何計算某個特定的輸出序列的概率经窖;2.給定一個模型和某個特定的輸出序列,如何找到最可能產生這個輸出的狀態(tài)序列梭灿;3.給定足夠量的觀測數據画侣,如何估計隱含馬爾可夫模型的參數。
第1個問題相對簡單堡妒,對應的算法是 Forward- Backward算法配乱,;第2個問題可以用著名的維特比算法解決皮迟;第3個問題涉及到模型訓練問題搬泥,書中推薦了的是鮑姆·韋爾奇算法(Baum-Welch Algorithm)。
隱含馬爾可夫模型最初應用于通信領域万栅,繼而推廣到語音和語言處理中佑钾,成為連接自然語言處理和通信的橋梁。同時烦粒,隱含馬爾可夫模型也是機器學習的主要工具之一。和幾乎所有的機器學習的模型工具一樣,它需要一個訓練算法(鮑姆·韋爾奇算法)和使用時的解碼算法(維特比算法)扰她,掌握了這兩類算法兽掰,就基本上可以使用隱含馬爾可夫模型這個工具了。