作為國內智能語音與人工智能產(chǎn)業(yè)的領導者,科大訊飛一直引領中文語音識別技術不斷進步。去年12月21日,在北京國家會議中心召開的以“AI復 始,萬物更新”為主題的年度發(fā)布會上,科大訊飛提出了以前饋型序列記憶網(wǎng)絡(FSMN, Feed-forward Sequential Memory Network)為代表的新一代語音識別系統(tǒng),讓大家眼前一亮[1]。
通過進一步的研究,我們在FSMN的基礎之上,再次推出全新的語音識別框架,將語音識別問題創(chuàng)新性的重新定義為“看語譜圖”的問題,并通過引入圖像識別中主流的深度卷積神經(jīng)網(wǎng)絡(CNN, Convolutional Neural Network)實現(xiàn)了對語譜圖的全新解析,同時打破了傳統(tǒng)深度語音識別系統(tǒng)對DNN和RNN等網(wǎng)絡結構的依賴,最終將識別準確度提高到了新的高度。
今天我們將揭開它的神秘面紗。
FSMN我們在上一期文章中(請點擊閱讀原文)做了詳細的介紹,在這里我們簡單的回顧一下。
在 FSMN提出之前,學術界和工業(yè)界最好的語音識別系統(tǒng)采用的是雙向遞歸神經(jīng)網(wǎng)絡(BRNN, Bi-directional Recurrent Neural Network),這種網(wǎng)絡能夠對語音復雜的長時相關性進行建模,從而達到提高識別正確率的功效。但是雙向遞歸神經(jīng)網(wǎng)絡存在訓練復雜度高,訓練不穩(wěn)定以及解碼時延很高的問題,很難使用化。
FSMN的提出很好的解決了上述缺陷。FSMN通過在傳統(tǒng)DNN結構的隱層旁邊增 加一個”記憶模塊存“儲當前語音幀周邊的歷史信息和未來信息。FSMN的模型結構如圖(a)所示,圖(b)給出了FSMN的記憶模塊記憶當前語音幀左右 各1幀信息時的時序展開結構。由于FSMN的結構中不存在遞歸,可以避免RNN的不穩(wěn)定性,同時由于采用了記憶模塊可以很好的對語音的長時相關性進行建模。

FSMN的成功給了我們一個很好的啟發(fā):對語音的長時相關性建模并不需要觀察整個句子,也不一定需要使用遞歸結構,只要將足夠長的語音上下文信息進行良好的表達就可以對當前幀的決策提供足夠的幫助,而卷積神經(jīng)網(wǎng)絡CNN同樣可以做到這一點。
CNN早在2012年就被用于語音識別系統(tǒng),并且一直以來都有很多研究人員積極投身于基于CNN的語音識別系統(tǒng)的研究,但始終沒有大的突破。最主要的原因是他們沒有突破傳統(tǒng)前饋神經(jīng)網(wǎng)絡采用固定長度的幀拼接作為輸入的思維定式,從而無法看到足夠長的語音上下文信息。另外一個缺陷是他們只是將CNN視作一種特征提 取器,因此所用的卷積層數(shù)很少,一般只有一到二層,這樣的卷積網(wǎng)絡表達能力十分有限。
針對這些問題,結合研發(fā)FSMN時的經(jīng)驗,我們推出了全新的深度全序 列卷積神經(jīng)網(wǎng)絡(Deep Fully Convolutional Neural Network, DFCNN)語音識別框架,使用大量的卷積層直接對整句語音信號進行建模,更好的表達了語音的長時相關性,比學術界和工業(yè)界最好的雙向RNN語音識別系統(tǒng) 識別率提升了15%以上。下面我們具體介紹一下DFCNN語音識別框架。
DFCNN的結構如圖(c)所 示,DFCNN直接將一句語音轉化成一張圖像作為輸入,即先對每幀語音進行傅里葉變換,再將時間和頻率作為圖像的兩個維度,然后通過非常多的卷積層和池化 (pooling)層的組合,對整句語音進行建模,輸出單元直接與最終的識別結果比如音節(jié)或者漢字相對應。
DFCNN的工作機理儼然像是一位德高望重的語音學專家,通過“觀看”語譜圖即可知道語音中表達的內容。對于很多讀者來說,乍一聽可能以為是在寫科幻小說,但聽完我們下面的分析之后相信大家都會覺得這種架構是那么的自然。

圖(c):DFCNN結構圖
首先,從輸入端來看,傳統(tǒng)語音特征在傅里葉變換之后使用各種人工設計的濾波器組 來提取特征,造成了頻域上的信息損失,在高頻區(qū)域的信息損失尤為明顯,而且傳統(tǒng)語音特征為了計算量的考慮必須采用非常大的幀移,無疑的造成了時域上的信息損失,在說話人語速較快的時候表現(xiàn)的更為突出。因此DFCNN直接將語譜圖作為輸入,相比其他以傳統(tǒng)語音特征作為輸入的語音識別框架相比具有天然的優(yōu)勢。
其次,從模型結構上來看,DFCNN與傳統(tǒng)語音識別中的CNN做法不 同,它借鑒了圖像識別中效果最好的網(wǎng)絡配置,每個卷積層使用3x3的小卷積核,并在多個卷積層之后再加上池化層,這樣大大增強了CNN的表達能力,與此同時,通過累積非常多的這種卷積池化層對,DFCNN可以看到非常長的歷史和未來信息,有這兩點就保證了DFCNN可以出色的表達語音的長時相關性,相比 RNN網(wǎng)絡結構在魯棒性上反而更加出色。
最后,從輸出端來看,DFCNN還可以和近期很熱的序列短時分類(CTC)方案完美結合以實現(xiàn)整個模型的端到端訓 練,且其包含的池化層等特殊結構可以使得以上端到端訓練變得更加穩(wěn)定。
在和其他多個技術點結合后,訊飛DFCNN的語音識別框架在內部數(shù)千小時的中文語音短信聽寫任務上,獲得了相比目前業(yè)界最好的語音識別框架——雙向RNN-CTC系統(tǒng)15%的性能提 升,同時結合訊飛的HPC平臺和多GPU并行加速技術,訓練速度也優(yōu)于傳統(tǒng)的雙向LSTM CTC系統(tǒng)。
DFCNN的提出開辟了語音識別新的一片天地,后續(xù)基于DFCNN框架,我們還將展開更多相關的研究工作,例如:雙向LSTM和DFCNN都 可以提供對長時歷史以及未來信息的表達,但是這兩種表達之間是否存在互補性,是值得思考的問題。
相信隨著研究的不斷深入,科大訊飛的語音識別系統(tǒng)將不斷攀登新的高峰!
【參考文獻】
[1] S. Zhang, C. Liu, H. Jiang, S. Wei, L. Dai, and Y. Hu, “Feedforward sequential memory networks: A new structure to learn long-term dependency,” arXiv preprint arXiv:1512.08301, 2015.