Por Guillermo Dalla Vecchia...

31
Una Estructura en Cascada FIR para Predicción Lineal Adaptiva Por Guillermo Dalla Vecchia ([email protected] )

Transcript of Por Guillermo Dalla Vecchia...

Una Estructura en Cascada FIR para Predicción Lineal Adaptiva

Por

Guillermo Dalla Vecchia ([email protected])

Índice

1 Introducción ...............................................................................................................................3 2 Filtros Lattice..............................................................................................................................3

2.1 Introducción.................................................................................................................3 2.2 El Filtro Lattice FIR.....................................................................................................3 2.3 El Filtro Lattice IIR......................................................................................................7 2.4 Filtros Lattice con Polos y Ceros..................................................................................8 2.5 Filtro Lattice LMS........................................................................................................10

3 Estructura de Filtros en Cascada para Predicción Lineal Adaptiva............................................12 3.1 Introducción.................................................................................................................12 3.2 Predicción Lineal y la Estructura en Cascada..............................................................12 3.3 La Cascada de Filtros de un Coeficiente......................................................................13 3.4 La Cascada de Filtros de Coeficientes Complejos y de Dos Coeficientes...................20

3.4.1 Algoritmos de Actualización y Complejidad Computacional.......................21 3.4.2 Simulaciones..................................................................................................22 3.4.3 Aplicación: Predicción Lineal de Voz...........................................................25 3.4.4 Consideraciones finales.................................................................................27

3.5 Conclusiones................................................................................................................28 4 Apéndice A: Acoplamiento de modos y velocidad de convergencia.........................................29 5 Apendice B: Algoritmo LMS “Leaky” ......................................................................................30 5 Referencias..................................................................................................................................31

1 INTRODUCCION En el presente trabajo se intenta analizar las ventajas y desventajas de la estructura en cascada de filtros aplicada a problemas de tratamiento de señales y concretamente a predicción lineal adaptiva de voz. Para ello se consideran diferentes algoritmos adaptivos como el LMS y RLS (que son las dos grandes familias de algoritmos existentes de este tipo), así como también los filtros Lattice de los cuales se hace una introducción en la sección 2. En la sección 3 se ataca de lleno el problema propuesto, en donde se presentan las simulaciones correspondientes y las conclusiones comparando con los resultados obtenidos por los autores del articulo en el cual se basa este trabajo (ver [3]). 2 FILTROS LATTICE 2.1 Introducción En la presente sección se intenta analizar los llamados Filtros Lattice, estos poseen una serie de características que los hace interesantes para el tratamiento de señales como modularidad, baja sensibilidad a los efectos de la cuantificación de los parámetros (esta propiedad es muy importante para sistemas de comunicación basados en predicción como por ejemplo DPCM, o ADPCM), y un criterio simple para asegurar que Ap(z) (filtro inverso) sea de fase mínima. 2.2 El filtro Lattice FIR Sea x(n) una señal que se toma como la respuesta al impulso de un filtro todo polos de la forma:

(0)( )( )p

bH zA z

=

Los coeficientes de Ap(z) se hallan minimizando el error cuadrático:

2

0

( )p pn

e nε∞

=

= ∑

Donde 1

( ) ( ) ( ) ( ) ( ) ( )p

p p pk

e n x n a n x n a k x n k=

= ∗ = + −∑ con ap(0)=1. Los coeficientes ap que

minimizan εp, también minimizan la diferencia entre x(n) y lo que puede ser considerado como la predicción de x(n) en base a p muestras anteriores:

1

ˆ( ) ( ) ( )p

pk

x n a k x n k=

= − −∑

Se le llama a este estimador predicción hacia delante de x(n) y a ˆ( ) ( ) ( )pe n x n x n= − se le conoce

como error de predicción hacia delante de orden p. Para distinguir entre el error de predicción hacia delante y el error de predicción hacia atrás (que será introducido en breve), se usara la siguiente notación:

1

( ) ( ) ( ) ( )p

p pk

e n x n a k x n k+

=

= + −∑ (2.1)

Además usaremos εp

+ para denotar la suma de los cuadrados de ep+(n):

2

0

( )p pn

e nε∞

+ +

=

= ∑ (2.2)

La ecuación 2.1 permite escribir el error de predicción hacia delante de orden p en el dominio z de

la siguiente manera:

( ) ( ) ( )p pE z A z X z+ = (2.3)

Donde 1

( ) 1 ( )p

kp p

k

A z a k z−

=

= +∑ , por lo tanto ep+ (n) puede ser generada filtrando x(n) con el filtro

FIR Ap(z) al que se denomina como filtro de error de predicción hacia delante. Los coeficientes del filtro de error de predicción hacia adelante son solución de las ecuaciones normales:

1p p pR a u=∈ (2.5)

Donde Rp es una matriz Toeplitz Hermítica de autocorrelaciones. Estas ecuaciones pueden ser resueltas recursivamente usando la Recursión de Levinson-Durbin (ver [1] o [2]). Por lo tanto, los coeficientes del filtro de error de predicción de orden j+1-esimo, aj+1(i), están relacionados con los coeficientes del filtro de error de predicción de orden j-esimo a través de la ecuación de actualización de la recursión de Levinson-Durbin que se presenta a continuación:

*1 1( ) ( ) ( 1)j j j ja i a i a j i+ += + Γ − + (2.6)

Donde los coeficientes Гj son los llamados coeficientes de reflexión. Expresando la ecuación anterior en el dominio z, se puede relacionar el filtro de error de

predicción Aj+1(z) con el Aj(z) de la siguiente manera:

( 1) * *1 1( ) ( ) (1/ )j

j j j jA z A z z A z− ++ + ⎡ ⎤= + Γ ⎣ ⎦ (2.7)

Multiplicando ambos lados de esta ecuación por X(z) y usando la ecuación (2.3) se obtiene la

siguiente relación entre Ej+1+ (z) y Ej

+(z):

11 1( ) ( )j j j jE z E z E z+ + − −+ += + Γ (2.8)

Donde se ha definido Ej

-(z) como sigue:

* *( ) ( ) (1/ )jj jE z z X z A z− −=

Si se introduce la notación * *( ) (1/ )R j

j jA z z A z−= , entonces Ej-(z) puede ser escrito como sigue:

( ) ( ) ( )R

j jE z A z X z− = (2.9)

Haciendo la transformada z inversa a ambos lados de la ecuación (2.8), se obtiene la siguiente

recursión en el dominio del tiempo:

1 1( ) ( ) ( 1)j j j je n e n e n+ + −+ += + Γ − (2.10)

Una interpretación de la señal ej

-(n) en el marco del tratamiento de señales puede ser derivada de la ecuación (2.9), tomando la transformada z inversa:

*

1

( ) ( ) ( ) ( )j

j jk

e n x n j a k x n j k−

=

= − + − +∑ (2.11)

Como se hizo con el error de predicción hacia delante, ej-(n) puede ser expresado como la

diferencia entre x(n-j) y lo que puede ser considerado como la predicción de x(n-j), en base a j muestras anteriores:

ˆ( ) ( ) ( )je n x n j x n j− = − − −

