lms算法基本思想及原理
1959年,Widrow和Hoff在對(duì)自適應(yīng)線性元素的方案一模式識(shí)別進(jìn)行研究時(shí),提出了最小均方算法(簡(jiǎn)稱LMS算法)。LMS算法是基于維納濾波,然后借助于最速下降算法發(fā)展起來的。通過維納濾波所求解的維納解,必須在已知輸入信號(hào)與期望信號(hào)的先驗(yàn)統(tǒng)計(jì)信息,以及再對(duì)輸入信號(hào)的自相關(guān)矩陣進(jìn)行求逆運(yùn)算的情況下才能得以確定。因此,這個(gè)維納解僅僅是理論上的一種最優(yōu)解。所以,又借助于最速下降算法,以遞歸的方式來逼近這個(gè)維納解,從而避免了矩陣求逆運(yùn)算,但仍然需要信號(hào)的先驗(yàn)信息,故而再使用瞬時(shí)誤差的平方來代替均方誤差,從而最終得出了LMS算法。
因LMS算法具有計(jì)算復(fù)雜程度低、在信號(hào)為平穩(wěn)信號(hào)的環(huán)境中的收斂性好、其期望值無偏地收斂到維納解和利用有限精度實(shí)現(xiàn)算法時(shí)的穩(wěn)定性等特性,使LMS算法成為自適應(yīng)算法中穩(wěn)定性最好、應(yīng)用最廣泛的算法。
下圖是實(shí)現(xiàn)算法的一個(gè)矢量信號(hào)流程圖:
圖1 LMS算法矢量信號(hào)流程圖
由圖1我們可以知道,LMS算法主要包含兩個(gè)過程:濾波處理和自適應(yīng)調(diào)整。
一般情況下,LMS算法的具體流程為:
?。?)確定參數(shù):全局步長(zhǎng)參數(shù)β以及濾波器的抽頭數(shù)(也可以稱為濾波器階數(shù))
(2)對(duì)濾波器初始值的初始化
?。?)算法運(yùn)算過程:
濾波輸出:y(n)=wT(n)x(n)
誤差信號(hào):e(n)=d(n)-y(n)
權(quán)系數(shù)更新:w(n+1)=w(n)+βe(n)x(n)
二、性能分析在很大程度上,選取怎樣的自適應(yīng)算法決定著自適應(yīng)濾波器是否具有好的性能。因此,對(duì)應(yīng)用最為廣泛的算法算法進(jìn)行性能分析則顯得尤為重要。平穩(wěn)環(huán)境下算法的主要性能指標(biāo)有收斂性、收斂速度、穩(wěn)態(tài)誤差和計(jì)算復(fù)雜度等。
1、收斂性
收斂性就是指,當(dāng)?shù)螖?shù)趨向于無窮時(shí),濾波器權(quán)矢量將達(dá)到最優(yōu)值或處于其附近很小的鄰域內(nèi),或者可以說在滿足一定的收斂條件下,濾波器權(quán)矢量最終趨近于最優(yōu)值。
2、收斂速度
收斂速度是指濾波器權(quán)矢量從最初的初始值向其最優(yōu)解收斂的快慢程度,它是判斷LMS算法性能好壞的一個(gè)重要指標(biāo)。
3、穩(wěn)態(tài)誤差
穩(wěn)態(tài)誤差,是指當(dāng)算法進(jìn)入穩(wěn)態(tài)后濾波器系數(shù)與最優(yōu)解之間距離的遠(yuǎn)近情況。它也是一個(gè)衡量LMS算法性能好壞的重要指標(biāo)。
4、計(jì)算復(fù)雜度
計(jì)算復(fù)雜度,是指在更新一次濾波器權(quán)系數(shù)時(shí)所需的計(jì)算量。LMS算法的計(jì)算復(fù)雜度還是很低的,這也是它的一大特點(diǎn)。
三、LMS算法分類1、量化誤差LMS算法
在回聲消除和信道均衡等需要自適應(yīng)濾波器高速工作的應(yīng)用中,降低計(jì)算復(fù)雜度是很重要的。LMS算法的計(jì)算復(fù)雜度主要來自在進(jìn)行數(shù)據(jù)更新時(shí)的乘法運(yùn)算以及對(duì)自適應(yīng)濾波器輸出的計(jì)算,量化誤差算法就是一種降低計(jì)算復(fù)雜度的方法。其基本思想是對(duì)誤差信號(hào)進(jìn)行量化。常見的有符號(hào)誤差LMS算法和符號(hào)數(shù)據(jù)LMS算法。
2、解相關(guān)LMS算法
在LMS算法中,有一個(gè)獨(dú)立性假設(shè)橫向?yàn)V波器的輸入u(1),u(2),…, u(n-1)是彼此統(tǒng)計(jì)獨(dú)立的向量序列。當(dāng)它們之間不滿足統(tǒng)計(jì)獨(dú)立的條件時(shí),基本LMS算法的性能將下降,尤其是收斂速度會(huì)比較慢。為解決此問題,提出了解相關(guān)算法。研究表明,解相關(guān)能夠有效加快LMS算法的收斂速度。解相關(guān)LMS算法又分為時(shí)域解相關(guān)LMS算法和變換域解相關(guān)LMS算法。
3、并行延時(shí)LMS算法
在自適應(yīng)算法的實(shí)現(xiàn)結(jié)構(gòu)中,有一類面向VLSI的脈動(dòng)結(jié)構(gòu),由于其具有的高度并行性和流水線特性而備受關(guān)注。將算法直接映射到脈動(dòng)結(jié)構(gòu)時(shí),在權(quán)值更新和誤差計(jì)算中存在著嚴(yán)重的計(jì)算瓶頸。該算法解決了算法到結(jié)構(gòu)的計(jì)算瓶頸問題,但當(dāng)濾波器階數(shù)較長(zhǎng)時(shí),算法的收斂性能會(huì)變差,這是由于其本身所具有的延時(shí)影響了它的收斂性能??梢哉f,延時(shí)算法是以犧牲算法的收斂性能為代價(jià)的。
4、自適應(yīng)格型LMS算法
LMS濾波器屬于橫向自適應(yīng)濾波器且假定階數(shù)固定,然而在實(shí)際應(yīng)用中,橫向?yàn)V波器的最優(yōu)階數(shù)往往是未知的,需要通過比較不同階數(shù)的濾波器來確定最優(yōu)的階數(shù)。當(dāng)改變橫向?yàn)V波器的階數(shù)時(shí),LMS算法必須重新運(yùn)行,這顯然不方便而且費(fèi)時(shí)。格型濾波器解決了這一問題。
格型濾波器具有共軛對(duì)稱的結(jié)構(gòu),前向反射系數(shù)是后向反射系數(shù)的共軛,其設(shè)計(jì)準(zhǔn)則和LMS算法一樣是使均方誤差最小。
5、Newton-LMS算法
Newton-LMS算法是對(duì)環(huán)境信號(hào)二階統(tǒng)計(jì)量進(jìn)行估計(jì)的算法。其目的是為了解決輸入信號(hào)相關(guān)性很高時(shí)算法收斂速度慢的問題。一般情況下,牛頓算法能夠快速收斂,但對(duì)R-1的估計(jì)所需計(jì)算量很大,而且存在數(shù)值不穩(wěn)定的問題。