28
4. Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado los diferentes métodos de descomposición (lineales y multilineales) vamos a pasar a la resolución del problema de la Separación Ciega de Fuentes. El mecanismo elegido para tal fin será el Análisis de Componentes Independientes que tiene su base en alguno de los métodos de descomposición vistos en los capítulos anteriores y que estudiaremos en este capítulo. Tras un estudio teórico del problema y del mecanismo de solución elegido, analizaremos el algoritmo ThinICA que lleva a la práctica el método de resolución ICA. Este algoritmo será implementado y probado sobre situaciones reales de aplicación. Los resultados obtenidos se analizarán a partir de los índices de prestaciones y algoritmos de referencia introducidos en los próximos apartados. Este capítulo está organizado de la siguiente forma: en la sección 4.2 se define el problema de la BSS, se estudian las limitaciones del mismo y se propone el método ICA como mecanismo de resolución del mismo. En la sección 4.3 se hace un estudio del algoritmo ThinICA utilizado durante las simulaciones posteriores. Aquí se analizarán las suposiciones bajo las que el algoritmo trabaja y, a continuación, se detallarán los procedimientos de extracción simple y múltiple. En la sección 4.4 realizaremos un repaso sobre algunos de los algoritmos de referencia (JADE, AMUSE y SOBI). La sección 4.5 se encarga de hacer un repaso sobre el contenido del capítulo y plantea algunas conclusiones. Las secciones finales 4.6 y 4.7 se corresponden con anexos donde se introducen los conceptos de Cumulantes y Momentos y se incluyen las demostraciones de los lemas establecidos en el análisis del algoritmo ThinICA. 4.2. BSS a Través de ICA La Separación Ciega de Fuentes (Blind Source Separation, BSS) consiste en la estimación de un conjunto de señales fuente, de las cuales a priori no se conoce su naturaleza, a partir de una serie de medidas que son una función desconocida de dichas señales fuente. 43

Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.Aplicación a la Separación Ciega de Señales

4.1. IntroducciónUna vez hemos estudiado los diferentes métodos de descomposición (lineales y multilineales) vamos a pasar a la resolución del problema de la Separación Ciega de Fuentes. El mecanismo elegido para tal fin será el Análisis de Componentes Independientes que tiene su base en alguno de los métodos de descomposición vistos en los capítulos anteriores y que estudiaremos en este capítulo.

Tras un estudio teórico del problema y del mecanismo de solución elegido, analizaremos el algoritmo ThinICA que lleva a la práctica el método de resolución ICA. Este algoritmo será implementado y probado sobre situaciones reales de aplicación. Los resultados obtenidos se analizarán a partir de los índices de prestaciones y algoritmos de referencia introducidos en los próximos apartados.

Este capítulo está organizado de la siguiente forma: en la sección 4.2 se define el problema de la BSS, se estudian las limitaciones del mismo y se propone el método ICA como mecanismo de resolución del mismo. En la sección 4.3 se hace un estudio del algoritmo ThinICA utilizado durante las simulaciones posteriores. Aquí se analizarán las suposiciones bajo las que el algoritmo trabaja y, a continuación, se detallarán los procedimientos de extracción simple y múltiple. En la sección 4.4 realizaremos un repaso sobre algunos de los algoritmos de referencia (JADE, AMUSE y SOBI). La sección 4.5 se encarga de hacer un repaso sobre el contenido del capítulo y plantea algunas conclusiones. Las secciones finales 4.6 y 4.7 se corresponden con anexos donde se introducen los conceptos de Cumulantes y Momentos y se incluyen las demostraciones de los lemas establecidos en el análisis del algoritmo ThinICA.

4.2. BSS a Través de ICALa Separación Ciega de Fuentes (Blind Source Separation, BSS) consiste en la estimación de un conjunto de señales fuente, de las cuales a priori no se conoce su naturaleza, a partir de una serie de medidas que son una función desconocida de dichas señales fuente.

43

Page 2: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.2.1. Planteamiento del Problema

Supongamos un sistema donde partimos de una serie N de fuentes desconocidas S1(t),S2(t),...,SN(t). Para poder obtener la información de estas fuentes originales se emplea un sistema de M (! N) sensores. Cada uno de estos sensores Xi(t) obtendrá una mezcla de las señales fuente más un ruido externo que es incorporado al sistema.

La relación entre las observaciones y las señales fuente originales vendrá dada por el sistema de ecuaciones:

X1(t) = a

11S

1(t) + a

12S

2(t) + ...+ a

1MS

M(t) +N

1(t)

X2(t) = a

21S

1(t) + a

22S

2(t) + ...+ a

2MS

M(t) +N

2(t)

....

XM(t) = a

M1S

1(t) + a

M2S

2(t) + ...+ a

MNS

M(t) +N

M(t)

,

o de forma análoga:

X = AS+N

siendo X=[X1,...,XM]t el vector de muestras de las señales observadas, A la matriz de mezclas de dimensiones MxN, S=[S1,...,SN]t el vector de muestras de las señales fuente y N=[N1,...,NM]t el vector de ruido aditivo cuyas componentes son estadísticamente independientes de las fuentes.

El problema de la BSS consiste entonces en encontrar una matriz B de dimensiones NxM de forma al pasarle las observaciones nos permita extraer unas salidas Y=[Y1,...,YN]t lo más parecidas posible a las fuentes originales:

Y = BX = BAS+BN

Figura 4.1 Diagrama de bloques del problema de la Separación Ciega de Fuentes.

Una vez tenemos planteado el problema de la BSS queda por definir la forma de solucionarlo. Como hemos introducido en capítulos anteriores, existen diferentes métodos para atacar el problema y el mecanismo elegido en este proyecto será el Análisis de Componentes Independientes (ICA). Este es un método basado en la independencia estadística de las fuentes, una restricción muy estricta pero que se cumple en multitud de aplicaciones.

El problema de la separación ciega consistirá entonces en la estimación de los coeficientes Ai,j de la matriz de mezcla A y las fuentes Si a parir de las observaciones Xi, formadas como una combinación lineal de las fuentes:

X

i= A

i1S

1+ A

i2S

2+ ...+ A

iMS

M,

4. Aplicación a la Separación Ciega de Señales

44

(4.1)

(4.2)

(4.3)

(4.4)

Page 3: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

siendo Ai,j coeficientes reales, Si independientes entre sí y, como máximo, con un

componente gaussiano (condición es esencial en el método ICA).

4.2.2. Limitaciones

El problema de separar o extraer señales fuente sin tener conocimiento del medio

ni de la procedencia de las fuentes se traduce en una serie de indeterminaciones

[Hyvärinen]. Estas ambigüedades se ven reflejadas de forma que:

! Las señales extraídas no tienen la misma escala de las señales originales,

de forma que únicamente se obtiene la forma de onda.

! Las señales extraídas no mantienen el orden de las fuentes originales, es

decir, la señal obtenida Yi(t) en general no se corresponderá con la fuente

Si(t).

Una explicación matemática a estas indeterminaciones radica en la posibilidad de

multiplicar cualquier fuente Si(t) por una constante cualquiera y dividir la matriz de

mezclas A por el mismo valor, permaneciendo así el valor de X inalterado:

Xi(t)= a

ijS

i(t)

j=1

M

! = (1

kj

aij)(k

jS

i(t))

j=1

M

!

Es común suponer que las componentes independientes tienen energía unidad.

Del mismo modo podemos intercambiar las filas de S y hacer lo propio con las

columnas de A sin variar X:

X = AS = AP-1PS ,

pasando a ser ahora la matiz de mezcla del sistema AP-1.

Aunque estas indeterminaciones parecen ser unas limitaciones serias, en un gran

número de aplicaciones no son cruciales ya que la información más relevante de las

señales fuente permanece en la forma de la onda y no en su orden o su magnitud.