Donde *

1

ˆ( ) ( ) ( )j

jk

x n j a k x n j k=

− = − − +∑ , lo interesante de todo esto es que si se minimiza la suma

de los cuadrados de ej-(n):

2

0

( )j jn

e nε∞

− −

=

= ∑

Se encuentra que los coeficientes que minimizan la expresión anterior son los mismos que

minimizan εj+ y por lo tanto se encuentran resolviendo las ecuaciones normales dadas en la ecuación

(2.5). Por lo tanto, se dice que ej-(n) es el error de predicción hacia atrás de orden j y Aj

R(z) es conocido como el filtro de error de predicción hacia atrás. La ecuación (2.11) provee una recursión para el error de predicción hacia delante de orden j+1 en función de los errores de predicción hacia delante y hacia atrás de orden j. Una recursión similar puede ser derivada para el error de predicción hacia atrás de la siguiente manera. Tomando conjugación compleja a ambos lados de la ecuación (2.6) y sustituyendo j-1+1 por i se tiene:

* * *1 1( 1) ( 1) ( )j j j ja j i a j i a i+ +− + = − + + Γ

Expresando la ecuación anterior en el dominio z se encuentra que:

( 1) * * ( 1) * * *

1 1(1/ ) (1/ ) ( )j jj j j jz A z z A z A z− + − ++ += + Γ

Multiplicando ambos lados de la ecuación anterior por X(z) y usando las definiciones de

( ) ( )j jE z y E z+ − en las ecuaciones (2.3) y (2.9), respectivamente:

1 *1 1( ) ( ) ( )j j j jE z z E z E z− − − ++ += + Γ

Finalmente, tomando la transformada z inversa en la ecuación anterior se obtiene la recursión deseada:

*1 1( ) ( 1) ( )j j j je n e n e n− − ++ += − + Γ (2.12)

Las ecuaciones (2.10) y (2.12), representan un par de ecuaciones en diferencias acopladas que

corresponden al cuadripolo que se muestra a continuación 1j+Γ :

Fig. 1 Diagrama de flujo de señal de un filtro Lattice FIR y estructura de cuadripolo

Con una cascada de cuadripolos de coeficiente de reflexión jΓ , se tiene un filtro Lattice FIR de

orden p. Dado que: 0 0( ) ( ) ( )e n e n x n+ −= =

Por lo tanto las dos entradas a la primer etapa del filtro son iguales.

Es interesante ver que con un filtro de error de predicción hacia delante de la forma:

1

1

( ) (1 )p

p ii

A z zα −

=

= −∏

La función de transferencia del filtro de error de predicción hacia atrás es:

* * 1 *

1

( ) (1/ ) ( )p

R pp p i

i

A z z A z z α− −

=

= = −∏

De lo que se desprende que los ceros de Ap(z) son complejos conjugados de Ap

R(z). Como consecuencia, se deduce que el filtro de error de predicción hacia delante que es obtenido del método de la autocorrelación es de fase mínima (todos sus polos se encuentran dentro del circulo unidad). Por lo tanto el filtro de error de predicción hacia atrás es de fase máxima. Otra relación interesante de notar es que:

( ) ( ) ( )p pE z A z X z+ =

y

( ) ( ) ( )Rp pE z A z X z− =

Entonces

1 *

11

( )( ) ( ) ( ) ( ) ( )

( ) 1

R pp i

p p p ap pip i

A z zE z E z E z H z E zA z z

αα

−− + + +

−=

⎛ ⎞−= = =⎜ ⎟−⎝ ⎠

Puede verse que el filtro Hap(z) es un filtro pasa todo. Por lo tanto el error de predicción hacia atrás

puede ser generado filtrando el error de predicción hacia adelante con un filtro pasa todo. Nótese que cuando Ap(z) es de fase mínima, todos los polos del filtro pasa todo, se encuentran dentro del circulo unidad y todos los ceros fuera. Por lo tanto Hap(z) es un filtro causal y estable. Una de las grandes ventajas de este tipo de filtros es la modularidad, es decir la capacidad de aumentar el orden del filtro sin tener que recalcular nuevamente todos los coeficientes. Otra de sus características es la facilidad de determinar si el filtro es de fase mínima. Específicamente el filtro será de fase mínima si y solo si los coeficientes de reflexión se encuentran acotados por 1. Esta condición de fase mínima permite para filtros IIR actualizar los coeficientes de tal manera que para cada valor de n los polos del filtro permanecen dentro del circulo unidad (lo que asegura estabilidad). Finalmente comparadas con otras estructuras, tiende a ser menos sensible a los efectos de la cuantificación de los parámetros. Por lo tanto este tipo de filtros son usados en aplicaciones donde se debe codificar una señal en términos de los coeficientes del filtro del modelo que provee la mejor aproximación a la señal, como por ejemplo en análisis de voz. 2.3 El filtro Lattice IIR Filtro Todo Polos Sea un filtro Lattice FIR de orden p, la entrada al filtro es el error de predicción de orden cero e0

+(n) y las salidas son los errores de predicción hacia delante y hacia atrás de orden p, ep+(n) y ep

-(n) respectivamente. La función de transferencia de este filtro es de la forma:

10

( )( ) 1 ( )

( )

pp k

p pk

E zA z a k z

E z

+−

+=

= = +∑

El filtro todo polos seria el que produciría una respuesta de e0

+(n) a la entrada ep+(n):

0

1

1 ( ) 1( ) ( ) 1 ( )

pkp p

pk

E zA z E z a k z

+

+−

=

= =+∑

Por lo tanto, mientras que el filtro Lattice FIR construye los errores de predicción ( ) ( )j je n y e n+ − a

partir de e0+(n), el filtro Lattice todo polos produce los errores de predicción de orden mas bajos a partir

de ordenes superiores. Por lo tanto, para implementar un filtro Lattice todo polos de orden p, se debe determinar como se pueden generar los errores de predicción de orden bajo a partir de los de orden superior. Despejando de la ecuación (2.10) ej

+(n), y tomando (2.12), se llega al siguiente par de ecuaciones en diferencias acopladas:

1 1

*1 1

( ) ( ) ( 1)

( ) ( 1) ( )j j j j

j j j j

e n e n e n

e n e n e n

+ + −+ +

− − ++ +

= − Γ −

= − + Γ

Estas dos ecuaciones definen el cuadripolo que se muestra en la figura 2, y representan una etapa de un filtro Lattice todo polos.

Fig. 2 Diagrama de flujo de señal de un filtro Lattice IIR y estructura de cuadripolo

Mientras que la función del sistema que relaciona e0+(n) con ep

+(n) es el filtro todo polos:

0 ( ) 1( )( ) ( )p p

E zH zE z A z

+

+= =

De donde se deduce que la función de transferencia que relaciona ep

+(n) con ep-(n) es el filtro pasa

todo:

* *( ) (1/ ) ( )( )

( ) ( ) ( )

Rp p pp

app p p

E z A z A zH z z

E z A z A z

−−

+= = =

