tapds curs 4 filtre adaptive bazate pe minimizarea erorii medii pătratice

79
4. Filtre adaptive bazate pe minimizarea erorii medii pătratice • Introducere Metoda pantei descendente maxime Algoritmul LMS (Least Mean Square) Variante ale algoritmului LMS Algoritmul proiecţiilor afine (APA)

Upload: marius-ferdy

Post on 14-Apr-2015

75 views

Category:

Documents


10 download

DESCRIPTION

TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

TRANSCRIPT

Page 1: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

4. Filtre adaptive bazate pe

minimizarea erorii medii pătratice

• Introducere

• Metoda pantei descendente maxime

• Algoritmul LMS (Least Mean Square)

• Variante ale algoritmului LMS

• Algoritmul proiecţiilor afine (APA)

Page 2: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Introducere

wo x(n)

d(n)

y(n) e(n) +

Teoria filtrării Wiener optimale:

1o o

Rw p w R p Coeficienţii

optimi

Ecuaţiile

Wiener-Hopf

*E n d np x HE n nR x x

Page 3: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Introducere (continuare)

Limitările filtrării Wiener optimale:

- necesită evaluarea matricei de autocorelaţie R

şi a vectorului de corelaţie p.

- necesită evaluarea matricei inverse R–1.

- nu este adecvată mediilor nestaţionare / variabile în timp.

Soluţia:

- determinarea iterativă a coeficienţilor optimi.

w(0) … w(n) w(n +1) … wo

Page 4: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Introducere (continuare)

wo x(n)

d(n)

y(n) e(n) +

Filtrul Wiener optimal:

Filtru “iterativ” (adaptiv):

w(n) x(n)

d(n)

y(n) e(n) +

Page 5: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime

(Steepest descent)

w(n) x(n)

d(n)

y(n) e(n) +

Ne “deplasăm” pe suprafaţa de cost,

în direcţia inversă pantei maxime de creştere a gradientului,

cu un anumit pas μ.

1n n J ww w

Page 6: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

J w p Rw

1n n J ww w

1n n n w w p Rw

Notaţie: on n c w w vectorul eroare a coeficienţilor

1 o o o on n n w w w w p Rw Rw Rw

1 on n n c c p Rc Rw

1n n c I R c(ecuaţiile Wiener-Hopf)

Page 7: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

1n n c I R c

1n n n w w p Rw

Pasul μ poate lua orice valoare?

• Analiza stabilităţii algoritmului

HR QΛQ descompunerea matricei de autocorelaţie

det 0 , 1,2,...,i i N R I

, 1,2,..., 0,Hi i i j ii N i j Rq q q q

!

1 2[ , ,..., ]NQ q q q1 2diag[ , ,..., ]N Λ

matricea vectorilor proprii (! QHQ = I)

matricea valorilor proprii

matrice

unitară

Page 8: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

1n n c I R c

HR QΛQ 1 Hn n c I QΛQ c

1H Hn n Q c I Λ Q c

Notaţie: Hn nv Q c vectorul eroare rotit

1n n v I Λ v

Condiţii iniţiale: 0 0 0H Ho v Q c Q w w

1 1 , 1,2,...,k k kv n v n k N

1 0 , 1,2,...,n

k k kv n v k N

Page 9: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

1 0 , 1,2,...,n

k k kv n v k N

Metoda pantei descendente maxime (continuare)

Convergenţă (stabilitate):

0 1 1, 1,2,...,k knv n k N

0 2, 1,2,...,k k N

max 1 2max , ,..., N

max

20

Condiţia de

stabilitate

Page 10: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Analiza convergenţei algoritmului

1 0 , 1,2,...,n

k k kv n v k N

/0

1, 1,2,...,

ln 1

knk k

kk

v n e v

k N

H Hon n n v Q c Q w w on n w w Qv

/

1 1

0k

N Nn

o k k o k kk k

n v n e v

w w q w q

Page 11: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

/

1

0k

Nn

o k kk

n e v

w w q0 | n → ∞