Estas indeterminaciones se podrían reducir si se tuviera un mayor conocimiento del

sistema en el que se encuentran inmersas las fuentes originales o si se conociera la

naturaleza de las mismas.

Como consecuencia de las limitaciones a las que estamos expuestos, el objetivo de

extraer las muestras Y=[Y1,...,YN]t lo más parecidas posible a las fuentes

originales S=[S1,...,SN]t no pasa por encontrar una matriz B de forma que la

función de transferencia de todo el sistema sea la matriz identidad, sino de

encontrar una matriz B tal que la función de transferencia sea de la forma:

G= BA = !P ,

siendo ! = diag [!

1,...,!

N] una matriz diagonal, con

!

i" 0 , y P una matriz

permutación arbitraria.

4.2.3. Análisis de Componentes Independientes

4.2.3.1. Restricciones

Para asegurar el modelo de ICA que estamos planteando tendremos que realizar

una serie de suposiciones/restricciones:

4.2 BSS a Través de ICA

45

(4.5)

(4.6)

(4.7)

Page 4: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

! El número de observaciones ha de ser mayor o igual al número de componentes independientes a estimar. En caso de ser mayor se podría realizar una reducción de la dimensión usando PCA. En caso de ser menor estaríamos ante un sistema indeterminado y sin posibilidad de extracción de fuentes mediante ICA4.

! Las componentes independientes se suponen estadísticamente independientes. Este es el principio de actuación de ICA. Un conjunto de variables aleatorias se dice que son independientes cuando la información de una de ellas no aporta información alguna sobre el resto de variables. Esto se traduce en la posibilidad de factorizar la función densidad de probabilidad conjunta como:

p

S1S

2...S

n

(s1, s

2,..., s

n)= p

S1

(s1)p

S2

(s2)...p

Sn

(sn) ,

! Las componentes independientes deben presentar funciones de distribución no gaussianas. Para este tipo de variables, los estadísticos de alto orden toman valor cero y esta información es esencial para el análisis ICA. A lo sumo, el sistema podrá contar con una única componente gaussiana ya que una combinación lineal de componentes gaussianos tiene como resultado una distribución gaussiana. Resulta imposible determinar si los cumulantes cruzados de alto orden son nulos por independencia, por gaussianeidad o ambas cosas.

4.2.3.2. Preblanqueo de las Observaciones

El problema de ICA puede ser simplificado de gran manera si antes de atacarlo se realiza un preblanqueo de las observaciones.

Se dice que un vector de observaciones Z=[Z1,...,Zn]t está blanqueado si los elementos Zi que lo componen están decorrelados y tienen varianza unidad, es decir,

E{Z

i,Z

j} = !

ij,

que en términos de la matriz de covarianzas implica que E{Z,Zt}=I [Hyvärinen].

El problema ahora es encontrar una matriz transformación V tal que aplicados a las observaciones originales X nos proporcione los datos blanqueados, esto es,

Z = VX ,

Para solucionarlo es posible utilizar el Análisis de Componentes Independientes PCA ya que el problema consiste básicamente en una decorrelación seguida de un escalado. Así pues, llamamos T a la matriz cuyas columnas son los autovectores normalizados de la matriz de correlaciones de X, RX, y ! a la matriz diagonal

cuyos elementos de la diagonal principal se corresponden con los autovalores de RX

en orden decreciente, ! = diag ["

1,...,"

p].

Podemos entonces calcular la matriz de covarianzas de Z como:

R

Z= E{ZZ

t} = E{VX(VX)t

} = E{VXXtV

t} = VR

XV

t= V(T!T

t)Vt .

4. Aplicación a la Separación Ciega de Señales

46

4 Mediante SCA sí se podría separar las fuentes partiendo de un sistema con menor número de sensores que fuentes.

(4.8)

(4.9)

(4.10)

(4.11)

Page 5: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Si definimos la matriz transformación V:

V = !"1/2

Tt,

tenemos que la matriz de correlaciones de Z queda:

R

Z= V(T!T

t)Vt= (!"1/2

Tt)(T!T

t)(!"1/2T

t)t.

Si aplicamos ahora que la matriz T satisface TTt=TtT=I obtenemos que:

R

