語音識別,DFSMN-CTC-sMBR,端到端語音識別,在線中文語音識別,中英文混讀語音識別
導語:近年來,隨著深度學習和大數據的集合,基於深度神經網絡的語音識別系統成為主流。各種不同的神經網絡模型和優化函數的使用進一步極大提升了語音識別系統的性能,語音識別開始走向實用化。對於工業級應用的語音識別系統,不僅需要考慮系統的識別率,還需要考慮解碼效率,不同場合的解碼延遲等等。我們提出的DFSMN-CTC-sMBR語音識別系統,很好的兼顧了工業級應用所需要的這些需求。本文我們將解析DFSMN-CTC-sMBR聲學,以為我們針對中文識別和中英文混讀識別進行的一些探索。
正文:背景介紹語音識別系統包含4個要素:系統框架、聲學模型結構、聲學模型優化準則和訓練數據。2010年之前,主流的語音識別系統採用的是混合高斯模型和隱馬爾可夫模型(GaussianMixture Model-Hidden Markov Model,GMM-HMM)。隨著深度學習的興起,基於深度神經網絡的語音識別系統開始成為主流。其中早期採用的還是基於混合深度神經網絡和隱馬爾可夫(Neural Networks-Hidden Markov Model, NN-HMM)的框架。NN-HMM和GMM-HMM的區別在於,使用了具有更強非線性和長時相關建模能力的神經網絡模型用於語音的聲學特徵進行建模。近年來,端到端的語音識別(End-to-End ASR)受到越來越多的關注。現有的端到端語音識別主要分成兩類:1)基於CTC的端到端語音識別框架;2)基於Attention-Encoder-Decoder的端到端語音識別。對於NN-HMM和End-to-End 語音識別一個很重要的點就是神經網絡模型結構的選擇。最早採用的網絡結構是前饋全連接神經網路(Feedforward Fully-connected Neural Networks, FNN)。FNN實現固定輸入到固定輸出的一對一映射,其存在的缺陷是沒法有效利用語音信號內在的長時相關性信息。一種改進的方案是採用基於長短時記憶單元(Long-Short Term Memory,LSTM)的循環神經網絡(Recurrent Neural Networks,RNN)[1-2]。LSTM-RNN通過隱含層的循環反饋連接,可以將歷史信息存儲在隱含層的節點中,從而可以有效的利用語音信號的長時相關性。進一步的通過使用雙向循環神經網絡(BLSTM),可以有效的利用語音信號歷史以及未來的信息,更有利於語音的聲學建模。基於循環神經網絡的語音聲學模型相比於前饋全連接神經網絡可以獲得顯著的性能提升。但是循環神經網絡相比於前饋全連接神經網絡模型更加複雜,往往包含更多的參數,這會導致模型的訓練以及測試都需要更多的計算資源。另外基於雙向循環神經網絡的語音聲學模型,會面臨很大的時延問題,對於實時的語音識別任務不適用。基於此,一些前饋型的具有長時相關建模能力的網絡結構被提出,並且應用於語音識別,例如TDNN(Time Delay Neural Networks)[3-4],FSMN(FeedforwardSequential Memory Networks)[5], Transformer [6]等。選定了系統框架和模型結構以後,採用不同的優化準則對於識別系統的性能也具有很大影響。交叉熵(Cross-entropy, CE)準則是普遍採用的優化函數。通常基於CE優化的聲學模型可以進一步採用句子級別的區分性優化準則,例如MPE, sMBR進行進一步的優化。LF-MMI[7] 是目前開源工具KALDI裡主流的優化準則。進一步的對於端到端的語音識別,可以採用CTC準則以及其改進的Transducer。訓練數據是構建語音識別系統的另一個要素,不同的語種對應不同的識別系統,不同的訓練數據量對於識別系統的性能也具有顯著的影響。現有的語音識別系統通常是基於單一語種語料訓練的特定語種語音識別系統。隨著目前多語言交互的現象越來越頻繁,如何構建多語種和混合語種語音識別系統開始受到越來越多的關注,這其中中英混讀語音識別是一個熱門研究課題。 我們提出的DFSMN-CTC-sMBR語音識別系統,是在End-to-End框架下,結合DFSMN網絡結構和CTC-sMBR優化函數。本文我們先簡要回顧一下DFSMN模型,然後進一步介紹基於DFSMN-CTC-sMBR中文語音識別和通用中英文語音識別。其中表示第層記憶模塊第t個時刻的輸出。和分別表示歷史和未來時刻的編碼步幅因子,例如則表示對歷史信息進行編碼時每隔一個時刻取一個值作為輸入。這樣在相同的階數的情況下可以看到更遠的歷史,從而可以更加有效的對長時相關性進行建模。
對於工業級應用的實時語音識別,有幾個要素:1)模型的建模能力;2)系統的實時性;3)系統的解碼效率。DFSMN通過skip connection保證了模型具有很好的深度擴展能力,可以搭建數十層的網絡,從而保證了模型建模能力。對於實時的語音識別系統我們可以通過靈活的設置DFSMN記憶模塊的右看階數來控制模型的時延,在極端情況下,當我們將每個記憶模塊的右看階數都設置為0,則我們可以實現無時延的一個聲學模型。對於一些任務,我們可以忍受一定的時延,我們可以設置小一些的右看階數。同時DFSMN整體是類似於FNN的結構,所以本身具有計算效率相比於循環神經網絡就具有很明顯的優勢。此外我們在論文[9]中提出了將DFSMN和低幀率(Lower Frame Rate, LFR)相結合,提出了LFR-DFSMN聲學模型,可以進一步提升模型的解碼效率。
圖3 DFSMN-CTC-sMBR結構框圖
之前提出的FSMN,cFSMN和DFSMN採用的優化函數都是傳統的交叉熵(CE)和句子級的區分性優化準則sMBR。去年我們將DFSMN和CTC (Connectionist TemporalClassification)優化準則相結合,進一步提出了DFSMN-CTC-sMBR聲學模型[10-11]。CTC相比於傳統的CE準則,引入了blank輸出和不確定預測,這樣識別判決的時候不要求每一幀語音都有一個具有聲學含義的輸出,大量的語音幀會被判為blank,只有極少數的幀有聲學含義的輸出。從而使得模型解碼可以很快的進行路徑裁剪,具有很高的解碼效率。學術界主流的和CTC結合的網絡結構都是循環神經網絡(LSTM)或者雙向循環神經網絡(BLSTM)。BLSTM相比於LSTM可以獲得更好的性能,但是不適用於實時語音識別。我們提出的DFSMN-CTC模型由於可以靈活的控制時延,所以可以滿足實時語音識別的需求,同時可以獲得相比於LSTM明顯的性能提升。進一步的CTC優化的DFSMN模型,可以進一步採用區分性準則sMBR進行進一步的優化,在我們的工作中發現可以進一步獲得超過10%的相對性能提升。
圖4中文建模單元體系
將DFSMN-CTC-sMBR用於中文語音識別,一個很重要的點是中文建模單元的選擇。論文[11]中我們詳細研究了不同的聲學建模單元對於中文識別的影響。中文的漢字具有數十萬,常用的大概有5千,這樣採用字作為建模單元的話,沒法採用所有的字,不然會使得網絡輸出層佔用很大的計算量。所以目前業界通常採用的方式是只採用有限的常用字作為建模單元,這樣就使得系統會存在一些OOV問題。我們的研究中提出了兩種基於」字」的建模方案:
這兩種方式都可以有效的解決OOV問題。
我們在一個工業級的兩萬小時中文任務上驗證了不同系統的性能,結果如下表:
基於DFSMN-CTC-sMBR的識別系統相比於DFSMN-CE-sMBR系統可以獲得明顯的性能提升。同時,基於All-character的建模單元方案可以獲得最終的性能。圖5是不同系統的解碼實時率(Real Time Factor,RTF), CTC系統相比於CE系統可以獲得超過3倍的RTF下降。
圖5不同系統的解碼實時率(RTF)
基於DFSMN-CTC-sMBR的通用中英文語音識別現有的語音識別系統往往是針對單一語種訓練的,例如中文語音識別系統則很難識別英文。但是對於一些公眾場合的智能交互設備,可能存在不同的用戶會用不同的語言和設備進行交互。中英文混讀是一個常見的現象,例如「給我播放周杰倫的Now You See Me」。所以這就要求我們的識別系統需要能同時識別中文,英文,以及中文混讀。關於通用的中英文識別系統面臨很多難點:1)聲學建模單元如何選擇,以及如何保證聲學得分具有很強的區分性;2)如何有效建模兩個語種;3)如何去處理混讀部分語言模型的得分回退問題。針對這些難點,我們基於之前的工作積累,開創性的提出了如下的通用中英文識別系統構建方案[12]。
具體包含如下步驟:
1) 採用中文和英文語音語料先預訓練得到基於DFSMN-CTC-sMBR的中文識別系統和英文識別系統。其中中文建模單元採用我們提出的」All-character」方案,英文採用wordpiece[13]。
2) 採用中文和英文文本語料分別訓練一個中文和英文語言模型,同時進行插值得到一個混合的語言模型。
3) 利用預訓練的中文聲學模型和英文聲學模型初始化一個Bilingual-AM,然後採用兩個語料重新訓練這個新的Bilingual-AM。
我們的通用中英文語音識別系統相比於最優的中文識別系統和英文識別系統在不需要語種先驗信息的情況下,可以無損識別中文和英文。
結語結合DFSMN, CTC-sMBR和中文的特徵,我們構建了基於」All-character」的DFSMN-CTC-sMBR端到端中文識別系統。進一步以此為基礎,開創性的構建了一個高精度的通用中英文識別系統。往後我們將探索DFSMN在Attention-Encoder-Decoder框架下的使用,構建更為高效的端到端語音識別系統,
參考文獻[1] Hochreiter S,Schmidhuber J. Long short-term memory[J]. Neural computation, 1997, 9(8):1735-1780.[2] Sak H, Senior A, Beaufays F. Long short-termmemory recurrent neural network architectures for large scale acousticmodeling[C]//Fifteenth annual conference of the international speechcommunication association. 2014.[3] Waibel A,Hanazawa T, Hinton G, et al. Phoneme recognition using time-delay neural networks[J].IEEE transactions on acoustics, speech, and signal processing, 1989, 37(3):328-339.[4] Peddinti V,Povey D, Khudanpur S. A time delay neural network architecture for efficientmodeling of long temporal contexts[C]//Sixteenth Annual Conference of theInternational Speech Communication Association. 2015.[5] Zhang S, Liu C, Jiang H, et al. Feedforwardsequential memory networks: A new structure to learn long-term dependency[J].arXiv preprint arXiv:1512.08301, 2015.[6] Vaswani A,Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neuralinformation processing systems. 2017: 5998-6008.[7] Povey D,Peddinti V, Galvez D, et al. Purely sequence-trained neural networks for ASRbased on lattice-free MMI[C]//Interspeech. 2016: 2751-2755.[8] Zhang S, JiangH, Xiong S, et al. Compact Feedforward Sequential Memory Networks for LargeVocabulary Continuous Speech Recognition[C]//Interspeech. 2016: 3389-3393.[9] Zhang S, Lei M,Yan Z, et al. Deep-FSMN for large vocabulary continuous speechrecognition[C]//2018 IEEE International Conference on Acoustics, Speech andSignal Processing (ICASSP). IEEE, 2018: 5869-5873.[10] Zhang S L, Lei M. Acoustic Modeling with DFSMN-CTC and Joint CTC-CELearning[C]//Interspeech. 2018: 771-775.[11] Zhang S, Lei M, Liu Y, et al. Investigation of Modeling Units forMandarin Speech Recognition Using Dfsmn-ctc-smbr[C]//ICASSP 2019-2019 IEEEInternational Conference on Acoustics, Speech and Signal Processing (ICASSP).IEEE, 2019: 7085-7089.[12] Zhang S, Liu Y, Lei M, et al. TowardsLanguage-Universal Mandarin-English Speech Recognition[J]. Proc. Interspeech2019, 2019: 2170-2174.[13] Zenkel T, Sanabria R, Metze F, et al.Subword and crossword units for CTC acoustic models[J]. arXiv preprintarXiv:1712.06855, 2017.