江麗莎 何朝霞
摘要:研究BP神經(jīng)網(wǎng)絡(luò)技術(shù)在數(shù)字語音識別中的應(yīng)用,以基于語音信號產(chǎn)生的數(shù)字模型作為突破口,對所采集到的語音信號進行預(yù)處理,提取Mel頻率倒譜系數(shù),并將特征參數(shù)序列進行非線性時間規(guī)整為固定的幀數(shù)以便于BP神經(jīng)網(wǎng)絡(luò)的訓練和識別。由MATLAB的實驗數(shù)據(jù)分析可得,基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字語音識別技術(shù)具有很高的實用價值、數(shù)字語音識別率高。
關(guān)鍵詞:數(shù)字語音識別;BP神經(jīng)網(wǎng)絡(luò);非線性時間規(guī)整;Mel頻率倒譜系數(shù)
中圖分類號:TP18 文獻標識碼:A 文章編號:1009-3044(2015)20-0141-02
Digital Speech Recognition Technology Based on Back Error Propagation
JIANG Li-sha, HE Zhao-xia
(Yangtze University College of Technology & Engineering, Jingzhou 434023, China )
Abstract:The BP neural network technology in the application of digital speech recognition,based on the figures of speech signal model as a Breakthrough, Collected for the speech signal preprocessing, The extraction of Mel frequency cepstrum coefficient,and will feature parameters for nonlinear time sequence neat for the fixed frame is advantageous for the BP neural network of training and recognition.By the MATLAB analysis of experimental data available ,digital speech recognition based on BP neural network has a high practical value,digital speech recognition rate is high.
Key words: Digital speech recognition; BP neural network ; Nonlinear time neat; Mel frequency cepstrum coefficient
1 概述
數(shù)字語音識別技術(shù)[1-4]是語音識別技術(shù)應(yīng)用中的一個重要領(lǐng)域,語音識別技術(shù)的應(yīng)用包括語音導航、室內(nèi)設(shè)備控制、語音文檔檢索等。誤差反向傳播算法(簡稱BP網(wǎng)絡(luò)模型),是在現(xiàn)有BP算法的基礎(chǔ)上進一步提出來的,它的算法原理是:我們從眾多權(quán)值中隨便抽取一組權(quán)值,把所需要的目標輸出當做是線性方程的代數(shù)和來構(gòu)造線性方程組。
2 提取特征參數(shù)
2.1 預(yù)處理和端點檢測
為了增加語音的高頻分辨率,首先對語音的高頻部分進行預(yù)加重處理。最常用的前端處理有端點檢測和語音增強。端點檢測是指在語音信號中將語音和非語音信號時段區(qū)分開來,準確地確定出語音信號的起始點。經(jīng)過端點檢測后,后續(xù)處理就可以只對語音信號進行,這對提高模型的精確度和識別正確率有重要作用。目前通用的方法是采用維納濾波[5-7],是一種應(yīng)用較為廣泛的方法。
2.2 聲學特征提取
特征提取是對信息量進行壓縮的過程。通常應(yīng)該具有以下特征:穩(wěn)定性、唯一性、不變性。Mel頻率倒譜系數(shù)(MFCC)參數(shù)能充分利用人耳感知特性,能夠較好地描述人耳對語音音調(diào)的感知情況,把MFCC參數(shù)作為識別的特征參數(shù),具有良好的識別能力和抗噪能力。
操作步驟:
圖1
1)首先對信號[s(n)]進行預(yù)處理及FFT變換。
2)計算[s(n)]通過[M]個[hm(n)]后得到的功率值,得到[M]個參數(shù)[pm]([m=0,1,...,M-1])。
3)三角濾波系數(shù)的求取。計算[pm]的自然對數(shù),得到[lm]([m=0,1,...,M-1])。
4)進行DCT計算,得到[dm],舍去直流成分的[d0],剩下的其他參數(shù)作為MFCC的實際參數(shù)。
[dk=m=0M-1lmcos[πk(m+1/2)M]]
5)分幀及加窗處理
倒譜提升窗口就是在為每幀數(shù)據(jù)計算出[K]階MFCC參數(shù)后,通常還要為這[K]個系數(shù)分別乘以不同的權(quán)系數(shù): [Ck=wkdk]
[wk][=1+K2sin(πkK)] [K]=12。
2.3 特征參數(shù)的時間規(guī)整
特征矢量能量序列為[Y1,Y2,Y3,....YN] 其中第[n]幀矢量是由[L]個通道的帶通濾波器組輸出的能量構(gòu)成:
1)求間隔最近的兩幀的聲刺激
[δ1=j=1Ly1j] [δn=j=1L|ynj-y(n+1)j|]
2)分別求出平均聲和總聲刺激
[Δ=n=1Nδn] [Δ0=Δ/M]([M 3 BP神經(jīng)網(wǎng)絡(luò)的構(gòu)建及訓練 3.1 構(gòu)建 BP結(jié)構(gòu)圖主要由輸入層、隱層和輸出層三部分筑建而成。其中隱層可以是一層也可以是多層。 在matlab中調(diào)用newff函數(shù)建立三層BP神經(jīng)網(wǎng)絡(luò)。通過多次實驗,最后確定輸入層神經(jīng)元的個數(shù)為134,輸出層神經(jīng)元的個數(shù)為12。隱層選擇S型傳遞函數(shù)tansig,輸出層S型對數(shù)函數(shù)logsig。 3.2 訓練 1)初始化; 2)設(shè)置訓練參數(shù); 3)輸入訓練樣本和期望輸出值; 4)誤差計算。 4 實驗 4.1 采集數(shù)據(jù) 找10個來自不同地方的人,要求每個人對每個數(shù)字錄一次音。把采集到的100個語音片段作為訓練的數(shù)據(jù)。其中前5個人的樣本作為訓練樣本;后5個人的樣本作為預(yù)測樣本。 4.2 網(wǎng)絡(luò)結(jié)構(gòu)初始化 隱層結(jié)點數(shù)為25 net.trainParam.show = 30; %顯示的間隔次數(shù) net.trainParam.lr = 0.01; %學習率 net.trainParam.epochs = 8000; %最大迭代次數(shù) net.trainParam.goal = 0.001; %訓練精度 net.trainParam.mc=0.67; %動量系數(shù) 圖2 識別率曲線 數(shù)字2,3,4,5,6,7,8,10的識別率都是100%,準確率很高;而1,9的識別率都是85%,存在一定的誤差。導致識別誤差的原因可能有以下幾個方面:1)模糊性;2)干擾性;3)差異性。 5 結(jié)果分析 基于BP神經(jīng)網(wǎng)絡(luò)的方法,對10個數(shù)字語音的MFCC特征參數(shù)進行提取,結(jié)合非線性取樣的規(guī)整算法把各個長短不一的特征參數(shù)序列規(guī)整為固定的幀數(shù)。結(jié)論表明,基于BP神經(jīng)網(wǎng)絡(luò)方法的總體識別性能較好,識別率較高。 參考文獻: [1] 余華, 李海洋, 李啟元. 基于徑向基神經(jīng)網(wǎng)絡(luò)的數(shù)字“0”~“9”語音識別[J].江西師范大學學報,2009,33(6):701-705. [2] 周志杰.MLP語音信號非線性預(yù)測器[J].解放軍理工大學學報:自然科學版,2001,2(5):1-4. [3] 鄭展恒.數(shù)字語音識別系統(tǒng)[J].桂林電子科技大學學報, 2011, 31(6):439-441. [4] 劉煬, 湯傳玲, 王靜, 等.一種基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識別新方法[J].微型機與應(yīng)用, 2012, 31(7):36-39. [5] 卜富清, 王茂芝, 于慶剛. 基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識別[J].長江大學學報, 2009, 6(2):293-294. [6] 梁曉輝, 周權(quán). 語音信號處理方法的可靠性研究[J].電聲技術(shù), 2010(4). [7] 陳國, 胡修林, 曹鵬, 等.基于網(wǎng)格維數(shù)的漢語語音分形特征研究[J]. 聲學學報, 2001, 16(1):59-66.