Z= (!"1/2

Tt)(T!T

t)(T!"1/2) = I ,

por lo que la variable Z está blanqueada.

La matriz de transformación V anteriormente definida no es la única posible para

realizar el blanqueo de datos. De hecho, cualquier matriz UV, siendo U una matriz

ortonormal, se corresponde con una matriz de blanqueo ya que:

R

Z= (UV)R

x(UV)t

= U(VRxV

t)Ut= UIU

t= I .

El blanqueo no resuelve el problema de ICA ya que la decorrelación es una

condición necesaria pero no suficiente para la independencia. Este es el motivo por

el que PCA no es válido para separar las fuentes ya que únicamente permite

obtener componentes decorrelados. Lo que si hace el blanqueo es ayudar a la

búsqueda de la matriz de mezcla A ya que la decorrelación impone, por simetría,

que en vez de tener que determinar n2 coeficientes de la matriz A solo se tengan

n(n -1)

2 grados de libertad posibles.

Así pues, podemos afirmar que el blanqueo sólo va a resolver la mitad del problema

de ICA ya que tan sólo nos va a ayudar a reducir el número de parámetros

buscados a la mitad y para forzar la independencia será necesario recurrir a

estadísticos de orden superior.

4.2.3.3. Estimación del Modelo ICA a Partir de la No Gaussianeidad

Hasta ahora tenemos definido el problema de la separación ciega de fuentes y el

método para resolverlo, que en este caso se basa en la independencia.

Como medida de independencia existen diferentes criterios aplicables: a partir de la

máxima verosimilitud, minimizando la información mutua y maximizando la No

Gaussianeidad. Nosotros estudiaremos este último caso.

Un posible enfoque para diseñar algoritmos basados en este método consiste en

maximizar la no gaussianeidad. El Teorema Central del Límite establece que la

distribución de la suma de variables aleatorias independientes, bajo ciertas

condiciones, tiende a ser gaussiana. Por tanto, la suma de variables independientes

dará lugar a una nueva variable que presenta una gaussianeidad mayor que las

anteriores por separado. Por tanto, una forma de separar variables originales

consiste en desarrollar funciones que maximicen la no gaussianeidad.

Dado que las señales estimadas se obtendrán como combinación lineal de las

variables observadas:

Y = BX = BAS = WS ,

o lo que es lo mismo:

4.2 BSS a Través de ICA

47

(4.12)

(4.13)

(4.14)

(4.15)

(4.16)

Page 6: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Y1(t) = w

11S

1(t) + w

12S

2(t) + ...+ w

1NS

N(t)

Y2(t) = w

21S

1(t) + w

22S

2(t) + ...+ w

2NS

N(t)

....

YN(t) = w

N1S

1(t) + w

N2S

2(t) + ...+ w

NNS

N(t)

cada variable Yi(t) será máximamente no gaussiana cuando el número de sumandos sea mínimo, es decir, cuando sea igual a alguna de las componentes independientes Si(t) que conforman la mezcla.

En la práctica no sabemos los valores que tiene que tomar la matriz W para conseguir que:

Yi(t) = w

ijj

! Sj(t) = S

k(t) ,

pero podemos aplicar valores a la matriz B de forma que se maximice la no gaussianeidad de BX, maximizándose de paso la no gaussianeidad de WS, dada la igualdad BX=WS. Así pues, maximizando la no gaussianeidad de BX se puede estimar una de las componentes Si(t).

La pregunta ahora es ¿cómo medir la no gaussianeidad de una cierta variable aleatoria? Para ello se utilizan las llamadas funciones contraste.

4.2.3.4. Funciones Contraste

Para poder hacer uso de la no gaussianeidad en la resolución de ICA debemos disponer de algún parámetro que, cuantitativamente, indique la gaussianeidad de una variable aleatoria. A este parámetro se le conoce como función contraste.

Una función contraste es una correspondencia ! que asigna a cada función de densidad de probabilidad de un proceso aleatorio multidimensional asociado a la variable aleatoria Y un número real !(Y) y que tiene las propiedades [Cruces01]:

! !(Y) es invariable frente a escalados invertibles:

!("Y) = !(Y), # matriz " diagonal invertible.

! !(Y) es simétrica con respecto a los componentes de Y:

!(PY) = !(Y), " matriz P de permutación.

! !(Y)alcanza su máximo únicamente cuando todos los componentes de Y

son independientes.

Así pues, el problema de la separación ciega de fuentes se reduce a encontrar el máximo absoluto de la función contraste. Los contrastes más empleados se basan en [Carrión]:

! Kurtosis. Los estadísticos de segundo orden no resultan suficientes para asegurar la independencia, así pues, hay que recurrir a los estadísticos de orden superior. La kurtosis se define a partir de los momentos de tercer y cuarto orden de la forma:

K(Y)=E{Y4}-3(E{Y2})2 ,

cuando la variable Y está centrada. De forma normalizada la kurtosis tiene la siguiente expresión:

4. Aplicación a la Separación Ciega de Señales

48

(4.17)

(4.18)

(4.19)

Page 7: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

K(Y)=E{Y4}

(E{Y2})2! 3 .

Para la mayor parte de variables aleatorias5 la kurtosis es distinta de cero,

por lo que nos sirve como medida de la no gaussianeidad. La kurtosis

puede tomar valores positivos y negativos, así, las variables aleatorias con

kurtosis negativa se denominan subgaussianas, mientras que las de

kurtosis positiva se denominan supergaussianas.

Debido a la simplicidad computacional y teórica, la kurtosis se ha

empleado extensamente como mediada de no gaussianeidad en ICA. En la

práctica, la kurtosis posee algunas limitaciones, como por ejemplo su

extrema sensibilidad. Esto hace que en algunas situaciones sea mejor

emplear otros métodos de estimación alternativos.

! Entropía e Información Mutua. Otra posibilidad para la estimación del

modelo ICA se inspira en la teoría de la información. La idea consiste en

medir la dependencia de variables aleatorias a partir de la información

mutua. La información mutua I entre N variables aleatorias Yi, i=1...N se

define como:

I(Y1,..., Y

N) = H(Y

i) !H(Y)

i=1

N

" ,

siendo H(Y) la entropía diferencial de una variable aleatoria Y con

densidad de probabilidad p

Y(Y) :

H(Y) = ! p

Y(Y)log(p

Y(Y))dy" .

Se puede demostrar que la información mutua es invariante frente a

escalados o permutaciones y que alcanza su mínimo cuando las variables

Y1,...,YN son independientes. Así pues, la estimación de la transformación

ICA a través de la minimización de la información mutua es equivalente a

maximizar la suma de las no gaussianeidades de las componentes

independientes estimadas.

4.2.3.5. Comparación ICA y PCA

Tras la definición de ICA vamos a realizar una comparación con PCA, mecanismos que aunque tienen nombres muy parecidos y están íntimamente relacionados, presentan propósitos distintos.

Mientras PCA es utilizado como un preprocesado para eliminar la información redundante, el objetivo de ICA no es el de reducir la dimensión de las fuentes que se encuentran mezcladas, sino el de obtener tantas componentes independientes como variables observadas.

PCA basa su mecanismo de búsqueda en encontrar aquellas combinaciones que proporcionen una mayor información medida en términos de varianza. Por otro lado, ICA trata de obtener combinaciones independientes, esto es, menor entropía, menor información.

En la figura 4.2 se muestra un resumen ilustrativo de la relación entre PCA, el preblanqueo e ICA. El resultado de la aplicación de estas transformaciones básicas

4.2 BSS a Través de ICA

49

5 Existen variables aleatorias no gaussianas que presentan kurtosis igual a cero, pero estos casos son excepcionalmente raros.

(4.20)

(4.21)

(4.22)

Page 8: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

sobre la distribución conjunta de dos variables independientes, S1 y S2, mezcladas a través de una matriz A, X1 y X2, es distinto en función de la transformación aplicada. Puede apreciarse, que tanto el preblanqueo como el método PCA proporcionan variables decorreladas pero no independientes (para cada valor de Z1 e Y1 se restringe el conjunto de valores que puede tomar Z1 y Y2, situación que no ocurre con ICA.)

Figura 4.2 Comparación Preblanqueo, PCA e ICA. (a)Distribución conjunta de dos variables aleatorias S1 y S2 independientes. (b)Distribución de las variables mezcladas a través de la matriz A, X1 y X2. (c)Distribución tras las diferentes transformaciones: (c.1)Preblanqueo, (c.2)PCA y (c.3)ICA. Figura adaptada de [Cichocki01]

4.3. Algoritmo ThinICATras el análisis del problema BSS y el planteamiento del método ICA como mecanismo de resolución, estudiaremos el algoritmo propuesto por S. Cruces y A. Cichocki [Cruces02] basado en ICA para la separación de fuentes. Dicho algoritmo lo llevaremos a la práctica en el capítulo siguiente donde comprobaremos las prestaciones del mismo.

El algoritmo propuesto consiste en obtener la mejor aproximación de bajo rango y con mejor mínimos cuadrados de un conjunto de tensores cumulantes6 cruzados de las observaciones. Para ello, el método ThinICA es implementado a través de las factorizaciones ThinQR y ThinSVD. Este algoritmo incluirá las ventajas de la flexibilidad de los métodos de extracción simultánea y el buen hacer de los métodos robustos.

4. Aplicación a la Separación Ciega de Señales

50

6 En este capítulo se incluye un anexo con el estudio de los momentos y cumulantes : definición, relación y propiedades.

Page 9: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Figura 4.3 Modelo de señal para la extracción ciega de P fuentes. S

es el conjunto N de señales fuente; A es la matriz de mezcla del

sistema de tamaño [M,N] (M!N); N es el ruido externo del sistema;

X es el conjunto de fuentes observadas tras el paso por la matriz de mezcla y la adición del ruido; Z se corresponde con las observaciones blanqueadas, a partir de la matriz de preblanqueo W

([N,M]); U es una matriz semiunitaria a parir de la cual se obtienen las fuentes separadas Y.

4.3.1. Suposiciones

A continuación se presentan las suposiciones sobre las que el método

implementado se basa [Cruces02]:

! Las componentes de S(t) son mutuamente independientes, localmente

estacionarias y normalizadas con media cero y varianza unidad.

! El ruido n(t) que presenta el sistema es independiente de las señales

fuente, localmente estacionario, gaussiano, blanco y con una matriz de

correlación conocida o que puede ser estimada a partir de las

observaciones.

! Las columnas que componen la matriz de mezcla A son linealmente

independientes.

! Dado un conjunto de P componentes independientes {S1(t),S2(t),...,

Sp(t)} a extraer, existe un grupo:

! = "

m#!

q,m = 1,2,...,r : si q>2, "m#!

2 \ (t, t),$t #!{ }si q=2{ }

y un conjunto de escalares normalizados (

!""#$% = 1) que forman:

!

"(S

j) = #

$Cum S

j(t

1),...,S

j(t

q)( )

2

,$%"&

de forma que se cumple que:

!

"(S

i) # !

"(S

j), 1 $ i $ P $ j $ N .

A partir de la primera suposición podemos establecer que RS=IN, obteniéndose por

tanto:

AA

H= R

X(t, t)! R

n(t, t) .

De la segunda y tercera suposición podemos, a partir de PCA, reducir la

dimensionalidad del espacio de señal de M a N.

4.3 Algoritmo ThinICA

51

(4.23)

(4.24)

(4.25)