1, 1,2,...,

ln 1k

k

k N

!

1,2,...,max min

1 1

ln 1 ln 1k k N

“rapid” “lent”

Page 12: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

max

, 0 2

"lent"min

max

1 1

ln 1 ln 1

R

Numărul condiţional

al matricei R max

min

R

Matrice “rău” condiţionată max min

! convergenţă lentă

Page 13: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Curba de “învăţare” (learning curve) a algoritmului

on n c w w

H H Hoe n d n n n d n n n n n w x w x c x

Hoe n n n c x

2?J n E e n

eroarea filtrului optim

2 *J n E e n E e n e n

*H Ho oE e n n n e n n n

c x x c

Page 14: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

*

*

Ho o o

H H Ho

J n E e n e n E e n n n

E n n e n E n n n n

x c

c x c x x cJmin

= 0 (principiul ortogonalităţii)

R

minHJ n J n n c Rc

minH HJ n n c QΛQ c

minHJ n n v Λv

Page 15: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

minHJ n J n n v Λv

2

min1

N

k kk

J v n

22

min1

1 0N

nk k k

k

J v

minnJ n J

în condiţii de stabilitate

22 /

min1

0k

Nn

k kk

J e v

Page 16: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie

Se cunosc:

- lungimea filtrului N = 2

- valorile iniţiale ale coeficientilor

- matricea de autocorelaţie a semnalului de intrare

- vectorul de corelaţie

1,1 0,5

0,5 1,1

R

0,5272

0,4458

p

1

01

w

Măsura performanţei:

210

2

20logo

o

nw w

w- dezalinierea (misalignment) normată = [dB]

Page 17: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare)

1o o

Rw p w R p Coeficienţii

optimi

Ecuaţiile

Wiener-Hopf

10

1

1,1 0,5 0,5272 0,8363

0,5 1,1 0,4458 0,7854

oo

o

w

w

w

max

20

Condiţia de

stabilitate

Algoritmul

steepest descent

1 2det 0 0,6 1,6 1,25 R I

Page 18: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare)

1n n n w w p Rw

Algoritmul steepest descent

Iniţializare: w(0)

For n = 0, 1, 2, …, nr_iteraţii

end

Date: R, p, μ

Page 19: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare)

Cod MATLAB:

R=[1.1 0.5;0.5 1.1];

p=[0.5272;-0.4458];

wo=[0.8363;-0.7854];

w=[-1;-1];

mu=0.01;

W=w;

for n=1:1000

w=w+mu*(p-R*w);

W=[W w];

m(n)=20*log10(norm(wo-w)/norm(wo));

end

Page 20: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare) μ = 0.01

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

h0

h1

0 100 200 300 400 500 600 700 800 900 1000-60

-50

-40

-30

-20

-10

0

10

Iteratii

mis

alig

nm

ent

[dB

]

w0

w1

Page 21: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

h0

h1

0 100 200 300 400 500 600 700 800 900 1000-100

-90

-80

-70

-60

-50

-40

-30

-20

-10

0

Iteratii

mis

alig

nm

ent

[dB

]

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare) μ = 1

w0

w1

Page 22: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare) μ = 1.3 (! μ < 1.25)

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

h0

h1

0 100 200 300 400 500 600 700 800 900 10000

100

200

300

400

500

600

700

Iteratii

mis

alig

nm

ent

[dB

]

w0

w1

Page 23: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Metoda pantei descendente maxime (continuare)

• Aplicaţie (continuare) μ = 0.001

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

h0

h1

0 100 200 300 400 500 600 700 800 900 1000-5

-4

-3

-2

-1

0

1

2

3

4

5

Iteratii

mis

alig

nm

ent

[dB

]

w0

w1

Page 24: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square)

Metoda steepest descent :

- necesită cunoaşterea matricei de autocorelaţie R

şi a vectorului de corelaţie p.

- nu necesită evaluarea matricei inverse R–1.

Soluţia:

- permite determinarea iterativă a coeficienţilor optimi.

- estimarea matricei de autocorelaţie R şi a

