解本巨 王 寧
(青島科技大學信息學院 青島 266100)
自適應濾波器是以線性維納濾波和Kalman 濾波為基礎發展起來的一種新型濾波技術,由于其性能良好,在未知環境的狀況下具有較強的適應能力[1],因此在現代通信處理、信號去噪和自動化控制等方面有著廣泛的應用。自濾波技術發展以來,研究者主要集中致力于復雜不確定性條件下的信號擾動,通過改進傳統濾波算法模型進行參數更新。例如歸一化最小均方誤差NLMS 算法、迭代可變步長VSS算法、變換域LMS改進算法等。這些原理都是基于傳統LMS(最小均方誤差)自適應濾波器,修改算法步長μ常數改為變量控制,通過收斂和時域變化規則建立聯系[2]。因此基于線性控制步長因子的方法始終不能解決自適應濾波器穩態失調量和收斂速度的矛盾[3]。
隨著信息技術的發展,非線性信號處理越來越重要,傳統自適應濾波器面臨的問題越來越多。近年來,人工神經網絡發展迅猛,其應用方面十分廣泛,以多層前饋BP神經網絡為例,在非線性大規模并行處理和自組織自學習能力方面引起廣泛重視,并取得了很多成果。使用神經網絡解決自適應濾波信號處理問題,無疑是一個好的辦法。基于理論分析,本文采用附加動量-自適應學習速率改進BP神經網絡的方法融合LMS自適應濾波器,建立關系模型,控制信號數據處理過程。
自適應濾波器是能夠根據輸入信號自動調整性能進行數字信號處理的濾波器[4],其本質是根據環境改變通過自適應濾波算法來實現更新濾波系數和結構,從而達到濾波功能的實現。原理如圖1所示。

圖1 自適應濾波器原理圖
圖中:n 為時間變量;x(n)為n 時刻的輸入信號,其中包含有用信號和待濾除的噪聲;y(n)為濾波器的輸出信號;d(n)為已知的參考信號或期望響應;e(n)為估計誤差信號,有e(n)=d(n)-y(n)。自適應濾波器是一個系數可調的FIR(有限長單位沖擊響應)數字濾波器,其系數根據一定的自適應算法進行調節,調節的目標是使e(n)達到最小值。當e(n)達到最小值時,也即意味著濾波器的輸出信號y(n)實現了對期望響應d(n)的最佳估計。
由Widrow 和Hoff 早些時候提出的LMS 算法,運用了最速下降法的思想,在權值系數向量隨時間變化過程中加入比例項-?,即在“上一時刻”wi與“現時刻”wi+1之間加入負均方誤差梯度[5],由此得到

其中μ為步長因子,是決定算法穩定性和收斂快慢的常數。在計算?n時由于計算復雜,常常采用近似值??(n)=-2e(n)x(n)進行取代,所以基于常數μ 的LMS算法公式可以表示為

LMS 算法在解決線性問題時表現出比較明顯的優勢,但穩態失調量和收斂速度依舊是最大的矛盾,在現代信號處理中,面臨的非線性問題也越來越多,使用基本LMS算法不再滿足要求。本文使用附加動量-自適應學習速率法修改BP 網絡權值,并結合LMS自適應濾波器構造模型,利用神經網絡自學習的特點,更準確確定參數變量,改善穩態失調量和收斂速度的矛盾。
利用BP 神經網絡對LMS 算法輸入信號進行融合時,由于信號的相似性和廣泛性,以及按照誤差負梯度方向優化權值的特性,易造成BP 網絡收斂性效果不佳,陷入局部最小[6]。針對傳統BP 神經網絡的缺陷,本文采用附加動量-自適應學習速率的方法進行改進。
使用動量因子附加作用于神經網絡的反向傳播過程,在每一次權值變化中,加入一項正比于前一次權值(或閾值)的變化量,產生新的權值[7],帶有附加動量因子和閾值變化的調節公式為

其中,k 為訓練次數,mc 為動量因子,一般取值為0.95左右。在進行附加動量法訓練過程中,為了防止權值修正過大或者過小,采用以下公式作為修正限制條件,判定條件為

其中E(k)為第k 步誤差平方和。當mc=0 時,即未加入動量因子,其誤差變化如圖2所示。

圖2 mc=0的變化趨勢
網絡訓練陷入局部最小值,停止不動。當加入動量因子并取值為0.95 時,如圖3 所示,網絡會在附加動量作用下,越過局部最小值。

圖3 mc=0.95的變化趨勢
對于網絡學習速度過慢的問題則采用自適應學習速率法進行控制。自適應學習速率通過檢驗網絡權值是否降低了誤差函數作為標準,如果顯示降低,則表示學習速率小,可以增加一個量,如果沒有,則可以適當減小[8]。自適應學習速率公式為

圖4,圖5 分別表示未加入自適應學習速率法和加入自適應學習速率法在網絡訓練中達到相同精度的迭代情況。

圖4 網絡訓練誤差(傳統算法)

圖5 網絡訓練誤差(改進算法)
可以看出網絡達到相同的誤差時,未使用自適應學習速率法需要迭代218 次,而加入自適應學習速率法只需要26次,在速度上有明顯改觀。
附加動量法使動量因子與BP神經網絡權值相結合,避免因網絡權值更改過大陷入局部極小,可以找到全局最優解。自適應學習速率可以縮短網絡訓練時間,避免由經驗判斷而盲目性的學習。改進后的BP 神經網絡與傳統型BP 神經網絡對比如圖6 所示:新算法模型可以促進網絡性能優化、更具有魯棒性。結合LMS自適應濾波算法,可以更準確地學習到最優μ步長,實時加快收斂速度,提高濾波器精度。

