語音識別實踐 第4章 DNN

2021-09-08 09:19:05 字數 2737 閱讀 1703

深度神經網路框架:(前向神經網路fdnn&&全連線神經網路fcnn)

使用誤差反向傳播來進行引數訓練(訓練準則、訓練演算法)

資料預處理

最常用的兩種資料預處理技術是樣本特徵歸一化和全域性特徵標準化。

a.樣本特徵歸一化

如果每個樣本均值的變化與處理的問題無關,就應該將特徵均值歸零,減小特徵相對於dnn模型的變化。在語音識別中,倒譜均值歸一化(cmn)是在句子內減去mfcc特徵的均值,可以減弱聲學通道扭曲帶來的影響。以cmn為例,對於每個句子,樣本歸一化先要用該句子所有的幀特徵估算第i維的均值:

其中,t表示該句子中第i維特徵幀的個數,然後該句中的所有第i維特徵幀減去該均值。

b.全域性特徵標準化

全域性特徵標準化的目的是使用全域性轉換縮放每維資料,使得最終的特徵向量處於相似的動態範圍內。在語音識別中,對於實數特徵,如mfcc和fbank,通常使用乙個全域性轉換將每維特徵歸一化為均值為0,方差為1。兩種資料預處理方法中的全域性轉換都只採用訓練資料估計,然後直接應用到訓練資料集和測試資料集。

然後訓練集和測試集中的所有資料可以用以下公式來標準化:

全域性特徵標準化是有效的。在dnn訓練中,通過歸一化特徵,在所有的權重矩陣維度上使用相同的學習率仍然得到好的模型。如果不做特徵歸一化,能量維或者mfcc特徵第一維c0會遮蔽其他維度特徵;如果不使用類似adagrad的學習率自動調整演算法,這些特徵維度會在模型引數調整過程中主導學習過程。

模型初始化

dnn是乙個高度非線性模型,訓練準則是非凸函式,所以初始模型會極大地影響最終模型的效能。

初始化dnn模型的方法:

1)初始化的權重必須使得隱層神經元節點在sigmod函式的線性範圍內活動;可以得到足夠大的梯度,使得模型學習過程更加有效。

2)隨機初始化引數,如果所有的模型引數都相同的話,所有隱層神經元節點將有相同的輸出,在dnn底層會檢測到相同的特徵模式。隨機初始化的目的是為了打破對稱性。

對於語音識別系統中的dnn,通常每個隱層有1000~2000個隱層神經元節點,通常使用n(w,0,0.05)高斯分布或乙個取值範圍在[-0.05,0.05]之間的正態分佈隨機初始化權重矩陣;偏差係數b通常初始化為0。

權重衰減(即正則化)

過擬合問題主要是因為 通常希望最小化期望損失,但實際中最小化的是訓練集上定義的經驗損失。即所訓練的模型在訓練集上有很好的效能,但在測試集上效能比較差,也就是說模型的泛化能力比較差。

緩和過擬合問題最簡單的方法就是使用正則化訓練準則,可以使模型引數不過分地擬合訓練資料,最常用的正則項包括基於l1範數的正則項和基於l2範數(frobenious範數)的正則項。

包含正則項時,訓練準則公式如下:

mse(mean squared error)均方誤差損失

ce(cross entropy)交叉熵損失

其中,j(w,b,s)是在訓練集s上優化的經驗損失jmse(w,b,s)或者jce(w,b,s),r(w)是正則化項,lambda是插值權重或稱作正則化權重。且:

sgn是階躍函式。

當訓練集的大小相對於dnn模型中的參數量較小時,正則化法是有效的。語音識別中dnn模型通常有超過1百萬的引數,lambda應該較小(10-4數量級),甚至當訓練資料量較大時設定為0。

丟棄法(dropout)

控制過擬合的另一種方法是dropout,dropout基本想法是在訓練過程中隨即丟棄每乙個隱層中一定比例(稱為丟棄比例,用alpha表示)的神經元。這意味著即使在訓練過程中有一些神經元被丟棄,剩下的(1-alpha)隱層神經元依然需要在每一種隨機組合中有很好的表現。這需要每乙個神經元在檢測模式的時候更少依賴其它神經元。

批量塊大小的選擇取樣隨機化

慣性係數

如果模型更新是基於之前所有的梯度(更加全域性的視野),而不是僅基於當前的梯度(區域性視野),收斂速度更快。nesterov加速梯度演算法被證明在滿足凸條件下是最優的。在dnn中應用慣性係數時:

rho是慣性係數(或稱動力因子),在sgd或者小批量訓練條件下,通常取值為0.9~0.99^4。慣性係數會使引數更新變得平滑,還能減小梯度估計的方差。

上面慣性係數的定義在批量大小相同時表現很好,但在可變的批量大小中慣性係數的定義不再可用。

慣性係數可被考慮成一種有限脈衝響應(fir)濾波器,推出在不同批量大小mb的條件下的慣性係數取值為:

學習率和停止準則

網路結構

可重複性和可重啟性

語音識別實踐 第6章總結2

cd dnn hmm帶來語音識別效能提公升的三大關鍵因素是 1 使用足夠深的神經網路 2 使用一長段的幀作為輸入 3 直接對三因素進行建模。1.進行比較和分析的資料集實驗 a.必應 bing 移動語音搜尋資料集 資料分為訓練集 開發集 測試集,避免三個集合之間重複。語言模型 一元片語 二元片語 三元...

演算法第4章實踐報告

實踐題目 程式儲存問題 問題描述 設有n 個程式要存放在長度為l的磁帶上。程式i存放在磁帶上的長度是 li,1 i n。程式儲存問題要求確定這n 個程式在磁帶上的乙個儲存方案,使得能夠在磁帶上儲存盡可能多的程式。對於給定的n個程式存放在磁帶上的長度,計算磁帶上最多可以儲存的程式數。第一行是2 個正整...

第6課時 語音識別

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