Por lo tanto esta estructura también puede usarse para implementar sistemas pasa todo. 2.4 Filtros Lattice con Polos y Ceros De la estructura presentada en la sección anterior puede desarrollarse un filtro Lattice que realice una función de transferencia racional de la forma:

1

( ) (0) ... ( )( )

( ) 1 (1) ... ( )

qq q q

pp p p

B z b b q zH z

A z a z a p z

− −

+ += =

+ + +

Donde q p≤ . Para hacer esto debe notarse que la función de transferencia anterior puede

implementarse mediante la cascada de filtros todo polos, con filtros todo ceros, el par de ecuaciones en diferencias correspondiente a esta cascada son:

1

( ) ( ) ( ) ( )p

pk

w n x n a k w n k=

= − −∑

Donde w(n) es la salida del filtro todo polos 1/Ap(z), y

0

( ) ( ) ( )q

qk

y n b k w n k=

= −∑

es la salida del filtro FIR Bq(z). Dado que los ceros de H(z) son introducidos tomando combinaciones lineales de salidas retardadas del filtro todo polos con el filtro Lattice todo polos de la figura 2, una

función de transferencia puede ser realizada en forma similar con una combinación lineal de señales e0

+(n-k) para k=0…q. De todas formas, una manera mas eficiente es tomar una combinación lineal de los errores de predicción hacia atrás ej

-(n)

0

( ) ( ) ( )q

q jj

y n c j e n−

=

= ∑

Para mostrar que este filtro tiene una función de transferencia racional, se empezara expresando la

ecuación anterior en el dominio z:

0

( ) ( ) ( )q

q jj

Y z c j E z−

=

= ∑

con

0( ) ( ) ( ) ( )( )

RjR

j j pp

AE z A z E z E z

A z− + += =

Por lo tanto

0

( )( ) ( ) ( )

( )

Rqj

q pj p

A zY z c j E z

A z+

=

= ∑

De donde se deduce la expresión de la función de transferencia que relaciona la entrada Ep

+(z) con la salida Y(z):

0

( ) ( )( )

( )

qR

q jj

p

c j A zH z

A z==∑

Que tiene p polos, y q ceros. Nótese que los ceros de H(z) son las raíces del polinomio:

0

( ) ( ) ( )q

Rq q j

j

B z c j A z=

= ∑

Que es una función no solo de los coeficientes cq(j) sino también de los coeficientes de reflexión

Γj. Para ver como los coeficientes bq(j) están relacionados con los coeficientes cq(j), se sustituirá la siguiente expresión de ( )R

jA z :

* * *

0

( ) (1/ ) ( )j

R j m jj j j

m

A z z A z a m z− −

=

= = ∑

En la ecuación anterior como sigue:

*

0 0

( ) ( ) ( ) ( )q q q

k kq q j q

k j k k

B z c j a j k z b k z− −

= = =

⎡ ⎤= − =⎢ ⎥

⎣ ⎦∑ ∑ ∑

Finalmente igualando potencias de z a ambos lados de la igualdad se llega a:

*( ) ( ) ( )

q

q q jj k

b k c j a j k=

= −∑

Esta ecuación muestra como pueden hallarse los coeficientes bq(k) a partir de cq(k) y Γj.

Específicamente, a partir de los coeficientes de reflexión del filtro todo polos, se computan los coeficientes aj(k) con estos coeficientes y los cq(k), la ecuación anterior puede usarse para hallar los coeficientes bq(k). Esta ecuación también puede usarse para implementar una función de transferencia racional dada, con numerador Bq(z).

Para hacer esto la ecuación es rescrita como sigue:

*

1

( ) ( ) ( ) ( )q

q q q jj k

b k c k c j a j k= +

= + −∑

Por lo tanto los coeficientes cq(k) pueden ser calculados recursivamente como:

*

1

( ) ( ) ( ) ( )q

q q q jj k

c k b k c j a j k= +

= − −∑

Esta recursión se inicializa fijando ( ) ( )q qc q b q=

2.5 El filtro Lattice LMS Como se vio en la sección 2.2 los filtros Lattice están parametrizados en términos de sus coeficientes de reflexión. Las salidas de la etapa j-esima de los filtros Lattice son los errores de predicción:

1

( ) ( ) ( ) ( )p

p pk

e n x n a k x n k+

=

= + −∑

*

1

( ) ( ) ( ) ( )j

j jk

e n x n j a k x n j k−

=

= − + − +∑

Se intentara diseñar un algoritmo adaptivo que minimice la siguiente función de costo:

2 2( ) ( ) ( )B

j j jn E e n e nξ + −⎡ ⎤= +⎢ ⎥⎣ ⎦

Lo que resulta en un conjunto de coeficientes de reflexión solución dados por:

*

1 1

2 2

1 1

( ) ( 1)2

( ) ( 1)

j jBj

j j

E e n e n

E e n e n

+ −− −

+ −− −

⎡ ⎤⎡ ⎤−⎣ ⎦⎢ ⎥⎣ ⎦Γ = −⎡ ⎤+ −⎢ ⎥⎣ ⎦

(2.13)

Debido a la dificultad para evaluar esta última expresión, se considerará una minimización del error por el método de máxima pendiente usando una ecuación de actualización de la forma:

*

( )( 1) ( )

Bj

j j jj

nn n

ξµ

∂Γ + = Γ −

∂Γ*

De las ecuaciones de actualización del filtro Lattice tenemos que:

1 1( ) ( ) ( 1)j j j je n e n e n+ + −+ += + Γ − (2.10)

*1 1( ) ( 1) ( )j j j je n e n e n− − ++ += − + Γ (2.12)

De lo que se desprende que la derivada de la ecuación (2.12) vale:

* *

1 1*

( )( ) ( 1) ( ) ( )

Bj

j j j jj

nE e n e n e n e n

ξ + − − +− −

∂ ⎡ ⎤⎡ ⎤ ⎡ ⎤= − +⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦∂Γ

De donde se deduce que la ecuación de actualización vale:

* *

1 1( 1) ( ) ( ) ( 1) ( ) ( )j j j j j j jn n E e n e n e n e nµ + − − +− −

⎡ ⎤⎡ ⎤ ⎡ ⎤Γ + = Γ − − +⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦ (2.14)

Sustituyendo (2.12) en la ecuación anterior se ve que Γj satisface la siguiente ecuación en diferencias de primer orden:

2 2 *

1 1 1 1( 1) 1 ( ) ( 1) ( ) 2 ( ) ( 1)j j j j j j j jn E e n e n n E e n e nµ µ+ − + −− − − −

⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤Γ + = − + − Γ + −⎣ ⎦⎢ ⎥ ⎢ ⎥⎢ ⎥⎣ ⎦ ⎣ ⎦⎣ ⎦

Para procesos estacionarios, Γj(n) convergerá a la solución encontrada siempre y cuando el termino que multiplica Γj(n) sea menor que uno en magnitud:

2 2

1 11 ( ) ( 1) 1j j jE e n e nµ + −− −

⎡ ⎤− + − <⎢ ⎥⎣ ⎦ (2.15)

Lo que impone la siguiente restricción en el paso de adaptación:

2 2

1 1

20( ) ( 1)

j

