論文:
TRANSFORMER-TRANSDUCER:END-TO-END SPEECH RECOGNITION WITH SELF-ATTENTION
思想:
1)借助RNN-T在語音識別上的優勢,通過tranformer替換RNN-T中的RNN結構,實現並行化運算,加快訓練過程;
2)encoder部分前段引入包含因果卷積的VGGNet,一方面縮短聲學特征的時序長度,節約計算,另一方面融合上下文信息(包含位置信息)到后續的attention模塊;
3)采用截斷的attention機制,控制左右上下文時間片的長度,降低延遲,attention計算復雜度由O(T
2)降低為O(T),滿足流式語音識別任務的需要
模型:
- RNN-T:包含encoder網絡、語言模型預測網絡和聯合網絡三個模塊;

- encoder網絡 :一般由多層Bi-LSTM組成,輸入時序的聲學特征,得到高層次的特征表達
- 語言模型預測網絡:一般由多層uni-LSTM組成,輸入標簽對應的embedding,輸出對應的預測編碼
- 聯合網絡:一般由多層全連接層組成,輸入為兩個編碼的線性組合,輸入到由前饋神經網絡中得到預測字符概率分布函數
- 目標函數:輸出單元為{字符集Z+blank};目標為最大化標簽序列對應所有對齊序列的概率和;

y^= (y1^,y2^,···yT+U^)∈Hrnnt(x,y)⊂{Z∪b}T+U,y^滿足:去重復連續字符和去blank后為對應的標簽序列y;
- RNN-T解決了CTC的條件獨立性假設(當前預測輸出與歷史輸出條件獨立),即預測輸出不僅取決的encoder,還取決於歷史預測輸出;CTC目標函數如下:

- RNN-T預測時:當預測輸出yu為blank時,預測網絡的輸入不變,encoder網絡輸入更新為xt+1;當yu為non-blank時,預測網絡輸入更新為yu,encoder網絡輸入保持為xt;
- transformer:transformer是一種非循環的self-attention結構,由多個multi-head attention和feed-forward network組成的子墨塊串聯而成,能夠得到高層次的特征表達
- multi-head attention:包含三個輸入:Q、K、V,分別被轉化到多個self-attention子空間學習時序依賴,最后再將各個子空間輸出進行合並,得到高層次的特征表達

其中,H代表self-attention個數;ei代表第i個self-attention子空間,WO、WQ、WK、WV分別為線性層的權重項,ei計算公式如下

其中,√d
k為縮放因子,防止d
k較大時,QKT較大,導致訓練不穩定
- feed-forward network:由多層全連接層組成,激活函數ReLU
- Layer norm:對multi-head attention和feed-forward network輸入進行歸一化,加速訓練
- position embedding:引入位置信息,彌補attention對時間順序和文本位置的不敏感性
- resnet connection:保證淺層信息的流入,並且使得訓練更穩定
- VGG-transformer:由VGGNet和transformer串聯而成,VGGNet一方面能夠具有較強的上下文建模能力,另一方面可以縮短聲學特征的時序長度,提升計算效率;transformer encoder一方面,能夠並行化運算,加速訓練過程;另一方面利用了attention在處理長時依賴方面的優勢

- VGGNet采用causal convolution結構:時序的聲學特征可以看做以時間為橫軸,頻率為縱軸的二維圖像,這樣可以利用二維卷積進行上下文建模和降低幀率

二維卷積conv,對於卷積核大小為N*K的卷積,其覆蓋范圍為:

causal conv結構相當於一種特殊的二維卷積,即在卷積計算時僅利用歷史的上文信息,不利用未來的時序信息;這樣覆蓋范圍為:

- transformer采用截斷的attention,即僅利用有限長度的時序上下文信息,有效降低延遲和計算,以適應某些場景下的設備語音識別要求

其中,inf表示利用所有的時序信息;L=5,R=3表示利用歷史和未來的聲學特征幀數;通過此,可以將原始的復雜度O(T
2)轉化為O(T),但是會相應的損失一部分精度
訓練:
- 數據集:LibriSpeech 960h,驗證集和測試集{dev, test}-{clean,other}
- 輸入特征:80維log fbank,global CMN(全局均值歸一化),幀率=33.3hz
- 網絡結構參數:
- encoder選項:1)BiLSTM 4*640;2)LSTM 5x1024;3)transformer 12x:2層VGGNets(3*3*64,max-pooling1=3,max-pooling2=2)+12層transformer(input=512,head nums=8,feed-forward inner-hidden-size=2048)
- 預測網絡選項:1) LSTM 2x700;2)Transformer 6x: 一層VGGNets(3*3*64,no max-pooling)+6層6transformer(input=512,head nums=8,feed-forward inner-hidden-size=2048),且attention的attend下文時序信息R=0,即不利用未來的時序信息
- 聯合網絡:對encoder輸出ht和預測輸出pu進行線性組合,輸出預測字符的概率分布

其中Wh、Wp、Wo分別為ht、pu、zt,u的權重項
實驗結果:
- encoder網絡+預測網絡:transformer 12x + LSTM 2*700結構取得了最好的結果,相比於其他LSTM、BLSTM、transformer之間的相互組合
- attention的上下文時序信息寬度L、R對識別結果均會造成一定的影響;縮短上下文時序信息寬度L、R的寬度均會造成一定的識別精度損失,但同時節約計算和降低延遲;采用有限寬度的上下文時序信息,可以將計算復雜度由O(T2)減小到O(T);實際可以根據場景對於精度和延遲、計算的要求進行權衡

結論:
- 利用transformer替換RNN-T中的RNN結構,一方面利用attention的長時序列建模優勢,另一方面實現並行化計算,加速訓練
- VGGNet的引入對上下文信息進行建模,同時縮短聲學特征的時序長度節約計算
- transformer采用截斷的self-attention,在損失可接受范圍內的精度條件下,有效節省計算和降低延遲,以滿足設備語音識別對於延遲和計算的要求
Reference: