郭繼昌,張 雪,邱琳耀
(天津大學(xué)電子信息工程學(xué)院,天津 300072)
一種改進(jìn)的PNLMS自適應(yīng)濾波算法
郭繼昌,張 雪,邱琳耀
(天津大學(xué)電子信息工程學(xué)院,天津 300072)
比例歸一化最小均方算法PNLMS(proportionate NLMS)引入步長控制矩陣,為濾波器不同的系數(shù)賦予不同的Proportionate步長,從而加快了算法的初始收斂速度,但其后期收斂速度下降,甚至比NLMS收斂速度還慢.針對(duì)此問題提出一種改進(jìn)的PNLMS算法,通過定量分析濾波器系數(shù)的收斂過程,在迭代過程中建立了Proportionate步長與濾波器當(dāng)前系數(shù)幅值之間的非線性函數(shù)關(guān)系——倒數(shù)關(guān)系,較大幅度地降低了算法的復(fù)雜度.仿真結(jié)果表明,該算法的收斂速度和穩(wěn)定性優(yōu)于PNLMS算法及其改進(jìn)算法MPNLMS,并且算法的計(jì)算復(fù)雜度遠(yuǎn)低于MPNLMS算法.
自適應(yīng)濾波;回聲消除;PNLMS算法
近年來,隨著互聯(lián)網(wǎng)和移動(dòng)通信的快速發(fā)展,回聲消除技術(shù)面臨著新的挑戰(zhàn).傳統(tǒng)的最小均方(least mean squares,LMS)算法和歸一化最小均方(normalized LMS,NLMS)算法等自適應(yīng)濾波算法因其結(jié)構(gòu)簡單、算法復(fù)雜度低,廣泛用于噪聲消除和回聲消除中[1-3],但因網(wǎng)絡(luò)回聲的路徑長度比傳統(tǒng)電話網(wǎng)絡(luò)的回聲路徑大,使得LMS算法和NLMS算法收斂速度慢,達(dá)不到實(shí)時(shí)處理的需求.基于sigmoid函數(shù)的LMS算法及其改進(jìn)算法收斂速度快[4-5],但跟蹤能力較差,易受輸入噪聲影響,在低信噪比環(huán)境下該算法的收斂速度和穩(wěn)定性并不十分理想.選擇性部分更新最小均方(selective partial update LMS,SPU LMS)算法及其改進(jìn)算法是在每次迭代中進(jìn)行部分濾波器系數(shù)的更新,該類算法收斂速度快,但算法的復(fù)雜度較高[6-7].
根據(jù)網(wǎng)絡(luò)回聲路徑的稀疏性,Duttweiler[8]引入了適當(dāng)自適應(yīng)的思想,在歸一化LMS的基礎(chǔ)上形成了比例歸一化最小均方(proportionate NLMS,PNLMS)算法.在該算法中各個(gè)濾波器系數(shù)的Proportionate步長(P步長)與當(dāng)時(shí)的濾波器系數(shù)幅值成正比,有助于使大抽頭系數(shù)比小抽頭系數(shù)獲得更快的調(diào)整,從而加快了算法的初始收斂速度.但是當(dāng)大抽頭系數(shù)快速收斂后,剩下的小抽頭系數(shù)收斂速度下降,甚至比NLMS算法收斂速度還慢.因此很多學(xué)者針對(duì)PNLMS算法后期收斂速度較慢的缺點(diǎn)進(jìn)行了研究和改進(jìn).
文獻(xiàn)[9]提出的PNLMS++算法在抽頭系數(shù)更新的過程中交替使用NLMS和PNLMS兩種算法,來彌補(bǔ)PNLMS后期收斂速度慢的缺點(diǎn),但未能從根本上解決收斂速度問題.文獻(xiàn)[10]提出的復(fù)合型比例歸一化最小均方(composite PNLMS,CPNLMS)算法通過設(shè)定閾值,比較誤差信號(hào)功率和閾值大小,來判斷算法是否從PNLMS切換至NLMS,但是閾值的選取具有較大的隨意性,因此該算法不具有通用性.文獻(xiàn)[11]提出的IPNLMS算法將濾波器當(dāng)前抽頭系數(shù)的均值加到比例步長參數(shù)上,保證每個(gè)抽頭系數(shù)的比例步長參數(shù)具有合理的值,增加了全局步長的迭代,但增大了算法的復(fù)雜度.文獻(xiàn)[12]提出的MPNLMS(μ-law PNLMS)算法通過定量分析濾波器系數(shù)的收斂過程,平衡了濾波器大、小系數(shù)之間的更新,得到了最優(yōu)的步長控制矩陣,克服了PNLMS后期收斂速度慢的缺陷,但是MPNLMS算法含有對(duì)數(shù)運(yùn)算,算法復(fù)雜度很高.為降低算法復(fù)雜度,文獻(xiàn)[13]提出了SPNLMS算法,將對(duì)數(shù)運(yùn)算簡化為兩段折線.此外,文獻(xiàn)[14]提出一種改進(jìn)的MPNLMS算法,采用多個(gè)分段函數(shù)來近似MPNLMS的對(duì)數(shù)函數(shù),從而降低算法的復(fù)雜度.文獻(xiàn)[15]對(duì)SPNLMS算法進(jìn)行了改進(jìn),設(shè)濾波器長度為L,運(yùn)算過程中每L次迭代計(jì)算1次步長控制矩陣,從而降低算法復(fù)雜度.這些對(duì)MPNLMS算法的改進(jìn)在降低算法復(fù)雜度的同時(shí),收斂速度和穩(wěn)定性均有不同程度的下降.
本文針對(duì)MPNLMS算法復(fù)雜度過高的問題進(jìn)行了改進(jìn).通過定量分析濾波器系數(shù)的收斂過程,得到算法收斂所需的最小迭代次數(shù),根據(jù)最小迭代次數(shù)進(jìn)一步推導(dǎo)出P步長與濾波器系數(shù)之間的倒數(shù)關(guān)系,然后將P步長用于步長控制矩陣的更新過程,為各個(gè)濾波器系數(shù)賦予不同的步長.本文算法計(jì)算復(fù)雜度遠(yuǎn)小于MPNLMS,而收斂速度優(yōu)于MPNLMS算法.
PNLMS算法的系數(shù)更新方程可寫為
式中:d(k)為期望響應(yīng);e(k)為誤差信號(hào);U(k)為輸入信號(hào);W?(k)為抽頭系數(shù);β為全局控制參數(shù),控制算法的穩(wěn)態(tài)失調(diào)和收斂速度;δ為調(diào)整參數(shù),防止分母為零的情況出現(xiàn).
算法引入了步長控制矩陣G(k+1),為各個(gè)濾波器系數(shù)賦予不同的步長.G(k+1)可表示為
G(k+1)按如下遞歸關(guān)系進(jìn)行計(jì)算:
式中:δp為修正系數(shù),防止權(quán)系數(shù)全為零時(shí)gl(k+1)不成立;ρ一般取在1/L~5/L之間;L為濾波器長度;γmin為防止抽頭權(quán)值遠(yuǎn)小于濾波器最大抽頭權(quán)值時(shí)發(fā)生迭代停頓而設(shè)置.
MPNLMS算法比其他的系數(shù)比例自適應(yīng)算法的收斂速度快,而且當(dāng)目標(biāo)沖激響應(yīng)的稀疏度不是很大時(shí),收斂速度也不會(huì)惡化很多.但是MPNLMS包含了L次的對(duì)數(shù)運(yùn)算,不管是在DSP平臺(tái)還是在PC平臺(tái),對(duì)數(shù)運(yùn)算的計(jì)算量都很大.因此,很多學(xué)者提出了改進(jìn)算法,比較典型的是SPNLMS算法,在此算法中將對(duì)數(shù)函數(shù)關(guān)系近似為折線形式,表達(dá)式如下:
SPNLMS算法雖然極大地降低了算法復(fù)雜度,但收斂速度也相應(yīng)下降.
由于PNLMS算法過分強(qiáng)調(diào)大系數(shù)的收斂,忽略了小系數(shù)因P步長過小無法及時(shí)收斂,導(dǎo)致算法后期收斂速度慢,因此P步長的引入必須均衡大、小系數(shù)的更新,使小系數(shù)也能及時(shí)收斂.MPNLMS算法的P步長計(jì)算函數(shù)建立了P步長與當(dāng)前濾波器系數(shù)幅值的對(duì)數(shù)關(guān)系,改善了PNLMS算法后期收斂速度慢的缺陷,但是對(duì)數(shù)運(yùn)算的復(fù)雜度很高,不利于系統(tǒng)的實(shí)時(shí)處理.為此,本文在定量分析濾波器的收斂過程后建立一種新的P步長與當(dāng)前濾波器系數(shù)幅值的函數(shù)關(guān)系,以均衡大、小系數(shù)的收斂,且盡量降低算法的復(fù)雜度.
2.1改進(jìn)的PNLMS算法推導(dǎo)
由文獻(xiàn)[16]可知系數(shù)比例自適應(yīng)算法的標(biāo)準(zhǔn)形式為
式中:β=1Lσx2;R為輸入信號(hào)的自相關(guān)矩陣,R=E[U(k)UT(k )].
2.1.1改進(jìn)的PNLMS算法收斂所需的最小迭代次數(shù)
引入獨(dú)立性假設(shè),假設(shè)輸入為高斯白噪聲信號(hào),則有R=σX2I,記則式(11)化簡為由此可得自適應(yīng)濾波器各系數(shù)收斂公式為
通過設(shè)定小步長μ可保證0<λgl(k )?1,式(13)可化簡為
式(16)即為本文算法整體收斂所需要的最少迭代次數(shù).
2.1.2P步長計(jì)算公式
根據(jù)式(16),當(dāng)所有濾波器系數(shù)收斂于目標(biāo)值時(shí)可以取得最快的收斂速度,此時(shí)kmin=k1=k2=…=kL.引入G(k)時(shí)不變假設(shè),由式(13)可得
因0<λgl(k )?1,本文忽略λgl的平方及高次冪的多項(xiàng)式的影響,將近似為結(jié)合式(16)可得P步長計(jì)算公式,即
ε是與算法收斂標(biāo)準(zhǔn)相關(guān)的參數(shù),根據(jù)文獻(xiàn)[17]建議取值為0.001,當(dāng)時(shí),可判斷濾波器系數(shù)已收斂于目標(biāo)值,因此,的計(jì)算公式為
式(19)就是本文推導(dǎo)出的P步長計(jì)算函數(shù)公式,由此得到了改進(jìn)的PNLMS算法.由式(19)可以看出,在改進(jìn)PNLMS算法中,用P步長與當(dāng)前濾波器系數(shù)幅值的倒數(shù)關(guān)系代替MPNLMS中的對(duì)數(shù)關(guān)系.后面的實(shí)驗(yàn)將證明,這樣一個(gè)關(guān)系的改變,既保證了小系數(shù)在大系數(shù)快速收斂后能得到較快的收斂,提高了算法的整體收斂速度,同時(shí)也降低了算法的復(fù)雜度.
2.2改進(jìn)算法的實(shí)現(xiàn)
本文算法以NLMS算法為基礎(chǔ),通過引入P步長加快算法的收斂速度,實(shí)現(xiàn)的步驟如下.
為檢驗(yàn)算法的性能,下面通過仿真來比較NLMS、PNLMS、MPNLMS、SPNLMS算法和本文所提算法的收斂速度和穩(wěn)態(tài)失調(diào).仿真條件為:輸入信號(hào)是均值為零、方差為1的高斯白噪聲;干擾信號(hào)為與輸入信號(hào)不相關(guān)的高斯白噪聲.參數(shù)采用文獻(xiàn)[12]中的典型值:步長參數(shù)β=0.3,ρ=0.01,δ=0.01,參數(shù)ε設(shè)為0.001.
3.1算法的收斂速度和穩(wěn)定失調(diào)性能分析
3.1.1實(shí)驗(yàn)1
選取與輸入信號(hào)無關(guān)的高斯白噪聲作為干擾信號(hào),在信噪比分別為20,dB、30,dB和40,dB,濾波器長度分別為512、512和128的條件下進(jìn)行收斂速度和穩(wěn)定失調(diào)的對(duì)比實(shí)驗(yàn),結(jié)果如圖1所示.
圖1 各種算法的收斂速度和穩(wěn)定失調(diào)性能對(duì)比Fig.1Comparison of algorithms' convergence speed and steady performance
由圖1可以看出:在全局步長參數(shù)相同的條件下,PNLMS算法初始收斂速度較快,但后期較NLMS算法還慢,MPNLMS和SPNLMS算法的后期收斂速度有很大的提高,使整個(gè)收斂過程速度都達(dá)到很高的水平.從實(shí)驗(yàn)中誤差的大小可以看出,幾種算法中當(dāng)自適應(yīng)濾波器收斂時(shí)抽頭系數(shù)距離最優(yōu)值的遠(yuǎn)近即穩(wěn)態(tài)失調(diào)也基本相同.而本文所提算法不論是初始收斂速度還是后期收斂速度都比MPNLMS算法更優(yōu),可以在更少的迭代次數(shù)下達(dá)到穩(wěn)態(tài),穩(wěn)態(tài)失調(diào)與MPNLMS算法的相當(dāng),沒有下降,而且在濾波器長度減小的情況下,算法的性能依然良好.這是因?yàn)楸疚乃惴ň饬藶V波器大、小系數(shù)之間的收斂過程,保證了在濾波器系數(shù)較小的情況下也能獲得較快的收斂.
3.1.2實(shí)驗(yàn)2
選取與輸入信號(hào)無關(guān)的高斯白噪聲作為干擾信號(hào),信噪比為30,dB,濾波器長度為512,濾波器系數(shù)變?yōu)榈臈l件下進(jìn)行收斂速度和穩(wěn)定失調(diào)的對(duì)比實(shí)驗(yàn),結(jié)果如圖2所示.其中,在第2,500個(gè)采樣點(diǎn)時(shí)刻系統(tǒng)發(fā)生時(shí)變.
圖2 時(shí)變情況下各種算法收斂速度和穩(wěn)定失調(diào)性能的對(duì)比(SNR=30,dB,L=256)Fig.2Comparison of algorithms' convergence speed and steady performance under varying circumstances(SNR=30,dB,L=256)
由圖2可以看出,在信噪比為30,dB時(shí),本文算法仍具有較快的收斂速度,并且在系統(tǒng)發(fā)生時(shí)變的情況下,仍能很快地恢復(fù)為穩(wěn)定狀態(tài),較MPNLMS和SPNLMS算法都有不同程度的提高.說明該算法具有很好的魯棒性.
3.1.3實(shí)驗(yàn)3
選取實(shí)際的一段語音信號(hào),添加延遲時(shí)間為283,ms的回聲信號(hào)并與原信號(hào)疊加,利用本文算法進(jìn)行回聲消除,實(shí)驗(yàn)結(jié)果如圖3所示.
圖3 回聲消除后的時(shí)域波形Fig.3 Time domain waveforms after echo cancellation
由圖3的時(shí)域波形可以看出經(jīng)過回聲消除后的信號(hào)與原語音信號(hào)比較接近,說明本文算法在進(jìn)行實(shí)際的回聲消除中具有可行性,且去噪效果非常明顯,證明了該算法的有效性.
3.2算法復(fù)雜度分析
根據(jù)各算法運(yùn)算過程,表1列出各類算法與本文算法每次系數(shù)更新即每個(gè)采樣點(diǎn)所需的數(shù)學(xué)運(yùn)算及其數(shù)量.
表1 各種算法的運(yùn)算復(fù)雜度對(duì)比Tab.1 Comparison of algorithms' computational complexity
由表1可以看出,與MPNLMS算法相比,本文算法減少了L次對(duì)數(shù)運(yùn)算,增加了L次除法運(yùn)算.在 DSP平臺(tái)上,對(duì)數(shù)運(yùn)算的運(yùn)行時(shí)間大約為除法運(yùn)算的12倍,在PC平臺(tái)上,對(duì)數(shù)運(yùn)算的運(yùn)行時(shí)間大約為除法運(yùn)算的4.5倍,因此本文算法較大幅度地降低了算法復(fù)雜度,但性能優(yōu)于MPNLMS算法.
PNLMS自適應(yīng)濾波算法是一種針對(duì)稀疏沖激響應(yīng)的快速有效的解決方法,其收斂速度與傳統(tǒng)自適應(yīng)算法相比有很大提高.本文提出的一種新的改進(jìn)型PNLMS算法通過引入步長控制矩陣,平衡了濾波器大、小系數(shù)的更新,加快了收斂速度,有效地解決了PNLMS算法后期收斂速度慢的缺陷.在算法復(fù)雜度方面,本文所提算法優(yōu)于已有的MPNLMS算法,克服了對(duì)數(shù)運(yùn)算復(fù)雜度高的缺陷,且收斂速度優(yōu)于MPNLMS算法,具有較好的魯棒性.
[1] Haykin S S. Adaptive Filter Theory[M]. India:Pearson Education India,2008.
[2] Huang H C,Lee J. A new variable step-size NLMS algorithm and its performance analysis[J]. IEEE Transactions on Signal Processing,2012,60(4):2055-2060.
[3] Meher P K,Maheshwari M. A high-speed FIR adaptive filter architecture using a modified delayed LMS algorithm[C]// IEEE International Symposium on Circuits and Systems(ISCAS). Rio de Janeiro,Brazil,2011:121-124.
[4] Li X,F(xiàn)an Y,Peng K. A variable step-size LMS adaptive filtering algorithm[C]//Proceedings of the 5th International Conference on Wireless Communications, Networking and Mobile Computing. Beijing,China,2009:2283-2286.
[5] 靳 翼,邵懷宗. 一種新的變步長 LMS 自適應(yīng)濾波算法及其仿真[J]. 信號(hào)處理,2010,26(9):1385-1388. Jin Yi,Shao Huaizong. A novel variable step size LMS adaptive filtering algorithm and its simulation[J]. Signal Processing,2010,26(9):1385-1388(in Chinese).
[6] Mayyas K. A variable step-size selective partial update LMS algorithm[J]. Digital Signal Processing,2013,23(1):75-85.
[7] Werner S,De Campos M L R,Diniz P S R. Partialupdate NLMS algorithms with data-selective updating[J]. IEEE Transactions on Signal Processing,2004,52(4):938-949.
[8] Duttweiler D L. Proportionate normalized least-meansquares adaptation in echo cancelers[J]. IEEE Transactions on Speech and Audio Processing,2000,8(5):508-518.
[9] Gay S L. An efficient,fast converging adaptive filter for network echo cancellation[C]// Conference Record of the Thirty-Second Asilomar Conference on Signals,Systems & Computers. Pacific Grove,CA,USA,1998,1:394-398.
[10] Nekuii M,Atarodi M. A fast converging algorithm for network echo cancellation[J]. IEEE Signal Processing Letters,2004,11(4):427-430.
[11] Benesty J,Gay S L. An improved PNLMS algorithm[C]// IEEE International Conference on Acoustics,Speech,and Signal Processing(ICASSP). USA,2002,2:II-1881-II-1884.
[12] Deng H,Doroslovacki M. Improving convergence of the PNLMS algorithm for sparse impulse response identification[J]. IEEE Signal Processing Letters,2005,12(3):181-184.
[13] Deng H,Doroslovacki M. Proportionate adaptive algorithms for network echo cancellation[J]. IEEE Transactions on Signal Processing,2006,54(5):1794-1803.
[14] Liu L,F(xiàn)ukumoto M,Zhang S. Improvement of the mulaw proportionate NLMS algorithm[C]//IEEE International Symposium on Circuits and Systems(ISCAS). Taipei,China,2009:2045-2048.
[15] Liu L,F(xiàn)ukumoto M,Saiki S. An improved mu-law prop ortionate NLMS algorithm[C]// IEEE International Conference on Acoustics,Speech and Signal Processing(ICASSP). Taipei,China,2008:3797-3800.
[16] 文昊翔. 面向?qū)崟r(shí)通信系統(tǒng)的自適應(yīng)回聲消除算法研究[D]. 杭州:浙江大學(xué)電氣工程學(xué)院,2013. Wen Haoxiang. Adaptive Echo Cancellation Algorithms Towards Real-Time Communication System[D]. Hangzhou:School of Electrical Engineering,Zhejiang University,2013(in Chinese).
[17] 劉立剛,F(xiàn)ukumoto Masahiro,張世永. 一種變步長Proportionate NLMS自適應(yīng)濾波算法及其在網(wǎng)絡(luò)回聲消除中的應(yīng)用[J]. 電子學(xué)報(bào),2010,38(4):973-978. Liu Ligang,F(xiàn)ukumoto Masahiro,Zhang Shiyong. A variable step-size Proportionate NLMS adaptive filtering algorithm and its application in network echo cancellation[J]. Acta Electronica Sinica,2010,38(4):973-978(in Chinese).
(責(zé)任編輯:趙艷靜)
An Improved Proportionate NLMS Adaptive Filtering Algorithm
Guo Jichang,Zhang Xue,Qiu Linyao
(School of Electronic Information Engineering,Tianjin University,Tianjin 300072,China)
Step control matrix is introduced into proportionate normalized least mean square(PNLMS)algorithm,which considerably improves the initial convergence speed by setting different proportionate steps for different filter coefficients. However,the later convergence speed becomes lower than that of NLMS. To solve this problem,an improved PNLMS algorithm is proposed. A nonlinear reciprocal relationship between proportionate step and the current amplitudes of filter coefficients is established by quantitatively analyzing the convergence process. The simulation shows that the improved PNLMS algorithm has faster convergence speed and better robustness than PNLMS and MPNLMS algorithms. Moreover,the computational complexity of the algorithm is greatly reduced compared with MPNLMS algorithm.
adaptive filtering;echo cancellation;PNLMS algorithm
TP911.72
A
0493-2137(2016)09-0972-06
10.11784/tdxbz201412004
2014-12-01;
2015-04-22.
國家自然科學(xué)基金資助項(xiàng)目(60641011).
郭繼昌(1966— ),男,博士,教授.
郭繼昌,jcguo@tju.edu.cn.
網(wǎng)絡(luò)出版時(shí)間:2015-04-30. 網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/detail/12.1127.N.20150430.1119.001.html.