語音識別——TDNN時延神經網絡

參考:http://www.inf.ed.ac.uk/teaching/courses/asr/lectures-2019.html
https://blog.csdn.net/richard2357/article/details/16896837
https://zhuanlan.zhihu.com/p/28283265
http://pelhans.com/2018/02/11/kaldi-note8/
相當於CNN的前身,相當於1dcnn,即一維CNN。它的共享權重被限制在單一的維度上,並且沒有池化層,適用於語音和時間序列的信號處理。
TDNN最早是在1989年,由Hinton提出,目的在於解決音素的識別。
通常神經網絡識別音素的結構如下圖所示,識別因素爲B,D,G,其中0-12代表每一幀的特徵向量。
在這裏插入圖片描述
這種結構只考慮了一幀的特徵,我們知道上下文信息對於序列模型是很有幫助的,我們需要考慮更多幀。當考慮延時爲2時,則連續的3幀都會被考慮。其中隱藏層起到特徵抽取的作用,輸入層每一個矩形內共有13個小黑點,代表該幀的13維MFCC特徵。假設每個隱藏層有10個節點,那麼連接的權重的數目是3 * 13* 10=390個,用圖表示爲:
在這裏插入圖片描述
爲了顯示更多幀,緊湊表示爲:
在這裏插入圖片描述
其中一條彩色線就代表13*10=130個權重值。如果我們持續的對網絡進行輸入,就變成了下圖:
在這裏插入圖片描述
其中各色線的權重相同,相當於把權重延時。隱藏層和輸出層之間也可以採用該方法,這樣整體的權重就大大減少。便於訓練。
TDNN網絡的訓練方法和傳統方法一樣,反向傳播就可以。
在這裏插入圖片描述
文獻中TDNN網絡結構,input layer爲語譜圖,黑塊爲大值,灰塊爲小值。輸入層縱向爲經過mel濾波器的16個特徵(沒用MFCC,用的是fBank),橫向爲幀。Input Layer的延時爲2,映射對Hidden layer1爲16 *3->8,Hidden layer1 8個節點,權值個數爲384。Hidden Layer1的延時爲4,映射到Hidden Layer2的關係是8 *5->3,權值個數爲120。Hidden Layer2的延時爲8,映射到輸出層的關係爲3 *9->3,權值個數爲81。合計權值爲384+120+81=585。輸出的三個單元分別代表“B”“D”“G”的得分。

  1. TDNN訓練方法
    a.和傳統的反向傳播算法一樣;
    b.TDNN有快速算法。
  2. 總結TDNN網絡的優點:
    a.網絡是多層的,每層對特徵有較強的抽象能力;
    b.能表達語音特徵在時間上的關係;
    c.權值具有時間不變性;
    d.學習過程中不要求對所學的標記進行精確的時間定位;
    e.通過共享權值,方便學習。

論文:
A time delay neural network architecture for efficient modeling of long temporal contexts 2015 Danial Povey, interspeech
RNN可以對時間有效地對時間依賴幀進行建模,但是由於訓練時的時間序列性,訓練時間比較長。RNN並行化程度不如前向神經網絡,而TDNN也可以對長時依賴序列建模,並使用子採樣來減少計算量,可以讓TDNN訓練時間和標準前向神經網絡差不多。
使用特徵:基於神經網絡自適應的ivector特徵,具有區分性,自適應說話人和環境,不用像使用fMLLR自適應技術後需要兩次解碼。
RNN,FDNN,TDNN都適用於從短時特徵學習長時動態上下文。
TDNN網絡結構
在這裏插入圖片描述
TDNN初始層學習較窄的上下文信息,更高層則學習到更廣的上下文信息。
在這裏插入圖片描述
sub-sampling子採樣:在原始的TDNN是一個全連接的前饋神經網絡。但事實上,相鄰時間點所包含的上下文信息有很大部分重疊的,因此可以採用取樣的方法,只保留部分的連線,可以獲得原始模型近似的效果,同時能夠大大減小模型的計算量。子採樣拼接幀不超過2。
使用子採樣加快訓練時間,減小聲學模型的大小。
what is 瓶頸特徵????
使用非對稱輸入上下文,左側有更多的上下文,是爲了減少在線解碼過程中神經網絡的延時。也能減少字錯誤率。
非對稱上下文窗口一般是從過去的16幀到之後的9幀這個區間內。使用L2範數。
輸入特徵
MFCC特徵和對數梅爾特徵。
在每幀40維MFCC特徵的基礎上,增加100維i_vector特徵。其中,MFCC不用做CMVN,目的時使ivector可以提供說話人數據的均值偏移信息。
DNN訓練
分層監督訓練,用隨機梯度下降處理更新,使用指數學習率。DNN並行設置最多達18GPU完成,使用模型平均技術。
序列區分性訓練
基於狀態級別的最小音素錯誤(MPE),稱爲sMBR準則用來完成DNN上的序列訓練。

在這裏插入圖片描述
在這裏插入圖片描述
結論
TDNN在處理較寬的上下文輸入時很有效。輸入上下文的寬度是[t-13,t+9]時是最優的。使用子採樣技術在訓練是進行加速。與DNN相比,性能相對提升6%,比使用說話人自適應特徵的RNN結構相對好2.6%。下一步從p範數非線性切換到Relu,據說在TDNN上很好用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章