vectorului de corelaţie p.

Page 25: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

1n n n w w p Rw

Metoda steepest descent :

* *ˆE n d n n d n p x p x

ˆH HE n n n n R x x R x x

Cea mai simplă metodă de estimare:

*1 Hn n n d n n n n

w w x x x w

* Hn n d n n n

w x x w

e*(n)

Page 26: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

Algoritmul LMS:

*1n n n e n w w x

w(n) x(n)

d(n)

y(n) e(n) +

LMS

Filtru

adaptiv

Algoritm

adaptiv

Page 27: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

Algoritmul LMS

Iniţializare: w(0) = 0N x 1

For n = 0, 1, 2, …, nr_iteraţii

end

Date: μ

*1n n n e n w w x

e n d n y n

Hy n n n w x N x , N – 1 +

1 +

N + 1 x , N +

2N + 1 x , 2N +

Page 28: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Analiza convergenţei algoritmului LMS

Criteriul 1 Convergenţa în medie

onE n

w w

constantn

J n J

Criteriul 2 Convergenţa în medie pătratică

Page 29: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Convergenţa în medie a algoritmului LMS

*1n n n e n w w x

* Hn n d n n n

w x x w

*Hn n n n d n I x x w x

1E n E n w I R w p

on n c w w

1E n E n c I R c

Page 30: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

1E n E n c I R c

HR QΛQ

Hn nv Q c

1 0 , 1,2,...,n

k k kE v n E v k N

0 1 1, 1,2,...,knE n k N

v

Condiţia de convergenţă în medie

max

20

on

E n

w w

1E n E n v I Λ v

Page 31: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Convergenţa în medie pătratică a algoritmului LMS

constantn

J n J

He n d n n n w x

H H Ho od n n n n

w x w w x

Hoe n n n c x

*1n n n e n w w x

* Hon n e n n n

w x x c

Page 32: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

*1 Hon n n e n n n n w w x x x c

*1 Hon n n e n n n n c c x x x c

– wo – wo

*Hon n n n e n

I x x c x

1 1 1Hn E n n K c c

2minn J I R K I R R

Notaţii: Hn E n nK c c matricea de autocorelaţie

a vectorului c(n)

*min o oJ E e n e n varianţa erorii minime

Page 33: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

2 *J n E e n E e n e n

*H Ho oE e n n n e n n n

c x x c

minH HJ E n n n n c x x c

min exJ J n eroarea în exces

exH HJ n E n n n n c x x c Pp. x(n) – secvenţă aleatoare

gaussiană

ex tr H HJ n E n n n n c x x c tr urma unei matrice

= Σ valorilor proprii

tr tr 0H HE n n E n n n x x c c RK

Page 34: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

ex trJ n n RK

HR QΛQ tr trH n n ΛQ K Q ΛZ

2min1n n J K I R K I R R

ex ,1

N

l l ll

J n z n

QH· QH· ·Q ·Q

2min1n n J Z I Λ Z I Λ Λ

2 2

, , min1 1 , 1,2,...,l l l l l lz n z n J l N

elementele diagonalei matricei Z(n)

convergentă dacă 1 1, 1,2,...,l l N

ex tr HJ n n QΛQ K

max

20

Condiţia de convergenţă

în medie pătratică

Page 35: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

2 2

, , min1 1 , 1,2,...,l l l l l lz n z n J l N

Algoritmul LMS (Least Mean Square) (continuare)

n → ∞ 2 2

, , min1l l l l l lz z J

min, , 1,2,...,

2l l

l

Jz l N

ex , min1 1 2

N Nl

l l lll l

J z J

min exnJ n J J J

min1

1 constant2

Nl

ll

J

Page 36: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Criterii pentru alegerea pasului algoritmului LMS

max

20

?! λmax – dificil de determinat în practică

max1

trN

ll

R

2tr 0xx xNr N R

2

20

xN

Dezadaptarea (misadjustment): ex

min 1 2

Nl

ll

Jm

J

Dacă μ << 1/λmax

2

