(文章來源:36kr)
目前,主流語音識別框架還是由 3 個部分組成:聲學模型、語言模型和解碼器,有些框架也包括前端處理和后處理。隨著各種深度神經(jīng)網(wǎng)絡(luò)以及端到端技術(shù)的興起,聲學模型是近幾年非常熱門的方向,業(yè)界都紛紛發(fā)布自己新的聲學模型結(jié)構(gòu),刷新各個數(shù)據(jù)庫的識別記錄。由于中文語音識別的復雜性,國內(nèi)在聲學模型的研究進展相對更快一些,主流方向是更深更復雜的神經(jīng)網(wǎng)絡(luò)技術(shù)融合端到端技術(shù)。
2018年,科大訊飛提出深度全序列卷積神經(jīng)網(wǎng)絡(luò)(DFCNN),DFCNN 使用大量的卷積直接對整句語音信號進行建模,主要借鑒了圖像識別的網(wǎng)絡(luò)配置,每個卷積層使用小卷積核,并在多個卷積層之后再加上池化層,通過累積非常多卷積池化層對,從而可以看到更多的歷史信息。
?
2018年,阿里提出 LFR-DFSMN(Lower Frame Rate-Deep Feedforward Sequential Memory Networks)。該模型將低幀率算法和 DFSMN 算法進行融合,語音識別錯誤率相比上一代技術(shù)降低 20%,解碼速度提升 3 倍。FSMN 通過在 FNN 的隱層添加一些可學習的記憶模塊,從而可以有效的對語音的長時相關(guān)性進行建模。而 DFSMN 是通過跳轉(zhuǎn)避免深層網(wǎng)絡(luò)的梯度消失問題,可以訓練出更深層的網(wǎng)絡(luò)結(jié)構(gòu)。
2019 年,百度提出了流式多級的截斷注意力模型 SMLTA,該模型是在 LSTM 和 CTC 的基礎(chǔ)上引入了注意力機制來獲取更大范圍和更有層次的上下文信息。其中流式表示可以直接對語音進行一個小片段一個小片段的增量解碼;多級表示堆疊多層注意力模型;截斷則表示利用 CTC 模型的尖峰信息,把語音切割成一個一個小片段,注意力模型和解碼可以在這些小片段上展開。在線語音識別率上,該模型比百度上一代 Deep Peak2 模型提升相對 15% 的性能。
開源語音識別 Kaldi 是業(yè)界語音識別框架的基石。Kaldi 的作者 Daniel Povey 一直推崇的是 Chain 模型。該模型是一種類似于 CTC 的技術(shù),建模單元相比于傳統(tǒng)的狀態(tài)要更粗顆粒一些,只有兩個狀態(tài),一個狀態(tài)是 CD Phone,另一個是 CD Phone 的空白,訓練方法采用的是 Lattice-Free MMI 訓練。該模型結(jié)構(gòu)可以采用低幀率的方式進行解碼,解碼幀率為傳統(tǒng)神經(jīng)網(wǎng)絡(luò)聲學模型的三分之一,而準確率相比于傳統(tǒng)模型有非常顯著的提升。
遠場語音識別技術(shù)主要解決真實場景下舒適距離內(nèi)人機任務對話和服務的問題,是 2015 年以后開始興起的技術(shù)。由于遠場語音識別解決了復雜環(huán)境下的識別問題,在智能家居、智能汽車、智能會議、智能安防等實際場景中獲得了廣泛應用。目前國內(nèi)遠場語音識別的技術(shù)框架以前端信號處理和后端語音識別為主,前端利用麥克風陣列做去混響、波束形成等信號處理,以讓語音更清晰,然后送入后端的語音識別引擎進行識別。
語音識別另外兩個技術(shù)部分:語言模型和解碼器,目前來看并沒有太大的技術(shù)變化。語言模型主流還是基于傳統(tǒng)的 N-Gram 方法,雖然目前也有神經(jīng)網(wǎng)絡(luò)的語言模型的研究,但在實用中主要還是更多用于后處理糾錯。解碼器的核心指標是速度,業(yè)界大部分都是按照靜態(tài)解碼的方式進行,即將聲學模型和語言模型構(gòu)造成 WFST 網(wǎng)絡(luò),該網(wǎng)絡(luò)包含了所有可能路徑,解碼就是在該空間進行搜索的過程。由于該理論相對成熟,更多的是工程優(yōu)化的問題,所以不論是學術(shù)還是產(chǎn)業(yè)目前關(guān)注的較少。