天天看點

幹貨 | 對端到端語音識别網絡的兩種全新探索

AI 科技評論按:語音識别技術曆史悠久,早在上世紀 50 年代,貝爾研究所就研究出了可以識别十個英文數字的簡單系統。從上世紀 70 年代起,傳統的基于統計的 HMM 聲學模型,N 元組語言模型的發明,已經使得語音識别技術可以在小規模詞彙量上使用。在新世紀伊始,GMM-HMM 模型的序列鑒别性訓練方法的提出又進一步提升了語音識别的準确率。最近 5-10 年間,随着深度學習的快速發展,算力的快速增長,資料量的急速擴張,深度學習開始大規模應用于語音識别領域并取得突破性進展,深度模型已經可以在幹淨标準的獨白類音頻上達到 5% 以下的錯詞率。此外,端到端的模型可以輕松的将各種語言揉合在一個模型中,不需要做額外的音素詞典的準備,這将大大推動業界技術研究與應用落地的進度。

在現在主流的利用深度學習的語音識别模型中仍在存在多種派系,一種是利用深度學習模型取代原來的 GMM 部分,即 DNN-HMM 類的模型,另一種則是端到端的深度學習模型。

第一種模型需要先實作 HMM 結構與語音的對齊,然後才能進一步地訓練深度神經網絡。除此之外,在訓練這一類的模型時,訓練樣本的标注不僅僅是原本的文本,還需要對文本進一步拆解成為音素投入訓練,這對于标注部分的工作就會造成極大的挑戰。在解碼的時候,這種模型同樣還需要依賴這個發音詞典。

端到端的模型旨在一步直接實作語音的輸入與解碼識别,進而不需要繁雜的對齊工作與發音詞典制作工作,具有了可以節省大量的前期準備時間的優勢,真正的做到資料拿來就可用。

端到端的模型的另一個優點是,更換識别語言體系時可以利用相同的架構結構直接訓練。例如同樣的網絡結構可以訓練包含 26 個字元的英文模型,也可以訓練包含 3000 個常用漢字的中文模型,甚至可以将中英文的詞典直接合在一起,訓練一個混合模型。

此外,最重要的一點是,端到端的模型在預測時的速度更快,對于一個 10 秒左右的音頻檔案,端到端的模型在一塊 GPU 的伺服器上僅需 0.2 秒左右的時間便可給出預測結果。

現在的語音識别問題有如下幾個難點:

  • 對自然語言的識别和了解;
  • 語音資訊量大。語音模式不僅對不同的說話人不同,對同一說話人也是不同的,一個說話人在随意說話和認真說話時的語音資訊是不同的;
  • 語音的模糊性。說話者在講話時,不同的詞可能聽起來是相似的;
  • 單個字母或詞、字的語音特性受上下文的影響,以緻改變了重音、音調、音量和發音速度等。

端到端的模型由于不引入傳統的音素或詞的概念,直接訓練音頻到文本的模型,可以有效地規避上述難點。

雲從科技基于端到端的語音識别網絡進行了兩種方法的探索,一種是基于原有的 CNN-RNN-CTC 網絡的改進,一種是基于 CTC loss 與 attention loss 結合機制的網絡。下面是對這兩種方法的詳細解讀。

第一種方法

位址:https://arxiv.org/abs/1810.12001

作者基于百度之前提出的 Deep Speech 2 的模型架構結構,提出了三個改進的點。

第一是把循環神經網絡中的長短時記憶層(LSTM)變成了雙向的殘差長短時記憶層(resBiLSTM)。此舉可以更好地保留之前卷積神經網絡所提取出的音素資訊和之後每一個雙向的殘差長短時記憶層更好的結合。因為循環神經網絡中的每一層主要是負責提取句子中的語義資訊,但語義資訊的了解也和音素資訊緊密相關。随着循環神經網絡的深入,原本更底層的層很難接收到卷積神經網絡所給出的資訊,對于複雜的長句子中音素和語義資訊的結合較差,新提出的殘差網絡可以較好地修正這一問題。

第二點是引入了級聯的訓練結構,即對于第一個網絡中難分(分錯)的樣本進行二次訓練。在實驗中我們發現,在第一層網絡結構中被分錯的樣本比全部的樣本的平均句長多出了 11% 以上。随着句子的變長,強文法和語義相關的單詞會距離更遠,那麼對于較淺的循環神經網絡來說就會更難捕捉到這一個資訊。在發現這一差別後,作者在在第二層的級聯結構中使用了更深的循環神經網絡 (7 層到 13 層),但同時縮減了每一層的隐含節點數(對應樣本量的減少,防止出現複雜模型的過拟合問題)。下圖是對這兩點改進後具體的模型圖。

幹貨 | 對端到端語音識别網絡的兩種全新探索