12 2

N

l xl

m N

Page 37: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Performanţele algoritmului LMS depind de:

- Pasul de adaptare μ

(compromis între viteza de convergenţă şi dezadaptare:

pas mare convergenţă rapidă dar dezadaptare mare;

pas mic dezadaptare scăzută dar convergenţă lentă.)

- Valorile proprii ale matricei de autocorelaţie a

semnalului de intrare

(matrice rău condiţionată convergenţă lentă)

- Lungimea filtrului adaptiv N

(lungime mare convergenţă lentă, dezadaptare mare)

Page 38: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Aplicaţie

Identificare de sistem

Sistem

necunoscut

Filtru

adaptiv

x(n)

y(n)

d(n)

e(n)

+

v(n) zgomot

Page 39: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

Semnalul de intrare x(n)

zgomot alb gaussian [randn]

semnal AR(1) (autoregresiv de ordinul 1)

x(n) = ax(n – 1) + g(n)

[x = filter(1,[1, -a],g)]

Sistemul necunoscut

Zgomotul v(n) zgomot alb gaussian [randn], σv2 = 0.001.

zg. alb gauss.

• Aplicaţie (continuare)

N = 64

0 10 20 30 40 50 60-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Esantioane

N = 128

0 20 40 60 80 100 120-0.06

-0.04

-0.02

0

0.02

0.04

0.06

Esantioane

căi de ecou electric

(ITU-T G168)

Page 40: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

• Aplicaţie (continuare)

Funcţie MATLAB pentru algoritmul LMS:

function [m]=lms(x,d,mu,N,wo);

L=length(x);

xf=zeros(N,1);

w=zeros(N,1);

m=zeros(L,1);

for n=1:L

xf=[x(n);xf(1:N-1)];

y=w'*xf;

e=d(n)-y;

w=w+mu*xf*e';

m(n)=20*log10(norm(wo-w)/norm(wo));

end

Page 41: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

0 500 1000 1500 2000 2500 3000-30

-25

-20

-15

-10

-5

0

5

10

15

Iteratii

Misa

lignm

ent [

dB]

= 0.005

= 0.01

= 0.015

= 0.03

N = 64 x(n) - randn • Aplicaţie (continuare)

2

20.0312

xN

Page 42: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

0 500 1000 1500 2000 2500 3000-20

-15

-10

-5

0

5

10

15

Iteratii

Misa

lignm

ent [

dB]

= 0.005

= 0.01

= 0.015

N = 128 x(n) - randn • Aplicaţie (continuare)

2

20.0156

xN

Page 43: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

N = 64 x(n) - AR(1), a = 0,6 • Aplicaţie (continuare)

0 500 1000 1500 2000 2500 3000-30

-25

-20

-15

-10

-5

0

5

10

15

Iteratii

Misa

lignm

ent [

dB]

= 0.005

= 0.01

= 0.0152

20.0186

xN

Page 44: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul LMS (Least Mean Square) (continuare)

N = 64 x(n) - AR(1), a = 0,7 • Aplicaţie (continuare)

0 500 1000 1500 2000 2500 3000-30

-25

-20

-15

-10

-5

0

5

10

15

Iteratii

Misa

lignm

ent [

dB]

= 0.005

= 0.01

= 0.015

2

20.0077

xN

Page 45: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS

• Algoritmul NLMS (Normalized LMS)

Algoritmul LMS: *1n n n e n w w x

Avantaj: simplitate / complexitate redusă

Problema: alegerea pasului algoritmului

μ = constant = ?

Soluţia: alegerea unui pas “variabil” μ(n)

Page 46: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

*1n n n e nn w w x

He n d n n n w x

1Hn d n n n w x

eroarea a priori

eroarea a posteriori

Scopul: ε(n) = 0

H Hn d n n n n e n n w x x

H Hd n n n n n n e n w x x x

1 Hn n n e n

x x

1Hd n n n w x

Page 47: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

[ e(n) ≠ 0 ] 1 0Hn n n e nn

x x

1

Hn

n n

