作為國(guó)內(nèi)智能語(yǔ)音與人工智能產(chǎn)業(yè)的領(lǐng)導(dǎo)者,科大訊飛一直引領(lǐng)中文語(yǔ)音識(shí)別技術(shù)不斷進(jìn)步。去年12月21日,在北京國(guó)家會(huì)議中心召開的以“AI復(fù) 始,萬(wàn)物更新”為主題的年度發(fā)布會(huì)上,科大訊飛提出了以前饋型序列記憶網(wǎng)絡(luò)(FSMN, Feed-forward Sequential Memory Network)為代表的新一代語(yǔ)音識(shí)別系統(tǒng),讓大家眼前一亮[1]。
通過進(jìn)一步的研究,我們?cè)贔SMN的基礎(chǔ)之上,再次推出全新的語(yǔ)音識(shí)別框架,將語(yǔ)音識(shí)別問題創(chuàng)新性的重新定義為“看語(yǔ)譜圖”的問題,并通過引入圖像識(shí)別中主流的深度卷積神經(jīng)網(wǎng)絡(luò)(CNN, Convolutional Neural Network)實(shí)現(xiàn)了對(duì)語(yǔ)譜圖的全新解析,同時(shí)打破了傳統(tǒng)深度語(yǔ)音識(shí)別系統(tǒng)對(duì)DNN和RNN等網(wǎng)絡(luò)結(jié)構(gòu)的依賴,最終將識(shí)別準(zhǔn)確度提高到了新的高度。
今天我們將揭開它的神秘面紗。
FSMN我們?cè)谏弦黄谖恼轮校ㄕ?qǐng)點(diǎn)擊閱讀原文)做了詳細(xì)的介紹,在這里我們簡(jiǎn)單的回顧一下。
在 FSMN提出之前,學(xué)術(shù)界和工業(yè)界最好的語(yǔ)音識(shí)別系統(tǒng)采用的是雙向遞歸神經(jīng)網(wǎng)絡(luò)(BRNN, Bi-directional Recurrent Neural Network),這種網(wǎng)絡(luò)能夠?qū)φZ(yǔ)音復(fù)雜的長(zhǎng)時(shí)相關(guān)性進(jìn)行建模,從而達(dá)到提高識(shí)別正確率的功效。但是雙向遞歸神經(jīng)網(wǎng)絡(luò)存在訓(xùn)練復(fù)雜度高,訓(xùn)練不穩(wěn)定以及解碼時(shí)延很高的問題,很難使用化。
FSMN的提出很好的解決了上述缺陷。FSMN通過在傳統(tǒng)DNN結(jié)構(gòu)的隱層旁邊增 加一個(gè)”記憶模塊存“儲(chǔ)當(dāng)前語(yǔ)音幀周邊的歷史信息和未來信息。FSMN的模型結(jié)構(gòu)如圖(a)所示,圖(b)給出了FSMN的記憶模塊記憶當(dāng)前語(yǔ)音幀左右 各1幀信息時(shí)的時(shí)序展開結(jié)構(gòu)。由于FSMN的結(jié)構(gòu)中不存在遞歸,可以避免RNN的不穩(wěn)定性,同時(shí)由于采用了記憶模塊可以很好的對(duì)語(yǔ)音的長(zhǎng)時(shí)相關(guān)性進(jìn)行建模。
FSMN的成功給了我們一個(gè)很好的啟發(fā):對(duì)語(yǔ)音的長(zhǎng)時(shí)相關(guān)性建模并不需要觀察整個(gè)句子,也不一定需要使用遞歸結(jié)構(gòu),只要將足夠長(zhǎng)的語(yǔ)音上下文信息進(jìn)行良好的表達(dá)就可以對(duì)當(dāng)前幀的決策提供足夠的幫助,而卷積神經(jīng)網(wǎng)絡(luò)CNN同樣可以做到這一點(diǎn)。
CNN早在2012年就被用于語(yǔ)音識(shí)別系統(tǒng),并且一直以來都有很多研究人員積極投身于基于CNN的語(yǔ)音識(shí)別系統(tǒng)的研究,但始終沒有大的突破。最主要的原因是他們沒有突破傳統(tǒng)前饋神經(jīng)網(wǎng)絡(luò)采用固定長(zhǎng)度的幀拼接作為輸入的思維定式,從而無(wú)法看到足夠長(zhǎng)的語(yǔ)音上下文信息。另外一個(gè)缺陷是他們只是將CNN視作一種特征提 取器,因此所用的卷積層數(shù)很少,一般只有一到二層,這樣的卷積網(wǎng)絡(luò)表達(dá)能力十分有限。
針對(duì)這些問題,結(jié)合研發(fā)FSMN時(shí)的經(jīng)驗(yàn),我們推出了全新的深度全序 列卷積神經(jīng)網(wǎng)絡(luò)(Deep Fully Convolutional Neural Network, DFCNN)語(yǔ)音識(shí)別框架,使用大量的卷積層直接對(duì)整句語(yǔ)音信號(hào)進(jìn)行建模,更好的表達(dá)了語(yǔ)音的長(zhǎng)時(shí)相關(guān)性,比學(xué)術(shù)界和工業(yè)界最好的雙向RNN語(yǔ)音識(shí)別系統(tǒng) 識(shí)別率提升了15%以上。下面我們具體介紹一下DFCNN語(yǔ)音識(shí)別框架。
DFCNN的結(jié)構(gòu)如圖(c)所 示,DFCNN直接將一句語(yǔ)音轉(zhuǎn)化成一張圖像作為輸入,即先對(duì)每幀語(yǔ)音進(jìn)行傅里葉變換,再將時(shí)間和頻率作為圖像的兩個(gè)維度,然后通過非常多的卷積層和池化 (pooling)層的組合,對(duì)整句語(yǔ)音進(jìn)行建模,輸出單元直接與最終的識(shí)別結(jié)果比如音節(jié)或者漢字相對(duì)應(yīng)。
DFCNN的工作機(jī)理儼然像是一位德高望重的語(yǔ)音學(xué)專家,通過“觀看”語(yǔ)譜圖即可知道語(yǔ)音中表達(dá)的內(nèi)容。對(duì)于很多讀者來說,乍一聽可能以為是在寫科幻小說,但聽完我們下面的分析之后相信大家都會(huì)覺得這種架構(gòu)是那么的自然。
圖(c):DFCNN結(jié)構(gòu)圖
首先,從輸入端來看,傳統(tǒng)語(yǔ)音特征在傅里葉變換之后使用各種人工設(shè)計(jì)的濾波器組 來提取特征,造成了頻域上的信息損失,在高頻區(qū)域的信息損失尤為明顯,而且傳統(tǒng)語(yǔ)音特征為了計(jì)算量的考慮必須采用非常大的幀移,無(wú)疑的造成了時(shí)域上的信息損失,在說話人語(yǔ)速較快的時(shí)候表現(xiàn)的更為突出。因此DFCNN直接將語(yǔ)譜圖作為輸入,相比其他以傳統(tǒng)語(yǔ)音特征作為輸入的語(yǔ)音識(shí)別框架相比具有天然的優(yōu)勢(shì)。
其次,從模型結(jié)構(gòu)上來看,DFCNN與傳統(tǒng)語(yǔ)音識(shí)別中的CNN做法不 同,它借鑒了圖像識(shí)別中效果最好的網(wǎng)絡(luò)配置,每個(gè)卷積層使用3x3的小卷積核,并在多個(gè)卷積層之后再加上池化層,這樣大大增強(qiáng)了CNN的表達(dá)能力,與此同時(shí),通過累積非常多的這種卷積池化層對(duì),DFCNN可以看到非常長(zhǎng)的歷史和未來信息,有這兩點(diǎn)就保證了DFCNN可以出色的表達(dá)語(yǔ)音的長(zhǎng)時(shí)相關(guān)性,相比 RNN網(wǎng)絡(luò)結(jié)構(gòu)在魯棒性上反而更加出色。
最后,從輸出端來看,DFCNN還可以和近期很熱的序列短時(shí)分類(CTC)方案完美結(jié)合以實(shí)現(xiàn)整個(gè)模型的端到端訓(xùn) 練,且其包含的池化層等特殊結(jié)構(gòu)可以使得以上端到端訓(xùn)練變得更加穩(wěn)定。
在和其他多個(gè)技術(shù)點(diǎn)結(jié)合后,訊飛DFCNN的語(yǔ)音識(shí)別框架在內(nèi)部數(shù)千小時(shí)的中文語(yǔ)音短信聽寫任務(wù)上,獲得了相比目前業(yè)界最好的語(yǔ)音識(shí)別框架——雙向RNN-CTC系統(tǒng)15%的性能提 升,同時(shí)結(jié)合訊飛的HPC平臺(tái)和多GPU并行加速技術(shù),訓(xùn)練速度也優(yōu)于傳統(tǒng)的雙向LSTM CTC系統(tǒng)。
DFCNN的提出開辟了語(yǔ)音識(shí)別新的一片天地,后續(xù)基于DFCNN框架,我們還將展開更多相關(guān)的研究工作,例如:雙向LSTM和DFCNN都 可以提供對(duì)長(zhǎng)時(shí)歷史以及未來信息的表達(dá),但是這兩種表達(dá)之間是否存在互補(bǔ)性,是值得思考的問題。
相信隨著研究的不斷深入,科大訊飛的語(yǔ)音識(shí)別系統(tǒng)將不斷攀登新的高峰!
【參考文獻(xiàn)】
[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.