安徽城市管理職業(yè)學院 汪丹丹
語音識別技術是讓機器通過識別和理解人類的語音信號,進而聽懂人類的語言。近年來,由于計算機各項功能的日益強大,云計算技術的全面發(fā)展,語音信號處理技術也得到了長足的進步。目前語音識別技術已廣泛應用于醫(yī)療、教育、安全、電信客服等領域,覆蓋人類生活的方方面面。
但在實際應用中仍然會存在較多的問題,比如信道干擾、背景噪音干擾等,這些不確定因素都會對識別率造成很大的影響。另外,在各類嵌入式設備終端上,語音識別系統(tǒng)的運行環(huán)境相對比較差,在系統(tǒng)的效率和效果之間要做好平衡?;谝陨蠁栴},語音識別系統(tǒng)通常從三方面來評價,分別魯棒性、識別率以及響應時間,本文重點關注語音識別系統(tǒng)的識別率和響應時間。本文選擇基于隱馬爾科夫模型(Hidden Markov Model,HMM)的語音識別技術[1]構建了基線系統(tǒng)。在該系統(tǒng)中,影響語音識別系統(tǒng)識別率和響應時間的模塊比較多,但最主要的還是解碼模塊。該模塊通常采用傳統(tǒng)的Viterbi解碼方法,但是在海量命令詞識別時,如車載領域的興趣點(Position of Interesting,POI)識別,搜索空間急劇增大,獲取最優(yōu)解的效率大大降低。針對這類復雜的問題,需要把主要精力放在尋求滿意解上。
遺傳算法(Genetic Algorithm,GA)借鑒了生物學中的染色體和基因的概念,通過模擬自然進化過程,求解滿意解較為有效。它對一個參數(shù)編碼群體進行操作,提供的參數(shù)信息量較大,優(yōu)化效果也相對較好[2-4]。因此,本文將GA算法應用于基線系統(tǒng)的語法網(wǎng)絡搜索模塊,以此來提升該模塊的全局優(yōu)化搜索能力,進而改善系統(tǒng)的識別效果和響應時間。
如圖1所示,系統(tǒng)各部分按照與識別實例關系的不同分為兩大類:實例無關事物和實例相關事物。實例無關事物指的是與識別實例無關的永久性資源:包括拼音到HMM索引表、漢字到HMM的索引表和HMM集合。實例相關的事物則指的是與特定識別實例相聯(lián)系的行為或數(shù)據(jù)。它又可分為四個字模塊:詞典集合、搜索、轉化和錄音模塊。
錄音模塊,負責和錄音設備交互。負責從錄音設備中獲取聲音數(shù)據(jù)。負責自動將含有靜音和語音的數(shù)據(jù)切分出來,提供給轉化使用。
轉化模塊,負責將波形數(shù)據(jù)轉化為特征向量序列。
搜索模塊,負責對特征向量序列在給定的語法網(wǎng)絡中搜索。對每一幀搜索數(shù)據(jù),能夠更新搜索狀態(tài)。搜索狀態(tài)是一個記號集合,每個記號對應于搜索網(wǎng)絡中的一個節(jié)點,同時還包括搜索數(shù)據(jù)到達此節(jié)點的最大概率和路徑,以及內部HMM各狀態(tài)的概率。
詞典集合模塊,負責管理詞典。實際系統(tǒng)支持多個詞典,形成一個詞典可包含多個詞典的詞典集合。每個詞典包含多個詞,可以增加、刪除詞??梢詫⒁粋€詞典生成語法網(wǎng)絡,提供給搜索使用。
圖1 基線系統(tǒng)框架結構
系統(tǒng)有兩種運行狀態(tài):脫機識別和聯(lián)機識別。脫機識別和聯(lián)機識別的區(qū)別在于語音數(shù)據(jù)的來源不同。脫機識別數(shù)據(jù)來自文件,而聯(lián)機是別的數(shù)據(jù)來自麥克風。這兩種狀態(tài)的運行流程如圖2所示。
圖2 語音識別流程
在實際的搜索中,我們通常是將HMM根據(jù)語法的限制連接成一個語法網(wǎng)絡,如圖3就是一個簡單的孤立詞識別系統(tǒng)的語法網(wǎng)絡,語法網(wǎng)絡可以分為三層,如圖4所示。
語法網(wǎng)絡搜索過程又稱為解碼,邏輯上通常將解碼分為兩層,一層是HMM內部狀態(tài)在時刻t的最大概率,另一層是以網(wǎng)絡節(jié)點為單元,它們之間的關系為網(wǎng)絡節(jié)點在時刻t的概率是本HMM內部各狀態(tài)在時刻t的最大值。
傳統(tǒng)的解碼方法是Viterbi解碼,但是在一些應用場合,比如車載領域的POI識別,其命令詞集合非常大,往往有數(shù)十萬條。此時,解碼的搜索空間將急劇增大,而系統(tǒng)的效率、效果將急劇下降。所以,對這類復雜的問題,需要把主要精力放在尋求滿意解上,而GA正是尋求這種滿意解的最佳工具之一。
圖3 孤立詞識別系統(tǒng)的網(wǎng)絡結構
圖4 語法網(wǎng)絡的三層模型[5]
將語法網(wǎng)絡的HMM標號i(i,2,…,N)作為基因,構造有K個命令詞的識別網(wǎng)絡,每個命令詞內存放一類標號,構成遺傳操作的染色體。
初始種群應具有一定的規(guī)模,以保持群體內個體的多樣性。由于GA具有很強的魯棒性,所以如何形成初始種群不影響優(yōu)化結果,只影響優(yōu)化時間??梢詫σ粭l染色體加以隨機擾動產(chǎn)生一定N-1條剩余的染色體。
計算染色體對應的HMM狀態(tài)的似然度估計值,以此作為適應度評價函數(shù)。似然值越大,適應度值也就越大。不過這顯得有些簡單,后續(xù)還可以將似然值進行分段處理,并增加輔助評價函數(shù)。
交叉運算是遺傳算法中產(chǎn)生新個體的主要操作過程,它以某一概率相互交換某兩個個體之間的部分染色體[6]。本文采用單點交叉的方法[7],首先對群體進行隨機配對;其次隨機設置交叉點位置;最后再相互交換配對染色體之間的部分基因。
突變運算是對個體的某一個或某一些基因座上的基因值按某一較小的概率進行改變,它也是產(chǎn)生新個體的一種操作方法[6]。本文采用基本位突變的方法來進行突變運算[8],其具體操作過程是:首先確定出各個個體的基因變異位置,可以隨機產(chǎn)生的變異點位置,然后依照某一概率將變異點的原有基因值取反即可。
在群體演化進程中,系統(tǒng)參數(shù)的最佳設置足隨演化進程不斷變化的,如在演化開始時,群體的多樣性較高,較高的交叉率及交叉操作子權重,較低的突變率及突變操作子權重有利于利用已有好基因塊組成較好的染色體。隨著演化進程的深入,群體的多樣性越來越小,此時,較高的突變率和較高的突變操作子權重有利于群體引進新的基因,保持群體的多樣性,即探索新的解空間。
為充分發(fā)揮各遺傳操作子的搜索能力,已有多種系統(tǒng)參數(shù)動態(tài)設置方案提出。本文采用一種較簡單的方法[5],突變率及突變操作了權重隨進化進程指數(shù)遞增,而交叉率及交叉操作子權重進化進程指數(shù)遞減。
設pc(0),pm(0)為初始交叉率及突變率,Tc、Tm為預設的最小交叉率及最大突變率。在t時刻,交叉率及突變率為:
其中,演化時間t可以是群體更新次數(shù),也可是固定演化時間間隔的記數(shù)。
傳統(tǒng)的解碼方法是Viterbi解碼,但是在海量命令詞識別時,如車載領域的POI識別,搜索空間急劇增大,獲取最優(yōu)解的效率大大降低。所以,對這類復雜的問題,需要把主要精力放在尋求滿意解上,本文應用GA方法進行語法網(wǎng)絡搜索,求解滿意解,提升了該方法的全局優(yōu)化搜索能力。
在GA方法中,適應度評價函數(shù)的設計至關重要,本文以計算染色體對應的HMM狀態(tài)的似然度估計值作為適應度函數(shù),似然值越大,適應度越好。但這顯得有些簡單,后續(xù)研究還可以將似然值進行分段處理,并增加輔助評價函數(shù)。
另外,GA解碼得到的搜索結果不唯一,但都是滿意解,因此可以稱之為“模糊搜索”,與“精確搜索”相對應,是語音識別領域的一種全新的應用理念。
[1]韓紀慶.語音信號處理[M].北京:清華大學出版社,2010.[2]Holland J.H.Adaptation in Natural and Artificial Systems[M].The University of Michigan Press.1975.
[3]宋小鵬,潘宏俠,宋叔飚.遺傳神經(jīng)網(wǎng)絡在語音識別中的應用研究[J].機械工程與自動化,2006,6(3):25-26.
[4]劉占軍,兆爾波.基于遺傳算法提高計算機連續(xù)語音識別率的研究[J].沈陽航空航天大學學報,2005(1).
[5]賀前華,韋崗,金連文.基于遺傳算法的HMM最小錯識率訓練方法[J].電路與系統(tǒng)學報,1999,4(4):46-50.
[6]玄光南.遺傳算法與工程優(yōu)化[M].北京:清華大學出版社,2012.
[7]林惠娟.基于遺傳算法的測試用例自動生成技術研究[D].四川大學,2006.
[8]劉秋生,楊繼昌.遺傳優(yōu)化閾值選取加速算法研究[J].江蘇大學學報(自然科學版),2003(3).