j jE e n e nµ

+ −− −

< <⎡ ⎤+ −⎢ ⎥⎣ ⎦

(2.16)

Debido al operador esperanza que aparece en la ecuación (2.14) el método de máxima pendiente, es de uso limitado ya que requiere el conocimiento de las propiedades estadísticas de segundo orden de los errores de predicción hacia delante y hacia atrás. De todas formas si se adopta un enfoque similar al LMS, o sea reemplazar las esperanzas con valores instantáneos, la ecuación de actualización se convierte en:

* *

1 1( 1) ( ) ( ) ( 1) ( ) ( )j j j j j j jn n e n e n e n e nµ + − − +− −

⎡ ⎤⎡ ⎤ ⎡ ⎤Γ + = Γ − − +⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦ (2.17)

Que es el denominado filtro Lattice LMS. Con un análisis similar al que se realiza para el LMS, se desprende que si x(n) es un proceso estacionario en sentido amplio, entonces los coeficientes de reflexión convergerán en media a los valores dados en el ecuación (2.13) siempre y cuando el paso de adaptación satisfaga la condición (2.16). Se demuestra (ver [1]) que este algoritmo converge típicamente mas rápido que el LMS standard, y también que el tiempo de convergencia es esencialmente independiente de la

dispersión de los valores propios. Una desventaja sin embargo es que requiere para cada actualización , aproximadamente el doble de operaciones que el LMS.

3 ESTRUCTURA DE FILTROS EN CASCADA PARA PREDICCION LINEAL ADAPTIVA 3.1 Introducción Los algoritmos LMS, RLS , y similares son los dos fundamentales en el área de filtrado adaptivo; aunque populares y ampliamente usados, estos algoritmos en su forma mas simple sufren de diversos problemas y limitaciones, de donde surgen innumerables variaciones a las formulaciones originales que intentan mejorarlos. Fundamentalmente, la convergencia de los filtros LMS esta afectada principalmente por dos grandes problemas: la dispersión de los valores propios de la matriz de correlación de la señal de entrada y el acoplamiento entre modos distintos de convergencia (ver apéndice para una explicación detallado del significado de esta expresión). La dispersión de los valores propios resulta en velocidades de convergencia no uniformes para los coeficientes del filtro; el acoplamiento de modos produce trayectorias no monótonas de los coeficientes del filtro hacia la convergencia. Ambos problemas son dependientes del orden del predictor, dado que la dispersión de los valores propios es una función no decreciente del tamaño de la matriz de autocorrelación. Las alternativas que existen para minimizar estos efectos son los filtros Lattice LMS, y los algoritmos LMS en el dominio de la frecuencia, aunque el precio que pagan es el mayor desajuste que producen. Aunque el desajuste final puede ser de menor importancia en aplicaciones que involucren señales no estacionarias, la velocidad de convergencia sigue siendo un factor importante, y para un paso de adaptación dado, solo puede ser mejorada compensando los efectos en la dispersión de los autovalores. Por otro lado, los filtros RLS, son mas complejos, y mas costosos computacionalmente y explícitamente, o implícitamente requieren el cálculo de la inversa de la matriz de autocorrelación de la señal de entrada, lo que puede llevar a problemas de estabilidad sin solución. Los algoritmos RLS rápidos (FRLS) intentan mejorar estos aspectos pero muestran una gran sensibilidad a la precisión numérica, especialmente cuando intentan seguir una señal no estacionaria o en presencia de entradas ruidosas. Todo lo mencionado anteriormente es particularmente evidente cuando la señal de entrada al filtro es altamente correlacionada consigo misma, este es el caso de los problemas de predicción lineal, por lo que los algoritmos LMS son raramente usados. En este trabajo se intenta estudiar una estructura alternativa para predicción lineal adaptiva, basada en la minimización de mínimos cuadrados, la que produce resultados interesantes. La estructura es una cascada de filtros adaptivos de bajo orden que exitosamente mejoran la predicción global. Es importante notar que esta no es una realización alternativa de un filtro FIR LMS, en el sentido de que los coeficientes del predictor no convergen a la solución que daría un filtro de Wiener (solución de Wiener). Desde el punto de vista del rendimiento, la estructura en cascada ofrece tanta mejora respecto de los filtros LMS tradicionales, para justificar su uso en problemas de predicción lineal. 3.2 Predicción Lineal y la Estructura en Cascada Los filtros adaptivos FIR son una estructura adecuada para este problema, especialmente cuando se trabaja con señales localmente estacionarias (como por ejemplo la voz humana). El filtro adaptivo intenta generar una estimación de la muestra de entrada actual mediante una combinación lineal de N muestras anteriores. La elección de N para el predictor es crucial para el rendimiento del filtro. Si la señal de entrada puede ser modelada filtrando ruido aditivo, Gaussiano, y blanco (AWGN), a través de un filtro todo polos (modelo autoregresivo), entonces es importante que el orden del predictor iguale al orden del modelo. En el caso general, no puede asumirse que la señal tenga esta forma, y una aproximación mediante este modelo daría como resultado un valor grande de N. Desafortunadamente, como se dijo mas arriba, a medida que aumenta el orden del predictor, aumentan los efectos de la dispersión de los autovalores, y fuerzan el uso de pasos de adaptación menores, lo que resulta en una convergencia lenta. Una manera posible de contrarrestar estos problemas es reemplazar el filtro por una serie de refinamientos secuenciales de la predicción producidos por una cascada de filtros adaptivos de orden

bajo. Dado que los problemas de dispersión de los valores propio crecen a medida que crece la longitud del filtro, en una cascada de filtros de bajo orden las distintas etapas se verán menos afectadas por este problema y exhibirán una mayor velocidad de convergencia.

La estructura general del predictor en cascada se muestra en la figura 3.

Fig. 3 Diagrama de bloques de la estructura en cascada

El filtro global adaptivo es reemplazado por una cascada de M etapas, y cada etapa es un predictor FIR independiente . Sea xk(n) la entrada a la etapa k, y ek(n) el correspondiente error de predicción, o sea:

( )

1

( ) ( ) ( )kl

mk k k k

m

e n x n f x n m=

= − −∑ (3.1)

Donde fk

(lk)(n) son los coeficientes del k-esimo predictor. Las etapas están conectadas en cascada de tal manera que xk+1(n)=ek(n); x1(n)=x(n) donde x(n) es la señal a modelar. El error de predicción global de la estructura es el error de la ultima etapa, eM(n). Luego de la convergencia fk

(m)(n)→ fk(m) y el

predictor global puede ser expresado como:

1

( ) ( )M

kk

F z F z=

=∏ (3.2)

Donde

( )

1

( ) 1kl

m mk k

m

F z f z−

=

= −∑

Algunas variables correspondientes a la arquitectura deben tomarse en consideración: el número

