論文:
EESEN:END-TO-END SPEECH RECOGNITION USING DEEP RNN MODELS AND WFST-BASED DECODING
現狀:
- 混合DNN仍然GMM為其提供初始化的幀對齊,需要迭代訓練強制對齊,以及決策樹
- end2end的asr面臨問題:
- 如何將發音詞典和語言模型更好的融入解碼中
- 現有算法模型缺乏共享的實驗平台進行基准測試
思想:
網絡框架采用多層雙向LSTM結構,以CTC作為目標函數,進行end2end的聲學模型訓練;解碼時通過WFST將輸出的音素/字符序列、發音和語言模型進行融合,一方面發音、語音模型的融入提升了asr效果;另一方面借助減枝,以及WFST的確定化、最小化等操作,加快的解碼速度;該方法取得了與混合DNN可比的WER,3.2倍的解碼速度
模型:
- 輸入特征:40維fbank+一階差分+二階差分=120維
- 模型采用4層Bi-LSTM結構,結點數為320


其中,i
t, o
t, f
t, c
t分別表示輸入門、輸出門、遺忘門和記憶cell;W.c為對角權重矩陣,這樣gate函數向量的m維僅獲得來自cell的m維作為輸入;σ 為sigmoid激活函數;φ為雙正切激活函數tanh
- 目標函數:最大化標簽所對應對齊路徑的概率和ln Pr(zjX)



其中,X = (x1,..., xT );對應的標簽序列為z = (z1,...., zU),且U<T; yt表示t時刻的音素或字符的后驗概率;αt和βt分別代表前向 概率和后向概率;需要注意的是,為了防止因字符連續出現而合並出錯的情況,CTC引入blank字符插入到標簽序列z的每一個字符的前后,因此標簽序列由之前長度U變成2U+1
- 解碼:WFST,將音素或字符組成的對齊序列、發音、語言模型通過一系列composition、determinization和 minimization操作組成路徑搜索圖;一方面將發音和語言模型融入解碼過程提升識別效果;另一方面加快解碼速度

Grammer(G)

phone組成的lexicon(L)

spell組成的lexicon(L)

對齊序列T,允許blank、連續重復有效字符

其中, ◦, det and min分別表示復合、確定化和最小化操作
細節:
- 模型參數采用均勻分布[-0.1,0.1]
- 初始學習率設置為0.00004,當驗證集連續兩個epoch的損失下降低於0.5%時,學習率衰減0.5;當驗證集連續兩個epoch的損失下降低於0.1%時,停止訓練
- CTC訓練不能處理具有多發音的詞,於是對每個多發音的詞僅保留其第一發音或頻次出現最多,移除其他發音
- 后驗概率歸一化
- 訓練句子按長度進行排序,將長度相近的句子組成一個batch,並且按最長的句子進行padding;並且可以減少的padding,穩定訓練
- 支持GPU並行化訓練
- 采用clip gradients,使梯度控制在[-50,50],保持訓練的穩定性
實驗效果:
- baseline:HMM/DNN混合結構
- 連續的上下文11幀fbank特征作為輸入
- 6個隱層,隱層結點1024
- 3421個senones,即輸出維度
- 受限波爾滋蔓機進行參數初始化
- CE交叉熵訓練
- 音素為建模單元時:
- LER為7.87%略差於HMM/DNN的7.14%;作者分析原因在於,數據集的量,在大數據集上,CTC訓練的模型能得到超越HMM/DNN混合系統的實際效果
- 解碼速度相對於HMM/DNN混合系統提升3.2倍,原因在於:1)eesen輸出單元結點數算上blank只有幾十個,但是HMM/DNN有3421個;2)eesen的解碼圖TLG相對於HMM/DNN的HCLG要小得多
- TLG相對於HMM/DNN的HCLG要小得多,所以占磁盤空間也更小

- 字符為建模單元時:LER為9.07%;將訓練集中出現的兩次以上的集外詞OOV加入到詞典中,LER降為7.34%

- 語言:C++
- 核心模塊:
- 聲學模型
- hkust/v1



- tedlium


- CTC
- char
- phone
- WFST解碼
- T:字符或音素對齊序列,包括blank
- L:lexicon
- G:語言模型
- 語言模型
- 3-gram
- 4-gram
- RNNLM
- 效果:
- hkust:



- tedlium

- wsj

Reference: