estudio de tÉcnicas ica para la separaciÓn de mezclas de seÑales acÚsticas incluye aplicacion a...

82
1 UNIVERSIDAD CARLOS III DE MADRID ESCUELA POLITECNICA SUPERIOR MÁSTER EN INGENIERÍA ELÉCTRICA, ELECTRÓNICA Y AUTOMÁTICA TESIS DE MÁSTER ESTUDIO DE TÉCNICAS ICA PARA LA SEPARACIÓN DE MEZCLAS DE SEÑALES ACÚSTICAS AUTOR: Carlos Allan Boya Lara TUTOR: Marta Ruiz-Llata Leganés, 18 de junio de 2011

Upload: carlos-boya

Post on 07-Nov-2015

16 views

Category:

Documents


2 download

DESCRIPTION

En este trabajo se realiza un estudio sobre técnicas que enfrentan el problema de la separación ciega de mezclas acústicas. El estudio se centra en el enfoque dado por Análisis de Componentes Independientes o ICA (siglas en ingles, de IndependentComponent Analysis) donde se asume que las fuentes que forman la mezcla son mutuamente independientes.Para comprender las bases fundamentales de ICA se realizará un estudio teórico enfocado en dos tipos de mezclas: instantáneas y convolutivas. Aquí se describe elfuncionamiento de los algoritmos más importantes utilizados en ICA: FASTICA e INFOMAX tomando en cuenta sus virtudes y limitaciones.Para analizar la operación de los algoritmos FASTICA e INFOMAX se realizaran pruebas utilizando mezclas sintéticas, lo que nos permitirá evaluar su rendimiento utilizando varios índices de evaluación. Además, se estudiará el efecto de los parámetros iniciales. Las conclusiones de estas pruebas nos ofrecerán un marco operativo de los algoritmos que nos servirán para enfrentar la separación de señalesprovenientes de mezclas reales.Seguido a las evaluaciones presentadas, se realizaran pruebas con mezclas de audio grabadas en un cuarto y mezclas de señales ultrasónicas emitidas por descargasparciales con el objetivo de probar los algoritmos en entornos reales.

