那么怎么根據(jù)接收到的信息來推測說話者想表達(dá)的意思呢,?我們可以利用叫做“
隱含馬爾可夫模型”(Hidden Markov Model)來解決這些問題,。以語音識別為例,當(dāng)我們觀測到語音信號 o1,o2,o3 時(shí),,我們要根據(jù)這組信號推測出發(fā)送的句子 s1,s2,s3,。顯然,我們應(yīng)該在所有可能的句子中找最有可能性的一個(gè),。用數(shù)學(xué)語言來描述,,就是在已知 o1,o2,o3,...的情況下,求使得條件概率
P (s1,s2,s3,...|o1,o2,o3....) 達(dá)到最大值的那個(gè)句子 s1,s2,s3,...
當(dāng)然,,上面的概率不容易直接求出,,于是我們可以間接地計(jì)算它。利用貝葉斯公式并且省掉一個(gè)常數(shù)項(xiàng),,可以把上述公式等價(jià)變換成
P(o1,o2,o3,...|s1,s2,s3....) * P(s1,s2,s3,...)
其中
P(o1,o2,o3,...|s1,s2,s3....) 表示某句話 s1,s2,s3...被讀成 o1,o2,o3,...的可能性, 而
P(s1,s2,s3,...) 表示字串 s1,s2,s3,...本身能夠成為一個(gè)合乎情理的句子的可能性,,所以這個(gè)公式的意義是用發(fā)送信號為 s1,s2,s3...這個(gè)數(shù)列的可能性乘以 s1,s2,s3...本身可以一個(gè)句子的可能性,得出概率,。
(讀者讀到這里也許會問,,你現(xiàn)在是不是把問題變得更復(fù)雜了,因?yàn)楣皆綄懺介L了,。別著急,,我們現(xiàn)在就來簡化這個(gè)問題。)我們在這里做兩個(gè)假設(shè):
第一,,s1,s2,s3,... 是一個(gè)馬爾可夫鏈,,也就是說,si 只由 si-1 決定 (詳見
系列一),;
第二,, 第 i 時(shí)刻的接收信號 oi 只由發(fā)送信號 si 決定(又稱為獨(dú)立輸出假設(shè), 即 P(o1,o2,o3,...|s1,s2,s3....) = P(o1|s1) * P(o2|s2)*P(o3|s3)...。
那么我們就可以很容易利用算法
Viterbi 找出上面式子的最大值,,進(jìn)而找出要識別的句子 s1,s2,s3,...,。
滿足上述兩個(gè)假設(shè)的模型就叫隱含馬爾可夫模型。我們之所以用“隱含”這個(gè)詞,,是因?yàn)闋顟B(tài) s1,s2,s3,...是無法直接觀測到的,。
隱含馬爾可夫模型的應(yīng)用遠(yuǎn)不只在語音識別中。在上面的公式中,,如果我們把 s1,s2,s3,...當(dāng)成中文,,把 o1,o2,o3,...當(dāng)成對應(yīng)的英文,那么我們就能利用這個(gè)模型解決機(jī)器翻譯問題,; 如果我們把 o1,o2,o3,...當(dāng)成掃描文字得到的圖像特征,,就能利用這個(gè)模型解決印刷體和手寫體的識別,。
P (o1,o2,o3,...|s1,s2,s3....) 根據(jù)應(yīng)用的不同而又不同的名稱,在語音識別中它被稱為“聲學(xué)模型” (Acoustic Model),, 在機(jī)器翻譯中是“翻譯模型” (*** Model) 而在拼寫校正中是“糾錯(cuò)模型” (Correction Model),。 而P (s1,s2,s3,...) 就是我們在系列一中提到的語言模型。
在利用隱含馬爾可夫模型解決語言處理問題前,,先要進(jìn)行模型的訓(xùn)練,。 常用的訓(xùn)練方法由伯姆(Baum)在60年代提出的,并以他的名字命名,。隱含馬爾可夫模型在處理語言問題早期的成功應(yīng)用是語音識別,。七十年代,當(dāng)時(shí) IBM 的
Fred Jelinek (賈里尼克) 和卡內(nèi)基·梅隆大學(xué)的 Jim and Janet Baker
(貝克夫婦,,李開復(fù)的師兄師姐) 分別獨(dú)立地提出用隱含馬爾可夫模型來識別語音,,語音識別的錯(cuò)誤率相比人工智能和模式匹配等方法降低了三倍 (從 30% 到 10%)。 八十年代李開復(fù)博士堅(jiān)持采用隱含馬爾可夫模型的框架,, 成功地開發(fā)了世界上第一個(gè)大詞匯量連續(xù)語音識別系統(tǒng) Sphinx,。
我最早接觸到隱含馬爾可夫模型是幾乎二十年前的事。那時(shí)在《隨機(jī)過程》(清華“著名”的一門課)里學(xué)到這個(gè)模型,,但當(dāng)時(shí)實(shí)在想不出它有什么實(shí)際用途,。幾年后,我在清華跟隨王作英教授
學(xué)習(xí),、研究語音識別時(shí),他給了我?guī)资墨I(xiàn),。 我印象最深的就是賈里尼克和李開復(fù)的文章,,它們的核心思想就是隱含馬爾可夫模型。復(fù)雜的語音識別問題居然能如此簡單地被表述,、解決,,我由衷地感嘆數(shù)學(xué)模型之妙。