馬志強(qiáng),李圖雅,楊雙濤,張力
(內(nèi)蒙古工業(yè)大學(xué) 數(shù)據(jù)科學(xué)與應(yīng)用學(xué)院,內(nèi)蒙古 呼和浩特 010080)
典型的大詞匯量連續(xù)語(yǔ)音識(shí)別系統(tǒng)(large vocabulary continuous speech recognition,LVCSR)由特征提取、聲學(xué)模型、語(yǔ)言模型和解碼器等組成。聲學(xué)模型是語(yǔ)音識(shí)別系統(tǒng)的核心組成部分,基于GMM和HMM模型構(gòu)建的GMM-HMM聲學(xué)模型[1]一度是大詞匯量連續(xù)語(yǔ)音識(shí)別系統(tǒng)中應(yīng)用最廣的聲學(xué)模型。在GMM-HMM模型中,GMM模型對(duì)語(yǔ)音特征向量進(jìn)行概率建模,然后通過(guò)EM算法生成語(yǔ)音觀察特征的最大化概率,當(dāng)混合高斯分布數(shù)目足夠多時(shí),GMM可以充分?jǐn)M合聲學(xué)特征的概率分布,HMM模型根據(jù)GMM擬合的觀察狀態(tài)生成語(yǔ)音的時(shí)序狀態(tài)[2-3]。當(dāng)采用GMM混合高斯模型的概率來(lái)描述語(yǔ)音數(shù)據(jù)分布時(shí),GMM模型本質(zhì)上屬于淺層模型,并在擬合聲學(xué)特征分布時(shí)對(duì)特征之間進(jìn)行了獨(dú)立性的假設(shè),因此無(wú)法充分描述聲學(xué)特征的狀態(tài)空間分布;同時(shí),GMM建模的特征維數(shù)一般是幾十維,不能充分描述聲學(xué)特征之間的相關(guān)性,模型表達(dá)能力有限。因此,在20世紀(jì)80年代利用神經(jīng)網(wǎng)絡(luò)和HMM模型構(gòu)建聲學(xué)模型的研究開(kāi)始出現(xiàn),但是,當(dāng)時(shí)計(jì)算機(jī)計(jì)算能力不足且缺乏足夠的訓(xùn)練數(shù)據(jù),模型的效果不及GMM-HMM[4-5]。2010年微軟亞洲研究院的鄧力與Hinton小組針對(duì)大規(guī)模連續(xù)語(yǔ)音識(shí)別任務(wù)提出了CD-DBN-HMM的混合聲學(xué)模型框架[6],并進(jìn)行了相關(guān)實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,相比GMM-HMM聲學(xué)模型,采用CD-DBN-HMM聲學(xué)模型使語(yǔ)音識(shí)別系統(tǒng)識(shí)別正確率提高了30%左右,CD-DBN-HMM混合聲學(xué)模型框架的提出徹底革新了語(yǔ)音識(shí)別原有的聲學(xué)模型框架。與傳統(tǒng)的高斯混合模型相比,深度神經(jīng)網(wǎng)絡(luò)屬于深度模型,能夠更好地表示復(fù)雜非線性函數(shù),更能捕捉語(yǔ)音特征向量之間的相關(guān)性,易于取得更好的建模效果[7-12]。蒙古語(yǔ)語(yǔ)音識(shí)別研究主要借鑒了英語(yǔ)、漢語(yǔ)以及其他少數(shù)民族語(yǔ)言,在語(yǔ)音識(shí)別研究上取得了成果,因此蒙古語(yǔ)聲學(xué)模型建模過(guò)程主要以GMM-HMM模型為基礎(chǔ)開(kāi)展研究,也取得了一定的研究成果[13-16]。在特征學(xué)習(xí)方面DNN模型比GMM模型具有更大的優(yōu)勢(shì),所以本文用DNN模型代替了GMM模型來(lái)完成蒙古語(yǔ)聲學(xué)模型建模任務(wù)。
在語(yǔ)音識(shí)別領(lǐng)域內(nèi),DNN主要以兩種形式被應(yīng)用:直接作為聲學(xué)特征的提取模型,但是這種應(yīng)用方式仍需要借助GMM-HMM模型才能完成;將DNN與HMM隱馬爾科夫模型進(jìn)行結(jié)合,構(gòu)成混合模型結(jié)構(gòu),利用深度神經(jīng)網(wǎng)絡(luò)代替GMM高斯混合模型進(jìn)行聲學(xué)狀態(tài)輸出概率的計(jì)算[7-8]。與高斯混合模型相比,深度神經(jīng)網(wǎng)絡(luò)有著更強(qiáng)的學(xué)習(xí)能力和建模能力,能夠更好地捕捉聲學(xué)特征的內(nèi)在關(guān)系,有助于聲學(xué)模型性能的提升,所以本文通過(guò)使用深度神經(jīng)網(wǎng)絡(luò)模型對(duì)蒙古語(yǔ)聲學(xué)特征逐層提取,將分類與語(yǔ)音特征內(nèi)在結(jié)構(gòu)的學(xué)習(xí)進(jìn)行了緊密結(jié)合,有利于蒙古語(yǔ)語(yǔ)音識(shí)別系統(tǒng)正確率的提升。
DNN-HMM蒙古語(yǔ)聲學(xué)模型就是將深度神經(jīng)網(wǎng)絡(luò)技術(shù)應(yīng)用到蒙古語(yǔ)聲學(xué)模型中,用DNN深度神經(jīng)網(wǎng)絡(luò)代替GMM高斯混合模型,實(shí)現(xiàn)對(duì)蒙古語(yǔ)聲學(xué)狀態(tài)的后驗(yàn)概率估算。在給定蒙古語(yǔ)聲學(xué)特征序列的情況下,首先用DNN模型估算當(dāng)前特征屬于HMM狀態(tài)的概率,然后用HMM模型描述蒙古語(yǔ)語(yǔ)音信號(hào)的動(dòng)態(tài)變化,捕捉蒙古語(yǔ)語(yǔ)音信息的時(shí)序狀態(tài)信息。DNN-HMM蒙古語(yǔ)聲學(xué)模型結(jié)構(gòu)如圖1所示。
圖1 DNN-HMM蒙古語(yǔ)聲學(xué)模型Fig. 1 The Mongolian acoustic model based on DNNHMM.
在DNN-HMM蒙古語(yǔ)聲學(xué)模型中,DNN網(wǎng)絡(luò)是通過(guò)不斷地自下而上堆疊隱含層實(shí)現(xiàn)的。其中,S表示HMM模型中的隱含狀態(tài),A表示狀態(tài)轉(zhuǎn)移概率矩陣,L表示DNN深度神經(jīng)網(wǎng)絡(luò)的層數(shù)(隱含層為L(zhǎng)-1層, L0層 為輸入層, LL層為輸出層,DNN網(wǎng)絡(luò)共包含L+1層),W表示層之間的連接矩陣。DNNHMM蒙古語(yǔ)聲學(xué)模型在進(jìn)行蒙古語(yǔ)語(yǔ)音識(shí)別過(guò)程建模前,需要對(duì)DNN神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。在完成DNN神經(jīng)網(wǎng)絡(luò)的訓(xùn)練后,對(duì)蒙古語(yǔ)聲學(xué)模型的建模過(guò)程與GMM-HMM模型一致。
蒙古語(yǔ)聲學(xué)模型中的DNN網(wǎng)絡(luò)的訓(xùn)練分為預(yù)訓(xùn)練和調(diào)優(yōu)兩個(gè)階段。DNN的預(yù)訓(xùn)練就是對(duì)深度神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行初始化。通常,DNN深度神經(jīng)網(wǎng)絡(luò)的預(yù)訓(xùn)練方式分為生成式訓(xùn)練和判別式訓(xùn)練。逐層無(wú)監(jiān)督預(yù)訓(xùn)練算法就是使用無(wú)監(jiān)督學(xué)習(xí)方法對(duì)網(wǎng)絡(luò)的每一層進(jìn)行預(yù)訓(xùn)練,它屬于生成式訓(xùn)練算法[17]。在DNN-HMM蒙古語(yǔ)聲學(xué)模型預(yù)訓(xùn)練中,采用了逐層無(wú)監(jiān)督訓(xùn)練算法。
DNN模型是一個(gè)多層次的神經(jīng)網(wǎng)絡(luò),逐層無(wú)監(jiān)督預(yù)訓(xùn)練算法是對(duì)DNN的每一層進(jìn)行訓(xùn)練,而且每次只訓(xùn)練其中一層,其他層參數(shù)保持原來(lái)初始化參數(shù)不變,訓(xùn)練時(shí),對(duì)每一層的輸入和輸出誤差盡量減小,這樣就能夠保證每一層參數(shù)對(duì)于該層來(lái)說(shuō)都是最優(yōu)的。接下來(lái),將訓(xùn)練好的每一層的輸出數(shù)據(jù)作為下一層的輸入數(shù)據(jù),那么下一層輸入的數(shù)據(jù)就比直接訓(xùn)練時(shí)經(jīng)過(guò)多層神經(jīng)網(wǎng)絡(luò)輸入到下一層數(shù)據(jù)的誤差小得多,逐層無(wú)監(jiān)督預(yù)訓(xùn)練算法能夠保證每一層之間輸入輸出數(shù)據(jù)的誤差都相對(duì)較小。
具體訓(xùn)練過(guò)程如圖2所示,訓(xùn)練算法見(jiàn)算法1。
圖2 DNN-HMM蒙古語(yǔ)聲學(xué)模型預(yù)訓(xùn)練過(guò)程Fig. 2 The pre-training DNN-HMM process for Mongolian acoustic model.
算法1 逐層無(wú)監(jiān)督預(yù)訓(xùn)練算法
輸入 學(xué)習(xí)率α,最大迭代次數(shù)T,(需要訓(xùn)練的)層數(shù)L;各隱含層內(nèi)的隱單元個(gè)數(shù) N =n1,n2,···,nL;訓(xùn)練數(shù)據(jù)按mini-batch劃分后的序列 Xj,其中j =(1,2,···,Max),序列長(zhǎng)度Max。
輸出 鏈接權(quán)重 Wi, i =(1,2,···,L);偏執(zhí)向量bi,i=(0,1,···,L)。
1)初始化輸入層的偏執(zhí)向量;
2) For i in 1 to L do;
3)初始化 Wi=0, bi=0;
4) For t in 1 to T do;
5) For j in 1 to Max do;
6) mini-batch = Xj;
7) DNNUpdate (mini-batch, α, Wi, bi, bi?1);
8) End For;
9) End For;
10) End For;
其中DNNUpdate算法采用經(jīng)典的對(duì)比散度算法 (contrastive divergence,CD-K),具體見(jiàn)文獻(xiàn)[7]。
通過(guò)逐層無(wú)監(jiān)督預(yù)訓(xùn)練算法可以得到較好的神經(jīng)網(wǎng)絡(luò)初始化參數(shù),然后使用蒙古語(yǔ)標(biāo)注數(shù)據(jù)(即特征狀態(tài))通過(guò)BP(error back propagation)算法進(jìn)行有監(jiān)督的調(diào)優(yōu),最終得到可用于聲學(xué)狀態(tài)分類的DNN深度神經(jīng)網(wǎng)絡(luò)模型。有監(jiān)督的調(diào)優(yōu)算法采用隨機(jī)梯度下降算法進(jìn)行實(shí)現(xiàn),具體見(jiàn)算法2。
算法2 隨機(jī)梯度下降算法
輸入 訓(xùn)練集set,批量大小batch_size;學(xué)習(xí)率α,循環(huán)次數(shù)epoch。
輸出 模型參數(shù)weight。
1) weight←initWeight();
2) For j in 0 to epoch do;
3) batch←randomSelect(set, batch_size);
4) weight←getWeightFromMaster();
5) Δ W←miniGradient(batch, weight);
6) weight←weight- α * Δ W;
7) End for;
通過(guò)對(duì)DNN網(wǎng)絡(luò)的預(yù)訓(xùn)練和調(diào)優(yōu)后,可以利用DNN-HMM聲學(xué)模型對(duì)蒙古語(yǔ)語(yǔ)音數(shù)據(jù)進(jìn)行識(shí)別,具體的過(guò)程如下。
首先,根據(jù)輸入的蒙古語(yǔ)聲學(xué)特征向量,計(jì)算DNN深度神經(jīng)網(wǎng)絡(luò)前L層的輸出,即
式中: zα表示激勵(lì)向量, zα=Wαvα?1+bα且 zα∈ RNαX1;vα表 示 激 活 向 量 , vα∈ RNαX1;Wα表 示 權(quán) 重 矩 陣 ,α層的神經(jīng)節(jié)點(diǎn)個(gè)數(shù)且 Nα∈R; V0表示網(wǎng)絡(luò)的輸入特征, V0=o∈RN0X1。在DNN-HMM聲學(xué)模型中,輸入特征即為聲學(xué)特征向量。其中 N0=D表示輸入聲學(xué)特征向量的維度, f (·):RNαX1→ RNαX1表示激活函數(shù)對(duì)激勵(lì)向量的計(jì)算過(guò)程, f (·)表示激活函數(shù)。
然后,利用L層的softmax分類層計(jì)算當(dāng)前特征關(guān)于全部聲學(xué)狀態(tài)的后驗(yàn)概率,即當(dāng)前特征屬于各蒙古語(yǔ)聲學(xué)狀態(tài)的概率:
在DNN-HMM蒙古語(yǔ)聲學(xué)模型中,DNN深度神經(jīng)網(wǎng)絡(luò)用于估計(jì)每個(gè)HMM狀態(tài)的后驗(yàn)概率,所以DNN的輸出是按照HMM隱含狀態(tài)進(jìn)行分類輸出的,實(shí)質(zhì)上屬于多分類任務(wù),因此DNN的輸出層通常是softmax分類層。而且softmax分類層的神經(jīng)單元個(gè)數(shù)與HMM聲學(xué)模型中的隱含狀態(tài)個(gè)數(shù)相同。在式(2)中, i =1,2,···,C , 其中C 表示聲學(xué)模型的隱含狀態(tài)個(gè)數(shù),vi表 示softmax分類層第 i 個(gè)神經(jīng)單元的輸出,即輸入聲學(xué)特征向量O關(guān)于聲學(xué)模型第i個(gè)隱含狀態(tài)的后驗(yàn)概率。得到隱含狀態(tài)的后驗(yàn)概率后,利用維特比解碼算法進(jìn)行解碼得到最優(yōu)路徑。在直接解碼前需要根據(jù)貝葉斯公式,將各個(gè)狀態(tài)的后驗(yàn)概率除以其自身的先驗(yàn)概率,得到各狀態(tài)規(guī)整的似然值。隱含狀態(tài)的先驗(yàn)概率計(jì)算較為簡(jiǎn)單,僅通過(guò)計(jì)算各狀態(tài)對(duì)應(yīng)幀總數(shù)與全部聲學(xué)特征幀數(shù)的比值即可得到。
由于DNN模型在調(diào)優(yōu)時(shí)需要對(duì)齊的語(yǔ)音幀標(biāo)注數(shù)據(jù),同時(shí)標(biāo)注數(shù)據(jù)質(zhì)量往往影響DNN模型的性能,因此,在DNN網(wǎng)絡(luò)調(diào)優(yōu)階段,通過(guò)使用已訓(xùn)練好的GMM-HMM蒙古語(yǔ)聲學(xué)模型生成對(duì)齊的蒙古語(yǔ)語(yǔ)音特征標(biāo)注數(shù)據(jù)。
所以,DNN-HMM蒙古語(yǔ)聲學(xué)模型的訓(xùn)練過(guò)程為:首先訓(xùn)練GMM-HMM蒙古語(yǔ)聲學(xué)模型,得到對(duì)齊的蒙古語(yǔ)語(yǔ)音特征標(biāo)注數(shù)據(jù);然后在對(duì)齊語(yǔ)音特征數(shù)據(jù)的基礎(chǔ)上對(duì)深度神經(jīng)網(wǎng)絡(luò)(DNN)進(jìn)行訓(xùn)練和調(diào)優(yōu);最后根據(jù)得到的蒙古語(yǔ)語(yǔ)音觀察狀態(tài)再對(duì)隱馬爾科夫模型(HMM)進(jìn)行訓(xùn)練。具體見(jiàn)DNNHMM蒙古語(yǔ)聲學(xué)模型訓(xùn)練過(guò)程。
DNN-HMM蒙古語(yǔ)聲學(xué)模型訓(xùn)練過(guò)程:
輸入 蒙古語(yǔ)語(yǔ)料庫(kù)。
輸出 DNN-HMM聲學(xué)模型。
1)進(jìn)行GMM-HMM蒙古語(yǔ)聲學(xué)模型訓(xùn)練,得到一個(gè)最優(yōu)的GMM-HMM蒙古語(yǔ)語(yǔ)音識(shí)別系統(tǒng),用gmm-hmm表示。
2)利用維特比解碼算法解析gmm-hmm,對(duì)gmmhmm蒙古語(yǔ)聲學(xué)模型中的每一個(gè)senone進(jìn)行標(biāo)號(hào),得到senone_id。
3)利用gmm-hmm蒙古語(yǔ)聲學(xué)模型,將聲學(xué)狀態(tài)tri-phone映射到相應(yīng)的senone_id。
4)利用gmm-hmm蒙古語(yǔ)聲學(xué)模型初始化DNNHMM蒙古語(yǔ)聲學(xué)模型,主要是HMM隱馬爾科夫模型參數(shù)部分,最終得到dnn-hmm1模型。
5)利用蒙古語(yǔ)聲學(xué)特征文件預(yù)訓(xùn)練DNN深度神經(jīng)網(wǎng)絡(luò),得到ptdnn。
6)使用gmm-hmm蒙古語(yǔ)聲學(xué)模型,將蒙古語(yǔ)聲學(xué)特征數(shù)據(jù)進(jìn)行狀態(tài)級(jí)別的強(qiáng)制對(duì)齊,對(duì)齊結(jié)果為align-raw。
7)將align-raw的物理狀態(tài)轉(zhuǎn)換成senone_id,得到幀級(jí)別對(duì)齊的訓(xùn)練數(shù)據(jù)align-frame。
8)利用對(duì)齊數(shù)據(jù)align-data對(duì)ptdnn深度神經(jīng)網(wǎng)絡(luò)進(jìn)行有監(jiān)督地微調(diào),得到網(wǎng)絡(luò)模型dnn。
9)根據(jù)最大似然算法,利用dnn重新估計(jì)dnnhmm1中HMM模型轉(zhuǎn)移概率得到的網(wǎng)絡(luò)模型,用dnn-hmm2表示。
10)如果dnn和dnn-hmm2上測(cè)試集識(shí)別準(zhǔn)確率沒(méi)有提高,訓(xùn)練結(jié)束。否則,使用dnn-hmm2對(duì)訓(xùn)練數(shù)據(jù)再次進(jìn)行狀態(tài)級(jí)別對(duì)齊,執(zhí)行7)。
在訓(xùn)練過(guò)程中,首先訓(xùn)練一個(gè)最優(yōu)的GMM-HMM蒙古語(yǔ)語(yǔ)音識(shí)別數(shù)據(jù)準(zhǔn)備系統(tǒng),目的是為DNN的監(jiān)督調(diào)優(yōu)服務(wù)。在訓(xùn)練GMM-HMM蒙古語(yǔ)聲學(xué)模型時(shí),采用期望最大化算法進(jìn)行無(wú)監(jiān)督訓(xùn)練,避免了對(duì)標(biāo)注數(shù)據(jù)的要求;然后利用蒙古語(yǔ)聲學(xué)特征對(duì)深度神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練;在深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練的第二階段(即有監(jiān)督調(diào)優(yōu)階段),利用已訓(xùn)練的GMMHMM蒙古語(yǔ)聲學(xué)模型進(jìn)行語(yǔ)音特征到狀態(tài)的強(qiáng)制對(duì)齊,得到標(biāo)注數(shù)據(jù);最后利用標(biāo)注數(shù)據(jù)對(duì)DNN深度神經(jīng)網(wǎng)絡(luò)進(jìn)行有監(jiān)督的調(diào)優(yōu)。DNN深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練完成以后,根據(jù)DNN-HMM在測(cè)試集上的識(shí)別結(jié)果決定其下一步流程。
為了驗(yàn)證提出的DNN-HMM蒙古語(yǔ)聲學(xué)模型的有效性,設(shè)計(jì)了3組實(shí)驗(yàn)。在實(shí)驗(yàn)中,將未采用dropout技術(shù)的DNN-HMM聲學(xué)模型定義為DNNHMM,將采用dropout技術(shù)的DNN-HMM聲學(xué)模型定義為dropout-DNN-HMM。
1)開(kāi)展GMM-HMM、DNN-HMM蒙古語(yǔ)聲學(xué)模型建模實(shí)驗(yàn)研究,主要觀察不同聲學(xué)建模單元對(duì)聲學(xué)模型的性能影響,以及對(duì)比不同類型聲學(xué)模型對(duì)語(yǔ)音識(shí)別系統(tǒng)的影響。
2)通過(guò)構(gòu)建不同層數(shù)的深度網(wǎng)絡(luò)結(jié)構(gòu)的DNNHMM三音子蒙古語(yǔ)聲學(xué)模型,開(kāi)展層數(shù)對(duì)蒙古語(yǔ)聲學(xué)模型,以及對(duì)過(guò)擬合現(xiàn)象影響的實(shí)驗(yàn)研究。
3)在構(gòu)建DNN-HMM三音子蒙古語(yǔ)聲學(xué)模型時(shí),通過(guò)采用dropout技術(shù)開(kāi)展dropout技術(shù)對(duì)DNNHMM三音子蒙古語(yǔ)聲學(xué)模型過(guò)擬合現(xiàn)象影響的實(shí)驗(yàn)研究。
蒙古語(yǔ)語(yǔ)音識(shí)別的語(yǔ)料庫(kù)由310句蒙古語(yǔ)教學(xué)語(yǔ)音組成,共計(jì)2 291個(gè)蒙古語(yǔ)詞匯,命名為IMUT310語(yǔ)料庫(kù)。語(yǔ)料庫(kù)共由3部分組成:音頻文件、發(fā)音標(biāo)注以及相應(yīng)的蒙文文本。實(shí)驗(yàn)中,將IMUT310語(yǔ)料庫(kù)劃分成訓(xùn)練集和測(cè)試集兩部分,其中訓(xùn)練集為287句,測(cè)試集為23句。實(shí)驗(yàn)在Kaldi平臺(tái)上完成。Kaldi的具體實(shí)驗(yàn)環(huán)境配置如表1所示。
表1 實(shí)驗(yàn)環(huán)境Table 1 Experimental environment
實(shí)驗(yàn)過(guò)程中,蒙古語(yǔ)聲學(xué)特征采用MFCC聲學(xué)特征表示,共有39維數(shù)據(jù),其中前13維特征由12個(gè)倒譜特征和1個(gè)能量系數(shù)組成,后面的兩個(gè)13維特征是對(duì)前面13維特征的一階差分和二階差分。在提取蒙古語(yǔ)MFFC特征時(shí),幀窗口長(zhǎng)度為25 ms,幀移10 ms。對(duì)訓(xùn)練集和測(cè)試集分別進(jìn)行特征提取,全部語(yǔ)音數(shù)據(jù)共生成119 960個(gè)MFCC特征,其中訓(xùn)練數(shù)據(jù)生成的特征為112 535個(gè),測(cè)試數(shù)據(jù)生成的特征為7 425個(gè)。GMM-HMM聲學(xué)模型訓(xùn)練時(shí),蒙古語(yǔ)語(yǔ)音MFCC特征采用39維數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。單音子DNN-HMM實(shí)驗(yàn)時(shí),蒙古語(yǔ)MFCC語(yǔ)音特征為13維(不包括一、二階差分特征)。三音子DNN-HMM實(shí)驗(yàn)時(shí),蒙古語(yǔ)MFCC的特征為39維。
DNN網(wǎng)絡(luò)訓(xùn)練時(shí),特征提取采用上下文結(jié)合的辦法,即在當(dāng)前幀前后各取5幀來(lái)表示當(dāng)前幀的上下文環(huán)境,因此,在實(shí)驗(yàn)過(guò)程中,單音子DNN網(wǎng)絡(luò)的輸入節(jié)點(diǎn)數(shù)為143個(gè)(13×(5+1+5)),三音子DNN網(wǎng)絡(luò)的輸入節(jié)點(diǎn)數(shù)為429個(gè)(39×(5+1+5))。DNN網(wǎng)絡(luò)的輸出層節(jié)點(diǎn)為可觀察蒙古語(yǔ)語(yǔ)音音素個(gè)數(shù),根據(jù)語(yǔ)料庫(kù)標(biāo)注的標(biāo)準(zhǔn),輸出節(jié)點(diǎn)為27個(gè);DNN網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)數(shù)設(shè)定為1 024,調(diào)優(yōu)訓(xùn)練次數(shù)設(shè)定為60,初始學(xué)習(xí)率設(shè)定為0.015,最終學(xué)習(xí)率設(shè)定為0.002。
為了驗(yàn)證深度神經(jīng)網(wǎng)絡(luò)能夠更好地捕捉蒙古語(yǔ)語(yǔ)音的聲學(xué)特征,具備更好地建模能力。本文設(shè)計(jì)了4個(gè)實(shí)驗(yàn),分別是單音子GMM-HMM、三音子GMM-HMM、單音子DNN-HMM和三音子DNNHMM實(shí)驗(yàn)。采用3.2中的實(shí)驗(yàn)參數(shù)設(shè)置進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果數(shù)據(jù)見(jiàn)表2。
表2 GMM-HMM與DNN-HMM蒙古語(yǔ)聲學(xué)模型實(shí)驗(yàn)數(shù)據(jù)Table 2 The experimental data of Mongolian acoustic mode from GMM-HMM and DNN-HMM
從圖3(a)中可以發(fā)現(xiàn),相對(duì)于單音子GMMHMM蒙古語(yǔ)聲學(xué)模型,單音子DNN-HMM蒙古語(yǔ)聲學(xué)模型在訓(xùn)練集上的詞錯(cuò)誤率降低了8.84%,在測(cè)試集上的詞識(shí)別錯(cuò)誤率降低了11.14%;但是,對(duì)于三音子模型來(lái)說(shuō),三音子DNN-HMM蒙古語(yǔ)聲學(xué)模型比三音子GMM-HMM蒙古語(yǔ)聲學(xué)模型在訓(xùn)練集上的詞錯(cuò)誤率降低了1.33%,在測(cè)試集上的詞識(shí)別錯(cuò)誤率降低了7.5%。由圖3(b)發(fā)現(xiàn),單音子模型在訓(xùn)練集上的句識(shí)別錯(cuò)誤率降低了32.43%,在測(cè)試集上的句識(shí)別錯(cuò)誤率降低了17.88%;對(duì)于三音子模型來(lái)說(shuō),三音子DNN-HMM蒙古語(yǔ)聲學(xué)模型比三音子GMM-HMM蒙古語(yǔ)聲學(xué)模型在訓(xùn)練集上的句識(shí)別錯(cuò)誤率降低了19.3%,在測(cè)試集上的句識(shí)別錯(cuò)誤率降低了13.63%。
圖3 相對(duì)于GMM-HMM聲學(xué)模型的實(shí)驗(yàn)對(duì)比結(jié)果Fig. 3 The experimental results are compared with the GMM-HMM acoustic model
從以上分析可以得出:?jiǎn)我糇覦NN-HMM蒙古語(yǔ)聲學(xué)模型明顯優(yōu)于單音子GMM-HMM蒙古語(yǔ)聲學(xué)模型;對(duì)于三音子模型來(lái)說(shuō),三音子DNN-HMM蒙古語(yǔ)聲學(xué)模型比三音子GMM-HMM蒙古語(yǔ)聲學(xué)模型的識(shí)別率還要高。
另外,為了研究隱含層層數(shù)、dropout技術(shù)[18-20]對(duì)DNN-HMM三音子蒙古語(yǔ)聲學(xué)模型的影響,本文以未采用dropout技術(shù)的4層三音子DNN-HMM蒙古語(yǔ)聲學(xué)模型為基準(zhǔn)實(shí)驗(yàn),分別進(jìn)行了關(guān)于隱含層層數(shù)以及dropout技術(shù)的對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果數(shù)據(jù)見(jiàn)表3。
表3 三音子DNN-HMM聲學(xué)模型上dropout實(shí)驗(yàn)Table 3 Dropout experiment on Triphone DNN-HMM acoustic model
為了表示過(guò)擬合現(xiàn)象的程度,本文定義了一個(gè)模型的過(guò)擬合距離,在語(yǔ)音識(shí)別中,過(guò)擬合往往是通過(guò)訓(xùn)練集和測(cè)試集上的識(shí)別率來(lái)進(jìn)行判斷的,當(dāng)數(shù)據(jù)在訓(xùn)練集上的識(shí)別率很高,而在測(cè)試集上的識(shí)別率很低時(shí),那么,就表示該模型有著嚴(yán)重的過(guò)擬合現(xiàn)象,我們用模型在測(cè)試集上的評(píng)價(jià)指標(biāo)和模型在訓(xùn)練集上的評(píng)價(jià)指標(biāo)的差值的絕對(duì)值來(lái)表示過(guò)擬合現(xiàn)象的程度,所以,將它的計(jì)算公式定義為
從圖4深色部分中可以發(fā)現(xiàn),在未采用dropout技術(shù)訓(xùn)練得到的DNN-HMM蒙古語(yǔ)聲學(xué)模型中,當(dāng)隱含層網(wǎng)絡(luò)層數(shù)由4層增加至7層時(shí),對(duì)詞識(shí)別的過(guò)擬合距離從21.17%增長(zhǎng)到了54.81%;對(duì)句識(shí)別的過(guò)擬合距離從35.32%增長(zhǎng)到了80.72%。由此可以看出,隨著隱含層網(wǎng)絡(luò)層數(shù)的增加,模型的過(guò)擬合距離越來(lái)越大,過(guò)擬合距離的變大說(shuō)明DNN網(wǎng)絡(luò)構(gòu)建的蒙古語(yǔ)聲學(xué)模型已經(jīng)嚴(yán)重過(guò)擬合,那么,DNN-HMM的表現(xiàn)就會(huì)越來(lái)越差。
圖4 dropout技術(shù)和隱含層層數(shù)對(duì)DNN-HMM模型過(guò)擬合距離的影響Fig. 4 Influence of dropout technique and hidden layers on the over - fitting distance of DNN-HMM model
在圖4中,通過(guò)深淺兩種顏色的對(duì)比可以看出,采用dropout技術(shù)后,當(dāng)隱含層網(wǎng)絡(luò)層數(shù)由4層增加至7層時(shí),對(duì)詞識(shí)別的過(guò)擬合距離分別是21.43%、21.91%、24.07%和25.48%。而未采用dropout技術(shù),對(duì)詞識(shí)別的過(guò)擬合距離分別是21.17%、21.91%、42.38%、54.81%。由此可知,采用dropout技術(shù)后的過(guò)擬合距離要比未采用dropout技術(shù)后的過(guò)擬合距離小,這一點(diǎn),在對(duì)句識(shí)別的過(guò)擬合距離上同樣存在。所以,在加入了dropout技術(shù)后,有效地緩解了因隱含層數(shù)增加而導(dǎo)致的過(guò)擬合現(xiàn)象,從而提高了模型的識(shí)別性能。
在蒙古語(yǔ)語(yǔ)音識(shí)別聲學(xué)建模中,本文給出了DNN-HMM蒙古語(yǔ)聲學(xué)模型、無(wú)監(jiān)督與監(jiān)督算法相結(jié)合的蒙古語(yǔ)聲學(xué)模型的訓(xùn)練算法以及以GMMHMM為基礎(chǔ)的DNN-HMM蒙古語(yǔ)聲學(xué)模型的訓(xùn)練過(guò)程。在Kaldi實(shí)驗(yàn)平臺(tái)上使用小規(guī)模的蒙古語(yǔ)語(yǔ)音語(yǔ)料庫(kù)IMUT310開(kāi)展了實(shí)驗(yàn)研究,實(shí)驗(yàn)結(jié)果表明:1)在不同建模單元(單音子和三音子)下,DNN-HMM蒙古語(yǔ)聲學(xué)模型不論詞錯(cuò)誤率還是句錯(cuò)誤率都優(yōu)于GMM-HMM蒙古語(yǔ)聲學(xué)模型,具體表現(xiàn)為三音子DNN-HMM聲學(xué)模型比三音子GMM-HMM模型在測(cè)試集上的詞識(shí)別錯(cuò)誤率降低了7.5%,句識(shí)別錯(cuò)誤率降低了13.63%;2)在訓(xùn)練DNN-HMM三音子蒙古語(yǔ)聲學(xué)模型時(shí),加入dropout技術(shù)可以有效避免隨著隱含層層數(shù)增加帶來(lái)的過(guò)擬合影響。