TRANSCRIPT

  • 1

    UNIVERSIDAD CARLOS III DE MADRID ESCUELA POLITECNICA SUPERIOR

    MSTER EN INGENIERA ELCTRICA, ELECTRNICA Y AUTOMTICA

    TESIS DE MSTER

    ESTUDIO DE TCNICAS ICA PARA LA SEPARACIN DE MEZCLAS DE SEALES

    ACSTICAS

    AUTOR: Carlos Allan Boya Lara

    TUTOR: Marta Ruiz-Llata

    Legans, 18 de junio de 2011

  • 2

    AGRADECIMIENTOS

    Agradezco a mi familia, que sin su apoyo no hubieran cumplido este objetivo. Doy gracias a la Secretaria Nacional de Ciencia, Tecnologa e Innovacin (SENACYT) y al Instituto para la Formacin y Aprovechamiento de Recursos Humanos (IFARHU), dos importantes instituciones del Gobierno de la Panam, las cuales han credo en m y me han apoyado econmicamente. A mi tutora Marta Ruiz-Llata que me ha apoyado en todo, ha tenido mucha paciencia, desde el primer momento ha credo en mis ideas y me ha enseado a investigar. Por ltimo, agradezco el apoyo de todos mis amigos. No menciono el nombre de ninguno porque no quiero dejar a nadie fuera.

  • 3

    RESUMEN

    En este trabajo se realiza un estudio sobre tcnicas que enfrentan el problema de la separacin ciega de mezclas acsticas. El estudio se centra en el enfoque dado por Anlisis de Componentes Independientes o ICA (siglas en ingles, de Independent Component Analysis) donde se asume que las fuentes que forman la mezcla son mutuamente independientes. Para comprender las bases fundamentales de ICA se realizar un estudio terico enfocado en dos tipos de mezclas: instantneas y convolutivas. Aqu se describe el funcionamiento de los algoritmos ms importantes utilizados en ICA: FASTICA e INFOMAX tomando en cuenta sus virtudes y limitaciones. Para analizar la operacin de los algoritmos FASTICA e INFOMAX se realizaran pruebas utilizando mezclas sintticas, lo que nos permitir evaluar su rendimiento utilizando varios ndices de evaluacin. Adems, se estudiar el efecto de los parmetros iniciales. Las conclusiones de estas pruebas nos ofrecern un marco operativo de los algoritmos que nos servirn para enfrentar la separacin de seales provenientes de mezclas reales. Seguido a las evaluaciones presentadas, se realizaran pruebas con mezclas de audio grabadas en un cuarto y mezclas de seales ultrasnicas emitidas por descargas parciales con el objetivo de probar los algoritmos en entornos reales.

  • 4

    NOTACIN A continuacin se muestran los smbolos ms utilizados:

    A Matriz de mezclado con elementos ija

    (z)A Matriz de mezclado de filtros con elementos ( )ijA z D Matriz diagonal

    (. .)D Divergencia Lullback-Leibler E[.] Valor esperado o expectacin g(.) Funcin de transformacin no lineal H(.) Entropa I Matriz identidad

    I(.) Informacin mutua J(.) Negentropa M Nmero de fuentes N Numero de mezclas o sensores

    P(.) Probabilidad p(.) Funcin de densidad de probabilidad (t)s Vector de fuentes independientes 1 2( ), ( ),..., ( )]TM(t)= [s t s t s ts

    t ndice de tiempo o muestra (t)u Vector de fuentes estimadas 1 2( ), ( ),..., ( )]TM(t)= [u t u t u tu

    w Vector de pesos W Matriz de pesos

    X Variable aleatoria con limitados estados

    (t)x Vector de mezclas 1 2( ), ( ),..., ( )]TN(t)= [x t x t x tx (t)y Vector de salidas de la red neuronal

    1 2( ), ( ),..., ( )]TM(t)= [y t y t y ty )(. Funcin de activacin )(u Matriz de transformaciones por la funcin de activacin

    1 2) [ ), ),... )]TMu u u = (u ( ( (

    Operador de norma

  • 5

    CONTENIDO

    AGRADECIMIENTOS .................................................................................................... 2

    RESUMEN ....................................................................................................................... 3

    NOTACION ..................................................................................................................... 4

    1. CAPITULO. PROBLEMA Y OBJETIVOS ......................................................... 7

    1.1 PLANTEAMIENTO DEL PROBLEMA DE INVESTIGACION .................... 7

    1.2 MOTIVACION .................................................................................................. 9

    1.3 OBJETIVOS .................................................................................................... 10

    1.4 ESTRUCTURA DEL DOCUMENTO ............................................................ 10

    2. CAPITULO. ALGORITMOS PARA ICA .......................................................... 12

    2.1 ANALISIS DE COMPONENTES INDEPENDIENTES ................................ 12

    2.1.1 DESCRIPCION GENERAL DE ICA ...................................................... 12

    2.1.2 INDEPENDENCIA ESTADISTICA ....................................................... 15

    2.2 ALGORITMOS PARA ICA ............................................................................ 15

    2.2.1 FASTICA ................................................................................................. 16

    2.2.2 INFOMAX ............................................................................................... 20

    2.3 ICA PARA MEZCLAS CONVOLUTIVAS ................................................... 26

    2.3.1 MODELO ICA PARA MEZCLAS CONVOLUTIVAS ......................... 27

    2.3.2 ALGORITMO INFOMAX PARA MEZCLADO CONVOLUTIVO ..... 28

    2.4 RESUMEN Y CONCLUSIONES ................................................................... 32

    3. CAPITULO. METODOLOGIA .......................................................................... 35

    3.1 HERRAMIETAS PARA EL ESTUDIO DE LOS ALGORITMOS. .............. 35

    3.2 INDICES DE EVALUACION ........................................................................ 35

    3.2 SEPARACION DE MEZCLAS SIMULTNEAS ......................................... 37 3.2 EVALUACION DEL ALGORITMO FASTICA ........................................ 38

    3.3 EVALUACION DEL ALGORITMO INFOMAX ...................................... 50

  • 6

    3.3 MEZCLAS CONVOLUTIVAS ...................................................................... 58

    3.4.1 EVALUACION DEL ALGORITMO TORKKOLA ............................... 58

    3.4 CONCLUSIONES ........................................................................................... 61

    4. CAPITULO. APLICACIONES DE ICA EN ENTORNOS REALES ............... 63

    4.1 SEPARACION DE SEALES DE AUDIO ................................................... 63 4.2 SEPARACION DE SEALES ULTRASONICAS EN UN EXPERIMENTO DE SIMULACION ACUSTICA GENERADAS POR DESCARGAS PARCIALES 68

    4.2.1 DESCRIPCION DEL BANCO DE ENSAYOS ...................................... 69

    4.2.2 ADQUISICION DE LAS SEALES DE REFERENCIA. ..................... 70 4.2.3 RESULTADOS ........................................................................................ 71

    4.3 CONCLUSIONES ........................................................................................... 76

    5 CAPITULO. CONCLUSIONES Y TRABAJO FUTURO ..................................... 77

    5.1 CONCLUSIONES ........................................................................................... 77

    5.2 TRABAJO FUTURO ...................................................................................... 78

    REFERENCIAS ............................................................................................................. 80

  • 7

    1. CAPITULO. PROBLEMA Y OBJETIVOS

    1.1 PLANTEAMIENTO DEL PROBLEMA DE INVESTIGACION

    En este trabajo se realiza un estudio sobre tcnicas que enfrentan el problema de la separacin ciega de mezclas de seales acsticas. Por separacin ciega se entiende que no se tiene conocimiento de las fuentes que forman la mezcla y tampoco de los parmetros de mezclados. El estudio se centra en el enfoque dado por Anlisis de Componentes Independientes o ICA (siglas en ingles, de Independent Component Analysis) donde se asume que las fuentes son mutuamente independientes. El problema tpico es el llamado: coctail-party problem.. Es uno de los problemas insignia que abarca el rea de separacin ciega de seales o BSS[1] (siglas en ingls de Blind Signal Separation) donde se establecen principios, mtodos y tcnicas que tienen como objetivo encontrar fuentes originales latentes en mezclas, sin informacin a priori de las fuentes o de cmo se realiz sta. Por ejemplo, si tenemos en un cuarto a tres personas conversando simultneamente y grabamos la conversacin con el objetivo posterior de separar cada una de sus voces (Figura 1.1), tendramos que tener informacin sobre cada una de estas voces o informacin sobre el canal. En el coctail party problem, se describe el problema de extraccin o separacin, pero slo utilizando la informacin suministra por los micrfonos. Es decir, obtener las fuentes con poca o ninguna informacin sobre ellas o del canal.

  • 8

    Figura 1.1. Tres personas conversando y siendo grabadas por tres micrfonos. Donde is son las fuentes y ix las mezclas.

    BSS no slo enfrenta el problema de mezclado voz, sino cualquier situacin donde exista un mezclado se seales y se necesite extraer o separar las fuentes que han formado la mezcla. En la bibliografa, se han identificado cuatro enfoques para BSS[2]: -Uso de la estructura temporal de las fuentes. -Separar a travs de caractersticas de las seales como: espacio, tiempo y frecuencia. -No estacionalidad de las seales. -Medicin de la independencia estadstica de las seales. De estos cuatro enfoques el ms utilizado es el que explota la independencia estadsticas de las seales. Su principal ventaja es que puede tratar con seales no gaussianas, y de esta forma, afrontar el problema de BSS de manera mucho ms general. Este enfoque fue propuesto por Pierre Common en 1994[3] y es llamado Anlisis de componentes independientes o ICA (Siglas en ingles, Independent Component Analysis). En su propuesta introdujo una manera para separar mezclas en sus componentes estadsticamente independientes. El enfoque ICA ha sido utilizado para una gran cantidad de reas y aplicaciones, tales como[4]: separacin o extraccin de voces (coctail party problem), extraccin de caractersticas o patrones, procesamiento de seales en biomdica, anlisis acsticos en ambientes industriales, deteccin de seales ssmicas, prediccin de series en el tiempo en finanzas, mejoramiento de seales en telecomunicaciones, etc.

  • 9

    1.2 MOTIVACION

    Como hemos discutido anteriormente, el problema de obtener fuentes originales a partir de mezclas es difcil de enfrentar y seria muy valioso solucionarlo. Con este objetivo en mente, podemos utilizar Anlisis de Componentes Independientes (ICA) que propone una solucin muy general al problema de mezclado. ICA es base fundamental de algoritmos que tienen una slida base matemtica, que los hace muy robustos para enfrentar todo tipo de problema de mezclado de seales. Anlisis de Componentes Independientes ofrece soluciones cuando se trabaja con poca informacin sobre un fenmeno que se desea medir. En el caso de seales acsticas ha sido utilizado con xito en muchas aplicaciones prcticas. Como un ejemplo de aplicacin para ICA podemos utilizarlo para solucionar problemas presentados en uno de los proyectos del grupo de investigacin de optoelectrnica y tecnologa laser (GOTL) de la Universidad Carlos III de Madrid. Dentro del grupo se est realizando un proyecto de investigacin sobre la deteccin e identificacin de descargas parciales en los transformadores. En el marco de este proyecto se ha creado un entorno que emula la cuba de un transformador y puntos de generacin de descargas parciales. Estos puntos generan ondas acsticas ultrasnicas que se propagan por toda la cuba y que son medidas por sensores externos. Esta situacin es similar al coctail party problem. Cuando se realizan las medidas, lo que se capta es una copia distorsionada de las fuentes debido a la interferencia entre las mltiples seales generadas. ICA puede ser aplicada en este entorno y solucionar este problema separando las mezclas en sus fuentes acsticas originales.

  • 10

    1.3 OBJETIVOS

    -Realizacin de un estudio terico sobre la separacin de fuentes utilizando algoritmos basados en ICA. -Implementar un banco de ensayos de algoritmos basados en ICA enfocados a la separacin de mezclas de seales acsticas donde se consideren dos situaciones: la primera en la que no hay retardos entre las seales (mezclas instantneas) y la segunda en la puedan existir retardos entre las seales (mezclas convolutivas), - Evaluar el desempeo de los algoritmos mediante mezclas de seales sintticas y realizar un estudio de la optimizacin de los parmetros tanto de las seales (tales como la frecuencia de muestreo o su duracin del intervalo de tiempo) como de los algoritmos (tales como tasa de aprendizaje, funcin de activacin, etc) -Evaluar el desempeo de los algoritmos en mezclas de seales reales de audio y ultrasnicas.

    1.4 ESTRUCTURA DEL DOCUMENTO

    En el captulo 2 desarrollaremos un estudio terico sobre ICA y los algoritmos ms importantes utilizados con este enfoque. Iniciaremos explicando que es Anlisis de componentes independientes; revisaremos algunos conceptos bsicos de teora de la informacin fundamentales para la comprensin de los algoritmos; describiremos los algoritmos para ICA con sus virtudes y sus limitaciones; y terminaremos con una revisin de publicaciones sobre aplicaciones de estos algoritmos. En el captulo 3 se describir la implementacin de los algoritmos FASTICA e INFOMAX para mezclas sintticas y convolutivas. Para analizar su operacin en la separacin las mezclas sern creadas de manera sinttica a partir de fuentes acsticas independientes, lo que nos permitir evaluar su rendimiento utilizando ndices de evaluacin. Adems, se estudiar como afecta la operacin diferentes valores en los parmetros iniciales como: la tasa de aprendizajes, funciones de aproximacin y activacin, tipo de seales fuentes y de mezclados. Este estudio nos ofrecer un marco operativo de los algoritmos para luego enfrentarnos a seales provenientes de mezclas reales.

  • 11

    Una vez implementados los algoritmos FASTICA e INFOMAX y evaluadas sus prestaciones se utilizaran estas implementaciones para la separacin de mezclas provenientes de entornos reales. Se probaran sobre mezclas de audio grabadas en un cuarto y para separar mezclas de seales ultrasnicas generadas por descargas parciales simuladas Estas aplicaciones y sus resultados se describen en el captulo 4. Finalmente en el capitulo 5 se expondrn las conclusiones finales sobre el trabajo y se propondrn lneas futuras de investigacin.

  • 12

    2. CAPITULO. ALGORITMOS PARA ICA

    2.1 ANALISIS DE COMPONENTES INDEPENDIENTES

    2.1.1 DESCRIPCION GENERAL DE ICA

    Para entender el funcionamiento de ICA, realizamos un anlisis asumiendo un mezclado simultneo. En esto caso, estudiamos el coctail party problem, despreciando los ecos y reverberaciones. En este caso slo tendramos en cada micrfono una combinacin ponderada de cada seal de voz, es decir, la intensidad de cada seal depender de la distancia entre cada fuente y sensor. De esta manera, podemos modelar matemticamente esta situacin como:

    1 11 1 12 2 13 3

    2 21 1 22 2 23 3

    3 31 1 32 2 33 3

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

    x t a s t + a s t + a s t

    x t a s t a s t a s t

    x t a s t a s t a s t

    =

    = + +

    = + +

    (2.1)

    Donde 1( )x t , 2 ( )x t y 3( )x t son las grabaciones en cada instante t

    tomadas por los

    micrfonos, las cuales llamaremos mezclas ( )ix t ; 1s (t) 2s (t) y 3s (t) son las seales provenientes de cada individuo que llamaremos fuentes ( )is t . Para generalizar este problema no limitaremos las seales emitidas por las fuentes, slo a voces sino a cualquiera seal que puede sufrir los efectos de mezclado. De esta manera no slo mediremos con micrfonos, sino con cualquier otro tipo de sensor.

    Los coeficientes ija con , 1,2,3i j = , se denominan parmetros de mezclado y

    representan la contribucin de cada fuente a cada mezcla ( )ix t . El valor de estos parmetros depender de la distancias entre los individuos y los sensores. Podemos simplificar la ecuacin (2.1) utilizando notacin matricial, de manera que el proceso de mezclado lo expresamos como:

    (t)= (t)x As (2.2)

  • 13

    Donde

    1 2( ) [ ( ), ( ),..., ( )]TNt x t x t x t=x ,

    [ ]1 2( ) ( ), ( ),..., ( ) TMt s t s t s t=s

    Y 11 1

    1

    N

    M MN

    a a

    a a

    =

    A

    Y M y N representan el nmero de fuentes y de mezclas respectivamente.

    Si los parmetros de mezclado ija fueran conocidos, el sistema de ecuaciones lineales

    sera resuelto invirtiendo el sistema de la siguiente forma

    1( ) ( )t t=s A x (2.3)

    Sin embargo, estos parmetros no se conocen, ni tampoco las fuentes. El desconocimiento de las fuentes y los parmetros de mezclados se conoce con el trmino blind o ciego (en espaol). Para resolver este problema Anlisis de Componentes Independientes (ICA) utiliza una transformacin lineal W , tal que:

    ( ) ( )t t=u Wx (2.4)

    Donde 1( ) [ ( ),..., ( )]TMt u t u t=u es una estimacin de ( )ts y

    11 1

    1

    N

    M MN

    w w

    w w

    =

    W .es una matriz de pesos

    En el caso donde las estimaciones son iguales las fuentes, ( ) ( )t t=u s ) entonces 1

    =W A . ICA no puede garantizar esta igualdad ya que se desconoce el orden exacto y

    la amplitud de las fuentes, sin embargo puede proporcionar unas formas de onda las cuales tienen la informacin que nos interesa. Para conseguir este objetivo, en ICA se

  • 14

    asume que las fuentes son independientes. De esta manera se adapta la matriz de pesos

    W por medio de una regla de adaptacin que busca la independencia estadstica entre

    las salidas ( )iu t . En el caso ptimo obtenemos:

    1W = PA

    Donde es una matriz diagonal no singular, P es matriz permutacin y 1A es la inversa de la matriz de mezclado. As obtenemos las formas de onda de las fuentes en diferente orden al que fueron mezclas y escaladas.

    Para estimar W , la regla de bsqueda de independencia puede estar enfocada en alguno de los siguientes criterios: -Maximizacin de la No gaussianidad. -Estimacin de la mxima verosimilitud. -Anlisis no lineal de componentes principales. -Mtodos tensoriales -Minimizacin de la mutua informacin. -Maximizacin de la informacin Todos estos criterios estn relacionados entre s y su operacin puede ser expresado mediante la siguiente expresin [5]:

    Mtodo ICA = funcin objetivo + algoritmo de optimizacin

    Donde la funcin objetivo es alguna regla o funcin que mide la independencia y que se busca maximizar o minimizar bajo algn tipo de restriccin. El algoritmo de optimizacin es algn mtodo como gradiente descendiente, natural o Newton para buscar esta maximizacin o minimizacin. Todos estos mtodos buscan como objetivo general la independencia estadstica entre las salidas, y su eleccin depende de las propiedades estadsticas de la funcin objetivo y de la velocidad de convergencia, requerimientos de memoria, estabilidad numrica, etc., que ofrece el algoritmo de optimizacin escogido.

  • 15

    2.1.2 INDEPENDENCIA ESTADISTICA

    Un concepto clave que constituye el fundamento de ICA es la independencia estadstica, la cual es definida en trminos de densidades de probabilidad. Si tenemos

    dos variables aleatorias x y y , se dicen que son independientes si y slo si[6]:

    ( , ) ( ) ( )p x y p x p y= (2.5)

    Donde ( , )p x y es la densidad de probabilidad conjunta de x y y ; ( )p x y ( )p y la densidades marginales de x y y , respectivamente. En otras palabras, la densidad

    conjunta ( , )p x y debe ser factorizable en los productos de sus densidades marginales ( )p x y ( )p y para que las dos variables sean consideradas independientes entre si.

    Una manera mas prctica para entender la independencia es expresada as: Si una variable no da ninguna informacin que permita conocer otra variable se dice que son totalmente independientes. En otras palabras dos variables son independientes si no tienen ninguna relacin entre ellas. Esta relacin no slo debe ser lineal, sino tener en el mbito de la no linealidad. De esta manera, si se logra eliminar correlaciones lineales no basta para decir que son independientes, ya que existen otras correlaciones no lineales que podran no ser cero. Aqu es donde el enfoque ICA es tan robusto, pues la bsqueda de independencia va ms all de una decorrelacin lineal.

    2.2 ALGORITMOS PARA ICA

    En nuestra revisin bibliogrfica hemos encontrado que los algoritmos FASTICA e INFOMAX, basados en ICA son los mas representativos y populares para aplicaciones con mezclas reales. Adems de esto son los que han sido llevados a aplicaciones embebidas[7].

  • 16

    2.2.1 FASTICA

    El algoritmo FASTICA fue desarrollado en el Laboratorio de Informacin y Ciencias Computacionales de la Universidad Tecnolgica de Helsinki, por Hugo Gvert, Jarmo Hurri, Jaakko Srel y Aapo Hyvarinen. Este algoritmo busca la independencia basndose en la medida de la no gaussianidad. Segn el teorema de lmite central[8] si mezclamos dos o mas seales independientes, la mezcla resultante ser mas gaussiana que las seales originales. Recordando el coctail party problem, los micrfonos grababan mezclas de seales de voz. Estas mezclas son ms gaussianas que las seales originales. El algoritmo FASTICA lo que busca es revertir este proceso de mezclado. Recordando la ecuacin (2.4)

    (t)= (t)u Wx

    Donde (t)x son las mezclas, (t)u son las estimaciones y W la matriz de pesos. FASTICA busca que (t)Wx sea lo menos gaussiano posible cambiando los pesos W . Al hacerlo menos gaussiano logramos encontrar los componentes independientes, lo cuales son las estimaciones de nuestras fuentes. Para ello se utiliza una funcin que mide la no gaussianidad. Esta funcin es llamada Negentropa y se puede considerar como una medida de distancia entre la densidad de probabilidad de una variable gaussiana de referencia y la densidad de la variable a comprar. La Negentropa esta definida como[9]:

    ( ) ( ) ( )gaussJ H H= u u u (2.6)

    Donde ( )gaussH u es la entropa de un vector gaussiano con igual varianza que el vector u , ( )H u es la entropa de u .y donde hemos obviado el ndice de tiempo. La Negentropa es siempre positiva, y es cero slo cuando u tiene una distribucin

    gaussiana.

    En FASTICA se toma la Negentropa de u y se verifica su distancia con respecto a la variable gaussiana. El objetivo es encontrar unos pesos que lleven al mximo de esta

  • 17

    distancia. Los pesos encontrados son los que conducen a los componentes independientes y a nuestras estimaciones de las fuentes.

    2.2.2.1 EL ALGORITMO FASTICA

    El algoritmo FASTICA no estima todos los componentes a la vez si no que lo hace secuencialmente. En la Figura 2.1 se muestra un esquema de como realiza la bsqueda de los componentes. En este ejemplo tenemos tres mezclas. Estas mezclas sufren un preproceso que ser explicado ms delante. Seguido las mezclas son multiplicadas por

    un vector de pesos, produciendo las estimaciones u . Este vector es utilizado para buscar

    el mximo de la Negentropa y generar unos nuevos pesos. Este proceso se repite hasta encontrar los pesos ptimos.

    Figura 2.1. Proceso llevado a cabo por FASTICA para la bsqueda de un componente independiente.

    El vector de pesos encontrados corresponde al primer componente independiente y es el primer mximo de la Negentropa. Para encontrar los siguientes componentes, utilizamos este mismo proceso pero debemos asegurarnos que no coincidamos con el peso previamente encontrado. Para lograr esto se hace un proceso llamado ortogonalizacin. Este proceso asegura que el siguiente vector de pesos sea ortogonal al encontrado previamente y de esta forma diferente e independiente. De esta manera el proceso descrito en el esquema se repite hasta encontrar todos pesos. En la Tabla 2.1 mostramos todos los pasos utilizados por el algoritmo FASTICA para encontrar los pesos y los componentes independientes.

  • 18

    Tabla 2.1. Pasos del algoritmo FASTICA

    1 Centrar los datos para hacer su media cero

    2 Crear un nuevo vector z al blanquear los datos

    3 Iniciar bsqueda de los componentes desde 1p hasta M , donde p es el

    ndice del componente y M la cantidad de componentes

    4 Escoger un vector aleatorio pw con norma unitaria

    5 Iniciar un contador de iteraciones y guardar el vector de peso pw antes de la

    actualizacin

    6

    Realizar la operacin de actualizacin del vector de pesos

    { } { }( ) '( )T Tp p p pE g E g w Z w z w z w , donde g est definida en la Tabla 2.2

    7 Normar los pesos encontrados para mantener varianza fija en la unidad

    /p p pw w w

    8

    Realizar la ortogonalizacin 1

    1)

    pT

    p p p j jj

    =

    w w (w w w donde p el ndice

    del vector de pesos actual y j es el ndice de los vectores de pesos previamente encontrados.

    9 /p p pw w w

    10 Se compara el vector de pesos antes de la actualizacin con el peso actual.

    Si la diferencia es mayor del valor de convergencia volver al paso 6

    11 Buscar el siguiente componente haciendo 1p p + y volver al paso 3

    Previamente hemos dicho que hay un preprocesado que deben sufrir las mezclas. Este preprocesado esta dividido en dos pasos: centrado y blanqueado. El centrado y el blanqueado aseguran que se puedan encontrar los componentes utilizando la Negentropa como medida. El centrado consiste en extraer la media de las mezclas:

    ( )E= x x x

  • 19

    Donde E(.) es la expectacin o promedio. El blanqueado es una operacin sobre las mezclas que produce un vector con varianza unitaria y donde sus elementos son ortogonales unos a los otros. El blanqueado se realiza de la siguiente manera:

    =z Vx (2.7)

    Donde la matriz 12 T

    =V ED E y est formada por la matriz diagonal

    1( ,..., )ndiag d dD = con los eigenvalores de matriz de covarianza de las mezclas y E es una matriz ortogonal sus los eigenvectores, respectivamente.

    El nuevo vector z es una copia escalada y rotada de las mezclas, as que no hay una alteracin sobre las fuentes que la componen. Despus del centrado y blanqueado se inicia la bsqueda de los componentes. Se escogen un vector de pesos de manera aleatoria y despus se normaliza. Este peso se guarda para comparacin despus de la actualizacin. El siguiente paso es la actualizacin de los pesos por medio de una regla basada en la Negentropa. Hyvarinen desarrollo la siguiente regla de actualizacin de pesos [10]

    { } { }( ) '( )T TE g E g w z w z w z w (2.8)

    Donde g y g estn especificadas en la Tabla 2.2 y E es la expectacin.

    Este paso de actualizacin puede variar la varianza de u , por tal razn se vuelve a

    normar los pesos para mantener su varianza en la unidad. Como mencionamos antes, cuando buscamos cada componente es importante asegurarnos que no coincidamos con alguno previamente encontrado. Para esto se ortogonaliza con la siguiente operacin:

    1

    1)

    pT

    p p p j jj

    =

    w w (w w w (2.9)

    Donde es p el ndice del componente actual y j es el ndice de cada uno de los componentes previamente encontrados. Se vuelve a normar y se procede a compararlo

  • 20

    con el peso guardado antes de la actualizacin. Si la diferencia entre el peso actual y el peso antes de la actualizacin es menor que el valor de convergencia se guarda el peso actual y se busca peso correspondiente al siguiente componente. Si la diferencia entre el peso actual y el previo a la actualizacin es mayor al valor de convergencia se sigue actualizando los pesos hasta que la diferencia sea menor que el valor de convergencia. El valor de convergencia sirve para comparar el cambio entre el valor antes y despus de la actualizacin, que en la prctica se suele escoger con valor menor a 0.0001.

    Tabla 2.2. Lista de funciones para aproximar la Negentropa

    g 'g

    1G tanh( )u (1 tanh( )) u

    2G 2exp( / 2)u u 2 2(1 )exp( / 2) u u

    3G

    3u

    2u

    2.2.2 INFOMAX

    El algoritmo INFOMAX[11] fue desarrollado por Anthony Bell y Terrence Sejnowski en 1995 y se basa en el principio maximizacin de la informacin de Linsker[12]. Este principio establece criterios de optimizacin en el proceso de transmisin de informacin entre la entrada y salida de una red neuronal. El principio establece que entre la capa de entrada y de salida de una red neuronal debe existir una funcin, tal que maximice la mutua informacin entre ellas y as alcanzar una transmisin ptima de la informacin en la red neuronal. Bell y Sejnowski demostraron que en el caso de bajo ruido la maximizacin de la mutua informacin entre las salidas y las entradas de la red, era equivalente a la maximizacin de la entropa conjunta de salidas de esta red. Este hecho, segn Nadal y Parga[13] implica una distribucin factorial de estas salidas. En otras palabras, la maximizacin de la transferencia informacin entre la entrada y la salida de una red neuronal minimiza la mutua informacin entre las salidas (cdigo factorial). Por cdigo factorial se entiende, que la densidad de probabilidad conjunta de las salidas es factorizable y por lo tanto estas salidas seran independientes entre s. Recordando la seccin 2.1.2 si una distribucin conjunta de variables es factorizable en sus densidades marginales, esto es una indicacin de independencia.

  • 21

    Bell y Sejnowski, siguiendo estos conceptos propusieron un modelo neuronal capaz de tomar las mezclas y separarlas en sus componentes independientes. En la Figura 2.2

    mostramos el modelo para tratar tres mezclas ix .

    Figura 2.2. Modelo neuronal INFOMAX para tratar tres mezclas con la transformacin no lineal de cada salida .

    En este modelo observamos que cada salida iu es transformada en una nueva variable

    ( )i iy g u= . Esta transformacin permite maximizar la entropa conjunta de todas las salidas iy con respecto a la matriz de pesos W . La entropa conjunta de las salidas de la red neuronal es igual a:

    ( ) ( ) log ( )[ ( )]

    h p p d

    E p

    =

    =

    y y y yy

    (2.10)

    Donde el vector 1 2[ , ,... ]TMy y y=y es el vector de salidas y [.]E la expectacin. Cuando se alcanza el mximo de la entropa conjunta se reduce la mutua informacin entre las salidas hacindolas independientes entre ellas:

    max ( | )rg h y W (2.11)

    A partir de esta maximizacin, Bell y Sejnowski desarrollaron la siguiente regla de actualizacin para la matriz de pesos W [14]:

  • 22

    ) T W I + (u u W (2.12)

    Donde W es la matriz de pesos, I

    es una matriz identidad, u son las estimaciones y el

    trmino )( es llamado funcin de activacin. La funcin de activacin )(u opera sobre cada variable iu de manera independiente:

    1 2) [ ), ),... )]TMu u u = (u ( ( (

    La funcin de activacin )(u est relacionada con la funcin de transformacin ( )i iy g u=

    por medio de[15]:

    2

    21( ) ii

    i i

    i

    yu y u

    u

    =

    (2.13)

    La eleccin de ( )i iy g u= influye de manera determinante en la operacin del algoritmo. La funcin ( )ig u es no lineal, invertible y acota en amplitud a las variables

    iu . Adems de estas caractersticas, para que esta transformacin logre un ptimo

    comportamiento del algoritmo, debe tener la forma de la funcin de distribucin cumulativa de las fuentes que forman la mezcla. Al contrario que en FASTICA, en el caso de INFOMAX es necesario, al menos intuir caractersticas estadsticas de la fuente.

    Una funcin sigmoidal, como la mostrada en la grafica a) de la Figura 2.3, cumple con las caractersticas necesarias para realizar la transformacin. Es invertible, acota en amplitud y es monotnica. Si esta funcin es derivada obtenemos la forma de la grafica b) de la Figura 2.4. Esta es la forma de la densidad de distribucin de probabilidad supergaussiana. En INFOMAX la transformacin debe tener la forma de la densidad cumulativa de probabilidad de las fuentes (su derivada en la densidad de distribucin de probabilidad) para que el algoritmo converja.

  • 23

    Figura 2.3. a) Funcin sigmoidal, la cual tiene forma de la funcin cumulativa de fuentes supergaussianas. b) La derivada de la funcin sigmoidal que corresponde a la forma de la densidad de probabilidad de fuentes

    supergaussianas.

    En casos prcticos, normalmente inferimos de los datos la forma de distribucin de probabilidad. Asumimos que son gaussianos, supergaussianos, subgaussianos, etc. Por tal razn es mejor utilizar la funcin de distribucin que la forma de la funcin cumulativa o funcin de transformacin. Una manera para relacionar la funcin de

    distribucin 1 2) [ ( ), ( ),..., ( )]TMP P u P u P u=(u y la funcin de activacin )(u es dada por Amari y Cichocki en [16]:

    log ( )) iid p u

    udu

    = ( (2.14)

    Donde ( )ip u es la funcin de distribucin de probabilidad para cada estimacin. Cuando el algoritmo converge tenemos ( ) ( )i ip u p s= , donde ( )ip s es la distribucin de probabilidad de las fuentes. Como ejemplo: Si asumimos que las fuentes son supergaussianas, (caracterstico de las fuentes de audio) podemos tomar una funcin de densidad de probabilidad laplaciana

    ( ) exp( )i ip u u= ya que se puede adaptar a las forma de distribucin supergaussiana. Aplicando la operacin de la ecuacin (2.14) obtenemos la funcin de activacin

    ) ( )i iu Sign u =( . En la grafica a) de la Figura 2.4 vemos la forma de distribucin laplaciana y en la grafica b) la forma de su funcin de activacin.

  • 24

    Figura 2.4. a) Funcin de distribucin laplaciana. Esta distribucin puede ser asumida para seales supergaussianas como las de audio. b) Funcin de activacin derivada de la funcin de distribucin laplaciana. Como se puede observar en una funcin signo

    En la Figura 2.5 se muestran dos ejemplos de densidades para seales de voz y msica. Comparando la funcin laplaciana con estas densidades podemos decir que son similares y que gracias a esto podemos utilizar la funcin de activacin en este caso para estimar una mezcla de este tipo de fuentes. En la Tabla 2.3 [16] mostramos varias funciones de distribucin de probabilidad y sus funciones de activacin, respectivamente.

    Figura 2.5. Izquierda: Distribucin de una seal de voz. Derecha: Distribucin de una seal de msica.

  • 25

    Tabla 2.3. Funciones de densidad de probabilidad y sus funciones de activacion, respectivamente. El simbolo se refiera a la varianza de la seal.

    Nombre Funcin de distribucin

    de probabilidad ( )p u Funcin de

    activacin ( )u

    Gaussiana 2

    21

    exp( )22u

    pi

    u

    Laplaciana 1 exp( )2

    u

    ( )Sign u

    Cauchy 21 1

    1 ( / )upi + 2 22u

    u +

    Coseno

    Hiperblico 21

    cosh( / )upi 2tanh( / )u

    Sigmoidal 2exp( / )

    (1 exp( / ))u

    u

    +

    211 exp( / )u +

    Tangente

    Hiperblico 21 tanh( / )u

    2 tanh( / )u

    Gaussiana generalizada

    1exp( )

    2 (1/ )r

    r u

    r r

    1

    ( )r

    ru

    Sign u

    2.2.2.1 EL ALGORITMO INFOMAX

    El algoritmo INFOMAX consta de pocos pasos. En la Tabla 2.4 se muestran estos pasos.

    El primer paso es centrar las mezclas retirndoles la media:

    ( )E= x x x Despus se escoge una matriz de pesos W de manera aleatoria. A diferencia de

    FASTICA en INFOMAX se encuentran todos los pesos paralelamente. Despus obtenemos una vector de salidas:

    =u Wx (2.15)

  • 26

    Guardamos los pesos antes de su actualizacin y utilizamos el vector de salida u para

    estimar los pesos:

    ( ) Tactual anterior anterior = + W W I - u u W (2.16)

    Si el cambio entre el peso actual y el anterior es menor al valor de convergencia detenemos el proceso y obtenemos las estimaciones por medio de la ecuacin (2.15).

    Tabla 2.4. Pasos del algoritmo INFOMAX. 1 Centrar los datos para hacer su media cero

    2 Escoger un vector de pesos W

    de manera aleatoria.

    3 =u Wx

    4 ( ) Tactual anterior anterior = + W W I - u u W

    5 Si actual anterior valor deconvergencia>W -W volver al paso 3.

    2.3 ICA PARA MEZCLAS CONVOLUTIVAS

    Hasta ahora hemos considerado el caso de mezclado simultneo de fuentes. En esta seccin abordaremos el problema de mezclado convolutivo, donde a cada sensor le llegan copias distorsionadas de las emisiones de cada fuente debida las reflexiones y reverberaciones. En la Figura 2.6 puede observarse un ejemplo de este problema para el caso de dos fuentes y dos sensores. Los frentes de onda de cada emisin son modelados por rayos. Como puede observarse, hay rayos que cubren una mayor distancia debido a que no van directo a los sensores, sino a las paredes y de ah a estos. Obviamente, estos rayos llegan con un atraso mayor que los rayos directos. Cada uno de estos rayos es una copia original de la fuente, pero que llega distorsionada a los sensores debido al medio. Este problema es mucho ms complejo que el enfrentado en el caso simultneo, ya que adems de tratar con el mezclado directo de cada fuente, tenemos el mezclado de partes retrasadas de cada una de estas seales.

  • 27

    2.3.1 MODELO ICA PARA MEZCLAS CONVOLUTIVAS

    Para resolver el problema de mezclado convolutivo y poder realizar la separacin utilizando el enfoque ICA, se recurre a un modelo que abarque retardos. En este caso se pueden utilizar modelos ARMA (siglas en ingles de Autoregressive Moving Average Model) y adaptarlos a nuestro problema. Para los casos donde tenemos una cantidad de M

    fuentes 11( ( ) [ ( ),..., ( )] )Ms t s t s t = y una cantidad de N sensores que captan las

    mezclas 11( ( ) [ ( ),..., ( )] )Nx t x t x t = , podemos utilizar el siguiente modelo [17],

    1

    1 0( )

    N K

    i ijk jj k

    x a s t k

    = =

    = (2.17)

    Donde js son las fuentes, ix son las mezclas recibidas por los N sensores, k es el

    ndice de retardo, t es el ndice de tiempo discreto, M es el nmero de fuentes. Los

    ijka son los correspondientes coeficientes de mezclado que indican la contribucin de la

    fuente i en un instante ( )t k a la mezcla j en el instante t . Este modelo, llamado MA (moving average) es parte de los modelos ARMA y es esencialmente un filtro de repuesta impulso finita o FIR (Finite Impulse Response). El modelo ve las mezclas como una versin filtrada y retardada de las fuentes.

    Figura 2.6. Dos fuentes acsticas emitiendo sonido. Se muestras las trayectorias de los frentes de onda. Los sensores captan copias distorsionadas de las emisiones debido al medio.

  • 28

    En la prctica, estos coeficientes de mezclado pueden cambiar en el tiempo, pero por simplicidad a menudo son considerados estacionarios. En teora, los filtros puede tener longitud infinita, sin embargo es suficiente con asumir que K < . Este modelo puede ser escrito en forma matricial:

    1

    0( ) ( )

    K

    kk

    t s t k

    =

    = x A (2.18)

    Donde kA es una matriz M x N la cual contiene k s coeficientes. En el dominio de z ,

    el modelo puede ser escrito, tambin como:

    ( ) ( ) ( )z z z=X A S (2.19)

    Donde ( )zA es una matriz de polinomios FIR. Como en caso de mezclado simultneo podemos realizar la asuncin de independencia estadstica y buscar una solucin, sin embargo ahora nos enfrentamos a la inversin de mltiples matrices de polinomios. Una manera de resolver esto, es considerar como sistema de inversin, un filtro FIR o IIR y adaptar sus coeficientes siguiendo una regla de bsqueda de independencia hasta que se obtenga una versin aproximada de las fuentes.

    Con este enfoque existen dos arquitecturas utilizadas: FeedBack y FeedForward[18]. De cada una de ellas se puede extraer una regla de adaptacin de pesos, de tal forma que se pueden estimar las fuentes. Es importante anotar que estos pesos, son los coeficientes de la inversin del canal de mezclado, algo que es muy til si surge la necesidad de caracterizarlo.

    En este trabajo utilizamos el algoritmo propuestos por Kari Torkkola[19] basados en la arquitectura FeedBack e INFOMAX extendido para tratar con mezclas convolutivas.

    2.3.2 ALGORITMO INFOMAX PARA MEZCLADO CONVOLUTIVO

    En la Figura 2.7 mostramos un esquema del modelo representado la ecuacin (2.19), ( ) ( ) ( )z z z=X A S para dos fuentes, despreciando el ruido en los sensores:

  • 29

    Figura 2.7. Modelo de mezclado convolutivo para las fuentes.

    Tanto en este esquema como en el siguiente anlisis, todas las variables estn

    transformadas al dominio de z . En este caso cada elemento de la matriz ( )zA es un polinomio de filtros FIR y puede ser escrito como:

    1 11 1 12 2

    2 21 1 22 2

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

    X z A z S z A z S zX z A z S z A z S z

    = +

    = + (2.20)

    En (2.20) no conocemos ( )ijA z ni las fuentes jS . Torkkola[19] propuso una arquitectura Feedback y una extensin del algoritmo INFOMAX para estimar fuentes que han sufrido un mezclado convolutivo. En la Figura 2.8 presentamos en un esquema la arquitectura propuesta de Torkkola. Las salidas de este sistema pueden ser expresadas como

    1 11 1 12 2

    2 21 2 22 2

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

    U z W z X z W z U zU z W z X z W z U z

    = +

    = + (2.21)

    Donde las ( )iU z son las estimaciones de los componentes independientes y ijW los pesos. A estos pesos se les llama tambin: coeficientes del filtro. Cada uno de estos coeficientes es actualizado por una regla basada en INFOMAX, como veremos ms adelante.

    A11(z) +

    +

    S1(z)

    S2(z)

    X1(z)

    X2(z)

    A12(z)

    A21(z)

    A22(z)

  • 30

    Figura 2.8. Arquitectura FeedBack propuesta por Torkkola.

    En el caso ideal, cada coeficiente debera llegar a la siguiente solucin:

    1 111 11 12 12 11

    1 122 22 11 21 22

    ( ) ( ) , ( ) ( ) ( )( ) ( ) , ( ) ( ) ( )

    W z A z W z A z A zW z A z W z A z A z

    = =

    = =

    (2.22)

    Sin embargo, para una aplicacin en lnea esta solucin tiene un problema. Cuando la

    regla busca los pesos directos 11 22,W W , no slo se estimar 1 111 22( ) , ( )A z A z sino que tambin blanquear las fuentes, algo que hace que pierdan su forma de onda original. La estimacin de los otros coeficientes depende de estas fuentes, as que debido a esta distorsin, stos no podrn converger a la solucin. Para evitar este efecto, los

    coeficientes 11 22,W W son forzados a ser constantes, normalmente con valor de uno. De

    esta manera la ecuacin (2.21) queda de la siguiente forma:

    1 1 12 2

    2 2 22 2

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

    U z X z W z U zU z X z W z U z

    = +

    = + (2.23)

    Donde

    111 12 12 22

    122 11 21 11

    ( ) 1, ( ) ( ) ( )( ) 1, ( ) ( ) ( )

    W z W z A z A zW z W z A z A z

    = =

    = =

    (2.24)

    Con esta solucin las estimaciones a las que converge el algoritmo sern una versin

    filtrada de las fuentes, como sigue:

    W11(z) +

    +

    X1(z)

    X2(z)

    U1(z)

    U2(z)

    W21(z)

    W12(z)

    W22(z)

  • 31

    11 1 1

    22 2 2

    A S UA S U

    =

    =

    (2.25)

    Para esta estructura la regla de actualizacin de pesos es la siguiente[20]:

    ( ( )) ( )ijk i jw u t u t k (2.26)

    Donde i y j son los ndices de las mezclas, t es el nmero de muestra, k es el retardo y ( ( ))iu t es la funcin de activacin. En este caso cada estimacin iu es igual a:

    1 1( ) ( ) ( )

    N K

    i i jik jj k

    u t x t w u t k= =

    = + (2.27)

    Donde K es la longitud del filtro.

    Las ecuaciones estn en el dominio del tiempo y trabajan en lnea con los datos ( )ix t de entrada. Como ejemplo: si nuestra funcin de activacin proviene de la funcin sigmoidal (Tabla 2.3):

    2( ( )) 11 exp( )i i

    u tu

    = +

    ,

    Entonces, la regla ser:

    2(1 ) ( )1 exp( )ijk ji

    w u t ku

    +

    (2.28)

    En la Figura 2.9 mostramos en un esquema la estructura de Torkkola incluyendo la

    regla de actualizacin de pesos de la ecuacin (2.28) y con los coeficientes 11 22,W W iguales a uno. Con este esquema podemos tomar las muestras de las seales de la

    mezclas y procesarlas en lnea con el objetivo de estimar las fuentes independientes.

  • 32

    Figura 2.9. Este esquema muestra el algoritmo Torkkola para dos mezclas. En este esquema los filtros directos han sido igualados a uno y se ha utilizado la funcin de activacin Sigmoidal.

    2.4 RESUMEN Y CONCLUSIONES

    Se ha realizado una revisin de los conceptos fundamentales en los que se basa la tcnica de Anlisis de Componentes Independientes, tales como independencia estadstica, entropa y mutua informacin, as como el establecimiento del principal objetivo de este mtodo: La bsqueda de componentes independientes latentes en una mezcla.

    De este mtodo se derivan dos algoritmos: FASTICA e INFOMAX y utilizan la negentropa y la entropa como medidas de independencia, respectivamente. Para mezclado instantneo tanto FASTICA como INFOMAX pueden operar y separar este tipo de mezclas, y adems INFOMAX extendido por Torkkola puede tratar con mezclado convolutivo. Estos algoritmos han sido utilizados en muchas aplicaciones reales en acstica. Con respecto a FASTICA encontramos mayora de aplicaciones acsticas relacionadas al campo de la biomedicina. En [21, 22] es utilizado para la separacin de seales acsticas provenientes del corazn. Aqu se logra diferenciar entre la sstole y la distole discriminando sonidos provenientes del pulmn. En [23] se identifica el sonido del corazn de un feto y se logra discriminar de manera automtica del ruido abdominal. Tambin encontramos en [24] el diseo e implementacin de un estetoscopio embebido en un DSP que puede diferenciar entre las dos fases del corazn (distole y sstole) eliminando ruidos provenientes de otros rganos. Adems de aplicaciones biomdicas, encontramos aplicaciones en audio [25], en el rea industrial [26] y en sistemas de sonares [27].

  • 33

    En el caso de INFOMAX en [11, 28-32] se realizan trabajos con mezclado convolutivo utilizando seales obtenidas de forma sinttica. En [33-35] se utilizan seales reales utilizando una estructura del algoritmo embebida en un DSP. Cuando se utiliza ICA para trabajar con aplicaciones reales es importante tener en cuenta sus limitaciones. En los siguientes puntos se exponen las ms importantes:

    1) Slo se permite una fuente gaussiana entre las fuentes que conforman la mezcla. Las seales con densidades gaussianas, cuando estn decorreladas linealmente son independientes entre s. Como ICA realiza una especie de decorrelacin no lineal, buscando ordenes estadsticos por encima de la media y la varianza y una variable gaussiana solo tiene estos ltimos, no puede trabajar con este tipo de variables. Para el caso donde todas las fuentes son gaussianas se puede utilizar Anlisis de Componentes Principales o PCA[36].

    2) ICA no puede determinar las varianzas de las fuentes originales, debido a que los coeficientes de mezclado, como las fuentes son desconocidas.

    3) No es posible determinar el orden original de las fuentes. 4) En muchos casos reales el mezclado de las seales no es instantneo, sino

    convolutivo. Es fundamental estudiar el ambiente en el cual se propagan las seales de audio para determinar si se puede o no, considerar un tipo de mezclado. Dependiendo de este anlisis se escoge el algoritmo. En el trabajo de Michael S. Pedersen[17], se hace una extensa revisin a los algoritmos para tratar con mezclas convolutivas.

    5) El mezclado de la seales muchas veces no es estacionario. La matriz de mezcla puede cambiar debido a que las fuentes se pueden estar moviendo, haciendo que los coeficientes de esta matriz deban ser ajustados continuamente. Si el algoritmo es lento convergiendo, no podr enfrentar esto, sin contar el problema aadido por los retardos.

    6) En aplicaciones reales, es difcil saber cuantas fuentes existen y por lo tanto, cuantos sensores se deben colocar para que la matriz a estimar sea cuadrada e invertible. Los algoritmos bsicos de FASTICA e INFOMAX, no pueden tratar este problema directamente. Existen trabajos realizados por A. Hyvarinen[37], F. Theis[38], Cichocki y Amari[39], Matsuda Y.[40], donde utilizan modelos generativos, asumiendo densidades de probabilidad a priori para completar la matriz de mezcla.

    A pesar de estas limitaciones ICA da respuesta a una situacin caracterstica de la medicin de seales. En muchos casos no conocemos si las seales que estamos

  • 34

    midiendo son las emisiones reales de las fuentes del fenmenos en el cual estamos interesados. En el caso de seales acsticas cuando se transmiten, pueden sufrir interferencias con otras seales. En este caso, lo que recibimos es una copia distorsionada de la emisin original. ICA provee una solucin muy general a esta situacin, pues puede estimar una copia aproximada de nuestra fuente, eliminando la interferencia de la otra seal. Como se ha descrito en los distintos apartados del capitulo, ICA permite estimar las fuentes ciegamente sin ninguna referencia es lo que hace a este mtodo tan poderoso y con un gran potencial de aplicacin en sistemas de instrumentacin que trabajan con seales acsticas.

  • 35

    3. CAPITULO. METODOLOGIA

    3.1 HERRAMIETAS PARA EL ESTUDIO DE LOS ALGORITMOS.

    Para estudiar, implementar y evaluar la operacin de los algoritmos se utilizaran las siguientes herramientas:

    1. Paquete FASTICA: Es un programa para Matlab basado en el algoritmo FASTICA creado por el departamento de Informacin y Ciencias de la computacin de la Universidad de Helsinski. Este paquete fue bajado de la pgina: http://research.ics.tkk.fi/ica/fastica/code/dlcode.shtml.

    2. Para INFOMAX se crearon dos programas en Matlab: -Un programa para mezclas simultneas utilizando el algoritmo propuesto en la Tabla 2.4. -Un programa para mezclas convolutivas implementando el algoritmo propuesto por Torkkola descrito en la seccin 2.3.2.

    Para realizar el estudio utilizaremos dos tipos de mezclas: simultaneas y convolutivas. Es necesario realizar esta divisin por las siguientes razones: -FASTICA no tiene una extensin para enfrentar el problema de mezclado convolutivo, por lo cual no puede ser utilizado para este tipo de mezclas. -Los ndices de evaluacin, difieren para el caso simultneo y el convolutivo, respectivamente.

    3.2 INDICES DE EVALUACION

    Para evaluar los resultados de cada algoritmo se utilizaran los siguientes ndices de evaluacin:

    1. La kurtosis. La kurtosis nos indica el grado de agudeza del pico de una distribucin de probabilidad. Si su valor aumenta, esto es indicativo de aumento en esta agudeza. Este valor nos sirve como indicativo del grado de gaussianidad de una seal. Cuando el valor de la kurtosis es cero, la seal es gaussiana; si el valor es positivo, la seal es supergassiana; y si la Kurtosis es negativa, la seal es subgaussiana. La

  • 36

    kurtosis tiene valores desde -2 hasta el infinito positivo. En Figura 3.1 podemos ver una comparacin grafica de las funciones de distribucin de probabilidad para las seales gaussianas, supergaussianas y subgaussianas. Las seales acsticas son normalmente supergaussianas; las seales como el ruido uniforme, sinodales puras o triangulares son subgaussianas.

    Figura 3.1. Modelos de densidad de para densidades Supergaussianas, gaussianas y subgaussianas. La funcin supergaussiana tiene un pico muy agudo, mientras que la subgaussiana tiende hacer ms llano. La gaussiana es un

    punto medio entre estas dos.

    Para las pruebas calcularemos el valor de kurtosis de las seales fuentes, las mezclas y las estimaciones. Si el algoritmo separa bien, la kurtosis de la estimacin debe ser igual a la kurtosis de la seal original, ya que el nico cambio realizado por el algoritmo, ser sobre la varianza y la media. Como la kurtosis utilizada esta normalizada, es invariable ante ente el cambio de estas caractersticas.

    2. ndice de separacin (IS). Otro parmetro para evaluar el desempeo de los algoritmos es el ndice de calidad de separacin propuesto por Amari[41]:

    1 1 1 1( 1) ( 1)

    max max

    N N N Nij ji

    i j j ik ik k kj

    p pIP

    p p= = = == + (3.1)

    Donde ijp son los elementos de la matriz =P WA . W y A son las matrices de

    pesos estimados y los coeficientes de mezclado, respectivamente. Este ndice es cero cuando se logra una separacin perfecta. Cuando las fuentes son separadas, P es la permutacin de una matriz identidad escalada. Por ejemplo:

  • 37

    Si tenemos la matriz de mezclado 1 0.5

    0.6 0.5

    =

    A y la matriz de pesos estimados

    0.57 0.950.06 0.06

    =

    W entonces, la matriz de permutacin ser

    0.00 0.190.02 0.00

    =

    P

    Y el ndice de separacin (IS) es = 0.0912. Tomaremos, como valores que indique una separacin, los que tengan un IS menor a 0.1. Este ndice solo se puede utilizar cuando tenemos la matriz de mezclado A . En los casos de mezclas reales no es posible utilizar, ya que esta matriz es desconocida.

    3. Coeficiente de correlacin de Pearson. Utilizaremos este coeficiente para comparar las formas de onda de las seales fuentes y las seales estimadas. Este coeficiente varia entre -1 y -1. Cuando es 1 las formas de onda son idnticas; cuando es cero, las formas de onda no se parecen en nada y cuando es -1, la formas de ondas son iguales, pero invertidas. Un valor mayor de 0.85 nos indica que las seales evaluadas son bastantes similares. Este ser el nico ndice utilizado para las pruebas en mezclas convolutivas.

    Adems de los ndices descritos, consideraremos el nmero de iteraciones utilizado por cada uno de los algoritmos. Un punto importante a considerar en el funcionamiento de los algoritmos es el parmetro de convergencia, el cual detiene la operacin cuando se ha llegado a un cambio mnimo en los pesos. En todas las pruebas utilizaremos 0.0001 como valor de parada.

    3.2 SEPARACION DE MEZCLAS SIMULTNEAS

    En esta seccin realizaremos pruebas utilizando mezclas creadas de manera sinttica a partir de fuentes acsticas. En la Figura 3.2 mostramos ejemplos de seales que usaremos en las pruebas, odas son seales de audio. Adems de las seales, colocamos su distribucin y el valor de kurtosis. Las seales en las graficas a), b) corresponden a dos sonidos de alarmas diferentes y sus distribuciones son supergausianas (kurtosis positiva), c) es la seal de sonido del despegue de una nave espacial, es subgaussiana con kurtosis negativa y d) es la msica de la serie de dibujos Looney Tunes, seal supergaussianas con kurtosis positiva.

  • 38

    Figura 3.2. Seales utilizadas en las pruebas junto con sus densidades. Se muestran los valores de kurtosis de cada seal. Las seales y las distribuciones van en el siguiente orden: a) con e), b) con f), c con g) y d) con h).

    3.2 EVALUACION DEL ALGORITMO FASTICA

    En esta seccin se realizaran pruebas para evaluar parmetros operativos del algoritmo FASTICA. Los factores que se va a evaluar son la influencia del tipo de funcin de aproximacin de Negentropa, el nmero de mezclas como entrada al algoritmo y la influencia del ruido.

    3.3.2.1 INFLUENCIA DE LA FUNCION DE APROXIMACION DE LA NEGENTROPIA

    En esta prueba evaluamos el desempeo de FASTICA con respecto a la funcin escogida para aproximar la Negentropa. Recordando la Tabla 2.2, podemos ver que tenemos tres funciones a escoger. Para identificarlas mejor a G1 le llamaremos tanh; a G2, gauss y a G3, kurt.

  • 39

    Tabla 3.1. Funciones para aproximar la Negentropa. G

    g 'g

    tanh log cosh u tanh( )u (1 tanh( ))u

    gauss 2exp( / 2)u

    2exp( / 2)u u

    2 2(1 )exp( / 2)u u

    kurt

    4u

    3u

    2u

    Para esta prueba se utilizaran dos seales de audio, en concreto las seales a) y b) dela figura 3.2, constituidas por 50k muestras y que han sido muestreadas a 22kHz. Como hemos mencionado antes, estas seales son supergaussianas. Estas seales sern mezcladas por una matriz de mezclado A para crear las mezclas. Estas mezclas son las que utilizaremos como entrada a FASTICA. La matriz de mezclado se crea a partir de la situacin descrita en la Figura 3.3 donde podemos observar un esquema que describe la posicin de las fuentes y los sensores (micrfonos). Para obtener los coeficientes de mezclado de la matriz A , consideramos que la amplitud de cada seal generada por las fuentes disminuye inversamente proporcional al cuadrado de la distancia. Se asume que no hay obstculos entre las fuentes y los sensores, ni paredes cercanas. De esta forma, pueden despreciarse el efecto de reflexiones y reverberaciones, por lo cual es posible considerar que el mezclado es simultneo.

    Figura 3.3. Esquema para dos fuentes. Todas las medidas estn en metros.

    Bajo esta situacin, la matriz de mezclado A es igual a:

  • 40

    1 0.50.308 0.444

    =

    A2

    Para generar las mezclas se realiza la siguiente operacin,

    =X AS (3.2)

    Donde 12

    =

    xX

    x , 1x y 2x son las seales obtenidas en los sensores (mezclas) y

    1

    2

    =

    sS

    s, 1s y 2s son las fuentes de audio.

    Estas mezclas son presentadas a FASTICA como un slo bloque de 50k muestras por cada seal. En la Tabla 3.2 se presentan los resultados para cada tipo de funcin de aproximacin de Negentropa. Se puede observar que los valores de kurtosis de las mezclas disminuyen con respecto a las fuentes. Los valores de kurtosis de las estimaciones son iguales a las fuentes y el IS para cada funcin es muy similar y menor de 0.1, lo que indica que se ha realizado la separacin. El valor IS de la funcin kurt es el mas bajo, sin embargo es muy similar a los ofrecidos por las otras funciones. El nmero de iteraciones utilizado para cada funcin es tambin, muy similar.

  • 41

    Tabla 3.2. Influencia de la funcin de Negentropa escogida. Cuando se indica el valor de la kurtosis, se sigue este orden: S1, S2. Para el valor de kurtosis de las mezclas: X1 y X2. Para indicar el valor de kurtosis de las

    estimaciones: estimacin 1 y estimacin 2. Se indica el valor del ndice de separacin (IS) para cada tipo de funcin y el nmero de iteraciones utilizado.

    FUNCION Kurtosis fuentes

    Kurtosis Mezcla

    Kurtosis Estimaciones

    IS # de

    iteraciones

    tanh

    3.0448

    1.0081

    2.323

    0.765

    1.0082

    3.0438 0.0361 10

    gauss 1.0082

    3.0438 0.0366 12

    kurt 1.0082 3.0438

    0.0346 10

    En la Figura 3.4 se muestran las seales fuentes, las mezclas y las estimaciones por FASTICA. Podemos observar los resultados de FASTICA para cada funcin de aproximacin. Las formas de ondas de las estimaciones son muy similares a las fuentes originales, diferencindose en la escala. Las estimaciones son aproximadamente 60 veces menor que las fuentes originales y en el caso de la funcin kurt estn invertidas con respecto a ellas.

    En la Tabla 3.3 se muestran los valores de correlacin entra las seales fuentes y las estimaciones, para cada tipo de funcin de Negentropa. Estos valores indica que las formas de onda de las seales estimadas son casi idnticas a las formas de ondas de las seales fuentes.

    De todos estos resultados podemos concluir que la funcin utilizada para aproximar la Negentropa no afecta en gran medida los resultados de FASTICA.

  • 42

    Figura 3.4. En las dos primeras filas se muestran las fuentes de audio y las respectivas mezclas. Las siguientes graficas son las estimaciones por FASTICA. Como podemos observar el algoritmo las ha cambiado de lugar, sin embargo son similares a las fuentes. Las estimaciones resultantes de utilizar la funcin kurt estn invertidas con

    respecto a las fuentes.

    Tabla 3.3.Correlacion entre las seales fuentes y las estimaciones.

    Funcin Seales a comparar Correlacin entre cada

    fuente y estimacin

    tanh S1 vs Estimacin 2 1

    S2 vs Estimacin 1 0.9999

    gauss S1 vs Estimacin 2 1

    S2 vs Estimacin 1 0.9999

    kurt S1 vs Estimacin 2 -1

    S2 vs Estimacin 1 -0.9999

    3.3.2.2 Separacin de ms de dos seales

    En esta prueba analizaremos la influencia en el nmero de mezclas como entrada al algoritmo FASTICA. Se van a utilizar dos, tres y cuatro seales. Todas son seales de audio (seales supergaussianas) muestreadas a 22kHz y compuestas por 50k muestras. Como funcin de Negentropa se utilizar la funcin tanh de la Tabla 3.1.

  • 43

    Para mezclar las seales, es necesario cambiar la matriz dependiendo del nmero de seales. Esta matriz es creada de manera similar que en la Prueba #1, de esta manera para obtener las mezclas cuando haya tres y cuatro seales fuentes utilizaremos los esquemas mostrados en la Figura 3.5 y Figura 3.6, respectivamente.

    Figura 3.5. Esquema para tres fuentes. Todas las medidas estn en metros.

    Figura 3.6. Esquema para cuatro fuentes. Todas las medidas estn en metros.

    La matriz A2 para dos seales es la utilizada en la primera prueba y las matrices para tres y cuatro seales son las siguientes, respectivamente:

  • 44

    1 0.5 0.20.307 0.444 0.3070.125 0.2 0.25

    =

    A3

    1 0.5 0.2 0.10.41 0.694 0.41 0.1840.16 0.308 0.444 0.308

    0.077 0.125 0.2 0.25

    =

    A4

    La matriz de mezclado A3 proviene del esquema de la Figura 3.5 y la matriz A4 del esquema de la Figura 3.6. En la Tabla 3.4 se muestran los resultados de FASTICA, donde se observa un aumento en el ndice de separacin con el aumento en el nmero de seales, lo cual indica una disminucin en la calidad de la separacin. Sin embargo, los valores de Kurtosis de las estimaciones son similares a los valores de las fuentes. Adems de esto, el nmero de iteraciones utilizadas por FASTICA aumenta con el aumento del nmero de seales. Esto es debido a que FASTICA estima uno a uno cada componente.

    Tabla 3.4. Influencia en el nmero de seales como entrada FASTICA. Cuando se indica el valor de la kurtosis, se sigue este orden: S1, S2,... Para el valor de kurtosis de las mezclas: X1, X2,.. Para indicar el valor de kurtosis de las

    estimaciones: estimacin 1, estimacin 2,... Se indica el valor del ndice de separacin (IS) y el nmero de iteraciones utilizado.

    Numero de seales

    Kurtosis fuentes

    Kurtosis Mezcla

    Kurtosis Estimaciones

    IS # de

    iteraciones

    2 3.0448 2.323 1.0082

    0.0361 10 1.0081 0.765 3.0438

    3

    3.0448 2.2259 3.0448

    0.3021 14 1.0081 0.451 1.0081

    0.2347 0.2232 0.2347

    4

    3.0448 2.2627 3.0449

    0.4891 23 1.0081 0.4844 0.2381

    -0.1798 0.0916 1.0024

    0.2347 0.1111 -0.1798

    En la Figura 3.7 se muestran las seales fuentes, las mezclas y las estimaciones de FASTICA para cuatro seales fuentes. En la graficas de las estimaciones es posible ver una separacin, a pesar que el IS es superior a 0.1. En la Tabla 3.5 puede ser

  • 45

    comprobado esto. Aqu se muestran los coeficientes de correlacin entre cada una de las estimaciones y las fuentes. En todos los casos, los valores de correlacin se aproximan a la unidad, indicando una forma de onda de las estimaciones muy similares a las formas de ondas de las fuentes. De estos resultados, podemos concluir que al aumentar la cantidad de seales como entrada al algoritmo FASTICA, la calidad de la separacin desmejora.

    Figura 3.7. a) Las cuatro seales fuentes.S1, S2 y S4 son seales supergaussianas y S3 es una seal subgaussiana. b) Seales despus del mezclado. c) Resultados de FASTICA. Las tres primeras estimaciones estn invertidas con

    respecto a las fuentes.

  • 46

    Tabla 3.5. Correlacin entre las seales fuentes y las estimaciones.

    Numero de seales Seales a comparar Correlacin entre cada

    fuente y estimacin

    2 S1 vs Estimacin 2 1

    S2 vs Estimacin 1 0.9999

    3

    S1 vs Estimacin 1 1

    S2 vs Estimacin 2 1

    S3 vs Estimacin 3 -0.999

    4

    S1 vs Estimacin 1 -1

    S1 vs Estimacin 3 -0.9977

    S3 vs Estimacin 4 -0.9993

    S4 vs Estimacin 2 0.9969

    3.3.2.3 INFLUENCIA DEL RUIDO

    En esta seccin exploraremos la operacin de FASTICA cuando las mezclas estn distorsionadas por alguna seal de ruido proveniente del entorno. En este caso exploraremos dos tipos de ruido: Gaussiano y el uniforme. El ruido uniforme tiene una distribucin de probabilidad subgaussiana. Todas las seales estn muestreadas a 22kHz y compuestas de 50k muestras. Las dos seales de ruido utilizadas en esta prueba son generadas utilizando un generador de ruido aleatorio. Utilizaremos el esquema Figura 3.5 para colocar las seales fuentes espacialmente por lo cual utilizamos la matriz de mezclado:

    1 0.5 0.20.307 0.444 0.3070.125 0.2 0.25

    =

    A3

    La seal de ruido siempre ser S1.

    Influencia del ruido gaussiano.

  • 47

    En este caso tenemos una seal de ruido gaussiano y dos seales de audio. La seal de ruido tiene una amplitud que dobla a la amplitud de las seales de audio. En la Figura 3.8 podemos observar las seales fuentes, las mezclas y las seales de audio.

    Figura 3.8. a) Fuentes: Ruido gaussiano y dos seales de audio. La seal de ruido tiene una media de cero, a diferencias que las de audio, las cuales tienen un componente DC haciendo que su media no sea cero. b) Se muestran las mezclas, en las cuales a penas se logra ver las seales de audio. c) Resultados de FASTICA. A pesar del ruido se

    ha podido separar la mezcla en sus componentes originales, aunque con una amplitud diferente.

    Se puede observar que FASTICA ha logrado separar las mezclas en sus componentes originales con un IS menor a 0.1. Tambin se han recuperado los valores de kurtosis de las seales de audio, no as el valor de la kurtosis de la seal gaussiana. Realmente FASTICA no ha separado la seal gaussiana de las otras, sino que ha dejado esta seal como un residuo de las otras seales. Como puede observarse en la Figura 3.8 la seal gaussiana aparece como la estimacin 3, la ltima encontrada por el algoritmo. Debido a que el generador de ruido gaussiano de Matlab no es perfecto, esta seal no es exactamente gaussiana, por lo cual FASTICA todava, puede operar sobre ella. Si esta seal fuera verdaderamente gaussiana, el preprocesado la hubiera descartado como seal no gaussiana y FASTICA slo hubiera procesado las dos seales de audio. Esta prueba se realiz varias veces para comprobar esto, y la seal de ruido gaussiano siempre fue estimada como ltimo componente. En la Tabla 3.7 se muestran los ndices de correlacin los cuales indican una similitud en las formas de ondas de las fuentes y las estimaciones.

  • 48

    Tabla 3.6. ndices de evaluacin para la prueba de la influencia del ruido gaussiano. El IS indica una separacin de las mezclas en sus componentes originales.

    Seales Kurtosis

    fuente Seales

    Kurtosis

    Mezcla Seales

    Kurtosis

    estimaciones IS Iteraciones

    S1 -0.0242 X1 0.0353 E1 1.0083

    0.083 17 S2 3.044 X2 0.7162 E2 3.044

    S3 1.008 X3 0.5097 E3 -0.0237

    Tabla 3.7. Correlacin entre las fuentes y las estimaciones.

    Seales a comparar Correlacin entre cada

    fuente y estimacin S1 vs Estimacin 3 -1

    S2 vs Estimacin 2 -0.9999

    S3 vs Estimacin 1 1

    Influencia del ruido uniforme. En este caso tenemos una seal de ruido uniforme ms dos seales de audio. La seal de ruido tiene una amplitud que dobla a la amplitud de las seales de audio.

    Figura 3.9. a) Fuentes: Ruido uniforme y dos seales de audio. La seal de ruido tiene una media de cero, a diferencias que las de audio, las cuales tienen un componente DC haciendo que su media no sea cero. b) Se muestran las mezclas, en las cuales a penas se logra ver las seales de audio. c) Resultados de FASTICA. A pesar del ruido se ha podido separar la mezcla en sus componentes originales, aunque con una amplitud diferente.

  • 49

    Tabla 3.8. ndices de evaluacin para la prueba de la influencia del ruido uniforme. El IS indica una separacin de las mezclas en sus componentes originales.

    Seales Kurtosis

    fuente Seales

    Kurtosis Mezcla

    Seales Kurtosis

    estimaciones IS Iteraciones

    S1 -1.1953 X1 -1.0921 E1 -1.1953 0.0597 17 S2 3.044 X2 -0.4294 E2 1.0088

    S3 1.008 X3 -0.2337 E3 3.0441

    En la Figura 3.9 se muestran las seales fuentes, las mezclas y las seales de audio y en la Tabla 3.9 los ndices de evaluacin. El IS es menor a 0.1 lo que indica una separacin. Los valores de Kurtosis son iguales entre las estimaciones y las fuentes. En este caso FASTICA coloca la seal de ruido uniforme en cualquier canal, a diferencia que el ruido gaussiano. En la Figura 3.9 se muestra el resultado cuando aparece en el primer canal, pero en otras simulaciones apareci en los otros. En la Tabla 3.9 se muestran los valores de correlacin, que indican una forma de onda de las estimaciones similar a la forma de onda de las fuentes.

  • 50

    Tabla 3.9. Correlacin entre las fuentes y las estimaciones.

    Seales a comparar Correlacin entre cada

    fuente y estimacin S1 vs Estimacin 1 1

    S2 vs Estimacin 3 -0.9999

    S3 vs Estimacin 2 -1

    3.3 EVALUACION DEL ALGORITMO INFOMAX

    En esta seccin se realizaran pruebas para evaluar la operacin del algoritmo INFOMAX. En las pruebas observaremos la influencia de la tasa de aprendizaje, el tipo de funcin de activacin y el nmero de mezclas como entrada al algoritmo. Se utilizaran como matrices de mezclado las mismas utilizadas en las pruebas de FASTICA.

    3.3.3.1 INFLUENCIA DE LA TASA DE APRENDIZAJE

    En esta prueba analizaremos la influencia de diferentes tasas de aprendizajes en el funcionamiento del algoritmo INFOMAX. Todas las tasas se mantienen fijas a medida que se realizan los clculos por el algoritmo. Se utilizan tasas desde 0.01, ya que para valores mayores la operacin de INFOMAX se vuelve inestable. Utilizamos dos seales de audio supergaussianas muestreadas a 22kHz y compuestas por 50k muestras. Como funcin de activacin se utiliza la derivada de la funcin de distribucin llamada Tangente hiperblico de la Tabla 2.3:

    ( ) 2 tanh( )i iu u = La cual asume que las distribucin de las seales fuentes a estimar son supergaussianas. Para el mezclado se utiliza la matriz:

    1 0.50.308 0.444

    =

    A2

  • 51

    En la Figura 3.10 se muestran las seales fuentes, las mezclas y los resultados para cada tasa. En cada resultado se puede observar una separacin de las mezclas en los componentes originales, con diferencia en la escala. En la Tabla 3.10 se muestran los valores de kurtosis para cada estimacin, los ndices de separacin y el nmero de iteraciones utilizados por cada tasa.

    Figura 3.10. En las dos primeras filas se muestran las fuentes de audio y las respectivas mezclas. Las siguientes graficas son las estimaciones de INFOMAX para cada tasa de aprendizaje. En todos los caso se puede observar una

    separacin de las mezclas en sus componentes originales.

    A medida que se utiliza una tasa ms pequea los IS aumentan, lo que supone que empeora la estimacin de las fuentes. Tambin, hay un aumento de la cantidad de iteraciones para converger al disminuir la tasa de aprendizaje. Una explicacin a esto, es que al tener una tasa ms pequea, la bsqueda de los mximos locales de la entropa en la mezcla demora ms. La tasa es como el tamao de los pasos sobre una superficie, si los haces ms pequeos demoras ms para llegar a un punto especfico. Esto tambin trae consigo, que la bsqueda caiga en puntos crticos espurios haciendo que la direccin hacia los verdaderos puntos sea ms lenta. A pesar de esto, como lo indica la Tabla 3.11 los ndices de correlacin muestran una similitud en las formas de onda de las estimaciones y las fuentes.

  • 52

    Tabla 3.10. ndices de evaluacin para los resultados de INFOMAX con respecto al cambio de la tasa de aprendizaje. A medida que la tasa disminuye, los valores IS aumentan al igual que las iteraciones necesarias para

    converger. Los valores de kurtosis son similares entre las estimaciones y las fuentes.

    Tasa Kurtosis

    fuentes

    Kurtosis

    Mezcla

    Kurtosis

    Estimaciones IS

    # de iteraciones

    0.01

    3.0448

    1.0081

    2.323

    0.765

    3.0449 1.0081

    0.0059 11

    0.001 1.008

    3.0449 0.006 39

    0.0001 1.0079 3.0449

    0.0088 210

    Tabla 3.11. Valores de correlacin. Todos los valores son iguales a la unidad, indicando un parecido exacto entre la forma de onda de las fuentes y las estimaciones.

    Tasa Seales a comparar Correlacin entre cada

    fuente y estimacin

    0.01 S1 vs Estimacin 1 -1

    S2 vs Estimacin 2 -1

    0.001 S1 vs Estimacin 2 -1

    S2 vs Estimacin 1 1

    0.0001 S1 vs Estimacin 2 -1

    S2 vs Estimacin 1 1

  • 53

    3.3.3.2 Separacin de ms de dos seales

    En esta prueba analizaremos la influencia en el nmero de mezclas como entrada al algoritmo INFOMAX. Se van a utilizar dos, tres y cuatro seales. Todas son seales de audio (seales supergaussianas) muestreadas a 22kHz y compuestas por 50k muestras. Se utilizan los mismos esquemas utilizados en las pruebas de FASTICA para la posicin de las fuentes y las mismas matrices de mezclado. Como funcin de activacin se utilizar -2tanh. Para mezclar las seales, es necesario cambiar la matriz dependiendo del nmero de seales. Se utilizan las mismas matrices de mezclado de la seccin 3.3.2.2. En la Figura 3.11 se muestran las seales fuentes, las mezclas y los resultados para el caso de cuatro seales de audio. Se puede observar una separacin de las mezclas en sus componentes originales a pesar que el valor de IS es mayor a 0.1. En la Tabla 3.12 se muestran los ndices de evaluacin para todos los casos. Cuando aumenta el nmero de seales el IS aumenta, disminuyendo la calidad de la separacin. Es importante notar, que cuando se aumenta de tres a cuatro seales, la cantidad de iteraciones requeridas se mantiene igual. Es prueba fue repetida en varias ocasiones dando siempre los mismos valores.

    Figura 3.11. a) Las cuatro seales fuentes. b) Seales despus del mezclado. c) Resultados de INFOMAX.

  • 54

    Tabla 3.12. Influencia en el nmero de seales como entrada a INFOMAX. Cuando se indica el valor de la kurtosis, se sigue este orden: S1, S2, Para el valor de kurtosis de las mezclas: X1, X2,.. Para indicar el valor de kurtosis de

    las estimaciones: estimacin 1, estimacin 2,... Se indica el valor del ndice de separacin (IS) y el nmero de iteraciones utilizado.

    Numero de seales

    Kurtosis

    fuentes

    Kurtosis

    Mezcla

    Kurtosis

    Estimaciones IS

    # de iteraciones

    2 3.0448 2.323 3.0449

    0.0059 11 1.0081 0.765 1.81

    3

    3.0448 2.2259 3.0449

    0.0664 58 1.0081 0.451 1.0084

    0.2361 0.2232 0.2361

    4

    3.0448 2.2114 0.2362

    0.1376 58 1.0081 0.3966 1.0086

    0.2361 0.194 2.9384

    2.936 0.4047 3.0449

    En la Tabla 3.13 se muestras los ndices de correlacin. Para cuatro seales los ndices tienen una disminucin del 0.09%, valor que indica desmejoramiento en la separacin.

    Tabla 3.13. ndices de correlacin para los resultados de INFOMAX. Se compara cada fuente con la estimacin respectiva.

    Numero de seales Seales a comparar Correlacin entre cada

    fuente y estimacin

    2 S1 vs Estimacin 1 -1

    S2 vs Estimacin 2 -1

    3

    S1 vs Estimacin 1 1

    S2 vs Estimacin 2 -1

    S3 vs Estimacin 3 -0.9998

    4

    S1 vs Estimacin 4 -1

    S2 vs Estimacin 2 1

    S3 vs Estimacin 1 -0.9999

    S4 vs Estimacin 3 0.9999

  • 55

    3.3.3.3 FUNCION DE ACTIVACION

    Ahora analizaremos el papel de la funcin de activacin en la operacin del algoritmo INFOMAX. Como hemos mencionado en el estado del arte, la funcin de activacin es derivada una funcin de densidad de probabilidad. De esta manera, el algoritmo INFOMAX slo puede operar sobre seales que tengan la misma funcin de densidad de probabilidad. Para el caso de seales acsticas, las cuales son supergaussianas, el algoritmo necesita una funcin de activacin con caractersticas estadsticas supergaussiana. En la Tabla 2.3 de la seccin 2.2.2 mostramos varias funciones de probabilidad y sus correspondientes funciones de activacin para seales supergaussianas. En esta prueba utilizaremos tres funciones de activacin y por simplicidad las llamaremos de la siguiente manera: Sigmoidal, Tanh y Sign. La funcin de activacin Sign proviene de la funcin de distribucin laplaciana. Todas pueden operar con seales supergaussianas. La diferencia entre ellas las podemos observar en la Figura 3.12.

    Para la siguiente prueba vamos a utilizar tres seales de audio muestreadas a 22kHz y constituidas por 50k muestras. Se utilizar una tasa de aprendizaje igual a 0.01 y pesos iniciales iguales para cada funcin. Para dar una visin de la funcin de densidad de probabilidad de las fuentes, mostramos sus distribuciones en la Figura 3.13.

    Figura 3.12. Funciones de densidad de probabilidad de las cuales se derivan las funciones de activacin utilizadas por el algoritmo INFOMAX. Podemos observar que difieren en su forma. Sign es tiene un pico mas agudo que las

    dems.

  • 56

    Figura 3.13. a) Seales fuentes para la prueba. b) Densidades de probabilidad de estas fuentes. Las primeras dos tienen picos muy agudos y la ltima tiende a ser ms plana.

    En la Tabla 3.14 son mostrados los resultados de INFOMAX. En todos los casos la kurtosis de las estimaciones es similar a la kurtosis de las fuentes. El menor valor de IS fue para la funcin Sign, al igual que el nmero de iteraciones utilizado. Observando la forma de la funcin de probabilidad en la Figura 3.12 para Sign, esta parece acomodarse ms a la forma de las densidades de las fuentes originales. Sin embargo, aunque las funciones de probabilidad para Sigmoidal y Tanh no se parezcan tanto, aun as se obtienen una separacin, aunque con una mayor cantidad de iteraciones. En la Tabla 3.15 se muestran los valores de correlacin, los cuales indican una similitud en la forma de onda entre las estimaciones y las fuentes.

  • 57

    Tabla 3.14. Influencia en el nmero de seales como entrada a INFOMAX. Cuando se indica el valor de la kurtosis, se sigue este orden: S1, S2, Para el valor de kurtosis de las mezclas: X1, X2,.. Para indicar el valor de kurtosis de

    las estimaciones: estimacin 1, estimacin 2,... Se indica el valor del ndice de separacin (IS) y el nmero de iteraciones utilizado.

    Funcin Kurtosis

    de la

    fuente

    Kurtosis de la

    mezcla

    Kurtosis de las

    estimaciones

    IS Iteraciones

    Sigmoidal

    3.0448

    1.0081 0.2347

    2.2259 0.451

    0.2232

    3.0449

    0.0624 59 1.0084

    0.236

    Tanh

    3.0448

    0.05 31 1.0083

    0.2358

    Sign

    3.0448

    0.0464 12 0.2354

    1.0081

    Tabla 3.15. ndices de correlacin entra las estimaciones y las fuentes. Funcin Seales Correlacin

    Sigmoidal

    S1 vs Estimacin 1 1

    S2 vs Estimacin 2 -1

    S3 vs Estimacin 3 -0.9999

    Tanh

    S1 vs Estimacin 1 1

    S2 vs Estimacin 2 -1

    S3 vs Estimacin 3 -0.9999

    Sign

    S1 vs Estimacin 1 1

    S2 vs Estimacin 2 -1

    S3 vs Estimacin 3 1

  • 58

    3.3 MEZCLAS CONVOLUTIVAS

    3.4.1 EVALUACION DEL ALGORITMO TORKKOLA

    Se realizar una prueba utilizando el algoritmo propuesto por Torkkola para separar mezclas convolutivas. Como se ha mencionado en la metodologa se ha realizado una implementacin en Matlab de este algoritmo para separar dos mezclas. Se utilizan dos seales acsticas de audio: la primera seal es la palabra Aleluya cantada por un coro, y la segunda es la famosa frase: Goodmorning Vietnam. Estas seales estn compuestas por 30k muestras y tiene una frecuencia de muestreo de 12kHz. Para realizar la mezcla se utilizan los siguientes filtros, siguiendo el modelo de la ecuacin (2.20):

    1 11 1 12 2

    2 21 1 22 2

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

    X z A z S z A z S zX z A z S z A z S z

    = +

    = +

    Donde los valores de los coeficientes son los siguientes:

    25 4511

    20 28 3612

    10 22 3421

    20 3822

    ( ) 1 0.4 0.2( ) 0.4 0.2 0.1( ) 0.5 0.3 0.1( ) 1 0.3 0.2

    A z z zA z z z zA z z z zA z z z

    = +

    = +

    = +

    = +

    Estos filtros son de mnima fase, por lo cual sus inversas son estables y pueden ser estimadas por el algoritmo Torkkola. Recordando de la seccin 3.4.1 las respuestas ideales de los filtros son las siguientes:

    111 12 12 22

    122 11 21 11

    ( ) 1, ( ) ( ) ( )( ) 1, ( ) ( ) ( )

    W z W z A z A zW z W z A z A z

    = =

    = =

    En la Figura 3.14 mostramos esta respuesta para una longitud del filtro de 50.

  • 59

    Figura 3.14. Respuesta ideal de la estructura propuesta por Torkkola. En este caso mostramos los coeficientes para una longitud de filtro de 50.

    Las fuentes, las mezclas y las estimaciones de las fuentes son mostradas en la Figura 3.15. Como se observa, la estimacin 1 se aproxima a la fuente 1 y la estimacin 2 a la fuente 2, respectivamente. En este caso tienen una amplitud parecida y de mismo signo. Tambin, se puede observar una disminucin notable de la interferencia entre las seales.

    Figura 3.15. Arriba: Las fuentes originales. Centro: Las mezclas. Abajo: Seales como resultado del algoritmo Torkkola.

    En la Figura 3.16 se muestran los pesos obtenidos desde el algoritmo comparando con la respuesta ideal, en la figura 3.14 observamos que los primeros coeficientes de mayor magnitud se corresponde con la respuesta dada por el filtro ideal. Como se explico en la seccin 3.4.1, el algoritmo de Torkkola solo puede estimar una versin filtrada de las fuentes. La estimacin de las fuentes tiene la forma filtrada desde la ecuacin (2.25):

    11 1 1

    22 2 2

    A S UA S U

    =

    =

    Por esta razn, siempre vamos a obtener una versin de la fuente con sus ecos y reverberaciones. Para eliminar esto, se pueden utilizar otros mtodos como

  • 60

    Ecualizacin ciega (Blind ecualization). Es importante anotar, que las fuentes tienen una cantidad de ruido, que reduce la eficacia del algoritmo. A pesar de esto, en las Tabla 3.16 y Tabla 3.17 vemos que la seal estimada esta muy correlacionada con las fuentes originales.

    Figura 3.16. Respuesta del algoritmo Torkkola, despus de realizar la simulacin. Se indican los coeficientes que se corresponden con la respuesta ideal en la figura 3.14. Se puede observar que los primeros coeficientes

    marcados tienen la mayor magnitud para cada respuesta.

    En las tablas se resaltan los valores de correlacin entre seales de diferentes salidas del algoritmo. Se observa como la correlacin tiende a disminuir al pasar el algoritmo, claro indicativo de reduccin de redundancia entre las salidas.

    Tabla 3.16. Comparacin entre las fuentes y las mezclas utilizando correlacin cruzada. Se compara cada mezcla con cada fuente.

    Tipo de comparacin ndice de correlacin Mezcla 1-Fuente 1 0.8010

    Mezcla 2-Fuente 2 0.8551

    Mezcla 1-Fuente 2 0.3545 Mezcla 2-Fuente 1 0.4309

    Tabla 3.17. Comparacin entre las fuentes y las estimaciones realizadas por el algoritmo. Se compara cada estimacin con cada fuente.

    Tipo de comparacin ndice de correlacin Estimacin 1-Fuente 1 0.8698

    Estimacin 2-Fuente 2 0.9184

    Estimacin 1-Fuente 2 0.0573 Estimacin 2-Fuente 1 0.0498

  • 61

    3.4 CONCLUSIONES

    En este captulo hemos realizado un estudio e implementacin de los algoritmos FASTICA e INFOMAX para la separacin de mezclas. Se han evaluado estos algoritmos utilizando la Kurtosis, el ndice de separacin e ndice de correlacin. Adems de esto se han tenido en cuenta la cantidad de iteraciones utilizadas para llegar a un valor de convergencia. El estudio se dividi en dos partes: mezclas simultneas y convolutivas. Para el caso de mezclado simultneo fueron utilizados el paquete FASTICA y una implementacin de INFOMAX realizada en Matlab. El estudio consisti en varias pruebas que evaluaban el rendimiento de los algoritmos bajo ciertas condiciones. Para el caso de FASTICA se estudio la influencia de los tipos de funciones de para aproximar la Negentropa, el nmero de seales y la influencia de dos tipos de ruido: gaussiano e uniforme. Para INFOMAX se analiz su comportamiento frente a diferentes tasas de aprendizajes, el nmero de seales y la funcin de activacin. Tanto en FASTICA como en INFOMAX disminuyen los ndices de calidad en la separacin cuando se incrementa el nmero de seales, sin embargo FASTICA presenta un ndice de separacin mayor en comparacin a INFOMAX. Con respecto a la funcin de aproximacin de la Negentropa, FASTICA no present cambios significativos en su rendimiento, al igual que al someterse a los diferentes tipos de ruido. Con INFOMAX se pudo comprobar la importancia del tipo de funcin de activacin en su operacin. Esto situacin que en principio supone una desventaja, ya que solo puede trabajar con un tipo de seales a la vez, lo hace perfecto para adaptarlo a la extraccin de seales con cierto tipo de caractersticas. Este tipo de discriminacin no lo presenta FASTICA. Adems de trabajar con mezclas simultneas, se utiliz una implementacin de INFOMAX extendido para trabajar con mezclas convolutivas: El algoritmo Torkkola. En este caso se evalu su operacin para separar dos mezclas de audio previamente creadas con unos conjuntos de filtros FIR. La comparacin de las seales estimadas por el algoritmo frente a las fuentes originales dio muy buenos valores de correlacin. Cuando se compar la respuesta ideal de los pesos frente a la respuesta estimada, se

  • 62

    pudo constatar que los coeficientes del filtro ideal aparecen con una magnitud importante en los pesos estimados. Con respecto a la convergencia, en el caso de FASTICA lo hace dos veces ms rpido que INFOMAX y trabaja de forma ms general, pues puede tratar con diferentes tipos de seales. No es necesario asumir un tipo de densidad de probabilidad, sin embargo FASTICA no tiene una versin para trabajar con mezclas convolutivas. En el caso de INFOMAX, es muy dependiente del tipo de fuentes que se desean estimar, pero permite trabajar con mezclado convolutivo. Adems de esto, debido a su estructura puede adaptarse a los cambios de varianza de manera automtica, lo que lo hace altamente adaptativo para entornos no estacionarios.

  • 63

    4. CAPITULO. APLICACIONES DE ICA EN ENTORNOS REALES

    4.1 SEPARACION DE SEALES DE AUDIO

    Las seales utilizadas en este experimento se obtuvieron de una basa de datos creada por Te Won-Lee disponibles en la fecha de redaccin del presente documento en siguiente direccin: http://cnl.salk.edu/~tewon/Blind/blind_audio.html. Esta base de datos fue generada en una habitacin de dimensiones 3m x 4m, colocando dos emisores (personas o bocinas) y dos micrfonos como se muestra en la Figura 4.1. En este documento se describen los resultados obtenidos de las pruebas en dos registros de seales que consisten en:

    1) Una persona contando los nmeros y msica de fondo. 2) Una persona contando los nmeros en ingles y una persona contando los

    numero en espaol.

    Figura 4.1. Dimensiones del cuarto y distancias entre las fuentes y los micrfonos.

    Las seales estn compuestas por 100k mu