語音識別學習記錄 TDNN時延神經網路

2021-08-21 21:32:15 字數 2033 閱讀 7990

最近了解了卷積神經網路(cnn),cnn是受語音頻號處理中時延神經網路(tdnn)影響而發明的。本篇的大部分內容都來自關於tdnn原始文獻waibel a, hanazawa t, hinton g, et al. phoneme recognition using time-delay neural networks[j] (tdnn的原始**)的理解和整理。該文寫與2023年,在識別"b", "d", "g"三個濁音中得到98.5%的準確率,高於hmm的93.7%。是cnn的先驅。

在講tdnn之前先說說一般的神經網路的是怎樣識別音素的。假設要識別三個子音"b", "d", "g",那麼我們可以設計如圖1這樣的神經網路。

其中輸入0-12代表每一幀的特徵向量(如13維mfcc特徵)。那麼有人可能會問了,即使在同乙個因素"b"中,比如"b"包含20幀,那麼第1幀與第15幀的mfcc特徵也可能不一樣。這個模型合理嗎?事實上,"b"包含的20幀mfcc特徵雖然有可能不一樣,但變化不會太大,對於因素還是有一定區分度的,也就是說這個模型湊合湊合還能用,但效果不會非常好。gmm模型可以用這種模型來解釋。

考慮到上述模型只用了一幀特徵,那麼如果我們考慮更多幀,那麼效果會不會好呢?

好,那麼我們設計乙個包含多幀的神經網路,如圖2我們考慮延時為2,則連續的3幀都會被考慮。其中隱含層起到特徵抽取的作用,輸入層每乙個矩形內共有13個小黑點,代表該幀的13維mfcc特徵。假設有10個隱含層,那麼連線的權重數目為3*13*10=390。

為了結構緊湊顯示,我們將其重繪為圖3。

圖3與圖2是等價的。其中每條彩色線代表13*10=130個權重值。三條彩色線為390個權重。也有資料稱之為濾波器。

好,如果時間滾滾向前,我們不斷地對語音幀使用濾波器,我們可以得到圖4。

這就是延時神經網路的精髓了!其中綠色的線權值相同,紅色的線權值相同,藍色的線權值相同。相當於把濾波器延時。輸入與隱層共390個權值變數待確定。

每個隱層矩形內包含10個節點,那麼每條棕色的線包含10個權值,假設輸出層與隱層的延時為4,則接收5個隱層矩形內的資料,那麼隱層與輸出層合計權值為10*5*3=150。權值非常少!所以便於訓練。

下面就不難理解文獻【waibel a, hanazawa t, hinton g, et al. phoneme recognition using time-delay neural networks[j] 】上的圖了(圖5)。思想與上文一樣,不過文章多用了一層隱層(多隱層有更強的特徵提取和抽象能力)。

介紹一下他的做法。input layer為語譜圖,黑塊為大值,灰塊為小值。輸入層縱向為經過mel濾波器的16個特徵(沒用mfcc),橫向為幀。input layer 的延時為2,對映到hidden layer 1的關係為16*3*8,權值個數為384。hidden layer 1 的延時為4,對映到hidden layer 2的關係為8*5*3,權值個數為120。hidden layer 2 的延時為8,對映到輸出層的關係為3*9 -> 3,權值個數為81。合計權值為384+120+81=585。輸出的三個單元分別代表"b", "d", "g"的得分。

(1)和傳統的反向傳播演算法一樣。

(2)tdnn有快速演算法。

總結tdnn的優點有以下:

(1)網路是多層的,每層對特徵有較強的抽象能力。

(2)有能力表達語音特徵在時間上的關係。

(3)具有時間不變性。?

(4)學習過程中不要求對所學的標記進行精確的時間定位。

(5)通過共享權值,方便學習。

第6課時 語音識別

學科 人工智慧 年級 四年級上 課題 第6課時 語音識別 課時數 1課時 教材分析 本課內容選自 人工智慧啟蒙 第一冊第4節 語音識別 部分的內容,本節課要求學生通過學習,初步理解語音識別的含義 簡單了解語音識別的6個過程 了解並體驗語音識別在生活中的常見應用。學情分析 學生通過前面幾節課的學習,了...

會議記錄轉文字 語音識別

在工作中,對於一些重要的會議,參會內容需要記錄下來並整理成文字。隨著人工智慧的發展,我們考慮借助語音識別來提高效率。針對本地語音檔案不得超過5mb的缺點,我們考慮採用大檔案分割的方式,將長錄音檔案分割成若干份不超過5mb的 檔案,進行逐個識別和校對。我們用python進行簡單的編寫來實現切割功能 i...

語音識別技術學習系列(一) 入門

從這一篇開始,陸續學習語音識別技術,由淺入深。這一篇是入門,主要學習的是語音識別技術的大致步驟,以及現在的幾種主流方法。下圖是語音識別技術的系統框圖 主要包括這樣幾個步驟 1 預處理。對輸入語音頻號進行預加重和分幀加窗等處理,過濾其中不重要資訊及背景雜訊,進行端點檢測,以確定有效的語音段 2 特徵提...