




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第五章 隱馬爾可夫模型5.1 馬爾可夫性和馬爾可夫鏈5.2 HMM模型5.3 HMM的三個基本算法5.4 HMM的各種結構類型5.5 HMM的一些實際問題5.1馬兒可夫性和馬兒可夫鏈如果一個過程的“將來”僅依賴“現在”,而不依賴“過去”,則此過程具有馬爾可夫性,或稱此過程為馬爾可夫過程5.1馬兒可夫性和馬兒可夫鏈時間和狀態都離散的馬爾可夫過程稱為馬爾可夫鏈:也稱為一階Markov過程(單純Markov),擴展為n階Markov過程:5.1馬兒可夫性和馬兒可夫鏈對于Markov,如果轉移概率與時間t無關:稱為齊次Markov過程。如果從狀態i到狀態j的轉移是可能的,即對任意的i、j都有:稱為正則
2、Markov過程。5.2HMM模型隱Markov模型(HMM)狀態轉移序列S=s1s2sT,對應著一階Markov過程:符號序列O=o1o2oT ,由狀態轉移時輸出的符號組成,并且相鄰符號之間是不相關的狀態S是不可觀測的,只有符號序列O是可觀測的。觀察到的球的顏色312屏障5.2HMM模型5.2HMM模型有N個缸,每個缸中有很多彩球,球的顏色由一組概率分布描述。實驗進行方式如下根據初始概率分布,隨機選擇N個缸中的一個開始實驗根據缸中球顏色的概率分布,隨機選擇一個球,記球的顏色為O1,并把球放回缸中根據描述缸的轉移的概率分布,隨機選擇下一個缸,重復以上步驟。最后得到一個描述球的顏色的序列o1o2
3、,,稱為觀察值序列O。 5.2HMM模型在上述實驗中,有幾個要點需要注意:1.不能直接觀察缸間的轉移2.從缸中所選取的球的顏色和缸并不是 一一對應的3.每次選取哪個缸由一組轉移概率決定 5.2HMM模型綠圈表示隱含狀態隱僅依賴于前一個狀態一階給定當前狀態,過去與將來無關馬爾可夫紫圈表示輸出觀察序列僅依賴于各自對應的隱狀態5.2HMM模型HMM是一個雙重隨機過程,兩個組成部分 馬爾可夫鏈:描述狀態的轉移,用轉移概率描述。 一般隨機過程:描述狀態與觀察序列間的關系, 用觀察值概率描述。Markov鏈(, A)隨機過程(B)狀態序列觀察值序列s1, s2, ., sTo1, o2, ., oT5.2
4、HMM模型S,K, P, A,B S : s1sN 隱狀態的值,共有N種可能值O : o1oM 觀察的值,共有M種可能值 P = pi隱狀態初始概率A = aij 隱狀態轉移概率,NNB = bjk 觀察狀態的概率,NMABAAABBSSSKKKSKSK5.2HMM模型用模型五元組M=S,O,A,B, 來描述HMM,或簡寫為M=A,B, 參數含義實例S=s1sN隱狀態數目缸的數目O=o1oM每個狀態觀察值數目彩球顏色數目A=aij狀態轉移概率矩陣在給定某個缸的情況下,選擇另一個缸的概率B=bjk給定狀態j下觀察值的概率分布每個缸中的顏色分布p初始狀態的概率分布初始時選擇某口缸的概率5.2HMM
5、模型HMM模型的主要參數A、BA矩陣描述了短時平穩段如何轉變為下一個短時平穩段B矩陣利用短時模型描述了平穩段信號的特征語音信號的時變統計特性由隱含的Markov鏈表示,而短時平穩特性由觀測值的概率分布表示,由于每個狀態下的B矩陣是有所區別的,因此HMM反映了語音的短時平穩特性。5.3HMM三個基本算法問題1:給定觀察序列O=o1o2oT,以及模型 M=A,B, , 如何計算P(O|M)?模型識別問題前后向算法問題2:給定觀察序列O=o1o2oT,和模型M,如何選擇一個對應的狀態序列S = s1,s2,sT,使得在該狀態下觀測序列的概率最大? 估計問題Viterbi算法問題3:如何調整模型參數M
6、=A,B, , 使得P(O|M)最大?訓練問題 Baum Welch算法(EM算法)問題1:給定觀察序列O=o1o2oT,以及模型M=A,B, , 如何計算P(O|M)?基礎方法給定一個固定的狀態序列S=s1s2sTbst 表示在st狀態下觀測到Ot的概率oTo1otot-1ot+1s1st+1sTstst-1oTo1otot-1ot+1s1st+1sTstst-1狀態數為N,時間長度為T,則乘法計算量為2TNT解決問題1前向法定義前向變量給定模型M,t時刻狀態處于i,輸出觀察序列為O=o1o2ot的概率。初始化:遞歸:終結:解決問題1前向法乘法計算量N(N+1)(T-1) 1 . t t+1
7、 .a1jat1sN.si.sj.s1atNatiaNjaij解決問題1后向法定義后向變量給定模型M,時刻t處在狀態i,觀察到ot+1ot+2oT的概率。初始化:遞歸:終結:解決問題2Viterbi算法目的:給定觀察序列O以及模型M,如何選擇一個對應的狀態序列S ,使得O在S下的輸出概率最大?定義:觀測序列為o1o2ot,計算到達每一狀態的最大概率的狀態。 算法思想:在前一狀態已知條件下,搜索在輸出為ot時,概率最大的當前狀態解決問題2Viterbi算法初始化:遞歸:終結:回溯最佳狀態轉移S序列解決問題2Viterbi算法前后向算法:Viterbi算法Viterbi計算的概率是前后向累加中概率
8、最大的,一般而言,這個最大值舉足輕重,因此常用maxP(s,o|M)計算概率代替P(s,o|M)解決問題3Baum-Welch算法(模型訓練)目的:給定觀察值序列O,通過計算確定一個最佳模型M , 使得P(O|M)最大。算法步驟:1. 初始模型(待訓練模型) M0,2. 基于M0 以及觀察值序列O,訓練新模型 M3. 如果 logP(X|M) - logP(X|M0) Delta,說明訓練已經達到預期效果,算法結束。4. 否則,令M0 M ,繼續第2步工作 Baum-Welch算法參數估計定義給定模型M和觀察序列O,在時刻t 處在狀態i,時刻t+1 處在狀態j 的概率t(i, j),即:Bau
9、m-Welch算法利用估算公式,進行迭代運算,直到參數值收斂。Baum 等人證明參數的收斂點并不一定是一個全局最優值,但一定是一個局部最優值Baum-Welch 算法是一類稱為EM (Estimation-Maximisation:估計-最大化)算法的例子,這類算法均可保證收斂于一個局部最優值。 5.4 HMM各種結構類型 按照HMM狀態轉移矩陣(A參數)分類 各態歷經型或遍歷型HMM: 經過有限步的轉移后,系統能達到任何一個狀態,即狀態轉移矩陣中的每一個元素均為大于零的數,沒有零元素。各態歷經型HMM不符合時間順序的要求,因為它可以回到以前狀態,所以只能用于不要求時間順序的語音信號處理,如:
10、與文本無關的說話人識別等。5.4 HMM各種結構類型從左到右型HMM:所謂的從左到右模型,就是指隨著時間的增加,狀態的轉移只能是從左到右進行或停留在原來的狀態,因此,其狀態轉移矩陣具有如下的形式,它是一個上三角矩陣。5.4 HMM各種結構類型另外從狀態轉移結構上HMM還有其他的一些變體,如圖所示,由兩條并行的從左到右模型組成的HMM,又稱為HMM網絡。它不是一般的情況,是由標準模型組合的變體,用于特殊的應用場合。這種模型較復雜,所以性能一般要比單個左右模型要好。 5.4 HMM各種結構類型按照HMM的輸出概率分布(B參數)分類 離散HMM(DHMM):每一狀態下輸出的字符,是從一個有限的離散字
11、符集中按照一定的離散概率分布選出的。對于語音信號,離散HMM需要將語音特征參數向量進行矢量量化。 5.4 HMM各種結構類型連續型HMM(Continuous HMM):用概率密度函數來表示,一般用高斯概率密度函數:連續HMM中,高斯模型中的協防差矩陣也分為全協方差矩陣和對角協方差矩陣,因此連續HMM也分成全協方差矩陣CHMM和對角協方差矩陣CHMM。5.4 HMM各種結構類型用一個高斯概率不足以表示語音參數的輸出概率分布,通常利用多個高斯概率分布的加權和來表示參數的概率密度函數,稱之為“高斯元混合密度模型”GMM:高斯單元數M值較大(如M為4或5)時,具有更多的自由度,能更好的逼近實際分布,
12、識別更高。隨著詞匯量的增加,這一優點更加突出,因而,對一些大詞匯量的與說話人無關的語音識別系統,連續混合密度HMM受到重視。5.4 HMM各種結構類型半連續型SCHMM(Semi-Continuous HMM):離散HMM的模型參數少,對訓練數據量要求不高,計算量較少,易于實時實現,識別精度不高。連續型HMM運算量大,訓練數據不夠時訓練的模型精度較低。為了結合這兩種模型的優點,提出了半連續型HMM:SCHMM用多個正態分布線性相加彌補了離散分布的誤差。正態分布與狀態無關,加權系數與狀態相關。5.4 HMM各種結構類型 一些特殊的HMM的形式 空轉移(Null Transitions):在這種類
13、型的HMM中,系統的輸出是與轉移弧相聯系的,允許不產生輸出的轉移,即從一個狀態轉移到其他狀態時,無觀察符號(或矢量)輸出。這樣的轉移稱為空轉移。在連續語音識別系統中,單詞或語句的HMM都是由基元HMM的連接形成的。一個基元HMM的終止狀態和一個基元HMM的初始狀態相連接,這種連接產生的轉移弧就是空轉移,所以在大詞匯連續語音識別系統中大量使用了這種模型。 5.4 HMM各種結構類型基元HMM的連接 5.4 HMM各種結構類型參數捆綁(Parameter tieing) :參數捆綁的基本思想是在HMM的不同狀態轉移弧的參數之間建立一定的關系,使得不同狀態轉移弧使用相同的參數,其目的就是使模型中的獨
14、立的狀態參數減少,從而使得參數估計變得較為簡單參數捆綁是解決訓練數據不足問題的重要方法,因為模型的參數越多,則需要的訓練數據數量就越大,否則訓練出的模型精度就不夠。參數捆綁常用于兩個或多個狀態的輸出觀察向量的概率密度分布近似相同的情況,提取的語音特征參數可以認為在這些狀態轉移弧上符合相同的分布。實際上,在如圖5-7所示的連續型HMM中,一個狀態的自轉移弧和互轉移弧的參數必須進行參數捆綁,因為,對于一個訓練參數的時間序列,實際上互轉移弧上只通過了一幀的語音數據,而用一幀的語音數據估計正態分布概率密度函數是不可能的。 5.4 HMM各種結構類型具有參數捆綁的連續型HMM 5.5HMM的一些實際問題
15、下溢問題在計算HMM的三個問題時,需要計算前向變量和后向變量,是通過遞歸運算求得的,例如在 Viterbi算法中,計算前向變量所用的遞歸公式如下: 在上式中,aij 和 bj項均為小于的1數(甚至遠小于1),因此在實際運算中,t(i) 較t-1(i) 要小,隨著t的增加, t(i) 就有明顯得降低,最后,該變量變得非常小,以致會超出計算動態范圍的下限,即使采用雙精度運算,當t相當大時,幾乎所有的t(i) 都趨向于0,后向變量的計算也有類似的情況,這就是計算中的下溢問題。因此,在進行相關計算時,必須加入定標過程。5.5HMM的一些實際問題參數的初始化問題 Baum-Welch重估訓練算法能夠給出
16、似然函數的局部最大點,一個關鍵的問題是如何恰當地選擇HMM的初始參數,使局部最大值盡量的接近全局最優點,此外,好的初值選擇還可以保證達到收斂所需的迭代次數最小,即計算效率較高。初始概率和狀態轉移系數矩陣的初值較易確定,通常初值設置為均勻分布之值或非零的隨機數,據有關文獻介紹, 和的初值設置對識別率的影響不是太大。參數B的初值設置較其它兩組參數的設置更至關重要也更困難。對離散型HMM等較簡單的情況,B的設置較容易,可以采取均勻的或隨機的設置每一字符出現的概率初值。在連續分布HMM的B中,包含的參數越多越復雜,則參數初值的設置對于迭代計算的結果越至關重要,一種較簡單的B初值的設置方法是用手工對輸入
17、的語音進行狀態劃分并統計出相應的概率分布作為初值,這適合于較小的語音單位。對于較大的語音單位,目前普遍采用分段K-均值算法。 5.5HMM的一些實際問題用分段K-均值算法求模型的參數初值5.5HMM的一些實際問題提高HMM描述語音動態特性的能力為了保證HMM計算的有效性和訓練的可實現性,基本的HMM模型本身隱含了以下三個假設: 假設1:狀態轉移概率A與觀察序列無關,且時不變; 假設2:狀態觀察概率密度函數B與過去狀態無關; 假設3:狀態觀察概率密度函數B與過去觀察無關。由于語音是發音系統連續變化所產生的,具有很強的相關性,以上基本HMM的假設無疑是不合理的。因此,雖然隱馬爾可夫模型是現在最流行
18、的語音識別模型,然而基本型的HMM采用狀態輸出獨立假設是它的一個固有的缺陷。它影響了HMM描述語音信號時間上幀間相關動態特性的能力。5.5HMM的一些實際問題為了彌補這一缺陷,最早人們采用的方法是在利用語音靜態參數X的同時,增加如下式(5-63)所示的語音的動態特性參數,即以時刻t(幀)為中心,2W+1(幀)為幅度的線性回歸系數X(t):然而這些擴展都沒有從根本上解決HMM假設的不合理性,因而其對識別性能的改進也必然是有限的。因此,基于語音段的統計建模方法正是在此基礎上于八十年代末、九十年代初應運而生了,提出許多方法,如使用線性或非線性預測器法、利用多項式回歸函數法、利用條件概率HMM的方法和復數幀段輸入HMM方法等。 5.5HMM的一些實際問題利用語音幀間相關信息最直接最簡便的方法,是采用相繼的復數幀組成的特征參數矢量作為輸入特征量的方法。利用這一設想,可以較好地改善傳統輸出獨立HMM的缺陷,是一種有效而簡便的利用幀
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論