居治華 劉罡 陳琦嵐 呂微 阮佳慧 武業(yè)皓
摘要:語音本身具有一定的上下文相關性,而傳統(tǒng)語音識別系統(tǒng)中的語言模型對歷史信息記憶能力不足,無法充分學習語音序列的相關性。為解決該問題,提出一種基于反向卷積的雙向長短時記憶(Bi-LSTM)網(wǎng)絡的語音識別方法,該模型在反向長短時記憶單元通路末端增加了一個卷積層,再經過兩個全連接層,最后通過分類器輸出識別結果。將該模型與目前主流的深度學習模型進行實驗對比,結果表明該模型能有效提高語音識別正確率。
關鍵詞:語音識別;雙向長短時記憶神經網(wǎng)絡;深度學習
DOI:10.11907/rjdk.173082
中圖分類號:TP301
文獻標識碼:A文章編號:1672-7800(2018)007-0027-04
Abstract:Thespeechitselfhasacertaindegreeofcontextualrelevance.However,thelanguagemodelinthetraditionalspeechrecognitionsystemisnotcapableofrememberinghistoricalinformationandcannotsufficientlylearntherelevanceofthespeechsequence.Tosolvethisproblem,thispaperproposesaspeechrecognitionmethodbasedonreverseconvolutionaryBidirectionalLongShortTermMemory(Bi-LSTM)network.Themodeladdsaconvolutionlayertotheendofthememorycellpathinthereversedirection,andthenpassesthroughtwofullyconnectedlayers.Finally,therecognitionresultisoutputtedthroughtheclassifier.Comparedwiththecurrentmainstreamdepthlearningmodel,thismodelcaneffectivelyimprovethespeechrecognitionaccuracy.
KeyWords:speechrecognition;bidirectionallongshort-termmemoryneuralnetwork;depthlearning
0引言
語音識別是將一段語音信號轉換成對應的文本信息或命令的技術。傳統(tǒng)的語音識別由信號處理及特征提取模塊、聲學模型、發(fā)音詞典、語言模型、解碼器所構成,常用方法有:動態(tài)時間規(guī)整(DynamicalTimeWarping,DTW)[1]、矢量量化(VectorQuantizization,VQ)[2]、隱馬爾科夫模型(HiddenMarkovModel,HMM)[3]等。
隨后發(fā)展的人工神經網(wǎng)絡也被應用于語音識別,但它與傳統(tǒng)語音識別方法不同,其本質上是一個自適應非線性動力學系統(tǒng),一般由神經元、訓練算法及網(wǎng)絡結構3大要素構成。人工神經網(wǎng)絡模型有反向傳播算法(BackPropagation,BP)[4]、最大熵法(LogisticsRegression,LR)[5]、Boosting算法[6]等。但這些都屬于淺層學習模型,例如,Boosting模型只有一層隱含層節(jié)點,LR沒有隱含層節(jié)點。淺層人工神經網(wǎng)絡模型存在著一些問題,例如,不能很好地解釋語音信號的時間動態(tài)特性;在訓練學習網(wǎng)絡模型時容易過擬合;調整模型參數(shù)較難,需要不少技巧和經驗。隨著深度學習概念[7]的提出,不少深度學習模型也被應用于語音識別中。深度學習是用多層非線性結構將低層特征變換成更加抽象的高層特征,通過逐層學習和特征變換,保留本質特征,從而提升分類或預測準確性[8]。目前主流的深度學習模型有循環(huán)神經網(wǎng)絡(RecurrentNeuralNetworks,RNN),其被應用于語音識別的聲學建模[9],但簡單的RNN存在梯度消失問題,歷史信息記憶能力不強。為解決該問題,研究人員提出基于長短時記憶單元(LongShort-TermMemory,LSTM)的遞歸結構[10],在此基礎上又提出雙向長短時記憶(BidirectionalLongShort-TermMemory,Bi-LSTM)網(wǎng)絡[11]。相比于LSTM模型,應用Bi-LSTM模型的語音識別正確率更高。
針對以上問題,本文提出一種基于反向卷積的Bi-LSTM模型用于英文數(shù)字語音識別,該神經網(wǎng)絡包含Bi-LSTM結構、卷積層、全連接層與分類器。該模型不僅繼承了Bi-LSTM結構可獲取語音特征序列上下文所含隱藏信息的能力,增加的卷積層還能提取出更抽象的語音特征向量,加速網(wǎng)絡計算過程。經過本文實驗驗證,與常見的深度學習模型相比,基于反向卷積的Bi-LSTM模型語音識別正確率與之相當或者更高。
1相關模型
1.1長短時記憶單元
循環(huán)神經網(wǎng)絡(RecurrentNeuralNetworks,RNN)不僅具有前向反饋神經網(wǎng)絡神經元信號,能向上一層傳播,還能夠有效利用上一時刻隱含層單元輸出的數(shù)據(jù)[12]。但RNN網(wǎng)絡在梯度后向傳播過程中會產生“梯度消失”問題,使網(wǎng)絡參數(shù)學習過程極為緩慢,即在實際中能獲取利用的歷史信息非常少。
為有效解決上述問題,Hochreiter等提出長短時記憶單元結構(LongShort-TermMemory,LSTM)。LSTM是一種時間遞歸神經網(wǎng)絡,能選擇性地記憶歷史信息。研究人員在RNN模型基礎上對其作進一步改進,即用如圖1所示的LSTM單元替換RNN網(wǎng)絡中的隱含層節(jié)點,則形成LSTM網(wǎng)絡。
LSTM單元的記憶單元(MemoryCell,Cell)狀態(tài)受到3個門控制,即輸入門(inputgate)、遺忘門(forgetgate)、輸出門(outputgate)。輸入門將當前數(shù)據(jù)選擇性地輸入到記憶單元;遺忘門調控歷史信息對當前記憶單元狀態(tài)值的影響;輸出門用于選擇性輸出記憶單元狀態(tài)值。3個門和獨立記憶單元的設計,使LSTM單元具有保存、讀取、重置及更新長距離歷史信息作用。在時刻t,Cell的狀態(tài)通過以下步驟進行更新:
1.2雙向長短時記憶
LSTM缺點是只能利用出現(xiàn)在當前節(jié)點之前的信息,而無法充分利用未來的信息。Bi-LSTM神經網(wǎng)絡能解決上述問題,如圖2所示,Bi-LSTM包括輸入層、前向傳遞層、后向傳遞層、輸出層。輸入層對應于序列向量,其主要構建了一個對齊的雙層模型,一層從右向左傳播,一層從左往右傳播;前向傳遞層節(jié)點連接輸入層節(jié)點和上一輸入的歷史狀態(tài);后向傳遞層節(jié)點同樣連接輸入層節(jié)點和同一層次上一時刻輸入的歷史狀態(tài)。其基本思想是利用兩個獨立的隱含層分別向前和向后捕獲上下文所含的隱藏特征信息,最后將兩個隱含層結果組成最終輸出。
2反向卷積Bi-LSTM模型
Bi-LSTM模型的結構和性能優(yōu)異,但語音識別正確率有待進一步提高。因此,本文對Bi-LSTM網(wǎng)絡模型進行改進,整體結構如圖3所示。第一部分是輸入層,輸入Mel頻率倒譜系數(shù)(MelFrequencyCepstrumCoefficient,MFCC)特征向量;第二部分是特征提取層,包含正向和反向LSTM結構,反向LSTM通路包含一個卷積層;第三部分是分類層,包含兩個全連接層、Softmax分類器。
Bi-LSTM層中包含一個正向LSTM和一個反向LSTM,正向LSTM用于捕獲語音特征向量上文信息,而反向LSTM捕獲語音特征向量下文信息,最后通過組合捕獲的語音上下文特征信息向量,獲取全局的上下文信息。一般以正向LSTM獲取的語音特征上文信息構成的輸出為準,在反向LSTM末端加卷積層是為了避免反向LSTM單元獲取的語音特征下文信息對輸出過多干擾,因為卷積層能提取出參數(shù)更少的特征向量。
反向卷積的Bi-LSTM模型語音識別整體流程如下:①首先通過語音預處理、特征提取模塊,從語音中提取出MFCC特征向量,將MFCC特征向量同時輸入到正向LSTM層和反向LSTM層;②MFCC特征向量經反向LSTM提取出與語音特征下文信息相關的參數(shù)向量,將其送入卷積層進行卷積運算;③將卷積層輸出的更為抽象的參數(shù)向量和正向LSTM層輸出的與語音特征上文相關的參數(shù)向量拼接成一個新的特征參數(shù)向量;④將新的特征參數(shù)向量送入兩個全連接層,達到參數(shù)優(yōu)化的效果;⑤將優(yōu)化后的特征向量送入Softmax分類器,分類識別后輸出分類標簽和識別正確率。
3實驗相關及結果分析
3.1實驗環(huán)境、數(shù)據(jù)集及評價指標
本實驗所有模型全部使用NVIDIAGeForceGTX1080顯卡進行訓練。實驗采用深度學習框架TensorFlow,其能對函數(shù)進行自動求導以及分布式計算,還用到一個名為tensorboard的可視化工具,啟動后可通過網(wǎng)頁觀察模型結構與訓練過程中各參數(shù)的變化。
實驗采用名為Spoken_Numbers的英文數(shù)字數(shù)據(jù)集,該數(shù)據(jù)集分為訓練集、測試集兩部分,分別由2400、450個wav格式的音頻文件組成,大小為470MB。音頻是由15人錄制的0~9英文數(shù)字語音。兩者統(tǒng)計信息如表1所示。
語音識別效果的評價指標采用詞識別錯誤率WER,為使識別出的詞序列與標準詞序列保持一致,需要進行替換、刪除或者插入某些詞,插入詞(Insertions)、替換詞(Substitutions)和刪除詞(Deletions)3者個數(shù)總和除以標準的詞序列中詞個數(shù)(TotalWordinCorrectTranscript)的百分比,即為WER,其計算公式如下:
3.2參數(shù)設置
在Bi-LSTM層,將正向和反向LSTM的隱含層節(jié)點數(shù)都設置為128。經過語音預處理并提取出80維MFCC特征向量后,將該特征向量同時送入正向和反向LSTM單元神經網(wǎng)絡通路中。其中Bi-LSTM層能將語音的MFCC特征向量序列化,并提取出語音前后相關的特征信息;而卷積層中采用的卷積核進行卷積運算能在輸入信號的每個位置疊加單位響應,得到輸出信號,即能使原語音信號特征增強,降低噪音。訓練中梯度下降函數(shù)采用批量梯度下降法,它使交叉熵損失函數(shù)的輸出值loss向當前點對應梯度的反方向不斷移動,從而降低loss。一次移動距離是由學習速率控制的,設置為0.0015。實驗對10個英文數(shù)字進行分類識別,因此式(8)中的類別k值設置為10。
3.3結果分析
圖4-圖6分別為LSTM模型、Bi-LSTM模型和反向卷積的Bi-LSTM模型在tensorboard中產生的loss圖,其中橫坐標step是訓練代數(shù),縱坐標loss是損失函數(shù)的輸出值。loss越高,表示預測值和目標值差異性越大。三者對比來看,0~2000代階段,反向卷積的Bi-LSTM模型loss下降速率最大,即lossfunction收斂速度最快;到5000代時,反向卷積Bi-LSTM模型的loss值最趨近0,即收斂效果最好。
3種模型的詞識別錯誤率如表2所示,WER越小,表示語音識別系統(tǒng)識別率越高。訓練時,反向卷積Bi-LSTM模型的WER相較于單向LSTM降低了4.96%,相較于Bi-LSTM模型降低了0.37%;測試時,反向卷積Bi-LSTM模型的WER相較于單向LSTM降低了612%,相較于Bi-LSTM模型降低了0.57%。實驗結果表明,基于反向卷積的Bi-LSTM模型詞識別錯誤率最低,有效提高了英文數(shù)字識別正確率。
4結語
本文通過對主流深度神經網(wǎng)絡模型的研究,發(fā)現(xiàn)傳統(tǒng)模型都存在一些問題,比如RNN模型存在梯度消失問題,不能保留長距離的歷史信息;LSTM模型僅在時序上處理序列,忽略了未來信息;應用于英文語音識別系統(tǒng)的Bi-LSTM模型能解決上述問題,其可以捕獲歷史信息,并充分獲取語音序列向量上下文相關性信息,但存在詞識別正確率不高、訓練時間較長的問題。因此,本文提出一種基于反向卷積的Bi-LSTM模型,即在反向LSTM通路末端加入卷積層,從而優(yōu)化并減少語音特征參數(shù),縮短訓練時間。實驗結果表明,基于反向卷積的Bi-LSTM模型能相對提高英文數(shù)字語音識別正確率。
然而,本文針對反向卷積的Bi-LSTM模型僅經過較小數(shù)據(jù)量的訓練和測試,其中還有許多理論和應用問題需要繼續(xù)深入探討。實驗中訓練使用的語音數(shù)據(jù)集僅為英文數(shù)字,要想取得更好的識別效果,應收集更多不同類型數(shù)據(jù)集作進一步探索。
參考文獻:
[1]呂釗.噪聲環(huán)境下的語音識別算法研究[D].合肥:安徽大學,2011.
[2]魏艷娜.語音識別的矢量量化技術研究[D].邯鄲:河北工程大學,2007.
[3]陳程.基于HMM的語音識別系統(tǒng)研究[D].長沙:中南大學,2008.
[4]陳碩.深度學習神經網(wǎng)絡在語音識別中的應用研究[D].廣州:華南理工大學,2013.
[5]周雅倩.最大熵方法及其在自然語言處理中的應用[D].上海:復旦大學,2005.
[6]SCHAPIRE,ROBERTE.Thestrengthofweaklearnability[J].Machinelearning,1990,5(2):197-227.
[7]HINTONGE,OSINDEROS,TEHYW.Afastlearningalgorithmfordeepbeliefnets[J].NeuralComputation,2006,18(7):1527-1554.
[8]DENGL.Anoverviewofdeep-structuredlearningforinformationprocessing[C].Xi′an:APSIPAASC,2011.
[9]GRAVESA,MOHAMEDA,HINTONG.Speechrecognitionwithdeeprecurrentneuralnetworks[C].InAcoustics,SpeechandSignalProcessing,2013IEEEInternationalConference,2013:6645-6649.
[10]HOCHREITERS,SCHMIDHUBERJ.Longshort-termmemory[J].NeuralComputation,1997,9(8):1735-1780.
[11]GRAVESA,SCHMIDHUBERJ.FramewisephonemeclassificationwithbidirectionalLSTMandotherneuralnetworkarchitectures[J].NeuralNetworks,2005,18(5):602-610.
[12]LEVYO,ZESCHT,DAGANI,etal.UKP-BIU:similarityandentailmentmetricsforstudentresponseanalysis[C].InSecondJointConferenceonLexicalandComputationalSemantics,2013:285-289.
(責任編輯:黃健)