林世杰 曹曉東
緒論
語(yǔ)音信號(hào)處理的研究和技術(shù)進(jìn)步促進(jìn)了各相關(guān)學(xué)科和技術(shù)領(lǐng)域的發(fā)展,特別是認(rèn)知科學(xué)、心理學(xué)和計(jì)算機(jī)科學(xué)。語(yǔ)音處理是一門集語(yǔ)音研究和信號(hào)處理于一體的混合學(xué)科。技術(shù)和應(yīng)用的結(jié)合使語(yǔ)音信號(hào)處理在我們生活的許多領(lǐng)域都有了長(zhǎng)足的發(fā)展,如語(yǔ)音識(shí)別聽寫、語(yǔ)音控制撥號(hào)、個(gè)人電話銀行等。
語(yǔ)音識(shí)別已經(jīng)成為一種大勢(shì)所趨,只能在未來生存。許多具有基本識(shí)別功能的程序在網(wǎng)上也是開源的,但語(yǔ)音識(shí)別仍是國(guó)內(nèi)外研究的重點(diǎn),尤其是在漢語(yǔ)語(yǔ)義分析方面,仍存在許多障礙。對(duì)于普通網(wǎng)絡(luò)用戶來說,語(yǔ)音識(shí)別仍然是一種看不見摸不著的內(nèi)部嵌入式程序。本文從現(xiàn)有的互聯(lián)網(wǎng)上的開源程序入手,分析了它們的算法和編程環(huán)境,旨在基于作者的編程能力,使語(yǔ)音識(shí)別程序具有比開源資源更多的功能和更廣闊的應(yīng)用環(huán)境。
BP神經(jīng)算法
人工神經(jīng)網(wǎng)絡(luò)是一種信息處理系統(tǒng),它有很多種模型。其中有一種用誤差傳播學(xué)習(xí)算法(Error Back Propagation即BP算法)進(jìn)行訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),簡(jiǎn)稱為BP網(wǎng)絡(luò)。BP神經(jīng)算法特點(diǎn):
l)分布式的信息存儲(chǔ)方式
神經(jīng)網(wǎng)絡(luò)是以各個(gè)處理器本身的狀態(tài)和它們之間的連接形式存儲(chǔ)信息的,一個(gè)信息不是存儲(chǔ)在一個(gè)地方,而是按內(nèi)容分布在整個(gè)網(wǎng)絡(luò)上。網(wǎng)絡(luò)上某一處不是只存儲(chǔ)一個(gè)外部信息,而是存儲(chǔ)了多個(gè)信息的部分內(nèi)容。整個(gè)網(wǎng)絡(luò)對(duì)多個(gè)信息加工后才存儲(chǔ)到網(wǎng)絡(luò)各處,因此,它是一種分布式存儲(chǔ)方式。
2)大規(guī)模并行處理
BP神經(jīng)網(wǎng)絡(luò)信息的存儲(chǔ)與處理(計(jì)算)是合二為一的,即信息的存儲(chǔ)體現(xiàn)在神經(jīng)元互連的分布上,并以大規(guī)模并行分布方式處理為主,比串行離散符號(hào)處理的現(xiàn)代數(shù)字計(jì)算機(jī)優(yōu)越。
3)自學(xué)習(xí)和自適應(yīng)性
BP神經(jīng)網(wǎng)絡(luò)各層直接的連接權(quán)值具有一定的可調(diào)性,網(wǎng)絡(luò)可以通過訓(xùn)練和學(xué)習(xí)來確定網(wǎng)絡(luò)的權(quán)值,呈現(xiàn)出很強(qiáng)的對(duì)環(huán)境的自適應(yīng)和對(duì)外界事物的自學(xué)習(xí)能力。
4)較強(qiáng)的魯棒性和容錯(cuò)性
BP神經(jīng)網(wǎng)絡(luò)分布式的信息存儲(chǔ)方式,使其具有較強(qiáng)的容錯(cuò)性和聯(lián)想記憶功能,這樣如果某一部分的信息丟失或損壞,網(wǎng)絡(luò)仍能恢復(fù)出原來完整的信息,系統(tǒng)仍能運(yùn)行。
設(shè)計(jì)思路分析
(1)通過麥克風(fēng)輸入語(yǔ)音信息,將語(yǔ)音信息存入本地;
(2)把語(yǔ)音信息傳入到百度AI,返回文字信息;
(3)對(duì)文字進(jìn)行解析,判斷文字是中文還是英文;
(4)調(diào)用百度AI翻譯,返回具體的翻譯信息。
確定BP算法的結(jié)構(gòu)
確定了網(wǎng)絡(luò)層數(shù)、每層節(jié)點(diǎn)數(shù)、傳遞函數(shù)、初始權(quán)系數(shù)、學(xué)習(xí)算法等也就確定了BP網(wǎng)絡(luò)。確定這些選項(xiàng)時(shí)有一定的指導(dǎo)原則,但更多的是靠經(jīng)驗(yàn)和試湊。
1)隱層數(shù)的確定:
1998年Robert Hecht-Nielson證明了對(duì)任何在閉區(qū)間內(nèi)的連續(xù)函數(shù),都可以用一個(gè)隱層的BP網(wǎng)絡(luò)來逼近,因而一個(gè)三層的BP網(wǎng)絡(luò)可以完成任意的n維到m維的映照。因此我們從含有一個(gè)隱層的網(wǎng)絡(luò)開始進(jìn)行訓(xùn)練。
2)BP網(wǎng)絡(luò)常用傳遞函數(shù):
BP網(wǎng)絡(luò)的傳遞函數(shù)有多種。Log-sigmoid型函數(shù)的輸入值可取任意值,輸出值在0和1之間;tan-sigmod型傳遞函數(shù)tansig的輸入值可取任意值,輸出值在-1到+1之間;線性傳遞函數(shù)purelin的輸入與輸出值可取任意值。BP網(wǎng)絡(luò)通常有一個(gè)或多個(gè)隱層,該層中的神經(jīng)元均采用sigmoid型傳遞函數(shù),輸出層的神經(jīng)元?jiǎng)t采用線性傳遞函數(shù),整個(gè)網(wǎng)絡(luò)的輸出可以取任意值。
3)每層節(jié)點(diǎn)數(shù)的確定:
使用神經(jīng)網(wǎng)絡(luò)的目的是實(shí)現(xiàn)攝像機(jī)輸出RGB顏色空間與CIE-XYZ色空間轉(zhuǎn)換,因此BP網(wǎng)絡(luò)的輸入層和輸出層的節(jié)點(diǎn)個(gè)數(shù)分別為3。下面主要介紹隱層節(jié)點(diǎn)數(shù)量的確定。
對(duì)于多層前饋網(wǎng)絡(luò)來說,隱層節(jié)點(diǎn)數(shù)的確定是成敗的關(guān)鍵。若數(shù)量太少,則網(wǎng)絡(luò)所能獲取的用以解決問題的信息太少;若數(shù)量太多,不僅增加訓(xùn)練時(shí)間,更重要的是隱層節(jié)點(diǎn)過多還可能出現(xiàn)所謂“過渡吻合”(Overfitting)問題,即測(cè)試誤差增大導(dǎo)致泛化能力下降,因此合理選擇隱層節(jié)點(diǎn)數(shù)非常重要。
系統(tǒng)方案分析
用戶可以在任何狀態(tài)下啟動(dòng)語(yǔ)音交互軟件,軟件啟動(dòng)后,進(jìn)入語(yǔ)音交互狀態(tài),PC機(jī)通過麥克風(fēng)獲取此語(yǔ)音數(shù)據(jù),在將其進(jìn)行語(yǔ)音識(shí)別之后,系統(tǒng)再將該識(shí)別出的命令重新轉(zhuǎn)化成語(yǔ)音請(qǐng)求用戶確認(rèn),在用戶進(jìn)行過確認(rèn)之后,系統(tǒng)把它封裝成一條語(yǔ)音指令,語(yǔ)音指令格式如圖3.2所示。然后PC通過網(wǎng)絡(luò)將其發(fā)送到主控制器上,主控制器上的計(jì)算機(jī)通過幀解析解析出其源MAC地址,將此源MAC地址與合法MAC地址列表中的每項(xiàng)進(jìn)行對(duì)比,當(dāng)發(fā)現(xiàn)其為不合法的MAC地址時(shí),系統(tǒng)不進(jìn)行任何響應(yīng),否則,系統(tǒng)將其重新進(jìn)行紅外編碼,以實(shí)現(xiàn)對(duì)相應(yīng)電器的控制。
語(yǔ)音識(shí)別的過程
通常一般的語(yǔ)音識(shí)別系統(tǒng)具有之前的事先處置鍛煉步驟和鍛煉完成后的判別這兩個(gè)階段。不管是最開始的鍛煉步驟還是鍛煉完成后的識(shí)別步驟,皆必須事先對(duì)輸入到程序內(nèi)的原始聲音數(shù)據(jù)進(jìn)行事先的處置,并提取特征。下面具體說明各個(gè)模塊的基本功能。
(1)預(yù)處理模塊,對(duì)系統(tǒng)檢測(cè)到的原始語(yǔ)音信號(hào)處理,濾除音頻文件中非有效或者是干擾的信息,比如背景噪聲、話筒雜聲等,并檢測(cè)音頻文件中有效的語(yǔ)音信號(hào)的端點(diǎn),也就是確定一下有效的語(yǔ)音是從哪個(gè)點(diǎn)起始到哪個(gè)點(diǎn)收尾,對(duì)信號(hào)分段和預(yù)加重等處置辦法。
(2)特征提取模塊,這一模塊主要工作是要將語(yǔ)音的順序排列,以及計(jì)算特征值,方便為后續(xù)工作提取反應(yīng)信號(hào)特征的關(guān)鍵特征參數(shù)。通常被作為語(yǔ)音識(shí)別特征參數(shù)使用的有幅度、過零率、能量、線性預(yù)測(cè)系數(shù)(LPC)、LPC倒譜系數(shù)(LPCC)、線譜對(duì)參數(shù)(LSP)、短時(shí)頻譜、共振峰頻率、反應(yīng)人耳聽覺特征的Mel頻率倒譜系數(shù)(MFCC)等。特征的選擇和提取是系統(tǒng)構(gòu)建的關(guān)鍵。
(3)訓(xùn)練階段,使用者錄制好多次輸入音頻,程序使用上述步驟運(yùn)行后求到特征矢量參數(shù)(序列),再通過特征建模模塊建立語(yǔ)音訓(xùn)練的參考模式庫(kù),或者對(duì)己在模式庫(kù)中的參考模型作適應(yīng)性修正。
(4)識(shí)別階段,對(duì)用作測(cè)試的輸入語(yǔ)音進(jìn)行相同的特征提取并與之前建立的模式庫(kù)中模板進(jìn)行模式匹配,結(jié)果就是匹配后最像的及路徑最短的那個(gè)模版所代表的識(shí)別結(jié)果。
(5)后處理模塊,處理己得到的匹配結(jié)果,并最終得到模式匹配結(jié)果,綜合其他學(xué)科的專業(yè)知識(shí)(比如:語(yǔ)音學(xué)的語(yǔ)言模型、詞法、句法和語(yǔ)義信息等)的束縛求出想要的輸出結(jié)果。
參考文獻(xiàn)
[1]侯一民,周慧瓊,王政一.深度學(xué)習(xí)在語(yǔ)音識(shí)別中的研究進(jìn)展綜述[J].計(jì)算機(jī)應(yīng)用研究,2017,(08):1-9.
[2]鄧云蹤.百度語(yǔ)音識(shí)別系統(tǒng)入選MIT2016十大突破技術(shù)口叼.人民郵電,2016—02,26(008)
[3]程洋.語(yǔ)音識(shí)別算法研究及DSP實(shí)現(xiàn)[D].安徽理工大學(xué),2015.
[4]盧永輝.語(yǔ)音識(shí)別技術(shù)的關(guān)鍵問題研究[D].陜西師范大學(xué),2014.
[5]A.Si,H.V.Leong,R.H.Lau.CHECK:A Document Plagiarism Detection System.Journal of the ACM Symposium for Applied Computing,2007,8(6):70-77.
[6]麥好.機(jī)器學(xué)習(xí)實(shí)踐指南[M]:案例應(yīng)用解析.機(jī)械工業(yè)出版社,2014.