圖6 傳統與改進后BP神經網絡對比
使用BP 神經網絡融合LMS 算法并進行優化,首先建立神經網絡與自適應濾波算法的模型,并通過網絡結構與輸入向量、誤差以及學習步長相關聯[9]。圖3 顯示了BP-LMS 模型在自適應濾波器中的融合規則,利用BP 神經網絡解決濾波信號處理問題,實現BP-LMS模型。

圖7 BP-LMS模型自適應濾波器
其中X(i)和ε(i)為BP 神經網絡的輸入信息,數據以向量模式表示,μ為神經網絡訓練結果的輸出。可以看出神經網絡結合自適應濾波算法實際上就是建立學習的網絡結構,通過誤差和輸入向量尋找最佳學習步長。學習給定樣本數據,建立實時數據關聯模型,并集成到BP-LMS 算法中。在網絡訓練結束后,通過BP神經網絡算法得出的參數,代表三者之間的非線性關聯。其BP-LMS 更新算法參數的規則如下:

在上述方程中,β代表了在采樣時間n 時刻根據輸入向量X(i)和誤差ε(i)得到的BP 神經網絡模塊的輸出。為保證神經網絡算法收斂性,β必須 使用改進BP-LMS模型建立神經網絡結構,首先需要采集數據作為樣本集,由于大多數自適應濾波信號數據都具有相似性,故本文采用工程應用中常用的正弦波信號作為仿真數據,通過引入噪聲干擾進行Matlab仿真實驗和對比。 為了驗證改進BP-LMS 模型后的有效性,故與其他幾種自適應算法進行仿真比較。 1)標準LMS 算法,μ步長因子是一個給定的較小的正數。 2)NLMS 算法(歸一化最小均方誤差),步長因子由公式μ=得出,其中η為自適應常數,δ為正數,X(i)為采樣時間n時刻輸入信號值。 仿真1:輸入帶有噪聲的標準正弦波信號,和其他兩種算法作性能比較,如圖5所示。 圖8 仿真1誤差收斂曲線 仿真步驟如下: 1)濾波器階數設定為L=10,初始權重Wi定義為0。 2)加入噪聲X(i)為零均值,方差σ2為0.1 的獨立高斯隨機序列。 3)標 準LMS 算 法 不 變 步 長 因 子μ 設 置 為0.005。NLMS 自適應濾波器參數η和δ分別為0.15和2。 4)平均統計時間為20,樣本容量為1000,在改進BP-LMS 模型中使用greed 算法尋找訓練樣本,部分數據如表1所示。 表1 BP模型部分訓練樣本數據 附加動量-自適應學習速率BP-LMS 模型最重要的是建立神經網絡結構,尋找樣本進行訓練。根據信號數據的相似性,任意三層網絡結構就可以完成隨機向量的映射,所以本文采用單層BP 神經網絡進行訓練和預測。設定輸入向量為10個單位的輸出(假設自適應濾波器輸出信號為8,偏差為2),隱藏層包含20 個中間單元節點。通過神經網絡訓練掃描模型中輸出結果,產生最優步長因子μ。 可以看出,對比其他兩種算法,附加動量-自適應學習速率BP-LMS 算法模型可以使得自適應濾波器在收斂速度方面取得更好效果。 仿真2:進一步評估改進BP-LMS 算法的性能和有效性,輸入信號為帶有噪聲的高斯白噪聲序列,如圖9所示。 圖9 仿真2誤差收斂曲線 仿真步驟如下: 1)自適應濾波器階數L=7。初始權重W(i)=[0.25,0.25,0.75,1,0.25]T。 2)輸入信號s(n)為零均值方差σ2=1.5 的高斯白噪聲隨機序列,加入噪聲X(i)為零均值,方差σ2=0.06的獨立高斯隨機序列。 3)標 準LMS 學 習 步 長 因 子μ 設 置 為0.005,NLMS算法兩個參數η和δ分別為0.15和2。 4)平均統計時間為300,樣本容量為1000。同比于仿真1,首先使用greed 算法尋找訓練樣本,部分數據如表2所示。 表2 改進BP模型部分訓練樣本數據 建立基于附加動量-自適應學習速率BP 網絡模型,輸入向量設定為15(假設自適應濾波器輸入信號為12,偏差為3),隱藏層為25 個單元,通過神經網絡再次訓練。 可以看出,基于附加動量自適應學習速率BP-LMS 算法在200 次迭代周期后趨于穩定,對比于迭代周期在400 和500 次左右的LMS 和NLMS 兩種算法,收斂速度上有明顯的加快。 仿真1、2 實驗結果可以表明,基于附加動量-自適應學習速率BP-LMS 模型具有明顯的實用性。在噪聲功率相同類型且已知的情況下,神經網絡處理性能要比LMS 和NLMS 更有效果,在誤差調整方面也更加穩定。 自適應濾波器在通訊信號處理中具有重要的價值,隨著集成電路和計算機的快速蓬勃發展,使其應用范圍也在不斷的擴大,已經遍及圖像識別、語音信號處理和模式識別等相關領域。濾波技術發展的根本取決于算法的創新和融合,本文提出的附加動量-自適應學習速率BP-LMS 模型,采用一種新型神經網絡控制技術,建立信號數據與人工神經網絡之間的聯系,并通過Matlab仿真實驗得以證明和實現。 結果表明,通過神經網絡控制信號處理過程,可以提高實時信號處理精度,更好的彌補自適應濾波器的缺陷和不足。在工程應用信號處理過程中,使用神經網絡控制自適應濾波,凸顯了實用性和推廣性,拓寬了人工神經網絡和自適應濾波結合的思想,具有重要意義和發展前景。4 實驗與分析
4.1 數據采集
4.2 實驗對比




5 結語