梁浩 楊光宇
摘 要:本文針對(duì)問(wèn)題一建立了基于連續(xù)隱馬爾科夫模型的語(yǔ)音識(shí)別系統(tǒng)的模型。該語(yǔ)音識(shí)別系統(tǒng)包括預(yù)處理,特征提取以及聲學(xué)模型三個(gè)部分。問(wèn)題二要求以一個(gè)實(shí)際的例子則對(duì)問(wèn)題一中建立的模型進(jìn)行驗(yàn)證。我們選擇了“話費(fèi)查詢”這個(gè)功能進(jìn)行測(cè)試。待測(cè)語(yǔ)音信號(hào)依次經(jīng)過(guò)預(yù)處理、特征提取、訓(xùn)練與識(shí)別。
關(guān)鍵詞:語(yǔ)音識(shí)別;隱馬爾科夫模型;預(yù)處理特
1 模型的建立與驗(yàn)證
本文我們所建立的語(yǔ)音識(shí)別門(mén)模型包括語(yǔ)音信號(hào)預(yù)處理模塊、特征提取模塊及模式庫(kù)訓(xùn)練和待測(cè)語(yǔ)音識(shí)別模塊。
1.1 預(yù)處理
預(yù)處理主要包括預(yù)加重,加窗分幀處理,端點(diǎn)檢測(cè)和降噪處理四個(gè)過(guò)程。
1.1.1 預(yù)加重模型
預(yù)加重的中心思想是利用信號(hào)特性和噪聲特性的差別來(lái)有效地對(duì)信號(hào)進(jìn)行處理。即在噪聲引入之前采用適當(dāng)?shù)木W(wǎng)絡(luò),人為地加重發(fā)射機(jī)輸入調(diào)制信號(hào)的高頻分量。
1.1.2 加窗分幀處理模型
本文中選擇Hamming窗進(jìn)行加窗分幀處理,Hamming窗函數(shù)如下:
1.1.3 端點(diǎn)檢測(cè)模型
本文使用雙門(mén)限端點(diǎn)檢測(cè)對(duì)語(yǔ)音信號(hào)進(jìn)行端點(diǎn)處理。
1.1.4 降噪處理模型
FIR濾波器的基本結(jié)構(gòu)可以理解為一個(gè)分節(jié)的延時(shí)線,把每一節(jié)的輸出加權(quán)累加,可得到濾波器的輸出,F(xiàn)IR濾波器的沖激響應(yīng)h(n)是有限長(zhǎng)的,數(shù)學(xué)上M階FIR濾波器可以表示為:
1.2 特征提取模型
特征提取就是從語(yǔ)音信號(hào)中提取具有代表性的、合適的特征參數(shù)。爾頻率倒譜系數(shù)(MFCC)能更加充分的利用人耳的聽(tīng)覺(jué)特性,因此本文中我們提取的特征參數(shù)是MFCC。
P個(gè)MFCC系數(shù)公式為:
1.3 訓(xùn)練與識(shí)別模型——連續(xù)隱馬爾科夫模型
模式匹配是通過(guò)計(jì)算待識(shí)別語(yǔ)音與已知語(yǔ)音庫(kù)中語(yǔ)音的相似度對(duì)語(yǔ)音進(jìn)行識(shí)別,是多維模式識(shí)別系統(tǒng)中最常用的一種方法。模式匹配分為訓(xùn)練和識(shí)別兩個(gè)階段。
常用的模式匹配方法有動(dòng)態(tài)時(shí)間規(guī)整算法以及隱馬爾科夫模型等。本文選用連續(xù)隱馬爾科夫模型對(duì)語(yǔ)音信號(hào)進(jìn)行識(shí)別和訓(xùn)練。
1.3.1 模型建立
HMM模型可以記為:λ=(π,A,B)。A為狀態(tài)轉(zhuǎn)移矩陣為:B為觀察值概率密度矩陣,πi為各狀態(tài)其實(shí)概率分布。
1.3.2 模型求解
HMM在語(yǔ)音識(shí)別中需要解決估值、解碼和訓(xùn)練三個(gè)基本問(wèn)題。
⑴估值問(wèn)題
對(duì)于給定的觀察序列O=(O1,O2,…,OT)和模型λ=(π,A,B),前向概率求解。
⑵解碼問(wèn)題
對(duì)于給定的觀察序列O=(O1,O2,…,OT)和模型λ=(π,A,B),求模型λ對(duì)應(yīng)于觀測(cè)序列O的最佳狀態(tài)序列Q*=q1*,…qT*,即尋找使P(O—λ)達(dá)到最大時(shí),O所對(duì)應(yīng)的狀態(tài)序列,可以采用Viterbi算法求解。
⑶訓(xùn)練算法
對(duì)于給定的觀測(cè)序列O=(O1,O2,…,OT),如何修正模型λ參數(shù),使得模型產(chǎn)生觀測(cè)序列O的概率P(O—λ)最大,一般采用Baum—Welch算法。算法步驟為:確定A,B的初始值,利用前向-后向算法求前向概率和后向概率,利用重估公式求ai,j和bi(j),判斷是否收斂:求出P(O—λ)并計(jì)算 。如果 小于給定的閾值 則結(jié)束,反之回到第二步繼續(xù)進(jìn)行循環(huán)。
1.3.3 語(yǔ)音識(shí)別模型
對(duì)待識(shí)別語(yǔ)音信號(hào)映射為觀察序列,然后對(duì)各模型求概率,其中概率最大的模型對(duì)應(yīng)的詞即為識(shí)別結(jié)果。
假設(shè)每個(gè)詞wi,都對(duì)應(yīng)一個(gè)觀察序列O=[O1,O2,…,OT]T,則語(yǔ)音識(shí)別的問(wèn)題可以認(rèn)為是在已知語(yǔ)音觀察序列O的情況下,尋找與其最匹配的wi,即計(jì)算出argimax{P(wi—O)}。
由于P(wi)和P(O)都可以確定,因此式(5.3.19)的大小由P(O—wi)決定。若其對(duì)應(yīng)的隱馬爾科夫模型為λi,則:
P(O—wi)=P(O—λi)
其中,P(O—λi)可用前向-后向概率算法求出。然后找出最大的P(O—λi),則其模型對(duì)應(yīng)的詞即為識(shí)別結(jié)果。
1.4 模型的驗(yàn)證
問(wèn)題二要求以一個(gè)實(shí)際的例子驗(yàn)證語(yǔ)音識(shí)別模型。我們選擇了“話費(fèi)查詢功能”進(jìn)行驗(yàn)證。為了達(dá)到這個(gè)目標(biāo),由問(wèn)題二中的規(guī)則可知我們需要以比較連貫的語(yǔ)速用標(biāo)準(zhǔn)普通話說(shuō)出“話費(fèi)”。首先對(duì)該語(yǔ)音進(jìn)行預(yù)加重。
我們用識(shí)別正確率以及識(shí)別時(shí)間這兩個(gè)指標(biāo)對(duì)系統(tǒng)的性能進(jìn)行評(píng)價(jià)。在識(shí)別時(shí)我們用了十個(gè)不同個(gè)人錄制的“話費(fèi)”信號(hào)進(jìn)行測(cè)試,識(shí)別的正確率和識(shí)別的所需時(shí)間如下表:
由上表可得:
語(yǔ)音識(shí)別系統(tǒng)的正確率為:7/10*100%=70%
平均識(shí)別時(shí)間為:(42+39+48+45+40+42+46+49+43+37)/10=43.1ms
由此可見(jiàn)問(wèn)題一中的模型具有較高的識(shí)別率,問(wèn)題二中制定的規(guī)則也可以使用,且識(shí)別的時(shí)間較短可以滿足用戶對(duì)于應(yīng)答及時(shí)性的要求,這樣可以提升用戶體驗(yàn)。
2 模型評(píng)價(jià)
2.1 模型評(píng)價(jià)
2.1.1 模型優(yōu)點(diǎn)
預(yù)處理使得需要處理的數(shù)據(jù)量減少,提高了系統(tǒng)的處理效率也提高了識(shí)別的正確率;
梅爾頻率倒譜參數(shù)具有識(shí)別性能力和抗噪能力;
隱馬爾科夫模型識(shí)別的正確率要高于動(dòng)態(tài)時(shí)間規(guī)整算法,同時(shí)識(shí)別的時(shí)間要比動(dòng)態(tài)時(shí)間規(guī)整算法短;
2.1.2 模型缺點(diǎn)
系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,只能識(shí)別特定的詞匯,不夠智能。
連續(xù)隱馬爾科夫模型的計(jì)算比較復(fù)雜。
[參考文獻(xiàn)]
[1]百度百科.預(yù)加重,http://baike.baidu.cn/view/515154.htm,2013年5月26日.
[2]王明奇.基于HMM的孤立詞語(yǔ)音識(shí)別系統(tǒng)的研究.畢業(yè)論文,2007年.
[3]wangzi371312.數(shù)字化語(yǔ)音的分幀加窗處理.http://hi.baidu.com/wangzi371312/item/64897e6f2741d50ca0cf0f53,2013年5月26日.
[4]百度文庫(kù).端點(diǎn)檢測(cè),http://wenku.baidu.com/view/86236edbad51f01dc281f14d,2013年5月26日.