如何理解語音識別的 lattice-free MMI 聲學訓練?
在Daniel Povey的文章Purely sequence-trained neural networks for ASR based on lattice-free MMI 對 lattice-free MMI 進行了論述,不太理解。
看到一個解釋。
在語音識別領域,鑒別性訓練(Discriminative Training)能夠顯著提升語音識別系統的性能。鑒別性訓練需要所有的單詞序列組合來做訓練,一般而言我們會先利用交叉熵準則訓練一個基準模型,配合使用一個相對較弱的語言模型生成相應的詞圖(Lattice)。Lattice 裡面除了包含與正確識別結果相對應的路徑外,還包含了與正確路徑足夠接近的其他路徑,鑒別性訓練就是要提高模型走正確路徑的概率,同時壓低走相似路徑的概率。
近年來 CTC(Connectionist Temporal Classification)在語音識別領域受到很大關注,但 CTC 相比傳統模型的優勢,需要在很大的數據集上才能體現出來,而且CTC的訓練速度很慢,參數調節更困難。與鑒別性訓練中常用的 MMI(Maximum Mutual Information)準則類似,CTC 訓練準則的目標是最大化正確標註的條件概率,而 MMI 著重優化正確路徑和其他相似路徑的概率差。
LF-MMI(Lattice-Free Maximum Mutual Information)訓練準則通過在神經網路輸出層計算出來所有可能的標註序列,根據這些標註序列計算出相應的 MMI 信息和相關的梯度,然後通過梯度傳播演算法完成訓練。
LF-MMI 訓練準則能夠在訓練過程中直接計算所有可能路徑的後驗概率(Posterior Probability),省去了鑒別性訓練前需要提前生成 Lattice 的麻煩,所以這種方法被叫做 Lattice-Free MMI。
主要有三點吧,
- MMI訓練解lattice放在GPU上做(實現時使用了一些trick,包括LM使用4-gram的phone LM等),不需要像傳統的框架下的區分性訓練那樣生成一個lattice放在那兒,所以叫lattice-free;
- 借鑒了CTC的一些的思路,幀率降到原來的1/3,由於幀率的降低,HMM的結構上做了些調整,引入了類似CTC裡面blank的狀態;
- 防止overfitting,搞了3個正則化;
推薦閱讀:
※Kaldi里的DNN訓練時的輸入是什麼,三音素的GMM訓練好後為什麼要做數據的強制對齊?
※微軟有哪些語音識別技術積累,Cortana 能否跟 Siri 和 Google Now 抗衡?
※想學語音識別技術用什麼教材入門比較好?
※如何理解迅雷新產品「心聲」和「心膜」?
※如何自己寫個語音識別系統?
TAG:語音識別 |