x x

1

2 2

20

2 pentru 1

NH

k

x

n n x n k n

N N

x x x

μ(n) depinde de “puterea” semnalului de intrare

Page 48: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

Consideraţii practice:

H

nn n

x xPasul algoritmului NLMS

η – pasul normalizat

realizează “compromisul”

între viteza de convergenţă

şi dezadaptare

δ – parametrul de regularizare

evită împărţirea prin numere mici

în situaţia când xH(n)x(n) ≈ 0

Se poate calcula recursiv:

2 2

1 1H Hn n n n x n x n N x x x x

1.

2.

1 x , 2 + N x , N – 1 +

Page 49: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Stabilitatea algoritmului NLMS

Variante ale algoritmului LMS (continuare)

1 Hn n n n e n

x x

H

nn n

x x(Pp. δ = 0)

1n e n

Condiţia de stabilitate: n e n 1 1

0 2 Parametrul de regularizare δ > 0 nu influenţează stabilitatea algoritmului

Page 50: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul NLMS

Iniţializare: w(0) = 0N x 1

For n = 0, 1, 2, …, nr_iteraţii

end

Date: 0 < η < 2 , δ > 0

*1n n n n e n w w x

e n d n y n

Hy n n n w x N x , N – 1 +

1 +

2N + 2 x , 2N + 3 + , 1 /

Variante ale algoritmului LMS (continuare)

H

nn n

x x1 x , 3 + , 1 /

N + 1 x , N +

Page 51: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

Observaţie:

Algoritmul NLMS poate fi privit ca o problemă de

optimizare cu constrângeri.

Funcţia cost:

2

21 Re 1HJ n n n d n n n

w w w x

constrângerea ε(n) = 0 multiplicator Lagrange

norma variaţiei

coeficienţilor

111HNn

d n n nJ n

w

w x0

Anularea

gradientului:

Page 52: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

1

1

11

2n

N

J n n n n

w w w x

0

Variante ale algoritmului LMS (continuare)

1

12

n n n w w x

1

12

H H Hn n n n n n x w x w x x

xH(n) · xH(n) ·

d*(n) – d*(n) –

* 10

2

He n n n x x

*2

H

e n

n n

x x

*11

Hn n n e n

n n w w x

x x NLMS

Page 53: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

• Aplicaţie

Identificare de sistem

Sistem

necunoscut

Filtru

adaptiv

x(n)

y(n)

d(n)

e(n)

+

v(n) zg. alb gauss. σv2 = 0.001 (ITU-T G168)

N = 64 / N = 128

zg. alb gauss.

[randn]

semnal AR(1) zg. alb gauss.

x(n) = ax(n – 1) + g(n)

css_st – ITU-T G168

Page 54: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

0 500 1000 1500 2000 2500 3000

-30

-25

-20

-15

-10

-5

0

5

Iteratii

Misa

lignm

ent [

dB]

= 0.1

= 0.5

= 1

= 1.5

= 2

N = 64 x(n) - randn • Aplicaţie (continuare)

!

Page 55: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

N = 128 x(n) - randn • Aplicaţie (continuare)

0 500 1000 1500 2000 2500 3000

-30

-25

-20

-15

-10

-5

0

5

Iteratii

Misa

lignm

ent [

dB]

= 0.1

= 0.5

= 1

= 1.5

= 2

Page 56: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

0 500 1000 1500 2000 2500 3000

-30

-25

-20

-15

-10

-5

0

5

Iteratii

Misa

lignm

ent [

dB]

= 0.1

= 0.5

= 1

= 1.5

= 2

Variante ale algoritmului LMS (continuare)

N = 64 x(n) - AR(1), a = 0,7 • Aplicaţie (continuare)

Page 57: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

N = 64 x(n) - randn • Aplicaţie (continuare)

0 500 1000 1500 2000 2500 3000-25

-20

-15

-10

-5

0

Misa

lignm

ent [

dB]

Iteratii

LMS - = 0.015

NLMS - = 1

Page 58: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