Page 10: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Este método también utiliza un preblanqueo de las observaciones antes de su tratamiento para simplificar los cálculos. La matriz de preblanqueo W:

W = AA

H( )!

1

2

tiene dimensiones [M,N] y como resultado ofrece el vector de observaciones preprocesado:

Z = WX .

Para extraer las P (1 !P !N) componentes independientes se emplea la matriz

semiunitaria U (UUH=IP), de dimensiones NxP, de forma que:

Y = UHZ = GS+U

HWN ,

siendo G = UHWA la función de transferencia global.

4.3.2. Extracción de una Única Fuente

Vamos a analizar en primer lugar el caso en el que se extrae una única fuente (P=1). En esta situación, la matriz de señales estimadas pasa a ser un vector fila de dimensiones [1,T]:

Y(t) = UHZ(t) ,

siendo U un vector semiunitario de tamaño [N,1]. Para estimar la componente independiente nos vamos a basar en la maximización conjunta de la suma de cuadrados ponderados de los cumulantes de orden q ! 2,en los instantes ! =(t1,

t2,..., tq) contenidos en ! , a partir de la función contraste [Cruces03]:

!

"(Y) = #

$Cum(Y(t

1),..., Y(t

q))

2

$%"& ,

sujeta a U = 1 y siendo !

" términos de ponderación mayores que cero.

El hecho de utilizar la notación t1,...tq se debe a que, al ser S(t) y n(t) localmente estacionarios, la función contraste puede emplear segmentos cuasi-estacionarios para el cálculo de los cumulantes.

El problema de esta función contraste radica en que es altamente no lineal con respecto U, así hace falta una función contraste similar que fuese más sencilla de optimizar.

! Lema 1.17 Bajo las restricciones impuestas en el apartado (4.3.1), particularizando para la extracción de una única componente Si, existe un conjunto ! tal que:

!

"(S

1) > !

"(S

j), # j=2,3,...,N .

Si consideramos un conjunto q de candidatos para la extracción {U[1], U[2],..., U[q]} y sus respectivas salidas {Y[1], Y[2],..., Y[q]}, la función:

4. Aplicación a la Separación Ciega de Señales

52

7 La demostración tanto de este como del resto de Lemas presentados en este capítulo se encuentra en el segundo anexo de este capítulo.

(4.26)

(4.27)

(4.28)

(4.29)

(4.30)

(4.31)

Page 11: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

!

"(Y) = #

$Cum(Y[1](t

1),..., Y[q](t

q))

2

$%"& ,

sujeta a U

[m]= 1 (m=1,2,...q) y

!

"> 0 , es una función contraste cuyo

máximo absoluto conduce a la extracción de la fuente deseada. En este punto se cumple que:

Y[1](t), Y[2](t),..., Y[q](t) = S

1(t).

Un buen método para maximizar la función contraste !

"(Y) es optimizarla de

forma cíclica respecto a cada uno de los elementos U[m]

, manteniendo el resto fijos.

La notación que emplearemos de ahora en adelante para indicar que en la iteración

k-ésima la variable tomará su valor será (!)(k), mientras que para indicar que la

variable es la k-ésima, siendo k una variable en módulo q: [k] = (k mod q) + 1 , se

seguirá empleando la notación (!)[k]

.

La función contraste !

"(Y) es invariante respecto a permutaciones en sus

argumentos, por ello una maximización cíclica es equivalente a una secuencial.

Una vez tenemos decidida la notación a seguir, en la iteración k-ésima

maximizaremos la función contraste con respecto el vector de extracción U(k):

!

"(U(k)) = #

$Cum(Y(k)(t

1), Y(k%1)(t

2),..., Y(k%q+1)(t

q))

2

$&"' = U(k)HM

(k%1)U(k).

M(k-1) es una matriz constante en cada iteración ya que se forma a partir de los

vectores (U(k-1), U(k-2),..., U(k-q+1)) que permanecen constantes durante la iteración

k-ésima. Dicha matriz viene dada de la forma:

M(k!1)

= "##$%& C

ZY

(k!1)(#) CZY

(k!1)(#)( )H

CZY

(k!1)(#) = Cum Z(tk), Y(k!1)(t

k!1),..., Y(k!q+1)(t

k!q+1)( )

Ya que el vector U(k) que maximiza la función contraste es el autovector asociado al

autovalor dominante de la matriz M(k-1), podemos mover el vector de extracción

U(k-1) de forma iterativa (con L=1 es suficiente) hacia la solución a través de

cualquiera de los mecanismos de búsqueda de autovalores y autovectores estándar.

Así por ejemplo, si empleamos L iteraciones para aproximar el autovector

dominante obtenemos el algoritmo:

4.3 Algoritmo ThinICA

53

(4.32)

(4.33)

(4.34)

(4.35)

Page 12: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Figura 4.4 Algoritmo de aproximación del vector de extracción hacia el autovector dominante.

La optimización de la función !

"(#) respecto a U(k) da como resultado un ascenso

de forma monótona hacia un máximo de la propia función, pero esta convergencia puede realizarse hacia un máximo que no garantice la extracción de la fuente.

! Lema 1.2 Bajo las restricciones impuestas en el apartado (4.3.1), el

máximo hacia el que converge !

"(U

(k)) corresponde con una solución que

extrae una de las componentes independientes.

4.3.3. Extracción Múltiple de Fuentes

En caso de extraer P (1! P !N) componentes independientes, la matriz de

extracciones Y tiene dimensiones [P,T]:

Y = UHZ ,

pasando a ser U una matriz de extracción semiunitaria de tamaño [N,P]. Para extraer las P componentes utilizaremos dos métodos de optimización de la función contraste: jerárquico y simultáneo.

Una vez tenemos la función contraste para la extracción de una única fuente vamos a intentar extrapolarla de forma que nos permita extraer S1(t),S2(t),...,Sp(t). Bajo las suposiciones impuestas al inicio del apartado podemos construir la función contraste múltiple como una optimización secuencial de la función contraste de extracción simple [Cruces02]:

!"(U(k)) = !

"(U

i,:

(k)) = #$

Cum(Yi

(k)(t1),..., Y

i

(k%q+1)(tq))

2

$&"'i=1

P

'i=1

P

' , (4.37)

siendo U

i,:

(k) cada una de las filas de la matriz de extracción U en la iteración k-ésima.

Se puede demostrar que la maximización de la función contraste anterior es equivalente a la minimización de una función error

!

"(U) dada como:

1. U(0)

= U(k!1)

2. Para l = 1:L

! 3. d

Y

