Beruflich Dokumente
Kultur Dokumente
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Introduccion
Filtrado optimo
(filtro de Wiener)
1
Hacemos un formulacion
El objetivo es minimizar el
deseada y la salida
error cuadratico
medio (MSE) entre la senal
del filtro
El filtro optimo
se calcula resolviendo las ecuaciones normales
son necesarios los estadsticos de segundo orden): solucion
(solo
bloque o batch
Filtrado adaptativo
1
2
3
Algoritmos que actualizan los coeficientes del filtro con cada nueva
de d[n] (operan muestra a muestra)
observacion
popular es el algoritmo Least Mean Square (LMS)
El mas
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
Wiener became acquainted with Volterras Theory of integral equations, Osgoods Theory of
functions, Lebesgues book on the theory of integration, and Frchets treatise on the theory of
functionals. Wiener claims that For the first
time I began to have a really good understanding of modern mathematics.
Filtro de Wiener
also p
the cu
sent fa
Mathe
Referencia
d [ n]
Entrada
x[n]
W ( z)
Error
e[n]
Salida
y[n]
Filtro de Wiener
During
his mo
ematic
a new
vented
The
some
honor
Brown
of ino
form a
some
though
ment
famou
pulted
physic
posed
the ex
served
tion b
tions.1
Bec
Newto
the nu
stein a
that th
ian pa
That is
lows t
at each
of vie
throw
canno
tion an
tion; t
enter a
tion, th
of ligh
is the d
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Filtro optimo
Referencia
d [ n]
Entrada
x[n]
W ( z)
Error
e[n]
Salida
y[n]
y[n] =
M
1
X
wk x[nk] = w0
k=0
w1
...
x[n]
x[n 1]
= w T xn
wM 1
...
x[n M + 1]
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
que
Tenga en cuenta tambien
y[n] = wT xn = xTn w
de coste a minimizar es
La funcion
h
2 i
J(w) = E (e[n])2 = E d[n] wT xn
=
h
i
2
E (d[n])2 + wT xn 2(wT xn )d[n] = d2 +wT E xn xTn w2wT E [xn d[n]]
El termino
E xn xTn es
x[n]
x[n 1]
x[n] x[n 1]
E xn xTn = E
...
x[n M + 1]
...
x[n M + 1]
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Es decir,
E xn xTn = Rx
de la entrada de
que es la matriz de autocorrelacion
dimensiones M M
x[n]
rxd [0]
x[n 1]
...
...
x[n M + 1]
rxd [M + 1]
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
que es un paraboloide
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
Rx w = p
rx [0]
rx [1]
. . . rx [M 1]
w0
rx [1]
rx [0]
. . . rx [M 2]
w1
..
. =
..
..
..
..
.
.
.
.
rx [M 1]
rx [M 2]
...
rx [0]
wM 1
rxd [0]
rxd [1]
..
.
rxd [M + 1]
Filtro de Wiener
wopt = R1
x p
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
MSE min
T
Jmin = d2 wopt
p
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
de ruido
Ejemplo: eliminacion
Referencia
d [ n]
Entrada
d [ n ] + r[ n ]
W ( z)
Error
e[n]
Salida
y[n]
Rx = Rd + Rn
T
p = rd [0] rd [1] . . . rd [M 1] = rd
1
w = (Rd + Rn )
rd
Sd ()
Sd () + Sn ()
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
x=
[n] sin(0 n + ) + r[n]
LMS
Extensiones
=
d [n] 2 cos(0 n + )
z 1
w0
Aplicaciones
w1
+
-
y[n]
es la autocorelacion
de la entrada?
Cual
1
1
+ 2
cos(0 )
2
2
Rx = 1
1
2
2 cos(0 )
2 +
es el vector de correlacion
cruzada?
Cual
0
p=
sin(0 )
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
El filtro de Wiener es
wopt = R1
x p
wopt =
1
2
1
12 cos(0 )
0
2 +
1
2
sin(0 )
1/4 + 4 + 2 1/4 cos(0 )2 21 cos(0 )
2 +
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
Principio de ortogonalidad
Principio de ortogonalidad
E [xn e[n]] = 0
E xn (d[n] xTn w) = 0
=
Rx w = p
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
En resumen
de la entrada y
estadsticos de segundo orden: autocorrelacion
cruzada entre la entrada y la salida deseada
correlacion
lineal
El filtro extrae la parte de la entrada que tiene correlacion
con la salida deseada: si la salida esta incorrelada con la
entrada el filtro de Wiener es nulo
de error resultante esta incorrelada con la entrada del
La senal
filtro
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
El algoritmo de maximo
descenso
Antes de estudiar el principal algoritmo adaptativo (LMS) vamos
a plantear una forma iterativa de resolver las ecuaciones
normales
Esta tecnica
se conoce como el metodo
o algoritmo de maximo
descenso (steepest descent)
de coste a minimizar es
Recordemos otra vez que la funcion
J(w) = d2 + wT Rx w 2wT p
y su derivada (gradiente) con respecto a w es (eliminando el
factor de escala 2)
J(w) = Rx w p
particularizado en un punto w(n)
El gradiente de una funcion
de maximo
en ese
indica la direccion
incremento de la funcion
punto
de coste es moverse en la
Una forma de minimizar la funcion
contraria al gradiente
direccion
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Maximo
descenso
w(n + 1) = w(n) J(w) = w(n) + (p Rx w(n))
w(0)
J ( w) |w= w(0)
w(1)
w(2)
J ( w) |w= w(1)
J ( w) |w= w(2)
wopt
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
el parametro
end
suficientemente pequeno
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Convergencia
de Wiener si el
El algoritmo de maximo
descenso converge a la solucion
parametro
del algoritmo cumple
0
2
max
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
2 r
R
=
x convergencia
Ejemplos de
2 r 2
SEAL DE ENTRADA
BLANCA (r=0)
SEAL DE ENTRADA
MUY CORRELADA (r=0.9)
max 1 + r
=1
=
min 1 r
max 1 + r
= 19
=
min 1 r
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
BAJO
LMS
Aplicaciones
Extensiones
ALTO
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
0.8
= 1 / max
r = 0.5
w0
0.4
0.78
0.2
0
0
10
20
30
0.6
= 1.7 / max
r = 0.5
J (n)
0.76
w1
0.74
10
20
30
20
30
20
30
0.86
w0
0.4
0.2
0.84
0.82
J (n)
0.8
w1
0.78
0.76
-0.2
10
20
30
= 1 / max
r = 0.9
10
0.24
0.8
0.23
w0
0.6
0.4
10
20
Iterations
J (n)
0.22
0.21
w1
0.2
0
0.74
0.2
30
0.19
10
Iterations
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
El algoritmo de maximo
descenso es una forma iterativa de
resolver las ecuaciones normales (o un sistema cualquiera de
ecuaciones lineales), pero NO es un algoritmo adaptativo
Notese
que el algoritmo de maximo
descenso requiere conocer
o estimar Rx y p para calcular el gradiente en un punto w(n)
J(w) = Rx w(n) p
J(w) = E xn xTn w(n) E [xn d[n]]
disponemos de xn
Como
podemos estimar Rx y p cuando solo
y de d[n]?
d
J(w)
= xn xTn w(n) xn d[n]
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
El gradiente instantaneo
puede reescribirse como
d
J(w)
= xn y[n] xn d[n] = xn (y[n] d[n]) = e[n]xn
d
es decir, J(w)=-error
dato
LMS
fundamental del LMS es, entonces
La ecuacion
w(n + 1) = w(n) + e[n]xn
Ventajas:
el caso de senales
reales)
Inconvenientes:
La estima del gradiente es ruidosa
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Algoritmo LMS
Inicializar w(0)
For n = 0, . . .
e(n) = d(n) w(n)T xn
w(n + 1) = w(n) + e[n]xn
end
Convergencia del LMS
La convergencia del LMS ha de ser en media
lm E [w(n)] = wopt
restrictiva)
y en MSE (mas
lm E [J(n)] = Cte = J()
2
M x2
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
En el metodo
de maximo
descenso los coeficientes describen
de Wiener
una trayectoria (determinista) que acaba en la solucion
J (n)
J min Solucin
de Wiener
J (n)
J ()
J min
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Ruido de desajuste
Debido a su convergencia ruidosa, el LMS siempre provoca un
MSE en exceso del mnimo dado por el filtro de Wiener
El exceso de MSE se mide mediante el denominado ruido de
desajuste, que se define como
D=
J() Jmin
Jmin
D
Se puede demostrar que (para un suficientemente pequeno)
viene dado por
D = M x2
2
es decir,
Para una velocidad de convergencia dada, el desajuste aumenta
con el numero
de coeficientes del filtro M
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
=0.075
=0.025
Extensiones
1 simulacin
10
Aplicaciones
-2
J(n)
E[J(n)]
10
-4
=0.075
=0.025
10
-2
10
10
-4
10
-6
10
100
200
300
400
500
-6
10
100
200
300
400
500
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Identificacion
Tenemos acceso a la entrada, x, y la salida, d, de un sistema
desconocido (planta) h
Usamos un filtro FIR w para identificar h
d [ n]
x[n]
h
e[n]
+
-
y[n]
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
Prediccion
e[n]
x[n]
+
-
y[n] = x[n]
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
Igualacion
Fase de entrenamiento
z d
s[n]
smbolos
canal
d [=
n] s[n d ]
e[n]
r[n] ruido
igualador
x[n]
y[n]
e[n]
s[n]
smbolos
canal
r[n] ruido
x[n]
igualador
y[n]
Decisor
s[n]
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Cancelacion
x[=
n] s[n] + i[n]
e[n]
Seal de referencia
Correlada con i[n] e
incorrelada con s[n]
Seal de inters
s[n]
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Indice
Introduccion
Filtro de Wiener
Algoritmo Maximo
Descenso
LMS
Aplicaciones
Extensiones
I. Santamara
Introduccion
Alg. Maximo
Descenso
Filtro de Wiener
LMS
Aplicaciones
Extensiones
LMS complejo
En el caso de variables complejas tenemos
J(w) = E |e[n]|2 = E [e[n](e[n]) ] =
Y el gradiente se calcula con respecto a w
J(w) =
J(w)
Re(w0 )
J(w)
Re(w1 )
J(w)
Re(wM 1 )
J(w)
+ j Im(w
0)
J(w)
+ j Im(w
1)
..
.
J(w)
+ j Im(wM 1 )
Por ejemplo
w w H x n = x n
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
M
1
X
wk x[n k]
k=0
y[n] = w xn =
M
1
X
wk x[n k]
k=0
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
LMS normalizado
del LMS convencional, el cambio en los pesos es
En la ecuacion
de entrada:
proporcional a la norma de la senal
w(n) = e[n]xn
e[n]xn
w(n + 1) = w(n) +
||xn ||2
w(n + 1) = w(n) +
e[n]xn
||xn ||2 +
siendo 0 < << 1
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Pero notese
que es un algoritmo adaptativo no lineal, que no
converge al filtro de Wiener en media
I. Santamara
Introduccion
Filtro de Wiener
Alg. Maximo
Descenso
LMS
Aplicaciones
Extensiones
Conclusiones
El filtro de Wiener es una de las herramientas fundamentales del
modelado,
tratamiento estadstico de senales
(prediccion,
igualacion,
...)
identificacion,
Depende unicamente
de los estadsticos de segundo orden de la
de entrada y la senal
de referencia
senal
I. Santamara