Filter för minsta medelvärde
för minsta medelkvadrat ( LMS ) är en klass av adaptiva filter som används för att efterlikna ett önskat filter genom att hitta filterkoefficienterna som hänför sig till att producera den minsta medelkvadraten av felsignalen (skillnaden mellan den önskade och den faktiska signalen). Det är en stokastisk gradientsänkningsmetod genom att filtret endast anpassas baserat på felet vid den aktuella tidpunkten. Den uppfanns 1960 av Stanford University professor Bernard Widrow och hans första Ph.D. student, Ted Hoff .
Problemformulering
Relation till Wiener-filtret
Förverkligandet av kausal Wiener-filtret ser mycket ut som lösningen på minsta kvadraters uppskattning, förutom i signalbehandlingsdomänen. Minsta kvadratlösningen för inmatris och utdatavektor är
FIR-filtret med minsta medelkvadrat är relaterat till Wiener-filtret, men att minimera felkriteriet för det förra är inte beroende av korskorrelationer eller autokorrelationer. Dess lösning konvergerar till Wiener-filterlösningen. De flesta linjära adaptiva filtreringsproblem kan formuleras med hjälp av blockschemat ovan. Det vill säga ett okänt system ska identifieras och det adaptiva filtret försöker anpassa filtret som möjligt , samtidigt som man endast använder observerbara signaler , och ; men , och är inte direkt observerbara. Dess lösning är nära besläktad med Wiener-filtret .
Definition av symboler
- är numret på det aktuella ingångsexemplet
- är antalet filtertryck
- ( Hermitiskt transponera eller konjugerat transponera )
- uppskattat filter; tolka som uppskattningen av filterkoefficienterna efter n sampel
Aning
Grundidén bakom LMS-filtret är att närma sig de optimala filtervikterna genom att uppdatera filtervikterna på ett sätt så att de konvergerar till den optimala filtervikten. Detta är baserat på gradient descent-algoritmen. Algoritmen börjar med att anta små vikter (noll i de flesta fall) och, vid varje steg, genom att hitta gradienten för medelkvadratfelet uppdateras vikterna. Det vill säga, om MSE-gradienten är positiv, innebär det att felet skulle fortsätta att öka positivt om samma vikt används för ytterligare iterationer, vilket innebär att vi måste minska vikterna. På samma sätt, om gradienten är negativ, måste vi öka vikterna. Viktuppdateringsekvationen är
där representerar medelkvadratfelet och är en konvergenskoefficient.
Det negativa tecknet visar att vi går nedför felets lutning, för att hitta filtervikterna, , som minimerar felet.
Medelkvadratfelet som funktion av filtervikter är en kvadratisk funktion vilket betyder att det bara har ett extremum, som minimerar medelkvadratfelet, vilket är den optimala vikten. LMS närmar sig således denna optimala vikt genom att stiga/sänka nedför kurvan för medelkvadratfel vs filtervikt.
Härledning
Tanken bakom LMS-filter är att använda den brantaste nedstigningen för att hitta filtervikter som minimerar en kostnadsfunktion . Vi börjar med att definiera kostnadsfunktionen som
där är felet vid det aktuella provet n och anger det förväntade värdet .
Denna kostnadsfunktion ( ) är medelkvadratfelet och den minimeras av LMS. Det är här som LMS har fått sitt namn. Att tillämpa den brantaste nedstigningen innebär att ta partiella derivator med avseende på de individuella ingångarna i filterkoefficientvektorn (vikt)
där { är gradientoperatorn
Nu är en vektor som pekar mot kostnadsfunktionens brantaste stigning. För att hitta minimivärdet för kostnadsfunktionen måste vi ta ett steg i motsatt riktning av . För att uttrycka det i matematiska termer
där är stegstorleken (anpassningskonstanten). Det betyder att vi har hittat en sekvensiell uppdateringsalgoritm som minimerar kostnadsfunktionen. Tyvärr är denna algoritm inte realiserbar förrän vi vet .
I allmänhet beräknas inte förväntningarna ovan. För att köra LMS i en onlinemiljö (uppdatering efter varje nytt prov tas emot) använder vi istället en omedelbar uppskattning av den förväntningen. Se nedan.
Förenklingar
För de flesta system förväntas funktionen måste vara ungefärlig. Detta kan göras med följande opartiska skattare
där indikerar antalet sampel vi använder för den uppskattningen. Det enklaste fallet är
För det enkla fallet följer uppdateringsalgoritmen som
Detta utgör faktiskt uppdateringsalgoritmen för LMS-filtret.
LMS-algoritmsammanfattning
LMS-algoritmen för ett te ordningens filter kan sammanfattas som
Parametrar: | filterordning |
stegstorlek | |
Initiering: | |
Beräkning: | För |
|
|
Konvergens och stabilitet i medelvärdet
Eftersom LMS-algoritmen inte använder de exakta värdena på förväntningarna, skulle vikterna aldrig nå de optimala vikterna i absolut mening, men en konvergens är möjlig i medeltal. Det vill säga, även om vikterna kan ändras med små mängder, ändras det ungefär de optimala vikterna. Men om variansen med vilken vikterna ändras är stor, skulle konvergens i medelvärde vara missvisande. Detta problem kan uppstå om värdet för stegstorlek inte väljs korrekt.
Om väljs att vara stor, beror mängden med vilken vikterna ändras kraftigt på gradientuppskattningen, och därför kan vikterna ändras med ett stort värde så att gradienten som var negativ vid det första ögonblicket kan nu bli positiv. Och i det andra ögonblicket kan vikten ändras i motsatt riktning med en stor mängd på grund av den negativa gradienten och skulle således fortsätta att oscillera med en stor varians kring de optimala vikterna. Å andra sidan, om väljs för liten, blir tiden för att konvergera till de optimala vikterna för lång.
Således behövs en övre gräns på som ges som
där är det största egenvärdet för autokorrelationsmatrisen { . Om detta villkor inte är uppfyllt blir algoritmen instabil och divergerar.
Maximal konvergenshastighet uppnås när
där är det minsta egenvärdet för . Givet att är mindre än eller lika med detta optimum, bestäms konvergenshastigheten av med ett större värde som ger snabbare konvergens. Detta innebär att snabbare konvergens kan uppnås när är nära det vill säga den maximalt uppnåbara konvergenshastigheten beror på egenvärdesspridning av .
En signal med vitt brus har autokorrelationsmatris där är variansen för signalen. I detta fall är alla egenvärden lika, och egenvärdesspridningen är den minsta över alla möjliga matriser. Den vanliga tolkningen av detta resultat är därför att LMS konvergerar snabbt för vita insignaler och långsamt för färgade insignaler, såsom processer med lågpass- eller högpasskarakteristika.
Det är viktigt att notera att ovanstående övre gräns på endast framtvingar stabilitet i medelvärdet, men koefficienterna för kan fortfarande växa oändligt stor, dvs divergens av koefficienterna är fortfarande möjlig. En mer praktisk gräns är
där betecknar spåret av . Denna gräns garanterar att koefficienterna för inte divergerar (i praktiken bör värdet på inte väljas nära detta övre gränsen, eftersom den är något optimistisk på grund av approximationer och antaganden som gjorts vid härledningen av gränsen).
Normaliserat minsta medelkvadratfilter (NLMS)
Den största nackdelen med den "rena" LMS-algoritmen är att den är känslig för skalningen av dess ingång . Detta gör det mycket svårt (om inte omöjligt) att välja en inlärningshastighet som garanterar algoritmens stabilitet (Haykin 2002). Det normaliserade minsta medelkvadratfiltret (NLMS) är en variant av LMS-algoritmen som löser detta problem genom att normalisera med kraften från ingången. NLMS-algoritmen kan sammanfattas som:
Parametrar: | filterordning |
stegstorlek | |
Initiering: | |
Beräkning: | För |
|
|
Optimal inlärningshastighet
Det kan visas att om det inte finns någon störning ( ), så är den optimala inlärningshastigheten för NLMS-algoritmen
och är oberoende av ingången och det verkliga (okända) impulssvaret . I det allmänna fallet med störningar ( ), är den optimala inlärningshastigheten
Resultaten ovan antar att signalerna och är okorrelerade till varandra, vilket generellt är fallet i praktiken.
Bevis
Låt filterförskjutningen definieras som förväntade feljustering för nästa prov som:
Låt och
Förutsatt att vi är oberoende har vi:
Den optimala inlärningshastigheten hittas vid , vilket leder till:
Se även
- Rekursiva minsta kvadrater
- För statistiska tekniker som är relevanta för LMS-filtret, se Minsta kvadrater .
- Likheter mellan Wiener och LMS
- Multidelay block frekvensdomän adaptivt filter
- Nolltvingande equalizer
- Kernel adaptivt filter
- Matchat filter
- Wiener filter
- Monson H. Hayes: Statistical Digital Signal Processing and Modeling, Wiley, 1996, ISBN 0-471-59431-8
- Simon Haykin: Adaptive Filter Theory, Prentice Hall, 2002, ISBN 0-13-048434-2
- Simon S. Haykin, Bernard Widrow (redaktör): Least-Mean-Square Adaptive Filters, Wiley, 2003, ISBN 0-471-21570-8
- Bernard Widrow, Samuel D. Stearns: Adaptive Signal Processing, Prentice Hall, 1985, ISBN 0-13-004029-0
- Weifeng Liu, Jose Principe och Simon Haykin: Kernel Adaptive Filtering: A Comprehensive Introduction, John Wiley, 2010, ISBN 0-470-44753-2
- Paulo SR Diniz: Adaptiv filtrering: Algoritmer och praktisk implementering, Kluwer Academic Publishers, 1997, ISBN 0-7923-9912-9
externa länkar
- LMS-algoritm i adaptiva antennmatriser www.antenna-theory.com
- LMS Brusreducering demo www.advsolned.com