N = 64 x(n) - randn • Aplicaţie (continuare)

0 500 1000 1500 2000 2500 3000-30

-20

-10

0

10

20

30

40

50

60

Iteratii

Misa

lignm

ent [

dB]

LMS - = 0.015

NLMS - = 1

x(1500)↑

Page 59: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

N = 64 x(n) – css_st • Aplicaţie (continuare)

(G168)

0 500 1000 1500 2000 2500 3000-14

-12

-10

-8

-6

-4

-2

0

2

Iteratii

Misa

lignm

ent [

dB]

LMS - = 0.015

NLMS - = 1

Page 60: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

• Algoritmul GAL (Gradient Adaptive Lattice)

Algoritmii LMS şi NLMS au la bază o structură

transversală de filtru cu răspuns finit la impuls:

z– 1 z– 1 z– 1

w0 w1 w2

wN–2 wN–1 d(n)

x(n) x(n–2) x(n–1) x(n–N+1) x(n–N+2)

e(n)

+

Page 61: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

Algoritmul GAL are la bază o structură latice-scară:

Page 62: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

Structura celulei latice:

11 1ff b

m m mme n e n k e n

*1 11

fb bm m m me n e n k e n

fme n

“forward”

“backward”

Page 63: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

1mm m p kk n k n J n

Funcţia cost: 2 2

f bm mJ n E e n e n

* *1 1... 1

m

ff b bk m m m mJ n E e n e n e n e n

* *1 11 1

ff b bm m p m m m mk n k n e n e n e n e n

(prin renunţarea la medierea statistică)

Abordare

de tip

“normalizat”

2 2 1

111

1 1

1

p nmf b

mmk

nW n

e k e k

Page 64: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

2 2

1 111

2 2

1 11

1

1 1

nf b

m mmk

f bm mm

W n e k e k

W n e n e n

Reactualizarea coeficienţilor structurii “scară”:

*1 bNn n n n e n h h e

0 1, , ,T

Nn h n h n h n h

0 1, , ,T

b b b bN Nn e n e n e n

e

! Avantaj GAL:

“decorelarea”

datelor de intrare

Page 65: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

Algoritmul GAL

Page 66: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

• Aplicaţie

Suprimarea interferenţelor

Filtru

adaptiv z(n)

sursă

zgomot y(n)

d(n)

e(n)

+

z1(n)

z2(n)

u(n)

semnal

util

≈ z2(n)

≈ u(n)

[randn]

[sin]

Page 67: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Variante ale algoritmului LMS (continuare)

• Aplicaţie (continuare)

0 100 200 300 400 500 600 700 800 900 1000-4

-2

0

2

4

0 100 200 300 400 500 600 700 800 900 1000-4

-2

0

2

4

Iteratii

NLMS

GAL

Page 68: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA)

- Poate fi interpretat ca o generalizare a algoritmului NLMS.

- Algoritmul NLMS are la bază anularea erorii a posteriori:

1 0Hd n nn n w x

- APA are la bază anularea a p valori ale erorii a posteriori:

p = ordinul de proiecţie

1 011 1 Hd n n nn w x

1 0Hd n nn n w x

11 01 1Hd n nn p np p w x

Page 69: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

Notaţii:

, 1 , , 1T

n e n e n e n p e

, 0,1,..., 1He n k d n k n n k k p w x

p x 1

, 1 , , 1n n n n p X x x x

, 1 , , 1 ,

0,1,..., 1

Tn k x n k x n k x n k N

k p

x

N x p

, 1 , , 1T

n d n d n d n p d p x 1

Page 70: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

Funcţia cost:

2 *

21 Re 1H HJ n n n n n n

w w λ d X w

constrângerile (anularea

erorilor a posteriori)

norma variaţiei

coeficienţilor vectorul

multiplicatorilor

Lagrange

0 1 1, , ,T

p λ

*11

1HNnn n n

J n

wd X w

0Anularea

gradientului:

Page 71: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

1

1

11

2n

N

J n n n n

w w w X λ

0

1

12