de etapas, como distribuir el número total de coeficientes en las distintas etapas, y que algoritmo usar para la adaptación. Dado que los filtros de bajo orden que componen las distintas etapas se adaptan independientemente, el costo computacional es del orden de M, independientemente del algoritmo de adaptación. 3.3 La Cascada de Filtros de un Coeficiente La forma mas simple del predictor en cascada esta compuesto de etapas de un único coeficiente, obviamente, esta estructura no será adecuada en general para representar una señal de entrada general dado que el filtro de predicción resultante tiene polos estrictamente reales. Sorpresivamente, la velocidad de convergencia del filtro en cascada con un algoritmo de la familia LMS para las distintas etapas, es tal que su error cuadrático mínimo durante la fase de adaptación es usualmente menor que el de un predictor LMS, o Lattice LMS de orden equivalente. En la cascada de filtros de un coeficiente, para cada etapa lk=1, independientemente del algoritmo usado para la adaptación, si se asume convergencia hacia la solución de Wiener para las etapas unitarias, será:

(1)( )(0)

kk k

k

rf n fr

→ = (3.3)

Donde rk(m) es la función de autocorrelación de xk(n). Esta expresión se deduce de sustituir en la

ecuación (3.1) el valor de lk lo que resulta en:

( ) ( ) ( ) ( 1)k k k ke n x n f n x n= − −

Entonces multiplicando a ambos lados por x(n), tomando valor esperado, y aplicando el principio de ortogonalidad, se llega a la expresión (3.3). Recordando que xk+1(n)=ek(n) y calculando [ ]( ) ( )k kE e n e n m− se llega a la siguiente relación:

[ ]21( ) (1 ) ( ) ( 1) ( 1)k k k k k kr m f r m f r m r m+ = + − − + + (3.4)

En particular se tiene que:

2 2

1(0) (1)(0)

(0)k k

kk

r rrr+−

= (3.5)

Cuando se considera el rendimiento del sistema, el error cuadrático mínimo en estado estacionario

(MSE) coincide con eM(n). Definiendo 21( ) (0)k k kJ E e n r +⎡ ⎤= =⎣ ⎦ y usando (3.5), se tiene:

2

1 1 1(1)(0) k

k k k kk

rJ r J JJ+ − −= = − ≤ (3.6)

Por lo tanto el MSE final es una función no creciente del número de etapas.

Para un filtro en cascada de dos etapas, es posible hallar expresiones exactas para los valores del filtro. Este es un ejemplo muy simple, pero es uno en el que la comparación directa entre el filtro en cascada y la solución de Wiener es manejable. Sea * * *

1 2[1 ]TF f f= − − el filtro de error de predicción correspondiente a la solución de Wiener del problema de predicción lineal para un filtro de dos coeficientes. Según las ecuaciones de Wiener-Hopf se tiene que:

1*1 1*

2

(0) (1) (1)(1) (0) (2)

x x x

x x x

r r rfR g

r r rf

−⎡ ⎤ ⎡ ⎤ ⎡ ⎤= =⎢ ⎥ ⎢ ⎥ ⎢ ⎥

⎣ ⎦ ⎣ ⎦⎣ ⎦

De donde se deduce que:

*

1 2 2

2*

2 2 2

(1)[ (0) (2)](0) (1)

(0) (2) (1)(0) (1)

x x x

x x

x x x

x x

r r rfr r

r r rfr r

−=

−=

Sean 1 2

ˆ ˆ[1 ]TF f f= − − los coeficientes del predictor en cascada luego de la convergencia. Estos son:

1 0 1

2 0 1

ˆ

ˆf f f

f f f

= +

= −

Donde f0 y f1 son los coeficientes de cada etapa por separado. De esto y asumiendo que las etapas han convergido a sus valores óptimos luego de algunos

cálculos se tiene que:

0

2

1 2 2

(1)(0)

(1) (1) (0) (2)(0) (0) (1)

x

x

x x x x

x x x

rfr

r r r rfr r r

=

−=

Por lo que finalmente:

*

1 12

* 2 *2 2 2

ˆ

(1)ˆ(0)

x

x

f f

rf f fr

β

=

⎛ ⎞= =⎜ ⎟⎝ ⎠

Por lo tanto los coeficientes del filtro convergen a una versión sesgada del filtro óptimo; en este

caso el sesgo afecta al segundo coeficiente como una función de la correlación de la señal, el sesgo es menor para señales con un espectro de potencia angosto. Estos resultados pueden ser usados para verificar experimentalmente el rendimiento de la estructura en cascada. Se elegirá como algoritmo de adaptación para las distintas etapas al LMS, las formulas de actualización para cada etapa son las de este algoritmo:

( 1) ( ) ( ) ( )( ) ( ) ( ) ( 1)

k k k k k

k k k k

f n f n e n x ne n x n f n x n

µ+ = += − −

Se considera un proceso estacionario x(n), obtenido de filtrar ruido AWGN (ruido aditivo

Gaussiano y blanco) de varianza unidad a través de un filtro todo polos H(z) de dos polos (modelo AR(2)). Es posible expresar los polos del filtro como 1,2

jp e θρ ±= , entonces para este modelo la dispersión de los valores propios para la matriz de correlación 2x2 (o número de condición) es:

2

2

1 2 cos( )1 2 cos( )

ρ ρ θλρ ρ θ

+ +=

+ −

Que tiende a crecer a medida que 0θ → . El sesgo para el segundo coeficiente vale en este caso:

22 cos( )1ρβ θρ

=+

Idealmente cuando 1 0yρ θ→ → , el rendimiento de la cascada debería ser superior y

mayormente inmune de efectos que se derivan de elevada dispersión de los autovalores y el acoplamiento de modos. A continuación se muestran dos simulaciones, la primera corresponde al caso de polos reales y de signo contrario.

Fig. 4 Evolución de los coeficiente para LMS, LMS Lattice, LMS cascada para proceso AR(2)

Fig. 5 Curvas de aprendizaje para el proceso AR(2)

En las graficas anteriores las rectas de color rojo corresponden a la solución de Wiener, los

colores: azul, verde, y magenta, se corresponden con LMS común, LMS Lattice, y LMS en cascada respectivamente. Puede verse claramente en la figura 4 que el coeficiente negativo de la cascada no converge a la solución de Wiener (esto era lo que se había predicho en los cálculos anteriores), pero lo hace a la versión sesgada que se había deducido, también se observa esto en las curvas de aprendizaje (figura 5), la estructura en cascada presenta un MSE superior al filtro Lattice (dado que converge a una versión sesgada), pero menor al LMS común (esto se debe a que el primer coeficiente converge rápidamente a la solución de Wiener, mucho antes de lo que lo hace el LMS). Además se cumple lo que era de esperarse, es decir, la lentitud del LMS, y la mayor rapidez de convergencia del LMS Lattice, por ultimo se observa que lo que el autor sostiene es decir que aun con polos reales el rendimiento de la cascada debería superior no es tan así, esto puede verse claramente de las curvas de aprendizaje correspondientes a la figura 5.

En la siguiente simulación se tomo ρ=0.95 y θ=π/20 en las ecuaciones correspondientes, de forma de llegar al caso donde la estructura en cascada es óptima, el paso de adaptación usado en el LMS para los distintos filtros fue elegido para maximizar la velocidad de convergencia de cada uno. Las gráficas muestran los resultados de un promedio hecho sobre 100 realizaciones y 2000 iteraciones.

