作為國內(nèi)智能語音與人工智能產(chǎn)業(yè)領(lǐng)導(dǎo)者,科大訊飛在北京國家會議中心召開了以“AI復(fù)始,萬物更新”為主題的2015年年度發(fā)布會。在發(fā)布會上,科大訊飛介紹了訊飛超腦計劃的最新進(jìn)展,并發(fā)布了數(shù)款讓人印象深刻的創(chuàng)新型產(chǎn)品。特別值得一提的是,在發(fā)布會現(xiàn)場,科大訊飛全球首次將演講人的演講,同步轉(zhuǎn)寫成文字在大屏幕顯示,敢于接受現(xiàn)場數(shù)千參會者和數(shù)千萬觀看視頻直播觀眾的檢驗,系統(tǒng)的轉(zhuǎn)寫效果之好讓大家直呼驚艷。此次發(fā)布會轉(zhuǎn)寫系統(tǒng)就是依托于訊飛全球領(lǐng)先的中文語音識別系統(tǒng)。今天,我們就為大家從技術(shù)上揭秘科大訊飛的新一代語音識別系統(tǒng)。
劉慶峰董事長現(xiàn)場演講內(nèi)容同步轉(zhuǎn)寫成文字顯示在屏幕上
眾所周知,自2011年微軟研究院首次利用深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network, DNN)在大規(guī)模語音識別任務(wù)上獲得顯著效果提升以來,DNN在語音識別領(lǐng)域受到越來越多的關(guān)注,目前已經(jīng)成為主流語音識別系統(tǒng)的標(biāo)配。然而,更深入的研究成果表明,DNN結(jié)構(gòu)雖然具有很強的分類能力,但是其針對上下文時序信息的捕捉能力是較弱的,因此并不適合處理具有長時相關(guān)性的時序信號。而語音是一種各幀之間具有很強相關(guān)性的復(fù)雜時變信號,這種相關(guān)性主要體現(xiàn)在說話時的協(xié)同發(fā)音現(xiàn)象上,往往前后好幾個字對我們正要說的字都有影響,也就是語音的各幀之間具有長時相關(guān)性。
圖1:DNN和RNN示意圖
相比前饋型神經(jīng)網(wǎng)絡(luò)DNN,循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)在隱層上增加了一個反饋連接,也就是說,RNN隱層當(dāng)前時刻的輸入有一部分是前一時刻的隱層輸出,這使得RNN可以通過循環(huán)反饋連接看到前面所有時刻的信息,這賦予了RNN記憶功能,如圖1所示。這些特點使得RNN非常適合用于對時序信號的建模,在語音識別領(lǐng)域,RNN是一個近年來替換DNN的新的深度學(xué)習(xí)框架,而長短時記憶模塊(Long-Short Term Memory, LSTM)的引入解決了傳統(tǒng)簡單RNN梯度消失等問題,使得RNN框架可以在語音識別領(lǐng)域?qū)嵱没@得了超越DNN的效果,目前已經(jīng)在業(yè)界一些比較先進(jìn)的語音系統(tǒng)中使用。
除此之外,研究人員還在RNN的基礎(chǔ)上做了進(jìn)一步改進(jìn)工作,圖2是當(dāng)前語音識別中的主流RNN聲學(xué)模型框架,主要還包含兩部分:深層雙向LSTM RNN和CTC(Connectionist Temporal Classification)輸出層。其中雙向RNN對當(dāng)前語音幀進(jìn)行判斷時,不僅可以利用歷史的語音信息,還可以利用未來的語音信息,可以進(jìn)行更加準(zhǔn)確的決策;CTC使得訓(xùn)練過程無需幀級別的標(biāo)注,實現(xiàn)有效的“端對端”訓(xùn)練。
圖2:基于LSTM RNN的主流聲學(xué)模型框架
目前,國際國內(nèi)已經(jīng)有不少學(xué)術(shù)或工業(yè)機構(gòu)掌握了RNN模型,并在上述某個或多個技術(shù)點進(jìn)行研究。然而,上述各個技術(shù)點單獨研究時一般可以獲得較好的結(jié)果,但是如果想將這些技術(shù)點融合在一起的時候,則會碰到一些問題。例如,多個技術(shù)結(jié)合在一起的提升幅度會比各個技術(shù)點幅度的疊加要小。又例如,傳統(tǒng)的雙向RNN方案,理論上需要看到語音的結(jié)束(即所有的未來信息),才能成功的應(yīng)用未來信息來獲得提升,因此只適合處理離線任務(wù),而對于要求即時響應(yīng)的在線任務(wù)(例如語音輸入法)則往往會帶來3-5s的硬延遲,這對于在線任務(wù)是不可接受的。再者,RNN對上下文相關(guān)性的擬合較強,相對于DNN更容易陷入過擬合的問題,容易因為訓(xùn)練數(shù)據(jù)的局部不魯棒現(xiàn)象而帶來額外的異常識別錯誤。最后,由于RNN具有比DNN更加復(fù)雜的結(jié)構(gòu),給海量數(shù)據(jù)下的RNN模型訓(xùn)練帶來了更大的挑戰(zhàn)。
鑒于上述問題,科大訊飛發(fā)明了一種名為前饋型序列記憶網(wǎng)絡(luò)FSMN(Feed-forward Sequential Memory Network)的新框架。在這個框架中,可以把上述幾點很好的融合,同時各個技術(shù)點對效果的提升可以獲得疊加。值得一提的是,我們在這個系統(tǒng)中創(chuàng)造性提出的FSMN結(jié)構(gòu),采用非循環(huán)的前饋結(jié)構(gòu),在只需要180ms延遲下,就達(dá)到了和雙向LSTM RNN相當(dāng)?shù)男Ч?。下面讓我們來具體看下它的構(gòu)成。
圖3:FSMN結(jié)構(gòu)示意圖
圖4:FSMN中隱層記憶塊的時序展開示意圖(左右各看一幀)
圖3即為FSMN的結(jié)構(gòu)示意圖,相比傳統(tǒng)的DNN,我們在隱層旁增加了一個稱為“記憶塊”的模塊,用于存儲對判斷當(dāng)前語音幀有用的歷史信息和未來信息。圖4畫出了雙向FSMN中記憶塊左右各記憶一幀語音信息(在實際任務(wù)中,可根據(jù)任務(wù)需要,人工調(diào)整所需記憶的歷史和未來信息長度)的時序展開結(jié)構(gòu)。
從圖中我們可以看出,不同于傳統(tǒng)的基于循環(huán)反饋的RNN,F(xiàn)SMN記憶塊的記憶功能是使用前饋結(jié)構(gòu)實現(xiàn)的。這種前饋結(jié)構(gòu)有兩大好處:首先,雙向FSMN對未來信息進(jìn)行記憶時,沒有傳統(tǒng)雙向RNN必須等待語音輸入結(jié)束才能對當(dāng)前語音幀進(jìn)行判斷的限制,它只需要等待有限長度的未來語音幀即可,正如前文所說的,我們的雙向FSMN在將延遲控制在180ms的情況下就可獲得媲美雙向RNN的效果;其次,如前所述,傳統(tǒng)的簡單RNN因為訓(xùn)練過程中的梯度是按時間逐次往前傳播的,因此會出現(xiàn)指數(shù)衰減的梯度消失現(xiàn)象,這導(dǎo)致理論上具有無限長記憶的RNN實際上能記住的信息很有限,然而FSMN這種基于前饋時序展開結(jié)構(gòu)的記憶網(wǎng)絡(luò),在訓(xùn)練過程中梯度沿著圖4中記憶塊與隱層的連接權(quán)重往回傳給各個時刻即可,這些連接權(quán)重決定了不同時刻輸入對判斷當(dāng)前語音幀的影響,而且這種梯度傳播在任何時刻的衰減都是常數(shù)的,也是可訓(xùn)練的,因此FSMN用一種更為簡單的方式解決了RNN中的梯度消失問題,使得其具有類似LSTM的長時記憶能力。
另外,在模型訓(xùn)練效率和穩(wěn)定性方面,由于FSMN完全基于前饋神經(jīng)網(wǎng)絡(luò),所以不存在RNN訓(xùn)練中因mini-batch中句子長短不一需要補零而導(dǎo)致浪費運算的情況,前饋結(jié)構(gòu)也使得它的并行度更高,可最大化利用GPU計算能力。從最終訓(xùn)練收斂的雙向FSMN模型記憶塊中各時刻的加權(quán)系數(shù)分布我們觀察到,權(quán)重值基本上在當(dāng)前時刻最大,往左右兩邊逐漸衰減,這也符合預(yù)期。進(jìn)一步,F(xiàn)SMN可和CTC準(zhǔn)則結(jié)合,實現(xiàn)語音識別中的“端到端”建模。
最后,和其他多個技術(shù)點結(jié)合后,訊飛基于FSMN的語音識別框架可獲得相比業(yè)界最好的語音識別系統(tǒng)40%的性能提升,同時結(jié)合我們的多GPU并行加速技術(shù),訓(xùn)練效率可達(dá)到一萬小時訓(xùn)練數(shù)據(jù)一天可訓(xùn)練收斂。后續(xù)基于FSMN框架,我們還將展開更多相關(guān)的研究工作,例如:DNN和記憶塊更深層次的組合方式,增加記憶塊部分復(fù)雜度強化記憶功能,F(xiàn)SMN結(jié)構(gòu)和CNN等其他結(jié)構(gòu)的更深度融合等。在這些核心技術(shù)持續(xù)進(jìn)步的基礎(chǔ)上,科大訊飛的語音識別系統(tǒng)將不斷挑戰(zhàn)新的高峰!
-
語音識別
+關(guān)注
關(guān)注
38文章
1739瀏覽量
112633 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5500瀏覽量
121111
發(fā)布評論請先 登錄
相關(guān)推薦
評論