祁霄+山拜·達拉拜+解倩倩
摘 要: 實際生活中產生的多模噪聲會對信號產生嚴重的破壞甚至損失。傳統LMS算法不僅收斂速度慢而且存在較大的穩態誤差和失調量,故已不能很好地控制噪聲。通過分析NLMS算法和Newton算法的優點,提出一種新的NLMS?Newton算法。該算法的收斂速度高,計算復雜度減小,且應用了隨信噪比變化的變步長并修正了自相關矩陣,降低了算法收斂后的穩態誤差和失調量。通過仿真表明,NLMS?Newton算法在收斂速度及穩態誤差等方面都有了較大改善,并且能在很好地抑制多模噪聲的同時提取出有用信號。
關鍵詞: 多模噪聲抑制; NLMS算法; Newton算法; NLMS?Newton算法; 自相關矩陣; 變步長
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2018)01?0047?04
Abstract: Signal can be damaged and even lost because of the multi?mode noise generated in actual life. Since the traditional LMS algorithm has slow convergence speed, big steady?state error and high maladjustment, it can′t control the noise perfectly. By analyzing the advantages of NLMS algorithm and Newton algorithm, a new NLMS?Newton algorithm is proposed. The algorithm has fast convergence speed and low calculating complexity, in which the step length changed with signal?to?noise ratio is applied and the autocorrelation matrix is corrected to reduce the steady?state error and maladjustment after the algorithm convergence. The simulation results show that the NLMS?Newton algorithm has improved greatly in the aspects of convergence speed and steady?state error, and can extract the useful signal while suppressing the multi?mode noise.
Keywords: multi?mode noise suppression; NLMS algorithm; Newton algorithm; NLMS?Newton algorithm; autocorrelation matrix; step?length variation
0 引 言
信號處理[1]中較為經典的應用就是自適應噪聲抑制器,能夠從混合有噪聲的信號中分離出正確信息。隨著計算機和信號處理技術的發展,已經在多個領域廣泛應用,比如語音處理、生物、醫學、雷達和自動控制等。其基本原理就是將混合有原始噪音信號的輸入信號或者參考信號通過濾波器過濾,從而使噪音信號從混合信號中衰減或者直接濾除掉。其中,原始信號是從安裝在信號很弱的噪聲場中的一個或多個傳感器中得到的。在較多情況下,影響信號接收的噪聲為高斯的或者可以作為高斯假設。而在實際中存在多模噪聲,用傳統的LMS算法不能提取出信號。
文獻[2?4]對抑制高斯噪聲的LMS算法做了改進,從不同的角度對算法的特性進行研究,實驗證明這些改進的算法都能很好地抑制高斯噪聲。但在非平穩的多模噪聲環境下,上述算法都會有自身的缺陷,比如NLMS算法的步長就近似于一個常數,而固定步長會使算法在收斂速度、跟蹤速度、穩態誤差之間存在矛盾。為了更好地解決這些問題,本文將修正NLMS?Newton算法中的自相關矩陣,并對步長歸一化,提出步長隨輸入信噪比變化的NLMS?Newton算法,最終對其性能進行實驗仿真驗證。
1 非高斯噪聲模型介紹
噪聲可以按概率密度函數的形狀分類,函數形狀為單峰的噪聲叫做單峰噪聲,函數形狀為雙峰的噪聲叫做雙峰噪聲,函數形狀為多峰的噪聲叫做多峰噪聲。多峰噪聲[5]即多模噪聲,由雙峰噪聲演化而來。其數學模型[6]如下:
1) 正態分布[g(t)]疊加[m]元碼間串擾的概率密度為:
[p2(x)=12πσi=1mPiexp(x-bi)2-2σ2] (1)
式中:[i=1mPi=1]。[Pi]的概率服從兩個分布:均勻分布,即[Pi=1m];二項式分布,即[Pi=mi2-m]。
2) 高斯過程[g(t)]迭加振蕩過程,概率密度為:
[p1(x)=1(2π)m2πσ02π…02πexpx-i=1mBicosθi2-2σ2dθ1…dθm] (2)
式中:[σ2]是方差;[Bi]表示迭加振蕩的振動幅度;[θi]表示迭加振蕩的相位。
3) 模型1的特例,當[bi]與[σ]滿足一定條件時,模型1可以寫成如下形式:
[p3(x)=Cexp-x2m2σ2] (3)
式中:[xi=xi-1-bisign(xi-1),][i=1,2,…,m,][sign]為符號函數。
4) 混合模式。其概率密度函數為:endprint
[p4(x)=1(2π)m2πσ02π…02πj=1kPj?expx-bj-i=1mBicosθi2-2σ2dθ1…dθm] (4)
式中[σ2]為高斯分量的方差。
2 NLMS?Newton算法
當輸入自適應濾波器信號的相關性很強時,[Rx]的條件數增大,使LMS算法和NLMS算法都收斂很慢[7],為了能增加算法的收斂速度,改變梯度估計的幅度,避免梯度估計噪聲放大,可以采用NLMS?Newton算法,該算法基于輸入信號二階統計量的方法。
該方法的自相關矩陣的無偏估計公式為:
[R(n)=1n+1i=0nO(i)OΗ(i)] (5)
則LMS?Newton算法的迭代步驟為:
1) 初始化:[w(0)=0,][w(0)]是[L]維列向量。[R-1(0)=δ-1E,][δ]為一個小的正數,[E]為[L]階單位矩陣。
2) 算法迭代式:
[R-1o(n)=n+1nR-1o(n-1)-R-1o(n-1)O(n)OH(n)R-1o(n-1)n+OΗ(n)R-1o(n-1)O(n)] (6)
[w(n+1)=w(n)+αR(n)O?(n)O(n)2e(n)] (7)
式中,[α]為歸一化步長,取值為[0<α<2。]使用這種選擇是在對自相關矩陣和梯度進行噪化時保證算法收斂。
3 修正相關估計的NLMS?Newton算法
該算法的思想是為了把自相關矩陣的逆矩陣應用在權值更新公式中,比傳統算法優化的原因是更多地使用了輸入信號的信息。因此,在算法中估計自相關矩陣顯得尤為重要[8?9]。對相關矩陣的估計有很多方法,所利用的信息也可以不同。下面將通過改進的相關矩陣估計來提高算法的性能。
3.1 相關矩陣的估計方法
將式(1)表示成遞歸形式:
[R(n)=nn+1R(n-1)+1n+1O(n)OΗ(n)=λ1(n)R(n-1)+λ2(n)O(n)OΗ(n)] (8)
式中:[λ1(n)=nn+1;λ2(n)=1n+1]。
擴展矩陣求逆定理為:
[[A+BCD]-1=A-1-A-1B[DA-1B+C-1]-1DA-1] (9)
取[A=λ1(n)R(n-1);][B=DΗ=O(n),][C=λ2(n),]可以得到:
[R-1o(n+1)=1λ1(n)R-1o(n)-R-1o(n)O(n+1)OH(n+1)R-1o(n)λ1(n)λ2(n)+OΗ(n+1)R-1o(n)O(n+1)] (10)
從式(8)可以看出:自相關矩陣的估計由兩部分組成,一是“原”信號對矩陣的作用,二是“新”信號對矩陣的作用。根據不同的噪聲背景下選擇不同的表達式。為了使“新”信號占據更大的權值更新比值,可以適時的降低“原”信號的比值,通過仿真實驗證明,上述方法是可以行的。所以要選擇適當的[λ]值。
3.2 修正的NLMS?Newton算法
式(8)中令[λ1(n)=λ,][λ2(n)=1,]代入到式(10),可以得到修正自相關矩陣估計的NLMS?Newton算法。其算法步驟如下:
1) 初始化:[w(0)=0,][R-1(0)=δ-1E;]
2) 對[n=1,2,…,M-1]進行循環([M]為訓練序列的樣值數);
[R-1o(n+1)=1λR-1o(n)-R-1o(n)O(n+1)OH(n+1)R-1o(n)[λ+OΗ(n+1)R-1o(n)O(n+1)]] (11)
[w(n+1)=w(n)+αR-1o(n)O?(n)O(n)2e(n)] (12)
該算法對“過去”輸入信息具有指數“遺忘”的特征([λ]為遺忘因子),它可以加快算法的收斂和跟蹤速度,并且算法還對初始值的依賴性大大降低。
4 步長隨信噪比變化的NLMS?Newton算法
修正的NLMS?Newton算法可以提高算法的收斂速度,通過修正自相關矩陣,也適當的降低了算法的復雜度。但在多模噪聲背景下,信號受損非常嚴重,結果會出現較大的穩態誤差。所以本文用步長隨信噪比變化的NLMS?Newton算法。當仿真實驗的輸入較大或者有較小的信噪比時,為降低失調造成的誤差、提高收斂速度,實驗時應相應地降低或增大步長的大小;信噪比就是用自適應噪聲抵消器和濾波器的輸出功率的比值替換輸入信噪比,如圖1所示。
若系統收斂,其結果近似于期望值,期望值的功率為:
[Pd(n)=1Ni=0n-1[d(n-i)+v(n-i)-y(n-i)]2=1Ni=0N-1e2(n-i)] (13)
自適應噪聲濾波器的輸出功率為:
[Po(n)=1Ni=0N-1y2(n-i)][=1Ni=0N-1OΤ(n-i)W(n-i)2] (14)
式中:[N]是[Pd(n)]和[Po(n)]的總數,應大于濾波器的階數。輸入信噪比[SNR=Pd(n)Po(n)],為了使步長具有較慢的變化,將信噪比開方以減小過大的信噪比時,設:
[K=SNR=Pd(n)Po(n)] (15)
[α=B?1-1+e-AK] (16)
式中[A,B]為常數,為保證算法的穩定性,[B]的取值范圍為[0
則步長隨信噪比變化的表達式為:
[μ(n)=αOΤ(n)O(n)=B?1-1+e-AKOΤ(n)O(n)] (17)
從式(17)中可以看出,[1-1+e-AK]是輸入信噪[K]的函數,其值在0~1范圍內,信噪比與[α]取值范圍成反比。
在NLMS?Newton算法中[α]范圍為[0<α<2],為保證仿真實驗的穩定性,參數[B]的范圍應為[0
5 仿真與結果分析
為了檢驗多模噪聲背景下自適應噪聲抑制器的濾波性能,使用Matlab仿真實驗對LMS和優化的NLMS?Newton算法、變步長的NLMS?Newton算法進行仿真。
1) 多模噪聲序列[O(n)]由以下ARMA(2,2)過程產生。
[v2(n)-1.7v2(n-1)+0.6v2(n-2) =e(n)-0.64e(n-1)-2.6e(n-2)] (18)
式中[e(n)]為非高斯白噪聲。
2) 要估計的正弦序列(本文取1 000個樣本值)為:[d(n)=sin2*pi*0.02*[0:N-1],][N=1 000]。
3) 三種算法中的參數設置:通過反復的仿真實驗,以下參數分別為各種算法的最佳值。對于LMS算法,取[μ]=0.05;對于修正的NLMS?Newton算法,[λ]=0.8,[α]=1.2;對于變步長的NLMS?Newton算法,[B=0.4,][A=]10 000。濾波器的階數為10階。
4) 結果分析
圖2為正弦信號的仿真圖,圖3為受多模噪聲干擾的信號,由圖3可知,受多模噪聲干擾后的正弦信號受損嚴重,失真厲害。
圖4是LMS算法仿真的收斂曲線,從中可以知道,多模噪聲背景下,此算法不僅收斂速度慢,而且呈現了較大的穩態誤差和失調。
圖5為修正的NLMS?Newton算法的收斂曲線,其收斂速度大大提高,但其穩態誤差比較大,說明本文算法能夠快速收斂,但還沒有從根本上解決穩態誤差問題。圖6為步長隨信噪比變化的NLMS?Newton算法的收斂圖,其效果比較好,雖然收斂速度比圖5有所下降,但很好地改善了穩態誤差和失調量,表明此算法優于前兩種算法,從對應的圖7可以看出,該算法很好地恢復了信號。
6 結 論
在復雜的多模噪聲背景下,傳統的LMS算法已經不再適用,通過與Newton算法結合,并對自相關矩陣進行合理的估計,使算法的收斂速度提高,計算復雜度減小,但穩態誤差較大。最后,采用的步長隨輸入信噪比變化,有效地降低了算法收斂后的穩態誤差和失調量。
參考文獻
[1] 張賢達.現代信號處理[M].北京:清華大學出版社,1995.
ZHANG Xianda. Modern signal processing [M]. Tsinghua: Tsinghua University Press, 1995.
[2] BHARANI L. FPGA implementation of optimal step size NLMS algorithm and its performance analysis [J]. International journal of research in engineering and technology, 2013, 2(6): 885?890.
[3] SHUBAIR R M, HAKAM A. Adaptive beamforming using variable step?size LMS algorithm with novel ULA array configuration [C]// Proceedings of 2013 the 15th IEEE International Conference on Communication Technology. Guilin, China: IEEE, 2013: 650?654.
[4] 陳泳,田金鵬,劉燕平.一種新的變步長LMS自適應濾波算法[J].電子測量技術,2015,38(4):27?31.
CHEN Yong, TIAN Jinpeng, LIU Yanping. A novel LMS adaptive filtering algorithm with variable step size [J]. Electronic measurement technique, 2015, 38 (4): 27?31.
[5] 廖暢,山拜[?]達拉拜,邱新建,等.多模噪聲環境下的自適應濾波算法[J].計算機工程,2012,38(11):156?159.
LIAO Chang, SENBAI Dalabaev, QIU Xinjian, et al. Adaptive filtering algorithm under multi?mode noise [J]. Computer engineering, 2012, 38 (11): 156?159.
[6] 山拜[?]達拉拜,黃玉劃.多模噪聲在保密通信中的應用[J].電訊技術,2008,48(2):20?24.
SENBAI Dalabaev, HUANG Yuhua. Multi?mode noise in the secure communication [J]. Telecommunications technology, 2008, 48(2): 20?24.
[7] SENAPATI A, GHATAK K, ROY J S. A comparative study of adaptive beamforming techniques in smart antenna using LMS algorithm and its variants [C]// Proceedings of 2015 International Conference on Computational Intelligence and Networks. Bhubaneshwar: IEEE, 2015: 58?62.
[8] 盧炳乾,馮存前,龍戈農.基于小波變換的變步長LMS自適應濾波算法[J].中國電子科學研究院學報,2013,8(5):512?515.
LU Bingqian, FENG Cunqian, LONG Genong. Adaptive variable?step LMS filter algorithm based on wavelet transform [J]. Academy of sciences, 2013, 8(5): 512?515.
[9] 彭繼慎,劉爽,安麗.低信噪比下基于新型變步長LMS的自適應濾波算法[J].傳感技術學報,2013(8):1116?1120.
PENG Jishen, LIU Shuang, AN Li. Adaptive filtering algorithm based on new variable step LMS with low SNR [J]. Journal of sensor technology, 2013(8): 1116?1120.