Fig. 6 Evolución de los coeficiente para LMS, LMS Lattice, LMS cascada para proceso AR(2)

Fig. 7 Curvas de aprendizaje para el proceso AR(2)

Fig. 8 Evolución de los coeficientes y curvas de aprendizaje del articulo original

En la figura 8, las líneas llenas, punteadas, y punto línea, corresponden, a LMS cascada, LMS, y

LMS Lattice respectivamente. Como puede verse en la figura 6, el filtro LMS en cascada muestra un rendimiento superior que el

LMS común, y el LMS Lattice, en lo que se refiere a la mayor velocidad de convergencia de su transitorio, sin embargo la diferencia entre la cascada y el Lattice no es tan grande como se ve en las graficas del articulo original (figura 8), a medida que crece la cantidad de iteraciones se ve si bien la cascada tiene un buen comportamiento transitorio, a partir de la iteración cien aproximadamente, la convergencia se enlentece apreciablemente, al punto que luego de la iteración seiscientos aproximadamente, el LMS Lattice llega a un nivel de precisión respecto de la solución de Wiener ligeramente superior. Con respecto al MSE, la performance del filtro en cascada es definitivamente superior en cuanto a que llega mas rápidamente al estado estacionario que los otros dos filtros con el mismo error cuadrático medio en exceso al que llega por ejemplo el filtro Lattice, o sea que el MSE que la cascada logra en unas cincuenta iteraciones aproximadamente, a su perseguidor mas cercano (el filtro Lattice) le toma alrededor de unas quinientas.

Aparte de este ejemplo simple, se probo la cascada de etapas de un solo coeficiente en una predicción de un proceso AR de orden superior. El proceso elegido en cuestión fue de orden 6 con todos sus polos reales (ver figura 9).

Fig. 9 Curvas de aprendizaje para un proceso AR(6)

De la figura 9 se deduce que la performance de la cascada y el filtro Lattice son idénticas en lo que

se refiere al error cuadrático medio (esto se puede ver si se hace el zoom correspondiente en MATLAB), sin embargo cuando se considera la cantidad de operaciones se ve que la cascada es superior ya que tiene un menor costo computacional que el Lattice(esto se discutirá mas en detalle en la sección 3.4.1). Para este proceso se ve que todos los filtros tienen un rendimiento similar, por lo que el mejor en este caso seria el LMS ya que es el que tiene el menor costo computacional, el último comentario que quiero hacer sobre este ejemplo, es respecto a los pasos de adaptación: los valores mínimos para el LMS Lattice, y para el LMS fueron del orden de 10-9, en cambio para la cascada fue de aproximadamente 5 veces superior, con el consiguiente aumento en la velocidad de convergencia.

Estos resultados, también indican un caso en que la estructura en cascada no converge. Señales con una respuesta en frecuencia centrada y simétrica alrededor de π/2, como por ejemplo señales obtenidas de filtrar AWGN a través de un filtro cuyo diagrama de polos y ceros es simétrico con respecto a los ejes real e imaginario. Estas señales tienen una función de autocorrelación que es igual a cero en todos los valores impares del argumento. La cascada de filtros de un coeficiente intenta aproximar la transferencia del filtro con una función de transferencia de polos reales. Independientemente del algoritmo adaptivo que se utilice, dado que la autocorrelación se anula en los puntos mencionados anteriormente, los coeficientes de las etapas pares convergen a cero. 3.4 La Cascada de Filtros de Coeficientes Complejos y de Dos Coeficientes Un bloque menos restrictivo que el de un coeficiente es necesario para tener una mejor aproximación a polos complejos y ceros en el modelo AR. La estructura mas simple después de la de un coeficiente es la cascada de un coeficiente complejo, o la cascada de dos coeficientes reales. La evaluación experimental de estas dos estructuras muestra que sus rendimientos son prácticamente equivalentes, por lo tanto mientras estemos haciendo predicción lineal de señales reales, la cascada de filtros de dos coeficientes seria la elección natural.

Es difícil de obtener resultados analíticos manejables para esta estructura debido a la fórmula recursiva para la autocorrelación de ek(n). Uno podría decir de todas maneras que dado que la solución de Wiener es óptima para todos los problemas de minimización en media cuadrática, y que la estructura en cascada hace básicamente una minimización en media cuadrática, entonces el MSE final estaría acotado por la solución de Wiener. Sin embargo el objetivo de este análisis no es el estudio del comportamiento en estado estacionario de la cascada, sino en el del transitorio (o fase de adaptación). En lo que resta de esta sección se presenta alguna evidencia experimental de este comportamiento, junto con algunos ejemplos de aplicaciones. 3.4.1 Algoritmos de Actualización y Complejidad Computacional El primer conjunto de experimentos caracterizara adaptación LMS para etapas de dos coeficientes, en una comparación entre predictores LMS, Lattice LMS, y estructura en cascada de orden equivalente. Un filtro LMS de N coeficientes es reemplazado por una cascada de N/2 predictores LMS de dos coeficientes. El paso de adaptación para filtros de N coeficientes es estimado de:

max2

20[ ( )]NE x n

µ µ< < =

Se encuentra experimentalmente, que para LMS, y LMS Lattice, el valor de µ que da la máxima

velocidad de convergencia mientras que al mismo tiempo asegura estabilidad para todos los casos testeados es max0.05µ µ= . El paso de adaptación con las mismas propiedades para la cascada puede ser hasta el doble de grande, este valor es mantenido constante para todas las etapas.

Los requerimientos computacionales de la cascada en este caso, son solo ligeramente superiores que los del LMS (5N/2 en vez de 2N+1 multiplicaciones), pero menores que los del Lattice LMS (5N multiplicaciones).

Para un predictor de segundo orden, las ecuaciones de Wiener-Hopf, son suficientemente simples

para ser resueltas directamente, y este tipo de método de adaptación es mostrado en el segundo conjunto de experimentos. Para cada etapa k, los valores de rk(m) para m=0,1,2 pueden ser computados para cada n con la siguiente formula:

( ) ( 1)( ) ( ) ( )kn n

k k kr m r x n x n mλ −= + −

Donde ( ) ( )nkr m es la estimación de la autocorrelación de xk en el tiempo n y valor de argumento m,

siendo xk la señal de entrada a la etapa k, λ es un factor de olvido (usualmente cercano a la unidad). Esta expresión puede sustituirse en las expresiones de la solución de Wiener, para obtener la ecuación de actualización de los coeficientes. Este algoritmo de adaptación no es otro que el conocido algoritmo RLS para las distintas etapas. Algoritmos adaptivos como el RLS usan una estimación de la matriz de autocorrelacion de la señal R, con el fin de obtener una convergencia desacoplada del predictor hacia la solución optima. Estos métodos con costosos computacionalmente (del orden de O(N2) multiplicaciones y divisiones); por esta razón fue desarrollado el algoritmo RLS rápido (FRLS), que requieren un numero de operaciones lineal con el numero de coeficientes. Todos estos métodos, dependen de alguna manera del cálculo o la estimación de R-1, cuyo cálculo especialmente para el caso en que la señal se encuentra altamente correlacionada, sufre de problemas de inestabilidad numérica. Además, el seguimiento de señales no estacionarias requiere la introducción de un factor de olvido adecuado en la actualización recursiva de R; en la mayoría de los casos esto empeora la susceptibilidad a problemas numéricos, y requiere la adopción de técnicas de estabilización a expensas de un mayor costo computacional. La principal ventaja de la estructura en cascada es el mejor comportamiento numérico en la inversión implícita de la matriz, cuyo tamaño es solamente 2x2.