H H Hn n n n n n X w X w X X λ

XH(n) · XH(n) ·

d*(n) – d*(n) –

* 10

2

Hn n n e X X λ

1

*2 H n n n

λ X X e

1

*1 Hn n n n n n

w w X X X e APA

1

12

n n n w w X λ

Page 72: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

Consideraţii practice:

1

*1 Hpn n n n n n

w w X I X X e

η – pasul normalizat

realizează “compromisul”

între viteza de convergenţă

şi dezadaptare

δ – parametrul de regularizare

evită situaţia când

det[XH(n)X(n)] ≈ 0

Condiţia de stabilitate: 0 2 (similar NLMS)

Page 73: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

APA (Affine Projection Algorithm)

Iniţializare: w(0) = 0N x 1

For n = 0, 1, 2, …, nr_iteraţii

end

Date: 0 < η < 2 , δ > 0, p – ordinul de proiecţie

* * Hn n n n e d X w

1

*1 Hpn n n n n n

w w X I X X e

! Calculul matricei inverse complexitate/stabilitate.

! p = 1 APA este echivalent cu NLMS.

Page 74: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

• Aplicaţie

Identificare de sistem

Sistem

necunoscut

Filtru

adaptiv

x(n)

y(n)

d(n)

e(n)

+

v(n) zg. alb gauss. SNR = 20dB (cale ecou acustic)

N = 512

zg. alb gauss.

[randn]

semnal AR(1) zg. alb gauss.

x(n) = ax(n – 1) + g(n)

semnal vocal

0 50 100 150 200 250 300 350 400 450 500-8

-6

-4

-2

0

2

4

6

8

10

12

14x 10

-3

Esantioane

Page 75: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

• Aplicaţie (continuare)

Funcţie MATLAB pentru APA:

function [m]=apa(x,d,eta,delta,p,N,wo);

L=length(x);

w=zeros(N,1);

xf=zeros(N,1);

D=zeros(p,1);

X=zeros(N,p);

m=zeros(L,1);

for n=1:L

xf=[x(n);xf(1:N-1)];

X=[xf,X(:,1:p-1)];

D=[d(n);D(1:p-1)];

E=conj(D)-X'*w;

w=w+eta*X*inv(delta*eye(p)+X'*X)*E;

m(n)=20*log10(norm(wo-w)/norm(wo));

end

Algoritmul proiecţiilor afine (APA) (continuare)

Page 76: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

0 2000 4000 6000 8000 10000 12000-30

-25

-20

-15

-10

-5

0

Iteratii

Misa

lignm

ent [

dB]

APA - p = 1 (NLMS)

APA - p = 2

APA - p = 4

APA - p = 8

Algoritmul proiecţiilor afine (APA) (continuare)

x(n) - randn • Aplicaţie (continuare) η = 0,2

!

Page 77: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

0 2000 4000 6000 8000 10000 12000-30

-25

-20

-15

-10

-5

0

Iteratii

Misa

lignm

ent [

dB]

APA - p = 1 (NLMS)

APA - p = 2

APA - p = 4

APA - p = 8

Algoritmul proiecţiilor afine (APA) (continuare)

x(n) - AR(1), a = 0,7 • Aplicaţie (continuare) η = 0,2

Page 78: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

x(n) – semnal vocal • Aplicaţie (continuare) η = 0,2

0 0.5 1 1.5 2

x 104

-15

-10

-5

0

Iteratii

Misa

lignm

ent [

dB]

APA - p = 1 (NLMS)

APA - p = 2

APA - p = 4

APA - p = 8

Page 79: TAPDS Curs 4 Filtre adaptive bazate pe minimizarea erorii medii pătratice

Algoritmul proiecţiilor afine (APA) (continuare)

• Aplicaţie (continuare) p = 2

0 2000 4000 6000 8000 10000 12000-30

-25

-20

-15

-10

-5

0

5

Iteratii

Misa

lignm

ent [

dB]

APA - = 0.1

APA - = 0.2

APA - = 1

APA - = 2.1

x(n) - randn