專利名稱:掌上電腦非特定人語(yǔ)音識(shí)別方法
技術(shù)領(lǐng)域:
本發(fā)明涉及自動(dòng)語(yǔ)音識(shí)別領(lǐng)域,特別涉及掌上電腦非特定人語(yǔ)音識(shí)別方法。
為實(shí)現(xiàn)上述目的,掌上電腦非特定人語(yǔ)音識(shí)別方法包括語(yǔ)音訓(xùn)練過(guò)程和語(yǔ)音識(shí)別過(guò)程,語(yǔ)音識(shí)別過(guò)程包括步驟對(duì)特征MFCC進(jìn)行定點(diǎn)計(jì)算;對(duì)搜索過(guò)程中概率密度函數(shù)進(jìn)行定點(diǎn)計(jì)算。
經(jīng)過(guò)本發(fā)明的簡(jiǎn)化處理,識(shí)別率的變化小于0.2%,但是識(shí)別速度提高三十倍以上。在不作概率密度函數(shù)定點(diǎn)實(shí)現(xiàn)以前識(shí)別一個(gè)詞需要的時(shí)間超過(guò)四十秒,經(jīng)過(guò)簡(jiǎn)化處理后識(shí)別一個(gè)詞的時(shí)間小于1.5秒,基本上達(dá)到實(shí)時(shí)要求。
圖2是常規(guī)提取MFCC特征過(guò)程圖;圖3是本發(fā)明提取MFCC特征過(guò)程圖。
發(fā)明的
具體實(shí)施例方式
語(yǔ)音識(shí)別的過(guò)程如
圖1所示。其中訓(xùn)練過(guò)程可以在PC機(jī)上進(jìn)行,在掌上電腦上進(jìn)行識(shí)別過(guò)程。這里我們就識(shí)別過(guò)程的兩個(gè)方面進(jìn)行改進(jìn),以達(dá)到識(shí)別過(guò)程在掌上電腦上得以實(shí)時(shí)實(shí)現(xiàn)。
●特征MFCC的定點(diǎn)計(jì)算提取MFCC特征需要經(jīng)過(guò)預(yù)加重、漢明窗、FFT、Mel濾波、取對(duì)數(shù)、DCT(離散余弦變換)等幾個(gè)步驟,如圖2所示,傳統(tǒng)的算法每個(gè)步驟都需要浮點(diǎn)數(shù)運(yùn)算。
本發(fā)明采用移位放大的方法來(lái)將浮點(diǎn)運(yùn)算轉(zhuǎn)變成定點(diǎn)計(jì)算,在保證不會(huì)溢出的情況下盡可能地取得較高的精度。采用的步驟如圖3所示,但這里的預(yù)加重、漢明窗、FFT、Mel濾波以及DCT(離散余弦變換)都是定點(diǎn)計(jì)算。
為了減少定點(diǎn)計(jì)算對(duì)精度的影響,利用FFT的性質(zhì)FFT(ax)=a*FFT(x),先將語(yǔ)音放大一定倍數(shù)后進(jìn)行預(yù)加重、漢明窗計(jì)算以保證語(yǔ)音在進(jìn)入FFT前語(yǔ)音的最大值接近16bit整數(shù)的最大值,具體對(duì)每幀語(yǔ)音,放大倍數(shù)是變化的,幅度小的語(yǔ)音放大倍數(shù)就大,幅度大的語(yǔ)音放大倍數(shù)就小這樣保證在計(jì)算沒(méi)有溢出的情況下,使由于定點(diǎn)FFT計(jì)算舍去小數(shù)帶來(lái)的誤差達(dá)到最小。預(yù)加重,漢明窗計(jì)算時(shí)將預(yù)加重系數(shù)和漢明窗系數(shù)移位變成16bit的整數(shù),將浮點(diǎn)運(yùn)算轉(zhuǎn)化成整數(shù)運(yùn)算,F(xiàn)FT采用16bit整數(shù)定點(diǎn)FFT算法,后面取對(duì)數(shù)計(jì)算將放大的倍數(shù)變成加一個(gè)常數(shù),經(jīng)過(guò)DCT變換后,對(duì)語(yǔ)音放大一定倍數(shù)對(duì)特征的計(jì)算結(jié)果沒(méi)有影響。DCT變換系數(shù)也是經(jīng)過(guò)預(yù)先計(jì)算后放大處理,使DCT變換也是定點(diǎn)計(jì)算。這樣取對(duì)數(shù)計(jì)算外,其它步驟都是定點(diǎn)計(jì)算。經(jīng)過(guò)這樣的處理后,計(jì)算速度有大幅度的提高,采用MFCC譜定點(diǎn)實(shí)現(xiàn)其特征提取時(shí)間在掌上電腦上約為0.20倍實(shí)時(shí),這為整個(gè)識(shí)別器在掌上電腦上的實(shí)現(xiàn)創(chuàng)造了條件。
●聲學(xué)模型在連續(xù)語(yǔ)音流中,一連串的語(yǔ)音緊密連接,發(fā)音部位和發(fā)音方法不斷變化,從而產(chǎn)生音變、吞音等協(xié)同發(fā)音現(xiàn)象,相鄰音素之間的影響非常嚴(yán)重。為了提高聲學(xué)模型的準(zhǔn)確性,在建模時(shí)必須考慮上下文的影響,常用的建模單元有聲韻母,音節(jié)和整詞。由于聲韻母的數(shù)目較少,在建立上下文相關(guān)聲學(xué)模型時(shí)能夠得到有效的訓(xùn)練。這里我們選用聲韻母為建模單元,建立上下文相關(guān)的三音子隱馬爾可夫模型。
有兩種設(shè)計(jì)三音子模型的方法,決策樹(shù)和聚類方法。這兩種方法都是數(shù)據(jù)驅(qū)動(dòng),不同的是,基于決策樹(shù)的方法是“從上到下”,數(shù)據(jù)按照有關(guān)上下文的問(wèn)題進(jìn)行分裂;而聚類方法是“從下到上”,按照一定的原則將某些上下文的數(shù)據(jù)合并。聚類方法不能建模訓(xùn)練數(shù)據(jù)中沒(méi)有出現(xiàn)的三音子,對(duì)此往往采用Back-off方法,用上下文無(wú)關(guān)的模型來(lái)代替,這將大大影響識(shí)別器的性能。而決策樹(shù)方法是基于數(shù)據(jù)驅(qū)動(dòng)和專家知識(shí)引導(dǎo)的分類法,其基本思想是首先根據(jù)專家知識(shí)精心設(shè)計(jì)問(wèn)題集,選擇相似度度量以及決策樹(shù)停止分裂準(zhǔn)則,在決策樹(shù)每次分裂時(shí)都要從問(wèn)題集中選擇一個(gè)最優(yōu)問(wèn)題(及根據(jù)該問(wèn)題分裂時(shí)所獲得的相似度的增加值最大),并按該問(wèn)題進(jìn)行分裂。基于決策樹(shù)理論的分類方法具有如下優(yōu)點(diǎn)1)專家知識(shí)的引導(dǎo)語(yǔ)音學(xué)和語(yǔ)言學(xué)知識(shí)可以很方便地與模型的分類過(guò)程集成在一起,可以保證聲學(xué)模型的準(zhǔn)確性。2)數(shù)據(jù)驅(qū)動(dòng)分類的數(shù)目可以根據(jù)數(shù)據(jù)的多少以及預(yù)先設(shè)定的門限確定,聲學(xué)模型的大小可以按要求調(diào)整。3)預(yù)測(cè)能力可以預(yù)測(cè)到訓(xùn)練語(yǔ)音庫(kù)中看不到的三音子,對(duì)于這樣的三音子仍然可以通過(guò)遍歷決策樹(shù)找到與之匹配的模型,因此提高了數(shù)據(jù)庫(kù)中沒(méi)有樣本或樣本很少的三音子模型的準(zhǔn)確度。
該識(shí)別引擎的聲學(xué)模型是基于決策樹(shù)的三音子模型,其基本建模單元為聲母和韻母,根據(jù)上下文的影響建立決策樹(shù)。由于掌上電腦的內(nèi)存有限,所以只考慮上下文沒(méi)有考慮音調(diào)的影響,在決策的時(shí)候控制分裂條件,三音子模型數(shù)量與概率密度函數(shù)為800左右,每個(gè)概率密度函數(shù)由多個(gè)個(gè)混合高斯密度函數(shù)組成,聲學(xué)模型的大小約為500Kbytes,對(duì)男女分別建立基于決策樹(shù)的聲學(xué)模型。
●搜索及其概率計(jì)算的定點(diǎn)實(shí)現(xiàn)搜索算法采用詞樹(shù)引導(dǎo)的幀同步的束搜索算法(Beam-ViterbiSearch),首先根據(jù)識(shí)別詞典建立基于聲韻母的詞樹(shù),該詞樹(shù)的根節(jié)點(diǎn)為靜音模型,每個(gè)葉節(jié)點(diǎn)對(duì)應(yīng)一個(gè)詞的結(jié)束,從根節(jié)點(diǎn)到每個(gè)葉節(jié)點(diǎn)的路徑對(duì)應(yīng)于該葉節(jié)點(diǎn)所指詞的聲韻母。搜索過(guò)程就是在由識(shí)別詞典所生成的詞樹(shù)上進(jìn)行擴(kuò)展,搜索到某個(gè)葉節(jié)點(diǎn)其總的概率得分表示該葉節(jié)點(diǎn)所指詞產(chǎn)生這些特征的概率。搜索完成后能夠根據(jù)結(jié)束葉節(jié)點(diǎn)的數(shù)目及其概率得分能回溯出多個(gè)候選詞,可以根據(jù)用戶要求輸出需要的識(shí)別結(jié)果(一個(gè)或多個(gè)識(shí)別結(jié)果)。
其中在搜索過(guò)程中包含浮點(diǎn)計(jì)算的是概率密度函數(shù)的概率計(jì)算,傳統(tǒng)的方法如公式A所示,要計(jì)算多個(gè)聚類中心的概率并且還要進(jìn)行對(duì)數(shù)計(jì)算和指數(shù)計(jì)算。我們改進(jìn)的基本思想是移位放大的方法將浮點(diǎn)計(jì)算改為定點(diǎn)計(jì)算,將概率計(jì)算公式進(jìn)行簡(jiǎn)化,把必須的浮點(diǎn)計(jì)算在PC機(jī)上預(yù)先計(jì)算,在識(shí)別的過(guò)程中只進(jìn)行部分定點(diǎn)計(jì)算,具體做法如公式B所示。 A傳統(tǒng)方法計(jì)算某一幀特征的輸出概率 B改進(jìn)方法計(jì)算某一幀特征的輸出概率其中j為0,1,2,...,n-1中的某個(gè)數(shù),通過(guò)建立碼本確定,Aij=log(Cij(2π)d/2|Σij|1/2)]]>可以在PC機(jī)器上預(yù)先計(jì)算,這里的ot,uij,∑都經(jīng)過(guò)移位放大處理,進(jìn)行的是定點(diǎn)計(jì)算。具體推導(dǎo)過(guò)程如下
搜索的實(shí)質(zhì)是根據(jù)一個(gè)語(yǔ)音序列,根據(jù)最大后驗(yàn)概率準(zhǔn)則,找到詞序列,它產(chǎn)生該特征序列的概率最大,即W^=argmwaxP(W|O)----(1)]]>這里本識(shí)別器為孤立詞識(shí)別,也就是根據(jù)最大后驗(yàn)概率準(zhǔn)則,從識(shí)別辭典中找到某詞,其產(chǎn)生該特征序列的概率最大。上式中P(W|O)表示特征序列O產(chǎn)生詞W的概率,由于不能直接計(jì)算這個(gè)后驗(yàn)概率,根據(jù)貝葉斯公式,并考慮到P(O)不依賴于詞W,且在孤立詞識(shí)別中P(W)也無(wú)法預(yù)先確定,所以1式可以變?yōu)閃^=argmwaxP(W|O)]]>=argmwaxP(O|W)P(W)P(O)]]>∝argmwaxP(O|W)----(2)]]>上式中P(O|W)表示某詞產(chǎn)生特征序列O的先驗(yàn)概率,可以由聲學(xué)模型計(jì)算得到。為了計(jì)算的方便以及防止計(jì)算過(guò)程中數(shù)據(jù)的溢出,我們一般在對(duì)數(shù)域中進(jìn)行計(jì)算,因此2式可以變?yōu)閃^=argmwax[log(P(O|W))]----(3)]]>我們把所有可能的HMM狀態(tài)序列構(gòu)成的空間表示出來(lái),搜索空間就是在HMM狀態(tài)空間中找出最優(yōu)的狀態(tài)序列,并進(jìn)一步映射到詞。對(duì)每一幀特征向量,其由某個(gè)馬爾可夫模型的某個(gè)狀態(tài)產(chǎn)生的概率為(這里每個(gè)概率密度函數(shù)由n個(gè)混合高斯密度函數(shù)組成)bi(o‾t)=Σj=0nCijN(o‾t,u‾ij,Σij)----(4)]]>其中N(o‾t,u‾ij,Σij)=1(2π)d/2|Σij|1/2exp(-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij))----(5)]]>在對(duì)數(shù)域中計(jì)算則,log(bi(o‾t))=log(Σj=0nCij1(2π)d/2|Σij|1/2exp(-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij)))----(6)]]>為了將概率密度函數(shù)由浮點(diǎn)運(yùn)算改為定點(diǎn)運(yùn)算,除了將ot,uij,∑ij進(jìn)行移位放大以外,這里將上述公式改寫(xiě)為bi(o‾t)=MAXj=0n{CijN(o‾t,u‾ij,Σij)}----(7)]]>這樣在對(duì)數(shù)域計(jì)算某一幀由某個(gè)HMM的某個(gè)狀態(tài)產(chǎn)生的概率為log(bi(o‾t))=MAXj=0n{log[CijN(o‾t,u‾ij,Σij)]}]]>=MAXj=0n{log[Cij(2π)d/2|Σij|1/2]-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij)}----(8)]]>經(jīng)過(guò)這樣的簡(jiǎn)化處理,將上式中第一項(xiàng)取對(duì)數(shù)運(yùn)算預(yù)先在PC機(jī)上計(jì)算保存在聲學(xué)模型參數(shù)中,在實(shí)際識(shí)別搜索時(shí)只有第二項(xiàng)整數(shù)運(yùn)算。可以通過(guò)建立碼本,進(jìn)行快速計(jì)算只計(jì)算距離該幀最近的一個(gè)聚類中心的概率。
權(quán)利要求
1.一種掌上電腦非特定人語(yǔ)音識(shí)別方法,包括語(yǔ)音訓(xùn)練過(guò)程和語(yǔ)音識(shí)別過(guò)程,其特征在于所述的語(yǔ)音識(shí)別過(guò)程包括步驟對(duì)特征MFCC進(jìn)行定點(diǎn)計(jì)算;對(duì)搜索過(guò)程中概率密度函數(shù)進(jìn)行定點(diǎn)計(jì)算。
2.按權(quán)利要求1所述的方法,其特征在于所述的特征MFCC定點(diǎn)計(jì)算包括步驟將語(yǔ)音放大;進(jìn)行預(yù)加重、漢明窗計(jì)算,以保證語(yǔ)音在進(jìn)入FFT前語(yǔ)音的最大值接近16bit整數(shù)的最大值;FFT采用16bit整數(shù)定點(diǎn)FFT算法;進(jìn)行浮點(diǎn)計(jì)算的對(duì)數(shù)計(jì)算將放大的倍數(shù)變成加一個(gè)常數(shù);進(jìn)行DCT變換。
3.按權(quán)利要求2所述的方法,其特征在于所述的語(yǔ)音放大滿足如下條件在計(jì)算沒(méi)有溢出的情況下,幅度小的語(yǔ)音放大倍數(shù)大,幅度大的語(yǔ)音放大倍數(shù)小。
4.按權(quán)利要求2所述的方法,其特征在于所述的放大語(yǔ)音利用FFT性質(zhì);FFT(ax)=a*FFT(x)。
5.按權(quán)利要求1所述的方法,其特征在于所述的對(duì)搜索過(guò)程中概率密度函數(shù)進(jìn)行定點(diǎn)計(jì)算按下式計(jì)算
全文摘要
一種掌上電腦非特定人語(yǔ)音識(shí)別方法,包括語(yǔ)音訓(xùn)練過(guò)程和語(yǔ)音識(shí)別過(guò)程,語(yǔ)音識(shí)別過(guò)程包括步驟對(duì)特征MFCC進(jìn)行定點(diǎn)計(jì)算;對(duì)搜索過(guò)程中概率密度函數(shù)進(jìn)行定點(diǎn)計(jì)算。經(jīng)過(guò)本發(fā)明的簡(jiǎn)化處理,識(shí)別率的變化小于0.2%,但是識(shí)別速度提高三十倍以上。在不作概率密度函數(shù)定點(diǎn)實(shí)現(xiàn)以前識(shí)別一個(gè)詞需要的時(shí)間超過(guò)四十秒,經(jīng)過(guò)簡(jiǎn)化處理后識(shí)別一個(gè)詞的時(shí)間小于1.5秒,基本上達(dá)到實(shí)時(shí)要求。
文檔編號(hào)G06F15/02GK1427368SQ01144549
公開(kāi)日2003年7月2日 申請(qǐng)日期2001年12月19日 優(yōu)先權(quán)日2001年12月19日
發(fā)明者陳振標(biāo), 徐波 申請(qǐng)人:中國(guó)科學(xué)院自動(dòng)化研究所