3.4.2 Simulaciones Experimentales A continuación se presentan simulaciones correspondientes al espectro y las curvas de aprendizaje de: un proceso pasabajo AR(6) (figuras 10 y 11), un proceso pasabanda AR(8) (figuras 12 y 13), una señal ARMA (6 polos y cuatro ceros) (figuras 14), estas curvas fueron realizadas sobre un total de 4000 iteraciones, y 100 realizaciones del proceso con los distintos algoritmos propuestos: LMS, Lattice LMS, LMS en cascada de 2 coeficientes, y RLS cascada de 2 coeficientes.

Fig. 10 Densidad espectral de potencia del proceso pasabajo AR(6)

Fig. 11 Curvas de aprendizaje del proceso pasabajo AR(6)

Fig. 12 Densidad espectral de potencia del proceso pasabanda AR(8)

Fig. 13 Curvas de aprendizaje del proceso pasabanda AR(8)

Fig. 14 Curvas de aprendizaje del proceso ARMA

De las graficas anteriores es posible extraer una serie de conclusiones, la mas importante es que para filtros basados en algoritmos de la familia LMS, la cascada muestra el mejor comportamiento, o al menos no peor que estructuras mas complejas y costosas en términos del numero de operaciones como los filtros Lattice, esto puede verse por ejemplo en la figura 10 donde la cascada LMS muestra el menor MSE de todos los algoritmos basados en LMS, mientras que en la figura 12, los filtros LMS muestran un rendimiento similar, por ultimo para el caso del proceso ARMA la cascada muestra el mejor comportamiento, aunque no puede decirse que sea “bueno” ya que tiene un MSE de alrededor de 500, (para este caso se omitió graficar el RLS cascada, debido a que hubiera hecho confusa la grafica, baste decir que presentaba unas oscilaciones tan grandes que solo se veía el color correspondiente al RLS). Por otro lado excepto en el proceso ARMA, las curvas RLS muestran el mejor rendimiento; aunque debe tenerse en cuenta que por la naturaleza y características del algoritmo no se lo esta comparando con los rendimientos obtenidos con LMS. Un potencial uso de esta estructura podría ser como arranque para un predictor LMS global, o sea empezar la adaptación con la cascada (aprovechando su característica de un transitorio rápido), para luego cambiar al LMS común tomando como valores iniciales de los coeficientes a las estimaciones de la cascada. 3.4.3 Aplicación: Predicción Lineal de Voz El comportamiento ágil de la estructura en cascada en el proceso de adaptación, sugiere su potencial para el seguimiento de señales no estacionarias como la voz. Se considera un predictor FIR de N coeficientes, cuyos coeficientes dependientes del tiempo, son actualizados con la siguiente expresión:

( ) ( ) ( )( 1) (1 ) ( ) ( ) ( ) ( )m m mh n ah a h n n e n x n kα⎡ ⎤+ = + − + −⎣ ⎦ Donde e(n) es el error de predicción usual, a es un termino de olvido con valor recomendado 0.01 (para una explicación detallada de lo que significa este factor y sus implicancias ver el anexo B) y

( )mh son los valores de los coeficientes. El paso de adaptación varía con el tiempo y es calculado como 2( ) / ( )n b nα η= , donde η(n) es un estimador de la varianza de la señal de entrada:

0

( ) (1 ) ( )n

j

j

n d d x n j cη=

= − − +∑

Los valores sugeridos para los parámetros son b=0.02, max ( ) / 40c x n= , y d=0.9. Se utilizará un predictor LMS de doce coeficientes; en la versión LMS de la cascada, los valores de los parámetros anteriores son mantenidos, mientras que el algoritmo de actualización se implementa en seis etapas de dos coeficientes. En la figura 15 se muestra un breve un segmento de voz (correspondiente a la frase “predicción lineal” en formato WAV PCM Mono, con frecuencia de muestreo 8 Khz.) y en la figura 16 las ganancias de predicción en el tiempo para el sistema original y para la cascada en decibeles (dB) implementada con los algoritmos RLS, y LMS en etapas de dos coeficientes. Estas ganancias fueron calculadas aplicando ventanas de Hamming de 10ms de duración no solapadas, y luego haciendo el cociente entre la potencia de la señal de voz, y la potencia del error de predicción en la mencionada ventana.

Fig. 15 Señal de voz correspondiente a la frase “Prediccion Lineal” en formato PCM con frecuencia de

Muestreo 8 KHz.

Fig. 16 Ganancia de predicción en dB

En la figura anterior se observan las ganancias de predicción para cada método. Puede verse que dado el algoritmo (LMS o RLS) el comportamiento del predictor en cascada de etapas compuestas de dos coeficientes con respecto al de una sola etapa de 12 coeficientes son muy similares, de donde se deduce que la cascada es preferible dado que reduce los típicos problemas de estabilidad, y efectos numéricos de los métodos clásicos además de aumentar la velocidad de convergencia. 3.4.4 Consideraciones Finales Dada una señal AR cuyo modelo generador es de la forma:

1

( ) ( ) ( )N

jj

x n a x n j w n=

= − +∑

Los valores de la autocorrelación satisfacen la siguiente ecuación en diferencias:

1

( ) ( )N

x j xj

r m a r m j=

= −∑

Esto significa que los valores de la autocorrelación son una combinación lineal de modos con decrecimiento exponencial, cuya tasa de decrecimiento depende de los polos de la transferencia del modelo. Si los modos de la señal son suficientemente distintos el concepto de refinamiento secuencial puede aplicarse exitosamente. Las etapas “ven” la señal de entrada a través de una matriz de autocorrelación de tamaño pequeño; para que la cascada converja a una buena aproximación, esta debe identificar razonablemente bien el modo dominante de la señal.

Aunque las simulaciones experimentales presentadas hasta el momento exhiben un comportamiento que tiende a confirmar esta habilidad, es relativamente fácil construir señales para los cuales estos requerimientos no se verifican, aunque estos serian casi casos patológicos, considérese por ejemplo un proceso AR con dos pares de polos complejos conjugados en ( )jp e θ δρ ± ±= ; la primera etapa de una cascada de dos coeficientes ubicara su par de polos complejos conjugados en jp e γρ ±′ ′= . La figura 17 que se presenta mas adelante, muestra el valor de γ para distintos valores de θ, a medida que la separación δ entre los polos del modelo aumenta; Se puede ver que la localización de los ceros del predictor es “entre” los polos del modelo. En términos de la respuesta en frecuencia, esto significa que la señal que es pasada a las etapas subsiguientes todavía contiene líneas espectrales no amortiguadas de la entrada original; por lo tanto la predicción no será refinada, y los dos polos restantes no serán hallados correctamente. Intuitivamente, cuando no existe un modo principal dominante, los polos del filtro predictor permanecen “balanceados” entre las posibles direcciones a las que podrían derivar. En general, este problema es causado por el intento de producir un filtro de predicción con un predictor FIR de orden menor al del modelo generador. Es intrínseco a la corta longitud de las etapas en cascada, no al algoritmo de adaptación de las etapas, o a la estructura en cascada.