(l!1)(") = U(l!1)C

ZY

(k!1)(")

! 4.

U(l)=

!"d

Y

(l#1)(")"$%& C

ZY

(k#1)(")( )H

!"d

Y

(l#1)(")"$%& C

ZY

(k#1)(")( )H

5. U(k)

= U(L)

4. Aplicación a la Separación Ciega de Señales

54

(4.36)

Page 13: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

!

"(U) = #

$C

Z($)2

% &"(U(k))

$'"( ,

siendo CZ(!) el tensor de orden q de cumulantes cruzados de las observaciones

blanqueadas, cuyas entradas se obtienen como:

C

Z(!)j1,j

2,...,j

q

= Cum Zj1

(t1),Z

j2

(t2),...,Z

jq

(tq)( ) .

La expresión matricial de la nueva función contraste también mantiene la estructura

de la extracción simple:

!"(U(k)) = U

i

(k)HM

i

(k#1)Ui

(k)

i=1

P

$ ,

donde cada una de las matrices M

i

(k!1) se obtienen a partir de las expresiones

similares a (4.35) particularizadas para cada fila de la matriz Y:

Mi

(k!1)= "

##$%& CZY

i

(k!1)(#) CZY

i

(k!1)(#)( )H

CZY

i

(k!1)(#) = Cum Z(tk), Y

i

(k!1)(tk!1

),..., Yi

(k!q+1)(tk!q+1

)( ).

La parte fundamental del algoritmo de extracción múltiple la juega la matriz de

pesos:

C

ZY

(k!1)= M

1

(k!1)U1

(k!q),...,MP

(k!1)UP

(k!q)"#

$% ,

formada a partir de las columnas de las P matrices constantes M

i

(k!1)y las columnas

de la matriz de extracción en la iteración U

(k!q), y que es proporcional al gradiente

de la función contraste !

"(#) en la iteración (k-1).

Esta matriz de pesos tiene una descomposición SVD:

C

ZY

(k!1)= V

L"

PxPV

R

H,

donde V

Ly

V

R son las matrices de dimensiones [N,P] y [P,P] respectivamente,

cuyas columnas las componen los vectores singulares izquierdos y derechos

asociados a C

ZY

(k!1), mientras que

!

PxPes la matriz diagonal de valores singulares.

4.3.3.1. Extracción Simultánea

Una de las posibilidades de optimización de la función contraste se efectúa a través

de la factorización SVD.

! Lema 1.3 En cada iteración, la elección de la matriz de extracción U

(k)

como resultado de la factorización SVD de la matriz de pesos C

ZY

(k!1):

U

(k)= V

LV

R

H

garantiza un ascenso de forma monótona en la función contraste:

!

"(U(k#1)) $ !

"(U(k)) .

4.3 Algoritmo ThinICA

55

(4.38)

(4.39)

(4.40)

(4.41)

(4.42)

(4.43)

(4.44)

(4.45)

Page 14: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.3.3.2. Extracción Jerárquica

Otra de las posibilidades de extracción se realiza a partir de la maximización jerárquica con respecto cada una de las P filas que conforma la matriz de extracción U(k).

La idea consiste en elegir la matriz de extracción como:

U(k)

= Q ,

siendo Q la matriz resultante de la factorización QR de la matriz de pesos C

ZY

(k!1) :

C

ZY

(k!1)= QR

PxP,

de forma que se maximiza Tr U

(k)HC

ZY

(k!1){ } con respecto U

1,:

(k),U2,:

(k),...,UP,:

(k){ } , satisfaciéndose que:

U

i,:

(k) Uj,:

(k)( )H

= !i,j

"j # i .

Este método no garantiza un ascenso de forma monótona en la función contraste pero lo que sí garantiza un ascenso jerárquico en el primer modo no convergente

[Cruces02]. Así por ejemplo, cuando U

1

(k),...,Ui!1

(k) convergen hacia un cierto valor

tenemos que:

U

i

(k!1)HM

i

(k!2)Ui

(k!1)" U

i

(k)HM

i

(k!1)Ui

(k) .

4.3.3.3. Supersimetría y Proyección

La independencia mutua de las fuentes impuesta garantiza la teórica supersimetría del tensor de cumulantes cruzados de las observaciones C

Z(!).

En la práctica, pequeñas desviaciones en la estimación de los cumulantes cruzados pueden provocar la pérdida de esta supersimetría, aunque es recuperable de forma sencilla.

La supersimetría de las soluciones se puede explotar para acelerar el proceso de convergencia del algoritmo a través de la proyección de U(k) en cada una de las iteraciones del algoritmo [Cruces02]:

U

(k),U(k!1),...,U(k!q+1){ }" U(k),U(k),...,U(k){ } .

Esto se traduce en que, a la hora de calcular C

ZYi

(k!1)("), podamos elegir entre:

CZY

i

(k!1)(") =C

ZYi

(k!1)(") = Cum Z(tk), Y

i

(k!1)(tk!1

),..., Yi

(k!q+1)(tk!q+1

)( ) , sin proyección.

CZY

i

(k!1)(") = Cum Z(tk), Y

i

(k!1)(tk!1

),..., Yi

(k!1)(tk!q+1

)( ) , con proyección.

#

$%

&%

4. Aplicación a la Separación Ciega de Señales

56

(4.46)

(4.47)

(4.48)

(4.49)

(4.50)

Page 15: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

Figura 4.5 Algoritmo de extracción múltiple de fuentes. En el tercer paso se podrá elegir una de las dos opciones disponibles. El cuarto paso es opcional.

4.4. Algoritmos de Referencia

El algoritmo anteriormente descrito lo vamos a poner en práctica en el capítulo

siguiente sobre señales procedentes de varios de los campos de aplicación. Para

tener una idea sobre las prestaciones del mismo vamos a compararlo con algunos

de los algoritmos de referencia existentes (JADE, AMUSE y SOBI) que a

continuación describiremos brevemente:

1. Inicializado

! U

(!q+1)= ... = U

(0)= I

NxP

! Y(0)(t) = U

(0)HZ(t)

2. Cálculo de la matriz de pesos. Para i=1:P

! 2.1

CZY

i

(k!1)(") =C

ZYi

(k!1)(") = Cum Z(tk), Y

i

(k!1)(tk!1

),..., Yi

(k!q+1)(tk!q+1

)( ) , sin proyección.

CZY

i

(k!1)(") = Cum Z(tk), Y

i

(k!1)(tk!1

),..., Yi

(k!1)(tk!q+1

)( ) , con proyección.

#

$%

&%

! 2.2 M

i

(k!1)= "

##$%& CZY

i

(k!1)(#) CZY

i

(k!1)(#)( )H

! 2.3 C

ZY

(k!1)= M

1

(k!1)U1

(k!q),...,MP

(k!1)UP

(k!q)"#

$%

3. Ascenso en la función contraste:

! 3.a Simultánea

! ! 3.a.1 V

L,!,V

R"#

$% = svd C

ZY

(k&1),0( )

! ! 3.a.2 U

(k)= V

LV

R

H

! 3.b Jerárquica

! ! 3.b.1 U

(k),RPxP

!"

#$ = qr C

ZY

(k%1),0( )

4. Si hay proyección U

(k),U(k!1),...,U(k!q+1)= U

(k)

5. Estimación de las P componentes: Y(k)(t) = U

(k)HZ(t)

6. Criterio de parada:

! 6.1 Si converge: FIN

! 6.2 Si no converge: VOLVER a 2

4.4 Algoritmos de Referencia

57

Page 16: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.4.1. Algoritmo JADE

El algoritmo JADE (Joint Approximate Diagonalization of Eigen-matrices) [Cardoso] fue introducido por primera vez en 1993 por Jean-François Cardoso y Antonie Souloumiac. Este algoritmo se basa en el cálculo de estadísticos de alto orden y en la diagonalización de la descomposición de los autovalores de las mezclas. Dada la robustez y las altas prestaciones que ofrece se ha utilizado como referencia a la hora de medir las cualidades de nuevos algoritmos.

! Preprocesado. Como introdujimos en apartados anteriores, los algoritmos de separación ciega de fuentes no mantienen la escala de las fuentes originales sino su forma de onda. Así pues, se puede suponen sin pérdida de generalidad alguna que las fuentes originales presentan varianza unidad, por lo que su matriz de correlación tiene la forma:

R

S= E{SS

t} = IN

.

Por otro lado, para simplificar los cálculos del algoritmo se realizará un preblanqueo de las observaciones. De esta forma las observaciones vendrán dadas como:

Z = WX = WAS = US ,

donde la matriz W es la matriz de preblanqueo y la matriz U es una

matriz unitaria que se obtiene como U=WA y es la matriz de mezcla blanqueada. La matriz de correlaciones de las observaciones blanqueadas Z es la matriz identidad:

R

Z= I .

Se define como el tensor F de cumulantes de cuarto orden en el que cada uno de

los elementos que lo componen se obtienen a partir de los cumulantes cruzados de cuarto orden de la matriz de observaciones

X = [X

1,..., X

N]

t :

F

i,j,k,l= C

Xi,X

j,X

k,X

l

, i,j,k,l=1,2,...,N.

Si M es una matriz de dimensiones NxN, llamaremos F(M) a la matriz de cumulantes cuyos elementos se forman como:

Fi,j(M) = M

k,lC

Xi,X

j,X

k,X

lk,l=1

N

! , i,j=1,2,...,N .

F es un operador lineal definido por el espacio de matrices NxN y es simétrico por lo que tiene descomposición en valores propios. Así pues, si llamamos ! al valor propio y M a la matriz de valores propios de F, tenemos que:

F(M) = !M

De acuerdo con el preblanqueo de las observaciones (4.52) se puede demostrar que cada matriz de la forma:

M

m= U

mU

m

t ,

es una matriz de valores propios correspondientes a !

m= K(S

m) de F:

4. Aplicación a la Separación Ciega de Señales

58

(4.51)

(4.52)

(4.53)

(4.54)

(4.55)

(4.56)

(4.57)

Page 17: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

F(M

m) = K(S

m)M

m,

siendo el resto de valores propios de F iguales a cero. En consecuencia, F(M) tiene

N autovalores iguales a la kurtosis de las fuentes y N(N-1) autovalores iguales a

cero. Se define el autoconjunto de N matrices de F como:

! = F(M

r) = "

rM

r1 # r # N{ } .

Para estimar la matriz U, JADE propone calcularla como la matriz unitaria que

minimiza la suma de los cuadrados de los cumulantes de cuarto orden de las

salidas que poseen primer y segundo índice distintos, que es similar maximizar la

expresión:

! = Cy

i,y

i

* ,yk,y

l

*

i,j,k=1

N

" .

Se llama diagonalizador conjunto de ! a la matriz U que maximiza la expresión:

C U,!( ) = diag(UH F(Mr) U)

2

r=1

N

" ,

donde diag(!) es la norma del vector construido a partir de la diagonal de la matriz

argumento. Cuando R = 1 el concepto de diagonalización conjunta es equivalente a

la unitaria. Para cualquier matriz unitaria U, puede demostrarse que se cumple:

! = C U,"( ) ,

lo que equivale a decir que la maximización de ! equivale a la diagonalización

conjunta C U,!( ) . Una vez se obtiene la matriz unitaria U se estima las fuentes de

la forma:

Y = UtWX

La maximización de ! es el criterio óptimo desde el punto de viste de los mínimos

cuadrados.

4.4.2. Algoritmo AMUSE

El algoritmo AMUSE (Algorithm for Multilple Unknown Signals Extraction) utiliza una

estructura temporal y aplica estadísticos de segundo orden con el fin de obtener las

componentes independientes.

Este algoritmo realiza dos veces el PCA en cascada. En una primera realización, PCA

se aplica para el preblanqueo, mientras en en la segunda realización PCA se aplica

sobre la matriz de covarianzas retardada (generalmente una unidad, k=1) de los

datos blanqueados. La matriz de covarianza retardada que se utiliza está retocada

para asegurar su simetría, con el fin de poder realizar la descomposición en valores

propios de una forma más sencilla [Romero]:

R

Z

' [k] =1

2R

Z[k]+R

Z

t [k]( ) ,

siendo Z la matriz de datos observados blanqueados. El objetivo de AMUSE se basa

en encontrar una matriz que cancele R

Z

'[k] . Dado que las fuentes S se consideran

4.4 Algoritmos de Referencia

59

(4.58)

(4.59)

(4.60)

(4.61)

(4.62)

(4.63)

(4.64)

Page 18: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

independientes, su matriz de covarianzas R

S[k] es diagonal, por lo que la matriz

R

Z

'[k] tiene una descomposición en valores singulares de la forma:

R

Z

' [k] = UDUt= UR

S[k]Ut ,

siendo U la matriz de separación. A partir de la matriz U estimada se obtienen las señales fuente de la forma:

Y = UtWX .

Este algoritmo es muy simple y de rápida computación, aunque presenta la restricción de que todos los valores propios de la matriz

R

Z

'[k]deben ser diferentes,

problema que presentan aquellas señales con espectros de energía similares.

4.4.3. Algoritmo SOBI

El algoritmo de SOBI (Second Order Blind Identification) fue propuesto por [Belouchrani] y, al igual que JADE, está basado en la diagonalización conjunta de matrices de covarianza.

Este método también realiza un preblanqueo de las observaciones que reduce el problema de la separación ciega a la determinación de la matriz U. Para tal fin, vamos a diagonalizar de la misma manera que hicimos con AMUSE la matriz de covarianzas de Z, pero en este caso no solo diagonalizaremos la matriz retardada en una unidad sino que se realizará una diagonalización conjunta aumentando así la eficiencia del algoritmo.

Sea ! el conjunto de P matrices de dimensiones [NxN] formado como:

! = R

Z[k

r] 1 " r " P{ } .

Recordando la diagonalización conjunta, se denomina diagonalizador conjunto de ! a la matriz U que maximiza la expresión:

C U,!( ) = diag(UH RZ[k

r] U)

2

r=1

P

" .

U es un diagonalizador conjunto de ! puesto que, según lo establecido en (4.65)

diagonaliza de forma individual todas las matrices de covarianza RZ[k] y puede demostrarse que es esencialmente igual a ! . Una vez se estima la matriz U las fuentes originales se obtienen de la forma:

Y = UtWX .

La carga computacional de este método es P veces mayor que la del algoritmo de JADE, se gana en robustez pero no puede evitarse la limitación del algoritmo AMUSE: no pueden estimarse las señales fuente si éstas presentan idénticas autocovarianzas, es decir, iguales espectros de energía.

4.5. ConclusionesEste capítulo puede considerarse como el capítulo central del proyecto ya que en torno a él están definidos el resto. En los capítulos anteriores se definen los mecanismo de descomposición aplicables a la separación de fuentes y sobre los

4. Aplicación a la Separación Ciega de Señales

60

(4.65)

(4.66)

(4.67)

(4.68)

(4.69)

Page 19: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

cuales está basado el algoritmo implementado y puesto en funcionamiento en el

capítulo que a continuación se presenta.

Durante el desarrollo del mismo hemos hecho un estudio del problema de BSS con

las restricciones de escalado y ordenación existentes pero que no son importantes

para algunas de las aplicaciones. A continuación nos hemos metido de lleno en el

estudio del método ICA, con sus restricciones y su preprocesado. De los varios

criterios aplicables hemos elegido la no Gaussianeidad como mecanismo de

separación y hemos repasado las funciones contraste basadas en la kurtosis y la

entropía. Para terminar con el estudio de ICA hemos visto un ejemplo gráfico que

nos pone de manifiesto su diferencia con PCA y el preblanqueo.

Para poner en práctica ICA se ha elegido el algoritmo ThinICA. Dicho algoritmo

utiliza una función contraste basada en cumulantes (se definen en el anexo

posterior) para la estimación de las componentes independientes. Dicha función

puede ser optimizada de forma cíclica y se puede acelerar el proceso de

convergencia a través de la proyección.

En el siguiente apartado se han introducido los algoritmos de referencia sobre los

cuales compararemos el algoritmo implementado. Para tal fin utilizaremos alguno

de los índices de prestaciones que prestaremos en el próximo capítulo.

4.5 Conclusiones

61

Page 20: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.6. Apéndice I: Momentos y CumulantesLa estadística de orden dos no es suficiente para efectuar la separación si las fuentes tienen matrices de covarianza similares. La estadística de orden tres tampoco es válida para fuentes con función de densidad de probabilidad simétrica. La mayoría de algoritmos empleados para la separación de señales utilizan criterios basados en Estadísticos de Alto Orden (Higher-Order Statistics, HOS). Debido a su importancia dentro de la separación ciega de fuentes vamos a realizar un breve resumen sobre su definición y propiedades más importantes.

4.6.1. Funciones Características, Momentos y Cumulantes

Los momentos y los cumulantes pueden definirse a partir de las funciones características. Sea X una variable aleatoria con función densidad de probabilidad pX(x).

La primera función característica o función generadora de momentos, !(w), se define como la transformada de Fourier compleja conjugada de la f.d.p. de X [Lathauwer01]:

!(w)=E{ejwx}= ejwxp

X(x)dx

"#

#

$ .

Si expresamos la primera función característica en su desarrollo de Taylor nos queda que:

!(w)= E{Xk}k=0

"

#(jw)k

k!,

expresión que nos permite obtener una definición de los momentos a través de la función generadora:

M

X

k =E{Xk}= (!j)k "k#(w)

"wk w=0,

siendo M

X

k el momento de orden k de la v.a. X. El momento de primer orden se

corresponde con su media, mientras que el momento de orden dos se correspondecon la varianza.

En caso de ser un conjunto de p variables aleatorias X=[X1,...,Xp]t la expresión de la primera función característica es similar:

!(w)=E{ejwt

x}= ejwtxp

X(x)dx

"#

#

$ ,

con la variante de que w es un vector de la forma w=[w1,...,wp]t. Los momentos conjuntos de orden r=k1+...+kp se definen de la forma:

MX

1,...,X

p

k1,...,k

p =E{X1

k1...X

p

kp }= (!j)r

"r#(w1,...w

p)

"w1

k1..."w

p

kp

w1=w

2=...=w

p=0

. (4.74)

El momento de orden dos del conjunto de variables aleatorias se corresponde con la correlación cruzada.

4. Aplicación a la Separación Ciega de Señales

62

(4.70)

(4.71)

(4.72)

(4.73)

Page 21: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

La segunda función característica !(w)de una variable aleatoria X se define como

el logaritmo neperiano de la primera función característica:

!(w)= ln("(w)) .

La segunda función característica se define a partir de la primera, así pues, ambas

funciones contienen la misma información representada de forma diferente. Si

expresamos la segunda función característica en su desarrollo de Taylor nos queda

que:

!(w)= CX

k

k=0

"

#(jw)k

k!,

expresión que nos permite obtener el cumulante de orden k de X C

X

k :

C

X

k= (!j)k "k#(w)

"wk w=0.

A la segunda función característica se le conoce también con el nombre de función

generadora de cumulantes. El cumulante de primer orden de una variable aleatoria

X se corresponde de nuevo con su media, el de segundo orden con su varianza, el

de tercer orden con la asimetría y el de cuarto orden con la kurtosis.

Cuando X es un conjunto de p variables aleatorias la expresión de la segunda

función característica queda definida como:

!(w)= ln("(w)) ,

siendo w un vector de la forma w=[w1,...,wp]t. Los cumulantes conjuntos de

orden r=k1+...+kp se definen de la forma:

CX

1,...,X

p

k1,...,k

p= (!j)r

"r#(w1,...w

p)

"wk

1..."wk

pw

1=w

2=...=w

p=0

.

4.6.2. Relación Entre Momentos y Cumulantes

Dado que los momentos y los cumulantes se obtienen a partir de funciones que

están íntimamente relacionadas, éstos también estarán conectados de algún modo.

La relación general entre los momentos y los cumulantes para un conjunto de

variables aleatorias X1,X2,...,Xp viene dada por:

CX

1,...,X

p

= (!1)m!1(m !1)!E(A

1,...A

m)

" { Xi

i#A1

$ }E{ Xi

i#A2

$ }...E{ Xi

i#Am

$ } ,

donde el sumatorio se extiende para todas las posibles particiones {A1,A2,...,Am}

y siendo m=1,...,p un valor del conjunto de número enteros (1,...,p).

Un ejemplo de aplicación de la expresión anterior para p=3 vendría dado como:

CX

1,X

2,X

3

= E{X1X

2X

3} +

- E{X1}E{X

2X

3} !E{X

2}E{X

1X

3} !E{X

3}E{X

1X

2} +

+2E{X1}E{X

2}E{X

3}.

4.6 Apéndice I: Momentos y Cumulantes

63

(4.75)

(4.76)

(4.77)

(4.78)

(4.79)

(4.80)

(4.81)

Page 22: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

En caso de que las variables aleatorias tengan media cero (E{X

i} = 0,!i), los

cumulantes hasta orden cuatro serán de la forma:

C

X1,X

2

= E{X1X

2}

C

X1,X

2,X

3

= E{X1X

2X

3}

C

X1,X

2,X

3,X

4

= E{X1X

2X

3X

4} !E{X

1X

2}E{X

3X

4} !E{X

1X

3}E{X

2X

4} !E{X

1X

4}E{X

2X

3}

Como podemos observar, los cumulantes de orden dos y tres coinciden con los momentos de orden dos y orden tres, respectivamente. En cambio, el cumulante de orden cuatro difiere del momento de orden cuatro.

4.6.3. Propiedades de Momentos y Cumulantes

Tanto los momentos como los cumulantes contienen la misma información dado que éstos últimos pueden expresarse en términos de suma de productos de los primeros. A primera vista, parece preferible trabajar con momentos que con cumulantes, sin embargo, los cumulantes poseen una serie de propiedades no compartidas por los momentos que hacen que la matemática sea más sencilla y por tanto sean más utilizados.

! Si las variables X

1,X

2,...,X

p están escaladas por constantes

a

1,a

2,...,a

p,

entonces:

Ma1X

1,...,a

pX

p

k1,...,k

p= ( a

i)

i=1

p

! MX

1,...,X

p

k1,...,k

p

Ca1X

1,...,a

pX

p

k1,...,k

p= ( a

ii=1

p

! )CX

1,...,X

p

k1,...,k

p

! Los momentos y cumulantes son aditivos en sus argumentos:

M

X1+Y

1,X

2,...,X

p

1,k2,...,k

p= M

X1,X

2,...,X

p

1,k2,...,k

p+M

Y1,X

2,...,X

p

1,k2,...,k

p

C

X1+Y

1,X

2,...,X

p

1,k2,...,k

p= C

X1,X

2,...,X

p

1,k2,...,k

p+ C

Y1,X

2,...,Y

p

1,k2,...,k

p

! Los momentos y cumulantes son simétricos en sus argumentos:

M

X1,...,X

p

k1,...,k

p= M

xi1,...,X

ip

k1,...,k

p

C

X1,...,X

p

k1,...,k

p= C

Xi1,...,X

ip

k1,...,k

p

siendo i1,i2,...,ip una permutación arbitraria de 1,2,...,p.! Dada una constante a, los momentos y los cumulantes responden de la

forma:

M

a+X1,...,X

p

k1,...,k

p= aM

X2,...,X

p

k2,...,k

p+M

X1,...,X

p

k1,...,k

p

C

a+X1,...,X

p

k1,...,k

p= C

X1,...,X

p

k1,...,k

p

es decir, los cumulantes son ciegos a constantes aditivas.

! Si un conjunto de v.a X

1,X

2,...,X

p son independientes, entonces:

4. Aplicación a la Separación Ciega de Señales

64

(4.82)

(4.83)

(4.84)

(4.85)

(4.86)

(4.87)

(4.88)

(4.89)

(4.90)

Page 23: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

MX

1,...,X

p

k1,...,k

p= M

Xi

ki

i=1

p

!

C

X1,...,X

p

k1,...,k

p= 0

! Como consecuencia de la propiedad anterior, si un conjunto de v.a.

X1,X2,...,Xp es independiente a otro conjunto Y1,Y2,...,Yp , entonces:

C

X1+Y

1,...,X

p+Y

p

k1,...,k

p= C

X1,...,X

p

k1,...,k

p+ C

Y1,...,Y

p

k1,...,k

p

Esta propiedad no se cumple en los momentos.

! Las variables aleatorias cuya función de transferencia es simétrica anulan

todos los momentos y cumulantes de orden impar y mayor de dos.

! Las variables aleatorias gaussianas anulan todos los cumulantes de orden

superior a dos.

4.6 Apéndice I: Momentos y Cumulantes

65

(4.91)

(4.92)

(4.93)

Page 24: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

4.7. Apéndice II: DemostracionesEn este apartado realizaremos las demostraciones de todos los teoremas y lemas que se hayan incluido en el capítulo [Cruces02] [Cruces03].

4.7.1. Lema 1.1- Función Contraste Extractora de Fuentes

Bajo las restricciones impuestas en el apartado (4.3.1), particularizando para la extracción de una única componente Si, existe un conjunto ! tal que:

!

"(S

1) > !

"(S

j), # j=2,3,...,N .

Si consideramos un conjunto q de candidatos para la extracción {U[1], U[1],..., U[1]} y sus respectivas salidas {Y[1], Y[1],..., Y[1]}, la función:

!

"(Y) = #

$Cum(Y[1](t

1),..., Y[q](t

q))

2

$%"& ,

sujeta a U

[m]= 1 (m=1,2,...,q) y

!

"> 0 , es una función contraste cuyo máximo

absoluto conduce a la extracción de la fuente deseada.

4.7.1.1. Demostración

A partir de la desigualdad de Cauchy-Schwarz podemos establecer que cada cumulante cuadrado del sumatorio de la ecuación (4.95) está limitado superiormente por:

Cum(Y[1](t1),..., Y[q](t

q))

2

! G1,j

[p]2

Cum(Sj(t

1),...,S

j(t

q))

2

j=1

N

" # G1,j

[m]2

m$p

q

%j=1

N

"&

'(

)

*+ .

Dado que la función de transferencia global G está formada por vectores normalizados:

G1,j

[m]2

m!p

q

"j=1

N

# $ G1,j

[m]2

j=1

N

#m!p

q

" = 1

tenemos que:

Cum(Y[1](t1),..., Y[q](t

q))

2

! G1,j

[p]2

Cum(Sj(t

1),...,S

j(t

q))

2

j=1

N

" .

Llegados a este punto, la ecuación de la función contraste queda de la forma:

!"(Y) # G

1,j

[p]2

!"(S

j) p=1,2,...,q

j=1

N

$ ,

Pero ateniéndonos a la suposición impuesta !

"(S

1) > !

"(S

j), # j=2,3,...,N y a la

restricción G[p]

= 1, obtenemos:

!

"(Y) # !

"(S

1) ,

lo que significa que el límite superior de la función contraste coincide con la extracción de la componente independiente deseada.

4. Aplicación a la Separación Ciega de Señales

66

(4.94)

(4.95)

(4.96)

(4.97)

(4.98)

(4.99)

(4.100)

Page 25: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

El máximo absoluto de la función !

"(Y) se alcanza en la igualdad de la inecuación.

Esto se consigue cuando los vectores fila que conforman la función de transferencia

global son iguales G[1]

= G[2]= ... = G[q]

y están alineados con uno de los ejes

e

j

t (j=1,2,...,N) 8. En este caso se tiene que:

U[1]H

= U[2]H= ... = U[q]H

= WAej( ) .

4.7.2. Lema 1.2 - Convergencia Hacia la Extracción

Bajo las restricciones impuestas en el apartado (4.3.1), el máximo hacia el que

converge !

"(U

(k)) corresponde con una solución que extrae una de las

componentes independientes.

4.7.2.1. Demostración

Cada punto crítico U' de !

"(#) tiene asociado una función de transferencia del

sistema:

G' = U'HWA .

Definimos el conjunto de índices de G' para los cuales su entrada correspondiente

tiene un valor distinto de cero I = m: G

'

1,m! 0, m=1,2,...,N{ }.

Según el Lema 1.1, cualquier solución que extraiga una de las componentes

independientes se corresponde con un máximo de la función contraste, en cuyo

caso I tiene un único índice correspondiente al eje de extracción.

En caso de existir un falso máximo de la función contraste !

"(#) , éste daría lugar a

una G' con al menos dos elementos distintos de cero. Sin embargo, este punto U' no puede ser un máximo ya que existe un conjunto ! :

!j

j=1

N

" = 0, !j= 0 # j $ I

!j

suficientemente pequeño

tal que los componentes de la función de transferencia varían de la forma:

G

1,j

2

= G'

1,j

2

+ !j, j=1,2,...,N

y hace que la función contraste en este nuevo punto U'' se incremente:

!

"(U'') = 1 + # ($)( )!"

(U') + %($)+ &($) ,

4.7 Apéndice II: Demostraciones

67

8 ej se corresponde con el vector columna cuyas entradas son todas nulas salvo la j-ésima

que toma valor unidad. Por ejemplo: e1=[1,0,...,0]t.

(4.101)

(4.102)

(4.103)

(4.104)

(4.105)

Page 26: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

! (") =q(q # 2)

4

"j

G1,j

'

2

j$I

% & 0

'(") = ()

q

2"

j

G1,j

'( )q

G1,j

'2

cS

j

())j$I

%

2

)$*% > 0

.

4.7.3. Lema 1.3 - Ascenso en la Función Contraste

En cada iteración, la elección de la matriz de extracción U

(k) como resultado de la factorización SVD de la matriz de pesos

C

ZY

(k!1):

U

(k)= V

LV

R

H

garantiza un ascenso de forma monótona en la función contraste:

!

"(U(k#1)) $ !

"(U(k)) .

4.7.3.1. Demostración

Para demostrar el ascenso en la función contraste según esta forma de elección de la matriz de extracción se empleará una cadena de inecuaciones.

En primer lugar, la función contraste se define como:

!"(U(k#1)) = U

i

(k#1)HM

i

(k#2)Ui

(k#1)

i=1

P

$

= Ui

(k#q)HM

i

(k#1)Ui

(k#q)

i=1

P

$

Dado que la elección de U(k) se realiza a partir de los vectores propios, podemos decir que:

Tr U

(k!q)HC

ZY

(k!1){ } " Tr U(k)H

CZY

(k!1){ }ya que maximiza la parte derecha de la inecuación con respecto todas las columnas

U

1

(k),U2

(k),...,UP

(k){ } . Esto implica que la función contraste cumple la inecuación:

!"(U(k#1)) $ U

i

(k)HM

i

(k#1)Ui

(k#q)

i=1

P

% .

Por otro lado, cada una de las matrices M

i

(k!1) a partir de las cuales se conforma

C

ZY

(k!1) poseen una única matriz raíz cuadrada M

i

(k!1)( )1 2

. Se definen los vectores

!(k) y !

(k"1) como:

! (k) = M

1

(k"1)( )1 2

U1

(k);...; MP

(k"1)( )1 2

UP

(k)#

$%&

'(

! (k"1)= M

1

(k"2)( )1 2

U1

(k"1);...; MP

(k"2)( )1 2

UP

(k"1)#

$%&

'(

4. Aplicación a la Separación Ciega de Señales

68

(4.106)

(4.107)

(4.108)

(4.109)

(4.110)

(4.111)

(4.112)

(4.113)

Page 27: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado

A partir de estos vectores podemos reescribir la inecuación (4.118) como:

!

"(U(k#1)) = $

(k#1)2

% $(k)H

$(k#1)

,

y aplicando la desigualdad de Cauchy-Schwarz:

!

(k)H!

(k"1)# !

(k)!

(k"1)

llegamos a que:

!

(k"1)# !

(k),

y por tanto:

!

"(U(k#1)) $ !

"(U(k)) .

4.7 Apéndice II: Demostraciones

69

(4.114)

(4.115)

(4.116)

(4.117)

Page 28: Aplicación a la Separación Ciega de Señalesbibing.us.es/proyectos/abreproy/11924/fichero... · Aplicación a la Separación Ciega de Señales 4.1. Introducción Una vez hemos estudiado