趙 群
(渤海船舶職業(yè)學(xué)院,遼寧 葫蘆島125003)
語(yǔ)音識(shí)別技術(shù)經(jīng)過幾十年的發(fā)展,目前已經(jīng)取得了長(zhǎng)足的進(jìn)步。實(shí)際環(huán)境中總是存在各種各樣的噪聲,噪聲的存在會(huì)使得所提取的語(yǔ)音特征參數(shù)數(shù)據(jù)產(chǎn)生偏差,噪聲越大所產(chǎn)生的偏差也會(huì)越嚴(yán)重,從而使識(shí)別系統(tǒng)的性能下降,正確識(shí)別率會(huì)降低直至識(shí)別系統(tǒng)完全失效。
長(zhǎng)期以來(lái),語(yǔ)音識(shí)別系統(tǒng)大多采用概率統(tǒng)計(jì)模型,概率統(tǒng)計(jì)模型適合于對(duì)海量數(shù)據(jù)進(jìn)行訓(xùn)練,從本質(zhì)上來(lái)說,它是是一種淺層網(wǎng)絡(luò)建模,所以概率統(tǒng)計(jì)模型是不能充分描述特征的狀態(tài)空間分布的。人工神經(jīng)網(wǎng)絡(luò)的原理是模擬人腦的多層結(jié)構(gòu),通過采取逐級(jí)進(jìn)行信息特征抽取的方式,最終得到適合進(jìn)行模式分類的性能優(yōu)良的特征,從而大幅度提升語(yǔ)音識(shí)別系統(tǒng)的識(shí)別率。
蟻群優(yōu)化(Ant Colony Optimization,ACO)算法是一種優(yōu)化算法,該算法根據(jù)多個(gè)螞蟻算法所歸納得出,用于解決復(fù)雜的組合優(yōu)化問題[1]。本文首先對(duì)蟻群算法的原理和算法的結(jié)構(gòu)框架進(jìn)行研究,在此基礎(chǔ)上,把蟻群優(yōu)化算法與小波神經(jīng)網(wǎng)絡(luò)進(jìn)行有機(jī)的組合,建立蟻群優(yōu)化小波神經(jīng)網(wǎng)絡(luò)。研究了蟻群優(yōu)化算法訓(xùn)練小波神經(jīng)網(wǎng)絡(luò)的基本原理和方法步驟。并與BP 算法、遺傳算法、模擬退火算法進(jìn)行性能比較,將各種方法訓(xùn)練的小波神經(jīng)網(wǎng)絡(luò)用于噪聲背景下的語(yǔ)音識(shí)別,最后,進(jìn)行仿真實(shí)驗(yàn)來(lái)驗(yàn)證所研究方法的有效性。
小波神經(jīng)網(wǎng)絡(luò)(Wavelet Neural Network,WNN)是一種比較新穎的神經(jīng)網(wǎng)絡(luò)模型,該模型是基于小波變換所構(gòu)造而成的,小波神經(jīng)網(wǎng)絡(luò)結(jié)合小波變換和神經(jīng)網(wǎng)絡(luò)的特點(diǎn)(小波變換良好的高頻域時(shí)間精度、低頻域頻率精度,神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)能力),因而具有很強(qiáng)的容錯(cuò)能力和逼近性能。
小波變換定義如下:
設(shè)ψ(t)∈L2(R),(L2(R)代表的是實(shí)數(shù)空間,該空間平方可積,即能量有限),對(duì)ψ(t)進(jìn)行傅里葉變換,結(jié)果用Ψ(ω)表示。當(dāng)Ψ(ω)滿足條件
時(shí),ψ(t)被稱作是基本小波或者稱作母小波(Mother Wavelet),將母小波函數(shù)ψ(t)進(jìn)行伸縮變換和平移變換以后,得到的將是一個(gè)小波序列:
式中a 為伸縮因子,b 為平移因子。
對(duì)于任意的函數(shù)f(t)∈L2(R),其小波變換定義為:其逆變換(重構(gòu)公式)為:
將(4)式離散化,可以得到:
公式(5)中k 表示的是小波基的個(gè)數(shù),對(duì)公式(5)的理解是:由加權(quán)小波基做線性疊加可以構(gòu)建得到原信號(hào)函數(shù)。公式(6)給出的是一個(gè)三層前向神經(jīng)網(wǎng)絡(luò)的輸出:
式中i 代表的是第i 個(gè)神經(jīng)元的序號(hào),神經(jīng)元激勵(lì)函數(shù)用f(x)表示,加權(quán)系數(shù)為ωi,xi代表輸入,θi表示偏移量。
將公式(5)和公式(6)進(jìn)行對(duì)比,可以得出,可以基于以上知識(shí)來(lái)構(gòu)造一個(gè)三層的神經(jīng)網(wǎng)絡(luò),然后選取合適的小波基,將小波基進(jìn)行線性加權(quán)疊加求和從而逼近非線性函數(shù),即公式(5)。小波神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)參見圖1。
圖1 小波神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
蟻群算法是一種仿生進(jìn)化算法,是在20世紀(jì)90年代初提出的,該算法是一種啟發(fā)式搜索方法,具有離散性、并行性、魯棒性、正反饋性等特點(diǎn)。和其他的模擬進(jìn)化算法,如粒子群算法、人工蜂群算法等進(jìn)行比較,這些算法的共同點(diǎn)都是通過在進(jìn)化過程中對(duì)候選解組成的群體進(jìn)行最優(yōu)解的尋找[1,2]。
螞蟻、白蟻、蜜蜂、黃蜂等社會(huì)性昆蟲的個(gè)體行為是很簡(jiǎn)單的,但是一個(gè)群體(colony)的集體行為卻是復(fù)雜的。它們可以通過跟隨其它個(gè)體所留下的蹤跡等簡(jiǎn)單的相互作用方式,來(lái)對(duì)困難的問題進(jìn)行求解,比如,可以從眾多的路徑之中選擇出通往食物源的一條最短的路徑。這種由一組社會(huì)昆蟲表現(xiàn)出的集體行為稱為群體智能(Swarm Intelligence)。
群體智能具有靈活性、容錯(cuò)性、自組織特征,這些特點(diǎn)使得一個(gè)群體能夠適應(yīng)變化的環(huán)境,在一個(gè)或多個(gè)個(gè)體失敗的情況下,群體能夠仍然完成任務(wù),并且其行動(dòng)既沒有集中控制也沒有局部監(jiān)視。ACO 算法有很重要的2 個(gè)特征,第一個(gè)特征是正反饋過程,它是螞蟻在群體覓食的過程中表現(xiàn)出來(lái)的,在正反饋過程中,通過反饋機(jī)制的調(diào)節(jié),系統(tǒng)的較優(yōu)解會(huì)實(shí)現(xiàn)自身的增強(qiáng),就會(huì)使得問題的求解趨于全局最優(yōu),第二個(gè)特征是能夠?qū)崿F(xiàn)分布式并行計(jì)算,能同時(shí)在全局中的很多點(diǎn)上搜索解,避免使算法陷入局部最優(yōu)[4,5]。
本文利用ACO 算法的全局最優(yōu)化特征及ACO 的啟發(fā)式尋優(yōu)特征來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)的權(quán)值,從而達(dá)到智能尋優(yōu)神經(jīng)網(wǎng)絡(luò)模型的目的[6-8]。對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練要基于如下原理:首先設(shè)定神經(jīng)網(wǎng)絡(luò)中有M 個(gè)參數(shù),包括所有的權(quán)值參數(shù)和所有的閾值參數(shù);然后對(duì)所有參數(shù)進(jìn)行排序,對(duì)參數(shù)Pi(1 ≤i ≤M),將屬于該參數(shù)的所有的可能值進(jìn)行組合,形成一個(gè)參數(shù)集合ΩPi,接下來(lái)定義一個(gè)螞蟻群體,該群體具有一定數(shù)量;讓螞蟻群體從蟻巢開始出發(fā),進(jìn)行覓食;根據(jù)集合中各個(gè)元素的狀態(tài)信息,螞蟻從第1 個(gè)集合出發(fā),從集合ΩPi(1 ≤i ≤M)按照隨機(jī)的方式選取一個(gè)元素,同時(shí)調(diào)節(jié)所選取元素的信息素,當(dāng)每一只螞蟻都完成對(duì)集合中元素的選擇以后,螞蟻就到達(dá)了食物源,而后,按照前面所走過的路徑再向蟻巢返回,調(diào)節(jié)相應(yīng)元素的信息素,經(jīng)過這樣反復(fù)的迭代,螞蟻?zhàn)詈髮?shí)現(xiàn)最優(yōu)參數(shù)的求解。
設(shè)有N 個(gè)螞蟻,集合ΩPi(1 ≤i ≤M)有Dpi個(gè)元素,Pj(Ωpi)表示集合中第j 個(gè)元素的信息素。
蟻群進(jìn)行搜索時(shí),每一個(gè)螞蟻在各個(gè)時(shí)間步驟之內(nèi)只能選1 個(gè)元素,并且,在每一個(gè)時(shí)間步內(nèi),不同的螞蟻所選擇的元素的隸屬集合是各不相同的。
此外,螞蟻所選擇的元素信息素的增量用符號(hào)I 表示,信息素的發(fā)揮用符號(hào)E 表示,如果E <0,則令E 恒等于0[9-11]。
第一步:初始化集合ΩPi(1 ≤i ≤M)中的每個(gè)元素的信息素Pj(Ωpi),讓N 只螞蟻從蟻巢出發(fā),每一只螞蟻都執(zhí)行第二步操作。
第二步:從集合1 開始,依據(jù)路徑選擇規(guī)則,每次讓螞蟻在每個(gè)集合中選擇一個(gè)元素,然后給信息素一個(gè)增量I。
第三步:當(dāng)所有螞蟻對(duì)元素完成選擇后,對(duì)每個(gè)元素的信息量進(jìn)行調(diào)整,減去E。
第四步:從所有集合中對(duì)每一只螞蟻進(jìn)行元素的選擇,之后執(zhí)行第三步操作,沿著前面走過的路徑向蟻巢折返,根據(jù)信息素調(diào)節(jié)的規(guī)則,對(duì)所選的元素的信息素提供一個(gè)增量。當(dāng)所有的螞蟻都返回蟻巢之后,轉(zhuǎn)到第二步2。同時(shí),對(duì)每一個(gè)時(shí)間步,都執(zhí)行第三步操作。
信息素的調(diào)節(jié)需要遵循一定的規(guī)則:對(duì)每一只螞蟻,當(dāng)它從食物源返回蟻巢的期間內(nèi),根據(jù)如下公式(7)來(lái)實(shí)現(xiàn)信息素的調(diào)節(jié)。
在式(7)中,Ppl表示與元素pl 相對(duì)應(yīng)的信息素,c 是一個(gè)常數(shù),常數(shù)c 的作用是調(diào)節(jié)信息素的速度,e表示的是所進(jìn)行的采樣值的輸出誤差的最大值。
K 代表的是樣本的個(gè)數(shù),神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出用On表示,神經(jīng)網(wǎng)絡(luò)的期望輸出用Oex表示。誤差的大小反映信息素的水平,誤差越小,相應(yīng)信息素的增加的就越多。
步驟5:對(duì)上面的幾個(gè)步驟進(jìn)行重復(fù),直到所有蟻群都尋找到最優(yōu)的參數(shù)[6-9]。
為了對(duì)蟻群優(yōu)化算法進(jìn)行性能的評(píng)價(jià),本論文進(jìn)行了如下的仿真實(shí)驗(yàn)。實(shí)驗(yàn)網(wǎng)絡(luò)選用前向神經(jīng)網(wǎng)絡(luò),對(duì)公式(9)的函數(shù)進(jìn)行逼近。蟻群規(guī)模為100,神經(jīng)網(wǎng)絡(luò)的輸入層設(shè)定為1 個(gè)神經(jīng)元,神經(jīng)網(wǎng)絡(luò)隱層設(shè)定為8 個(gè)神經(jīng)元,輸出層為1 個(gè)神經(jīng)元,并與BP 算法、遺傳算法、模擬退火算法進(jìn)行性能比較,實(shí)驗(yàn)結(jié)果如表1所示。本文還針對(duì)不同噪聲背景下的語(yǔ)音識(shí)別進(jìn)行了仿真實(shí)驗(yàn),實(shí)驗(yàn)數(shù)據(jù)是由女聲數(shù)據(jù)組成,在實(shí)驗(yàn)室環(huán)境下錄制,80 個(gè)人的錄音,每人40 個(gè)詞,每個(gè)詞15 遍。本論文將實(shí)驗(yàn)室環(huán)境下所錄制的語(yǔ)音視為純凈語(yǔ)音,然后將語(yǔ)音數(shù)據(jù)分別施加不同信噪比的白噪聲、公交車內(nèi)噪聲、音樂噪聲,形成5dB、10dB、15dB、20dB 信噪比的帶噪信號(hào)。語(yǔ)音采樣率為10KHz,其中前70 人的數(shù)據(jù)作為訓(xùn)練集,后10 人的數(shù)據(jù)作為測(cè)試集。每個(gè)語(yǔ)音文件分幀長(zhǎng)度為30ms,幀移10ms。語(yǔ)音特征參數(shù)為提取每幀語(yǔ)音的歸一化能量和每幀語(yǔ)音的12 維MFCC 系數(shù),計(jì)算混合參數(shù)的一階差分、二階差分系數(shù),這樣一共構(gòu)成39 維的特征參數(shù)矢量。實(shí)驗(yàn)結(jié)果如表2所示。
表1 4 種模型訓(xùn)練函數(shù)的比較
圖2 不同信噪比條件下4 種模型的平均識(shí)別率比較
由表1、圖2的數(shù)據(jù)可以看出,相比于BP 算法、遺傳算法、模擬退火算法,算法在小波神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方面具有較大的優(yōu)勢(shì),相同的迭代次數(shù),ACOMH 算法的均方誤差最小。從語(yǔ)音識(shí)別的實(shí)驗(yàn)結(jié)果來(lái)看,ACOMH 算法訓(xùn)練的小波神經(jīng)網(wǎng)絡(luò)具有更強(qiáng)的抗噪識(shí)別性能,是一種有效的抗噪語(yǔ)音識(shí)別方法。
本文對(duì)ACO 算法的原理和小波神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)及原理進(jìn)行了研究,應(yīng)用蟻群優(yōu)化算法來(lái)訓(xùn)練小波神經(jīng)網(wǎng)絡(luò),對(duì)其基本原理和步驟進(jìn)行了研究,與遺傳算法、模擬退火算法以及BP 算法進(jìn)行了實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)仿真結(jié)果表明,ACO 算法具有更快的收斂速度,獲得的均方誤差更小,在算法的收斂上具有更加明顯的優(yōu)勢(shì)和穩(wěn)定性,對(duì)于抗噪聲語(yǔ)音識(shí)別來(lái)說,該算法訓(xùn)練的神經(jīng)網(wǎng)絡(luò)也具有更優(yōu)越的識(shí)別性能。
[1]Amr Badr,Ahmed Fahmy.A Proof of Convergence for Ant Algorithms[J].Information Sciences.2004,16:267-279.
[2]GUO ZhiHua,CAO HuaiXin,CHEN ZhengLi&YIN JunCheng.Operational properties and matrix representations of quantum measures[J].Chinese Science Bulletin,2011,56(16):1671-1678.
[3]Dahl G E,Ranzato M,Mohamed A,et al.Phone recognition with the mean-covariance restricted Boltzmann machine[J].Advances in Neural Information Processing Systems,2010,23:469-477.
[4]Thomas Stutzle,Marco Dorigo.A Short Convergence Proof for a Class of Ant Colony 0ptimization Algorithms[J].IEEE Trans on Evolutionary Computation.2002,6(4):358-365.
[5]宋崇智,王璐.基于蟻群優(yōu)化算法的神經(jīng)網(wǎng)絡(luò)訓(xùn)練的研究[J].自動(dòng)化與儀表,2006(5):10-12.
[6]張航,羅熊.蟻群優(yōu)化算法的研究現(xiàn)狀及研究展望[J].信息控制,2004,33(3):3l8-324.
[7]詹士昌,徐婕,吳俊.蟻群算法中有關(guān)算法參數(shù)的最優(yōu)組合選擇[J].科技通報(bào),2003,19(5):29-34.
[8]Maniezzo V,Colorni A,Dorigo M.The Ant System Applied to the Quadratic Assignment Problem[J].1EEE Trans on Knowledge and Data Engineering,1999,l1(5):769-778.
[9]W.J.Gutjahr.A graph—based ant system and its convergence[J].Future Generation Computer System,2000,16:837-888.
[10]胡娟,王廠慶,韓偉.蟻群算法及其實(shí)現(xiàn)方法研究[J].計(jì)算機(jī)仿真,2004,21(7):110-114.
[11]錢曉山.一種改進(jìn)的混沌粒子群優(yōu)化混合算法[J].應(yīng)用科技.2012,39(1):5-8.