Fig. 17 Fase de los ceros del filtro en función de la separación entre los polos

3.5 Conclusiones Aunque el análisis teórico de la estructura en cascada es complicado, simulaciones experimentales muestran que en la mayoría de los casos el predictor en cascada muestra una interesante habilidad para converger rápidamente a una buena aproximación del predictor optimo, sobrepasando incluso estructuras computacionalmente mas costosas. No presenta alguno de los problemas fundamentales que los filtros LMS tienen en el área de la convergencia, aunque al precio de alguno puntos débiles con algunas clases de señales determinadas. El interés de esta estructura es fundamentalmente practico, dada la superior tasa de convergencia. En ausencia de un conjunto de comparaciones mas concluyente con aplicaciones establecidas que emplean esquemas de predicción lineal LMS, es prematuro formular un juicio final en la aplicabilidad general del esquema; de todas formas los resultados presentados aquí, parecen indicar un interesante potencial de la estructura en cascada FIR en termino de velocidad de convergencia y precisión de la predicción, para la mayoría de las señales.

Apéndice A: Acoplamiento de modos y velocidad de convergencia Se entiende por modos de convergencia a los vectores propios de la matriz de autocorrelación de la señal de entrada al filtro; si el proceso que da lugar a esta matriz es estacionario en sentido amplio (WSS), entonces se cumple que es hermítica y Toeplitz, y además todos sus valores propios son reales y no negativos (ver [1]),, aplicando el teorema espectral se deduce que existe una matriz diagonal semejante (o sea con el mismo determinante y traza) cuyos elementos son los valores propios de la matriz de autocorrelación de la señal. Conclusión si el proceso de entrada es WSS entonces el filtro tendrá una convergencia desacoplada hacia la solución óptima, es decir definiendo “gn” como:

0n ng w w= − (A.1)

Donde wn es la diferencia entre el vector de coeficientes del filtro adaptivo en el instante n, y w0 es la solución de Wiener, entonces se cumple que:

1 ( )n x ng I R gµ+ = − Como Rx es diagonalizable, entonces es posible expresarla como:

HxR V V= Λ

Donde Λ es una matriz diagonal conteniendo los valores propios de Rx, y V cumple que VVH=I.

Usando esta factorización, y luego de hacer algunas operaciones se llega a que:

1 ( )H Hn nV g I V gµ+ = − Λ

Definiendo H

n nu V g= entonces la ecuación anterior se convierte en:

1 ( )n nu I uµ+ = − Λ

Entonces tomando un vector de coeficientes inicial genérico u0, se tiene que: 0( )n

nu I uµ= − Λ Dado que la matriz de la expresión anterior es diagonal, se verifica que la convergencia de modos es desacoplada, o sea que aplicando (A.1), y la relación existente entre un y gn se ve que los coeficientes del filtro en el instante n son la suma de dos términos: una combinación lineal de modos de convergencia decayendo en forma exponencial, y la solución optima:

0 00

(1 ) ( )p

nn k k

k

w w u k vµλ=

= + −∑ (A.2)

Donde vk son las columnas de la matriz V, que corresponden a los vectores propios de Rx. Definiendo la constante de tiempo de la convergencia como el tiempo que demora el modo más lento en alcanzar el 63% de su valor final, luego de algunos cálculos se llega a que:

min

1τµλ

(A.3)

Escribiendo el paso de adaptación en función de la condición de estabilidad en media se llega a

max

2µ αλ

= donde α es el paso de adaptación normalizado, luego sustituyendo esta expresión en (A.3) se

llega a:

max

min

12

λτα λ

De aquí se deduce que la velocidad de convergencia del algoritmo es directamente proporcional a la dispersión de los valores propios de la matriz de autocorrelación de la señal de entrada al filtro. Si en cambio el proceso es no estacionario, no es posible afirmar que la matriz de autocorrelación sea diagonalizable, y por lo tanto se ve que los modos de convergencia no son fijos como sucedía para el caso de señales estacionarias, lo que implica que las trayectorias no tienen por que ser monótonas como en el caso anterior sino que pueden crecer o decrecer, este efecto es el denominado acoplamiento de modos (o “mode coupling” en ingles). Apéndice B: El Algoritmo LMS “Leaky”. Cuando el proceso de entrada a un filtro adaptivo tiene una matriz de autocorrelación con uno o más valores propios nulos, el filtro adaptivo LMS tiene uno o más modos no amortiguados. Dado que es posible que estos modos se vuelvan inestables, es importante estabilizar el filtro adaptivo LMS forzando a estos que decaigan a cero. Una manera de lograr esto es introducir un coeficiente de “leakage” γ dentro del algoritmo LMS como sigue:

*1 (1 ) ( ) ( )n nw w e n x nµγ µ+ = − +

Donde 0<γ <<1. El efecto de este coeficiente es forzar a los coeficientes del filtro a cero si el error se vuelve cero, o si la señal de entrada es cero, y forzar a todos los modos no amortiguados del sistema a cero. Las propiedades del LMS “Leaky” pueden ser derivadas examinando el comportamiento de { }nE w . Sustituyendo la expresión del error en la ecuación de actualización, y tomando valor esperado a

ambos lados de la igualdad se llega a que:

{ } { } { }1n x nE w I R I E w pµ γ µ+ = − + +⎡ ⎤⎣ ⎦

Donde p es la correlación cruzada entre la señal de entrada y la señal deseada. Se ve que aparece un término aditivo en la diagonal cuyo efecto es agregar ruido a x(n). Los valores propios de esta nueva matriz son de la forma kλ γ+ , y dado que los autovalores son mayores o iguales que cero, entonces ninguno de los modos de convergencia resultantes será no amortiguado. La condición de convergencia

en media se convierte en max

20 µλ γ

< <+

.

La desventaja de este algoritmo es que para procesos estacionarios, la solución de estado estacionario será sesgada, es decir que el factor de “leakage” introduce un sesgo en la solución debido a que:

{ } 1lim ( )n n xE w R I pγ −→∞ = +

Referencias

[1] M. Hayes, “Statistical Digital Signal Processing and Modeling”, John Wiley & Sons Inc., 1996, capítulos: 2 (propiedades de matrices y valores propios), 3 (propiedades de la matriz de autocorrelación), 6 (filtros Lattice), 9 (Método de Máxima Pendiente, y Algoritmo LMS). [2] S. Haykin, “Adaptive Filter Theory”, Prentice Hall, 1995, capítulos: 6 (predicción lineal), y 9 (Algoritmo LMS). [3] P. Prandoni y M. Vetterli, “An FIR Cascade Structure for Adaptive Linear Prediction”, 1996.