最後一點,是作者提出了新的訓練方式來提升訓練速度。深度學習中的模型一般都會采用随機梯度下降的方式來訓練,每一次隻訓練其實其中一批資料(mini batch)。原來的訓練模式是固定批量的大小從一而終。但是對于語音識别這樣的問題來說,輸入的資料是不定長的,這就會導緻訓練時,每一批和每一批的資料中最長的那一條是不一樣的。為了防止訓練時記憶體溢出,固定批量的方式必然需要遷就資料集中最長的那一個音頻。在我們的訓練資料集中,最長的音頻是最短的音頻的 10 倍左右,這樣就會帶來在訓練短音頻時的記憶體浪費。作者提出一種對全部訓練集從低到高排序的方式,每次取排序後的一批音頻,之後根據批次内最長的音頻片段來實時調整批量的大小,進而提升記憶體使用率并使得訓練時間下降了約 25%。在 LibriSpeech 960 小時的訓練資料集上,利用在 8 塊 1080Ti 上訓練一次的時間從 24500 秒降到 18400 秒左右,減少 25%。且此方法并未因排序失去資料選取的随機性而顯得效果變差。

作者在前處理上仍舊采用傳統簡單的快速傅裡葉變換(FFT)來提取頻譜特征輸入改進後的深度學習網絡,并采取了基于統計的 N 元組語言模型來對模型輸出的文本進行解碼和修正。選取這兩種方法的原因是處理簡單且不需要經過複雜的訓練。作者提出的語音模型配合簡單的前後處理機制仍舊可以取得很好的效果,更進一步證明了語音模型的優勢。最終,在語音識别資料集 Librispeech 上,取得了 3.41% 的錯詞率。

幹貨 | 對端到端語音識别網絡的兩種全新探索

在語音識别領域,LibriSpeech 是朗讀語音類的主流資料集,包含 960 小時的訓練集資料。錯詞率(Word Error Rate)則是衡量語音識别技術的關鍵名額。預測文本通過替換、删除、增加單詞這三種操作可以達到與标注文本完全一緻所需要的操作步數即為該句子的錯詞數,錯詞率=錯詞數/總詞數。

第二種方法

位址:https://arxiv.org/abs/1810.12020

目前比較流行的端到端的語音識别模型主要包括:單獨依賴 CTC 解碼的模型,單獨依賴 attention 解碼的模型,以及混合 CTC 與 attention 共同解碼的模型。純 CTC 解碼通過預測每個幀的輸出來識别語音,算法的實作基于假設每幀的解碼保持彼此獨立,因而缺乏解碼過程中前後語音特征之間的聯系,比較依賴語言模型的修正。純 attention 解碼過程則與輸入語音的幀的順序無關,每個解碼單元是通過前一單元的解碼結果與整體語音特征來生成目前的結果,解碼過程忽略了語音的單調時序性。為了兼顧兩種方法的優缺點,作者采用混合解碼的架構模型。網絡結構是卷積層加 BiLSTM 層的 Encoder 結構後分别連接配接基于 Attention 以及 CTC 的 Decoder 結構,由兩種解碼器共同輸出識别結果。

幹貨 | 對端到端語音識别網絡的兩種全新探索

混合模型的 Loss 計算是 CTC-Loss 與 Attention-Loss 做權重相加。作者在實驗中發現,在混合模型中 CTC 權重越低效果會越好。當把 CTC-Loss 的權重降低時,整體網絡在計算反向梯度時由 Attention 部分得到的梯度會占主要部分,這樣的結果就是網絡優先朝着優化 Attention 解碼的方向進行參數調整,最後訓練得到的 CTC 解碼效果就相對較差。考慮這一點,作者在 CTC 解碼器部分單獨增加了一個 BiLSTM 層,該層不與 Attention 部分共享,單獨依靠 CTC-Loss 的反向梯度進行優化,進而彌補了 CTC 權重低帶來的不足,使 Attention 解碼效果最優的情況下盡可能提升 CTC 部分的效果。

在本文中,作者使用了基于子詞(subword)的編解碼方式。子詞是介于字母與單詞之間的一種表征方式。由于英文單詞中的常常出現不發音的字母,在不同單詞中相同字母的發音也千差萬别,這就給基于字母的編解碼模型帶來了不小的麻煩,這種模型也更需要依賴語言模型的修正。基于單詞的模型則隻能解碼出參與訓練的已有标簽的單詞,因而完全無法解決 OOV 的問題。将文本按照子詞分割開來,就可以同時改善以上兩種方法中存在的問題。另一方面,作者為了網絡更好的适應對子詞的解碼,使用了 smoothing-attention 的方法:

幹貨 | 對端到端語音識别網絡的兩種全新探索

通常的 attention 方法(包括本文使用的 Loc-Aware)在計算 attention energy 中會使用 softmax,這樣使得 attention 得分的分布變得比較尖銳,最終從 attention 得到的特征會集中在某一幀的位置上。和字母級别的解碼相比,子詞需要相對更寬的上下文特征。作者将 attention 中的 softmax 改為 sigmoid,使 attention 得分的分布變得相對平滑,進而使解碼器每個 LSTM 單元的輸入特征包含更多的語音上下文特征資訊。

最後,作者使用基于 14600 本書的 Librispeech 公開語言模型擴充資料集訓練了兩層 LSTM 作為語言模型(LM),在語音識别資料集 Librispeech 上,取得了目前已公開的端到端語音識别網絡中的最好效果。目前 Espnet 在 github 的模型,使用該擴充語言模型資料集訓練的 LM 後在 test-clean 的表現為 WER=4.0%。相比之下,作者的方法效果提升 16.5%。

幹貨 | 對端到端語音識别網絡的兩種全新探索