- TDNN-F:Factorized TDNN,顧名思義是在TDNN層基礎上做的改進,將TDNN的參數矩陣M(M的行數小於列數,否則對其進行轉置)通過SVD奇異值分解為兩個小矩陣相乘的形式,從而有效減少層參數,以便在整體參數量相近的情況下,更好的利用網絡深度帶來的優勢;此外,論文指出,直接采用上述形式,當網絡參數隨機初始化時,容易導致訓練發散;於是,在Factorized TDNN更新層參數時,使得其中一個因子矩陣趨緊於α倍數的半正定化矩陣,以此來控制層參數的變化速度,使訓練更穩定;
- Factorized TDNN結構:
從TDNN角度看,Factorized TDNN相當於在兩層前饋層之間引入一層瓶頸層(節點數少於隱藏層);比如原始參數矩陣M=700*2100,將M轉化為兩個因子矩陣形式有:M=AB,其中A=700*250,B=250*2100,那么瓶頸層的節點數即為250;
從1d-CNN角度看,Factorized TDNN相當於引入一個3*1*700的半正定參數的卷積層,其中卷積核大小為3*1,輸出通道數為700;
此外,在實踐中,Factorized TDNN可以通過三種形式實現,1)3*1(半正定)->1*1; 2) 2*1(半正定)->2*1;3)2*1(半正定)->2*1(半正定)->2*1;並且提到,3卷積形式因為多出一個卷積層,時域信息會更寬;

- Factorized TDNN參數矩陣更新
假設參數矩陣M(rows>cols),定義P=MMT,當P=I時,M為半正定化矩陣;令Q=P-I,則可以通過最小化f=tr(QQT)來使得M趨近於I;那么目標f相對於M、P、Q的偏導數分別為:∂f/∂Q= 2Q,∂f/∂P= 2Q, and∂f/∂M= 4QM;當優化算法為SGD時,設學習率為ν= 1/8,那么可得參數矩陣M的更新公式為:


ν= 1/8使得目標函數趨近於二次收斂;tr()是對矩陣的奇異值求和計算,但是,當M離標准正交很遠時,上述更新公式容易發散;但是采用Glorot-style 初始化時,即參數初始值的標准差為M列數平方根的倒數時,不容易發散
論文中提到,作者希望能夠控制矩陣M的參數變化速度,使得訓練更加穩定;於是,在更新參數時引入倍乘因子α,使得M趨近於α倍的半正定矩陣;此外,每層還引入l2歸一化進一步使訓練更穩定;變化后的參數更新公式為

其中,α計算過程如下:

- dropout:論文采用了across time dropout,即對於一個序列,其各幀中同一維度采用相同的dropout;隨機因子服從[1-2α,1+2α]的均勻分布;此外,在訓練前半段,α先從0->0.5,后半段時從0.5->0;實驗證明,dropout能夠帶來0.2%~0.3%的絕對提升
- skip-connection:跳躍連接的引入能夠保證信息向深層的流入,有助於緩解梯度消失問題;實驗證明,skip-connection也能帶來0.2%~0.3%的絕對提升
- Factorizing the final layer:作者發現,當數據集較小時,對中間隱層進行奇異值分解對效果幾乎無提升,但是對最后一層隱層進行奇異值分解時,仍然有提升
- 數據集:300小時Switchboard data;Fisher+Switchboard data combined together (2000 hours);Swahili and Tagalogdata from the MATERIAL program (80 hours each);3-fold 語速增強(0.9x/1.0x/1.1x)
- 測試集:HUB5’00 evaluation set
- 語言模型:Switchboard and Fisher+Switchboard:4-gram;MATERIAL setup:3-gram backoff LM+RNN LM rescore
- baseline:TDNN、TDNN-LSTM、BLSTMs
- tricks:l2歸一化、α倍數的半正定約束、3-stages卷積層、dropout和skip-connection
- 在大規模語音識別任務上,Factorized TDNN+l2歸一化+半正定約束策略,相比於TDNN結構,參數量僅為1/4的條件下,依然取得更好的識別效果;此外,因為參數量更少,訓練和解碼速度也更快

- 在300小時Switchboard數據上,TDNN-F結構相比於TDNN、BLSTM、TDNN-LSTM無論在識別效果還是解碼實時因子方面,均具有一定的優勢;在2000小時Fisher+Switchboard數據上,為保證解碼速度,在省去3-stage splicing, dropout 和 ”floating”semi-orthogonal constraint條件下,依然能夠取得可比最優的識別效果和解碼性能

- 在MATERIAL上,TDNN-F+RNNLM相比於TDNN-LSTM+RNNLM,在參數量相近條件下,也取得了更好的識別效果

- 實現語言:pytorch
- 網絡結構:
- 1*TDNN+8*F-TDNN+1*Dense-ReLU+statspooling+2*Dense-ReLU+softmax;
- skip-connection:
F-TDNN-4:F-TDNN-2+F-TDNN-3;
F-TDNN-6:F-TDNN-1+F-TDNN-3+F-TDNN-5
F-TDNN-8:F-TDNN-3+F-TDNN-5+F-TDNN-7


- TDNN-F結構:2*1(半正定)->2*1(半正定)->2*1


- 半正定卷積參數更新+防止訓練發散策略:

Reference: