修海燕,閆德勤
(遼寧師范大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,遼寧 大連 116081)
自適應(yīng)信號(hào)處理已廣泛應(yīng)用于系統(tǒng)辨識(shí)、聲納技術(shù)及圖像處理等相關(guān)領(lǐng)域[1]?;谧赃m應(yīng)濾波理論濾波器參數(shù)可以最佳方式進(jìn)行反復(fù)調(diào)整。Widrow和Hoff在1960年提出了一種簡(jiǎn)單而有效的LMS(Least-Mean-Square)算法。在LMS算法中,確定學(xué)習(xí)步驟μ是一個(gè)基本的問(wèn)題。如果選擇太小,收斂速度將會(huì)非常緩慢,而選擇太大則極易造成不穩(wěn)定[2-3]。盡管Widrow已經(jīng)建議了學(xué)習(xí)步長(zhǎng)的范圍 μ (0<μ<1/λmax,λmax是輸入信號(hào)的最大特征值),保證了算法的收斂,但最佳學(xué)習(xí)步長(zhǎng)選擇問(wèn)題并未得到解決,更多的是采用調(diào)低以取得收斂速度和穩(wěn)定性的折中。這類(lèi)方法大多是僅僅提出一種與失調(diào)情況下的學(xué)習(xí)步調(diào)相關(guān)的抽樣函數(shù)[4-5]。最近的研究提供了一種新的可變步長(zhǎng)的LMS算法,學(xué)習(xí)步長(zhǎng)由BP神經(jīng)網(wǎng)絡(luò)(BP-LMS)控制。使用BP神經(jīng)網(wǎng)絡(luò)來(lái)構(gòu)建一個(gè)嵌入在輸入向量、偏差以及學(xué)習(xí)步長(zhǎng)之間的模塊。由于對(duì)BPLMS算法最重要的工作是設(shè)置BP神經(jīng)網(wǎng)絡(luò)控制,假設(shè),如果輸入信號(hào)相同,則只需要構(gòu)建一個(gè)BP神經(jīng)網(wǎng)絡(luò)即可控制幾個(gè)自適應(yīng)濾波器的學(xué)習(xí)步驟。此外,實(shí)驗(yàn)結(jié)果表明,BP-LMS算法能在濾波器穩(wěn)定運(yùn)行的狀態(tài)下提高收斂速度。
自適應(yīng)濾波器的實(shí)現(xiàn)如圖1所示。圖中 s(n)、v(n)、d(n)、e(n)分別是輸入的信號(hào)、噪聲、設(shè)定值以及偏差。LMS算法由以下方程描述:
圖1 自適應(yīng)濾波器原理
式中,μ為學(xué)習(xí)的步長(zhǎng),X(n)為采樣時(shí)間n時(shí)的輸入向量,W(n)為自適應(yīng)濾波器的系數(shù)向量;尺寸為自適應(yīng)濾波器的步長(zhǎng),d(n)為期望輸出值,e(n)為偏差。
收斂速度和穩(wěn)態(tài)失調(diào)量是評(píng)估自適應(yīng)濾波器性能的兩個(gè)重要因素。當(dāng)減少學(xué)習(xí)步長(zhǎng)μ時(shí),可以減少穩(wěn)態(tài)失調(diào)量,但也減慢了收斂過(guò)程;增加μ時(shí),收斂的速度增加了,濾波器的失調(diào)量輸出也隨之增加。
本文將尋找最佳的學(xué)習(xí)步長(zhǎng),在適當(dāng)?shù)氖諗克俣认芦@得最佳失調(diào)量。假設(shè)一種新的LMS算法,學(xué)習(xí)步長(zhǎng)被輸入向量及偏差所影響,而之前尋找最佳步長(zhǎng)的經(jīng)驗(yàn)也有助于自適應(yīng)過(guò)程的后一階段尋找最佳學(xué)習(xí)步長(zhǎng)。由于諸如自學(xué)習(xí)等方法的非線性解決能力強(qiáng),本文中采用了人工神經(jīng)網(wǎng)絡(luò)(ANN),用神經(jīng)網(wǎng)絡(luò)確定自適應(yīng)濾波器的學(xué)習(xí)步長(zhǎng)是克服收斂速度和穩(wěn)態(tài)失調(diào)量矛盾的一種很好的辦法。
ANN使用的神經(jīng)細(xì)胞群形成了一個(gè)網(wǎng)絡(luò),可以模擬任何復(fù)雜的非線性系統(tǒng)。ANN有許多重要的特征,如自學(xué)習(xí)、自組織、自適應(yīng)及容錯(cuò)能力等[6]。近期來(lái),ANN在許多應(yīng)用中取得了很好的結(jié)果,特別是多層前饋神經(jīng)網(wǎng)絡(luò)(MFNN),是一種解決實(shí)際工程問(wèn)題的有效工具。
由于隱藏單元引入ANN,使ANN具有了更強(qiáng)的分類(lèi)和記憶能力。學(xué)習(xí)復(fù)雜的多層網(wǎng)絡(luò)模型最流行、有效又簡(jiǎn)單的方法是20世紀(jì)70年代發(fā)展起來(lái)的前饋、反向傳播架構(gòu)。它的優(yōu)勢(shì)表現(xiàn)在對(duì)不確定問(wèn)題的非線性解決能力,已在多種場(chǎng)合得到應(yīng)用。典型的反向傳播(BP)網(wǎng)絡(luò)有一個(gè)輸入層、一個(gè)輸出層,并至少有一個(gè)隱藏層,每一層都連接到下一層。BP網(wǎng)絡(luò)的規(guī)則是:輸入值Xi通過(guò)輸入節(jié)點(diǎn)作用于輸出節(jié)點(diǎn)。
隱藏層通過(guò)非線性變換生成輸出值Yk。每個(gè)網(wǎng)絡(luò)訓(xùn)練樣本為:輸入值 X、期望輸出 t,輸出值 Y和期望值 t的偏差。可以調(diào)整輸入層節(jié)點(diǎn)i和隱藏層節(jié)點(diǎn)j之間的連接權(quán)重Wij、隱藏層節(jié)點(diǎn)j和輸出層節(jié)點(diǎn) t之間的連接權(quán)重Tjk,以及閾值使得偏差呈梯度下降。通過(guò)反復(fù)學(xué)習(xí)和訓(xùn)練,根據(jù)最小允許偏差獲得BP模型參數(shù)(連接權(quán)重和閾值),訓(xùn)練過(guò)程就此完成。
訓(xùn)練后的BP模型參數(shù)指出了輸入信號(hào)和輸出信號(hào)的非線性關(guān)系,數(shù)據(jù)輸入訓(xùn)練過(guò)的BP網(wǎng)絡(luò)可以獲得響應(yīng)結(jié)果。
在大部分可變步長(zhǎng)LMS算法中,學(xué)習(xí)步長(zhǎng)通過(guò)一些采樣函數(shù)獲得偏差決定,但是在BP-LMS中,建立了輸入向量、偏差及學(xué)習(xí)步長(zhǎng)之間的關(guān)聯(lián)。即學(xué)習(xí)步長(zhǎng)被最近的輸入和偏差所影響。
圖2 BP-LMS在自適應(yīng)濾波器內(nèi)的應(yīng)用
BP神經(jīng)網(wǎng)絡(luò)以它強(qiáng)大的非線性解決能力使得BPLMS成為現(xiàn)實(shí)[5]。圖2所示為BP-LMS在自適應(yīng)濾波器中的應(yīng)用原則,s(n)表示采樣時(shí)間n內(nèi)的輸入信號(hào);v(n)為噪聲,與 s(n)無(wú)關(guān)聯(lián);d(n)和 e(n)分別為設(shè)定值和偏差;e(n)和 x(n)為 BP模塊的輸入向量;學(xué)習(xí)步長(zhǎng) μ 為BP網(wǎng)絡(luò)的輸出。因此BP-LMS算法的本質(zhì)是建立一個(gè)BP模型,根據(jù)輸入向量和偏差尋找最佳步長(zhǎng),在訓(xùn)練過(guò)程中需要為它尋找合適的訓(xùn)練樣本、輸入向量、偏差及學(xué)習(xí)步長(zhǎng)之間的關(guān)聯(lián),并集成到BP-LMS算法中去。
在BP模型訓(xùn)練完成之后,BP模型的參數(shù)代表了輸入向量、偏差和最佳學(xué)習(xí)步長(zhǎng)之間的非線性關(guān)聯(lián)。因此BP-LMS算法根據(jù)以下方程更新濾波器的參數(shù):
在以上方程列表中,β是在采樣時(shí)間n中根據(jù)輸入向量x(n)和偏差e(n)得到的 BP模型的輸出。為保證BP-LMS 算 法的收斂,β 必 須<n/λmax(λmax是輸入信 號(hào) 的最大特征值),且為正數(shù)。使用μmin(很小的小數(shù)),以確保μ仍然是受變化的誤差和輸入信號(hào)的影響,而β非常接近于零,從而提高了算法的收斂速度。在實(shí)際應(yīng)用中,μmax和 μmin可由實(shí)驗(yàn)得出[5]。
神經(jīng)網(wǎng)絡(luò)成功地將先驗(yàn)知識(shí)導(dǎo)入到LMS算法,保證了濾波器更快地收斂,顯示出BP-LMS具備智能控制的能力。
BP-LMS算法最重要的是建立一個(gè)BP神經(jīng)網(wǎng)絡(luò),然后尋找學(xué)習(xí)樣本,并進(jìn)行訓(xùn)練。由于在工程應(yīng)用中自適應(yīng)濾波器的大部分輸入信號(hào)相似,因此為了避免巨大的訓(xùn)練樣本搜集和訓(xùn)練工作量,定義如果自適應(yīng)濾波器B和A的輸入信號(hào)類(lèi)似,A已經(jīng)具有了一個(gè)可控的BP網(wǎng)絡(luò),那么這個(gè)BP網(wǎng)絡(luò)可以直接應(yīng)用于B而不必構(gòu)建一個(gè)新的網(wǎng)絡(luò)。
D定義成識(shí)別兩個(gè)濾波器的輸入信號(hào)是否相似的相似因子,歐氏距離公式用于計(jì)算相似因子d,即:
式中,x和θ分別表示兩個(gè)自適應(yīng)濾波器的特征值,k為輸入信號(hào)特征值的數(shù)量。由于相似性是一個(gè)模糊的概念,如d<c,那么這兩個(gè)輸入信號(hào)是相似的,其中c定義成相似范圍,可通過(guò)實(shí)驗(yàn)獲得。
為了證實(shí)BP-LMS算法的有效性,與其他三種LMS算法同時(shí)進(jìn)行仿真比較。(1)標(biāo)準(zhǔn)LMS算法,其學(xué)習(xí)步長(zhǎng)是一個(gè)小的正常數(shù)。(2)歸一化最小均方差(NLMS)算法,其學(xué)習(xí)步長(zhǎng)由以下方程得出:
式中,η是自適應(yīng)常數(shù);δ是正數(shù),它在輸入向量比較小的時(shí)候保證了NLMS比較小,X(n)是在采樣時(shí)間n內(nèi)的輸入信號(hào)值。(3)可變步長(zhǎng)最小均方差(VSS)算法[3],它的學(xué)習(xí)步長(zhǎng)μ(n+1)由以下方程決定:
式中,α 和 γ是 VSS-LMS算法的兩個(gè)參數(shù),e(n)和 μ(n)是采樣時(shí)間n內(nèi)的偏差和學(xué)習(xí)步長(zhǎng)。μmax和μmin的意義與BP-LMS算法中提到的相同。
仿真1:在輸入為標(biāo)準(zhǔn)正弦波信號(hào)的情況下對(duì)四種算法的比較,如圖3所示。
圖3 仿真1中四種算法的性能表現(xiàn)
該濾波器的階數(shù)定為L(zhǎng)=10。
(1)自適應(yīng)濾波器的初始權(quán)重W(n)定義為0。
(2)輸入信號(hào)s(n)是標(biāo)準(zhǔn)正弦波信號(hào)。
(3)加入的噪聲 v(n)是一個(gè)零均值,方差為 0.04的獨(dú)立高斯隨機(jī)序列。
(4)標(biāo)準(zhǔn) LMS算法的不變學(xué)習(xí)步長(zhǎng) μ設(shè)置為 0.005;NLMS自適應(yīng)濾波器的參數(shù) η和 δ分別為0.15和 2;VSS-LMS算法的參數(shù) α和 γ設(shè)為 0.97和 0.000 8,而μmax和 μmin在該算法中為 0.008和 0.000 1;初始學(xué)習(xí)步長(zhǎng)μ(0)設(shè)為 0.003。
(5)平均統(tǒng)計(jì)時(shí)間為 20,樣本容量為 1 000。在 BPLMS自適應(yīng)濾波器里,首先使用greedy算法為BP模型尋找訓(xùn)練樣本,部分訓(xùn)練樣本數(shù)據(jù)如表1所示。
建立一個(gè)BP模型,包含11分量的輸入向量 (假設(shè)自適應(yīng)濾波器的輸入信號(hào)是10,偏差是1),25個(gè)隱藏單元,然后掃描BP模型的輸出以產(chǎn)生最佳的學(xué)習(xí)步長(zhǎng)μ。經(jīng)過(guò)實(shí)驗(yàn), 最佳的 μmax、μmin和相似范圍 c被確定為 0.2、0.005和 0.17。
表1 仿真1 BP模型的部分訓(xùn)練樣本數(shù)據(jù)
可以看出,相比其他三種算法,BP-LMS算法可以使得自適應(yīng)濾波器取得更高的收斂速度。
仿真2:進(jìn)一步評(píng)估BP-LMS算法的性能。在仿真2中,t加入到標(biāo)準(zhǔn)正弦波信號(hào)中的噪聲增加到0.09,其他的參數(shù)與仿真1中相同。
圖4顯示了仿真2中四種算法的性能表現(xiàn)。
圖4 仿真2中四種算法的性能表現(xiàn)
計(jì)算相似因子d用以估計(jì)仿真1與仿真2的輸入信號(hào)是否相似。輸入信號(hào)有兩個(gè)特征值:一個(gè)來(lái)自標(biāo)準(zhǔn)正弦波信號(hào),另一個(gè)來(lái)自高斯白噪聲序列。由于標(biāo)準(zhǔn)正弦波信號(hào)在這兩個(gè)仿真里未改變,因此相似因子只被高斯白噪聲序列的特征值影響。高斯白噪聲序列的方差是作為它的特征值使用的。因此,兩個(gè)輸入信號(hào)的相似因子如下:
即不需要在仿真2中建立新的BP控制網(wǎng)絡(luò),只需要繼續(xù)使用仿真1即可。可以看出被BP-LMS算法調(diào)節(jié)的濾波器可以收斂得更加快速,只需要約150個(gè)迭代周期。但是VSS-LMS、NLMS和標(biāo)準(zhǔn)LMS算法,至少需要250、300和400個(gè)迭代周期來(lái)取得類(lèi)似的效果。
仿真3:四種算法之間的比較,輸入信號(hào)為高斯白噪聲序列:
(1)自適應(yīng)濾波器的階數(shù)L=5。
(2)自適應(yīng)濾波器的權(quán)重定義為 W (n)=[0.25,0.75,1,0.75,0.25]T。
(3)輸入信號(hào) s(n)是零均值,方差 σ2=1的高斯白噪聲隨機(jī)序列。
(4)加入的噪聲 v(n)是一個(gè)零均值,方差為 0.01的獨(dú)立高斯隨機(jī)序列。
(5)標(biāo)準(zhǔn) LMS算法的不變學(xué)習(xí)步長(zhǎng) μ設(shè)置為 0.005,NLMS自適應(yīng)濾波器的兩個(gè)參數(shù)η和δ分別為0.15和2。VSS-LMS算法的參數(shù) α和 γ設(shè)為 0.97和 0.000 8。μmax和 μmin在算法中分別為 0.05和 0.000 5,初始學(xué)習(xí)步長(zhǎng) μ(0)設(shè)為 0.005。
(6)平均統(tǒng)計(jì)時(shí)間為 200,樣本容量為 1 000。
和仿真1相同,首先使用greedy算法為BP模型尋找訓(xùn)練樣本,部分訓(xùn)練樣本數(shù)據(jù)如表2所示。
表2 仿真3BP模型的部分訓(xùn)練樣本數(shù)據(jù)
建立一個(gè)BP模型,包含6分量的輸入向量(假設(shè)自適應(yīng)濾波器的輸入信號(hào)是5,偏差是1),15個(gè)隱藏單元,然后掃描BP模型的輸出以產(chǎn)生最佳的學(xué)習(xí)步長(zhǎng)μ。經(jīng)過(guò)實(shí)驗(yàn), 最佳的 μmax、μmin和相似范圍 c被確定為 0.05、0.000 5和0.22。
仿真 4:輸入信號(hào) s(n)是零均值,方差 σ2=1.21的高斯白噪聲隨機(jī)序列,加入的噪聲v(n)是一個(gè)零均值,方差σ2=0.04的獨(dú)立高斯隨機(jī)序列。其他參數(shù)與仿真3相同。
因此相似因子d在仿真3和仿真4均為:
因此,在仿真3應(yīng)用的控制BP神經(jīng)網(wǎng)絡(luò)同樣可以用在仿真4。
圖5和圖6分別列出了在仿真3和仿真4中四種算法的性能,可以從兩組圖示中獲知該噪聲功率的BPLMS算法具有穩(wěn)定的錯(cuò)誤調(diào)整系統(tǒng),且比其他三種算法收斂速度都快。
圖5 仿真3中四種算法的性能表現(xiàn)
圖6 仿真 4中四種算法的性能表現(xiàn)
四個(gè)模擬實(shí)驗(yàn)結(jié)果都說(shuō)明了BP-LMS算法的功效,及其合理性。
自適應(yīng)濾波算法是信號(hào)處理的重要基礎(chǔ),在各個(gè)領(lǐng)域已取得了廣泛的應(yīng)用。本文提出了BP-LMS算法采用一種新的自適應(yīng)步長(zhǎng)控制技術(shù),新算法中其學(xué)習(xí)的步驟通過(guò)BP神經(jīng)網(wǎng)絡(luò)控制,可用于具有自適應(yīng)濾波應(yīng)用的理想功能,并得以明顯體現(xiàn)。同時(shí)模擬實(shí)驗(yàn)結(jié)果證明了BP-LMS算法的優(yōu)勢(shì)特征,可改進(jìn)保持小錯(cuò)不同環(huán)境條件下的調(diào)整收斂速度,從而使算法的性能得到了改善。
[1]SIMON H K.Adaptive filter theory[M].Fourth Edition,Prentice Hall,2001.
[2]KWONG R,JOHNSTON E W.A Variable step size LMS algorithm[J].IEEE Trans.On Signal Process., 1992,40(7):1633-1642.
[3]ABOULNASR T,MAYYAS K.A robust variable step size LMS-type algorithm: analysis and simulations[J], IEEE Signal Process., 1997,45(3):631-639.
[4]GAO Y,XIE SH.L.A variable step size LMS adaptive filtering algorithm and its analysis[J], Acta.Electronica Sinica, 2001,(29):1094-1097.
[5]QIN J F, ZH J, YANG O.A new variable step size adaptive filtering algorithm [J], Data Collecting and Processing, 1997,12(3):171-194.
[6]ROJAS R.Neural Networks-A Systematic Introduction[M].1996.