Uploaded on

 

More in: Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
458
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
12
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Transmisi´n de informaci´n mediante secuencias ca´ticas y o o o redes neuronales David Arroyo Guarde˜o n ´ Indice ´ Indice 1 1. Introducci´n o 2 2. Estrategias de transmisi´n de secuencias ca´ticas basadas en redes neuronales o o 2 2.1. Teorema de los retrasos de Takens . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.2. Dise˜o de la red neuronal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . n 4 2.2.1. Mapas de Kohonen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2.2. Algoritmo “neural-gas” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.3. Predicci´n de series temporales . . . . . . . . . . . . . . . . . . . . . . . . . o 7 2.3. Estrategias de transmisi´n ca´tica v´ redes neuronales . . . . . . . . . . . . . . . . o o ıa 7 2.4. Simulaciones: resultados y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4.1. Comparaci´n entre los diversos esquemas de codificaci´n-decodificaci´n para o o o un canal de comunicaci´n con ruido . . . . . . . . . . . . . . . . . . . . . . o 9 3. Sistema de comunicaci´n basado en un esquema de m´ ltiples niveles ca´ticos o u o 13 3.1. Elecci´n del conjunto de se˜ales ca´ticas a transmitir . . . . . . . . . . . . . . . . . o n o 14 3.1.1. Algoritmo EM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2. Clasificaci´n de la se˜al recibida: dise˜o de una red neuronal . . . . . . . . . . . . o n n 17 3.2.1. Entrenamiento de las redes artificiales basadas en funciones radiales base (RBF-ANN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.3. Simulaciones: resultados y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.1. Agrupamiento mediante el algoritmo EM . . . . . . . . . . . . . . . . . . . 21 3.3.2. Agrupamiento mediante SOM: comparaci´n con los resultados generados por o el algoritmo EM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.3. Elecci´n de la red artificial RBF adecuada . . . . . . . . . . . . . . . . . . . o 23 3.3.4. Elecci´n de la red neuronal adecuada: comparaci´n entre redes RBF y redes o o SOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Lista de figuras 31 Referencias 32 1
  • 2. 1. Introducci´n o En este documento se presentan diversos m´todos de transmisi´n de informaci´n basados en e o o redes neuronales y sistemas ca´ticos. Una secuencia ca´tica se caracteriza por presentar un com- o o portamiento cuasi aleatorio que, a su vez, se traduce en un espectro de potencia casi plano. De este modo, si se env´ a trav´s del canal de comunicaci´n una secuencia ca´tica, y alguien intercepta tal ıa e o o se˜al, en principio pensar´ que no se ha transmitido informaci´n alguna, es decir, que la secuencia n ıa o que ha capturado no es m´s que ruido. Ahora bien, ¿c´mo enviar informaci´n empleando como a o o “soporte conductor” secuencias ca´ticas? En este trabajo se presentan dos posibilidades: o 1. Alterar la din´mica del sistema ca´tico de modo que esa desviaci´n permita inferir la infor- a o o maci´n que, de forma oculta, ha sido enviada. A este efecto se presentar´n diversos esquemas o a que parten de lo expuesto en [5]. 2. Asignar a cada uno de los niveles l´gicos de un sistema de comunicaci´n una secuencia ca´tica. o o o De forma m´s exacta, si en un sistema de comunicaci´n la informaci´n intercambia resulta a o o de la combinaci´n de M posibles s´ o ımbolos, donde M = 2l (siendo l el n´mero de bits de u informaci´n por s´ o ımbolo), nuestro objetivo ser´ asignar a cada uno de esos s´ a ımbolos una secuencia ca´tica y enviar dicha secuencia a trav´s del canal de comunicaci´n. o e o 2. Estrategias de transmisi´n de secuencias ca´ticas basadas o o en redes neuronales La utilizaci´n de las redes neuronales como mecanismo para decodificar o codificar-decodificar o la informaci´n ca´ticamente enmascarada, se basa en el concepto de reconstrucci´n din´mica de un o o o a cierto mapa ca´tico. Dada una cierta serie temporal, la reconstrucci´n din´mica pretende generar o o a un modelo capaz de captar la din´mica subyacente. La serie temporal no es sino un conjunto de a N muestras de una cierta caracter´ ıstica u observable y(n). La principal motivaci´n para realizar o una reconstrucci´n din´mica es conseguir extraer el sentido f´ o a ısico que la serie temporal posee inherentemente, sin necesidad de conocer en detalle los formulismos matem´ticos que condensan a la din´mica subyacente. Es m´s, en muchas ocasiones dichos sistemas encierran una complejidad a a no caracterizable matem´ticamente. La unica informaci´n disponible es la derivada a partir de las a ´ o diversas muestras de la serie temporal obtenida a partir de un cierto observable del sistema. 2.1. Teorema de los retrasos de Takens Un resultado fundamental en la teor´ de la reconstrucci´n din´mica es el teorema de car´cter ıa o a a geom´trico debido a Takens [1]. Takens consider´ una situaci´n libre de ruido, basada en mapas e o o de retrasos coordenados o modelos predictivos construidos a partir de la serie temporal que re- presentan un cierto observable de un determinado sistema din´mico. Para tener una interpretaci´n a o del teorema de Takens desde el punto de vista de procesamiento de se˜al, se parte de un sistema n din´mico cuya evoluci´n en tiempo discreto se resume en una ecuaci´n diferencial no linear a o o x(n + 1) = F (x(n)), (1) donde x(n) es el vector de estados de d dimensiones del sistema para el instante n, mientras F (•) es una funci´n cuya salida es un vector. Se asume que la tasa de muestreo est´ normalizada a la o a unidad. Llamando {y(n)} a la serie temporal observable a la salida del sistema, podemos expresar la misma como y(n) = g(x(n)) + ν(n), (2) donde g(•) tiene por salida un escalar, mientras que ν(n) es un ruido aditivo que modela las impre- cisiones presentes en el observable y(n). Las ecuaciones (1) y (2) caracterizan el comportamiento del espacio de estados del sistema din´mico. De acuerdo con el teorema de Takens, la estructura a geom´trica del sistema puede ser derivada a partir del observable y(n) con ν(n) = 0 haciendo uso e de un espacio D-dimensional generado a partir del vector T y R = [y(n), y(n − τ ), . . . , y(n − (D − 1)τ )] , (3) donde τ es un entero positivo denominado retraso embebido normalizado. Pues bien, Takens de- mostr´ que dado el observable y(n) para n variable, la reconstrucci´n din´mica del sistema es o o a posible haciendo uso de un vector y R (n) de dimensi´n D tal que D ≥ 2d + 1, donde d es la o 2
  • 3. dimensi´n del espacio de estados del sistema original. Tal condici´n constituye una condici´n su- o o o ficiente pero no necesaria para la reconstrucci´n din´mica. El procedimiento mediante el cual se o a encuentra un valor adecuado para D recibe el nombre de embebido, mientras que el m´ ınimo entero que permite alcanzar la reconstrucci´n din´mica se designa como dimensi´n de embebido o DE , o a o tanto en cuanto las caracter´ısticas del sistema van a ser embebidas o empotradas en un espacio de dimensi´n DE . o El teorema de los retrasos de Takens arrastra una implicaci´n de gran valor: la evoluci´n de o o los puntos y R (n) → y R (n + 1) en el espacio de reconstrucci´n sigue la desconocida evoluci´n del o o sistema original xn → x(n + 1). Es decir, muchas propiedades importantes del espacio de estados no observable xn pueden ser reproducidas sin ambig¨edad alguna en el espacio definido por y R (n). u Sin embargo, para que este importante y satisfactorio resultado sea alcanzado es necesario estimar adecuadamente DE , as´ como τ . ı Desafortunadamente, el teorema de los retrasos de Takens no dice nada respecto al par´metro a τ . Es m´s, permite la utilizaci´n de cualquier valor del mismo siempre y cuando el n´mero de a o u muestras de la serie temporal sea suficientemente grande. En la pr´ctica, sin embargo, el tama˜o a n del conjunto de datos observables es finito y de longitud igual a N . Una buena elecci´n del retraso o τ es aquella que hace que y(n) sea independiente respecto a y(n−τ ), permitiendo usar tales valores como coordenadas del espacio de reconstrucci´n. Esta circunstancia se ve satisfecha haciendo uso o del valor de τ para el cual la informaci´n mutua entre y(n) e y(n − τ ) alcanza su m´ o ınimo [2]. La condici´n suficiente D ≥ 2d + 1 permite deshacer las intersecciones de una cierta ´rbita del o o atractor consigo misma, proyectando tal ´rbita sobre un espacio de menor dimensi´n. La dimensi´n o o o de embebido DE puede ser menor que 2d + 1, siendo recomendable estimar su valor usando los datos observables. Un buen m´todo para la estimaci´n de dicha dimensi´n es el de los falsos vecinos e o o m´s pr´ximos, introducido por [3]. Este m´todo va aumentando en uno la dimensi´n de D hasta a o e o un cierto valor m´ximo Dmax decidido por el usuario. Para cada valor de D, se construyen, a partir a del conjunto de N valores de la serie temporal disponibles, vectores de dimensi´n D. Suponiendo o un cierto valor para el retraso τ , el n´mero de vectores es V = N/τ (es decir, el primer entero u menor que N/τ ) para cada valor de D. Para D = 1, los V vectores de dimensi´n 1 son: o 1 v1 = y(1) 1 v2 = y(1 + τ ) 1 v3 = y(1 + 2τ ) . . . 1 vV = y(1 + (V + 1)τ ). Para D = 2 los V vectores ser´n: a 2 T v1 = [y(1) y(2)] 2 T v2 = [y(1 + τ ) y(1 + 2τ )] . . . 2 vV = [y(1 + (V + 1)τ ) y(2 + (V + 1)τ )] . Para D gen´rico: e D T v1 = [y(1) y(2) . . . y(D)] D T v2 = [y(1 + τ ) y(2 + τ ) . . . y(D + τ )] . . . D T vV = [y(1 + (V − 1)τ y(2 + (V − 1)τ ) . . . y(D + (V − 1)τ )] , deduci´ndose que debe cumplirse Dmax < τ y (V − 1)τ + Dmax < N . Una vez construido el e conjunto de V vectores asociados a un determinado valor de D, para cada uno de esos vectores se determina la distancia m´ ınima patente entre ´l y cada uno de los restantes vectores. A continuaci´n e o se incrementa en uno el valor de D volvi´ndose a repetir el proceso anterior. Para cada vector, e se calcula diferencia entre la m´ınima distancia actual y la previamente calculada para dimensi´n o D − 1. Si el valor absoluto del cociente de esa diferencia partido por la antigua distancia m´ ınima es mayor que un cierto l´ ımite superior (0.08, por ejemplo) se dice que dicho vector presenta un falso vecino pr´ximo (mirar figura 1). Para cada valor de D se contabiliza el n´mero de falsos vecinos o u m´s pr´ximos, de modo que el valor de DE viene dado por aquel valor de D que lleva asociado un a o menor n´mero de falsos vecinos m´s pr´ximos. u a o 3
  • 4. 10 8 6 x3 4 2 0 4 2 10 0 5@ I −2 0 @ −4 −5 @ x2 −6 x1 @ Vecinos para dimensi´n 2, o falsos vecinos para dimensi´n 3 o Figura 1: Falsos vecinos pr´ximos o 2.2. Dise˜ o de la red neuronal n En esta secci´n se presentan dos esquemas de codificaci´n-decodificaci´n basados en la predic- o o o ci´n de series temporales. Concretamente, se emplean los mapas o redes auto-sintonizables -SOM- o basados en el algoritmo “neural-gas”, tanto en cuanto la solvencia de los mismos para tal tipo de aplicaci´n qued´ demostrada en [4]. En los siguientes puntos se presentar´n los fundamentos te´ri- o o a o cos de las mapas autosintonizables y del algoritmo “neural-gas” para, posteriormente, desarrollar un m´todo de predicci´n de series temporales sustentado en tal tipo de redes y en dicho algoritmo. e o 2.2.1. Mapas de Kohonen Los mapas de Kohonen o mapas auto-sintonizables (en ingl´s self-organizing maps -SOM-) e constituyen un tipo especial de redes neuronales artificiales. Estas redes est´n basadas en un a aprendizaje competitivo: las salidas de las distintas neuronas de la red compiten entre ellas para ser activadas o disparadas, de modo que para una cierta entrada, la salida de la red viene dada por la salida de una sola neurona o de una neurona por grupo. En un mapa auto-sintonizable las neuronas se encuentran localizadas en los nodos de una red que suele ser unidimensional o bidimensional. Las neuronas se ajustan selectivamente a diversos patrones o clases de entradas a lo largo del proceso competitivo de aprendizaje. En consecuencia, los mapas auto-ajustables se caracterizan por la creaci´n de un mapa topogr´fico de los patrones de entrada, en el cual la localizaci´n de las o a o neuronas en la red viene determinada por las caracter´ ısticas estad´ısticas asociadas a las distintas clases de entradas. En la creaci´n del tipo de redes que nos ocupan podemos distinguir 4 fases: o Fase de inicializaci´n o Fase competitiva Fase de cooperaci´n o Fase de adaptaci´n o Fase de inicializaci´n.o En esta fase se inicializan los pesos asociados a las distintas neuronas. Esta inicializaci´n se va a o realizar de forma aleatoria, de modo que cada uno de los pesos ser´ un vector de dimensi´n igual a o a la dimensi´n del espacio de entradas, siendo cada una de sus componentes un n´mero obtenido o u a partir de una funci´n de distribuci´n uniforme entre −1 y 1. o o Fase competitiva. Para cada una de las entradas, cada neurona va a computar una cierta funci´n de discriminaci´n, o o constituyendo esta funci´n la base sobre la cual se lleva a cabo la competici´n, ya que la neurona o o ganadora ser´ aquella que, para una determinada entrada, hace que el valor obtenido a trav´s de a e la funci´n de discriminaci´n sea m´ximo (con respecto al que determinan el resto de neuronas). Si o o a 4
  • 5. denotamos como m a la dimensi´n del espacio de entradas, una entrada concreta es un vector tal o que T x = [x1 x2 . . . xm ] , (4) mientras que los pesos asociados a la neurona j son wj = [wj1 wj2 . . . wjm ] , j = 1, 2, . . . , l , (5) donde l es el n´mero de neuronas en la red. Para encontrar el wj m´s cercano al vector de entrada u a T x, se eval´a el producto wj x para j = 1, 2, ..., l y nos quedamos con el m´ximo. Ahora bien, u a este criterio de emparejamiento entrada-neurona es equivalente a seleccionar aquella neurona cuya distancia euclidiana es m´ ınima respecto al vector de entrada. Si usamos el ´ ındice i(x) para identificar a la neurona m´s parecida al vector de entrada x, dicho ´ a ındice puede ser expresado como i(x) = arg min x − wj , j = 1, 2, . . . , l . (6) j Aquella neurona que satisface (6) se dice que es la ganadora para el vector de entrada x, con lo que al proceder de este modo se lleva a cabo una aplicaci´n de un espacio continuo (espacio de o entradas) en un espacio discreto (el de las neuronas). Fase de cooperaci´n. o La neurona que result´ ganadora en la fase anterior es el centro de una cierta vecindad topol´gica o o de neuronas cooperantes. Partiendo de un modelo neuro-biol´gico, aquella vecindad va a ser tal o que existe una interacci´n lateral entre un conjunto de neuronas excitadas. Con vistas a ser m´s o a precisos, se define hj,i como la vecindad topol´gica con centro en la neurona i , mientras que el o sub´ındice j se refiere a cada una de las restantes neuronas que constituyen la vecindad. La distancia lateral entre la neurona ganadora y la neurona excitada j es di,j . La funci´n de vecindad hj,i se o asume funci´n unimodal de la distancia lateral di,j y se caracteriza por o Ser una funci´n sim´trica respecto a su valor m´ximo dado para di,j = 0, el cual corresponde o e a a la neurona ganadora. Su amplitud decrece mon´tonamente a medida que aumenta di,j , de modo que tiendo a cero o cuando di,j → ∞, siendo esta una condici´n necesaria para la convergencia. o Se considerar´ que la funci´n de vecindad viene dada por una funci´n gaussiana a o o d2 i,j(x) − 2(σ(n))2 hi,j(x) = e , (7) donde 2 d2 i,j(x) = w j(x) − w i (8) y n σ(n) = σ0 e− τ1 n = 0, 1, 2 . . . (9) Es decir, la anchura de la vecindad va a ir disminuyendo con el tiempo desde un cierto valor inicial σ0 y con un ritmo marcado por la constante de tiempo τ1 . Fase de adaptaci´n.o En esta fase se produce la adaptaci´n de los pesos de las neuronas en funci´n de la entrada o o actual. El m´todo de adaptaci´n que se va a utilizar se basa en el postulado de aprendizaje de e o Hebb, con la salvedad de que ahora se incorpora un t´rmino de olvido, con el objeto de evitar que e todos las variaciones de los pesos se realicen en la misma direcci´n, lo que inducir´ la saturaci´n o ıa o de los mismos. De este modo, la variaci´n de los pesos de las diversas neuronas es o ∆wj = ηhj,i(x) (x − wj ) (10) donde el factor de olvido viene dado por ηhj,i(x) wj . De este modo, la ley de actualizaci´n de todas o las neuronas que caen dentro de la vecindad topol´gica de la neurona ganadora i, vendr´ dada por o a wj (n + 1) = wj (n) + η(n)hj,i(x) (x − wj (n)) (11) Con esta forma de adaptaci´n se consigue que los pesos de las neuronas de la red capten la forma, o la distribuci´n de las entradas, produci´ndose una ordenaci´n topol´gica de la red que, en ultima o e o o ´ 5
  • 6. instancia, hace que neuronas adyacentes muestren pesos similares. Tal y como refleja (11), la tasa de aprendizaje η depende del tiempo. De hecho, con el objeto de lograr una buena aproximaci´n o estoc´stica, conviene que tal dependencia sea decreciente, es decir, interesa que η, partiendo de un a cierto valor inicial η0 , decrezca gradualmente con el n´mero de iteraciones. Esta exigencia queda u satisfecha a trav´s de un decaimiento exponencial de η(n) del tipo e n η(n) = η0 e− τ2 , n = 0, 1, 2 . . . (12) donde τ2 representa una nueva constante de tiempo. Para concluir con la fase de adaptaci´n, es o preciso hacer referencia a dos etapas claramente diferenciables de la misma: Etapa de ordenaci´n. o Es la primera etapa de la fase de ordenaci´n y en ella se lleva a cabo la ordenaci´n topol´gica o o o de los pesos. Esta etapa requiere del entorno de 1000 iteraciones. Se han de tener en cuenta las siguientes precauciones respecto a la elecci´n de la tasa de aprendizaje y de la funci´n de o o vecindad: • El valor inicial η0 debe ser pr´ximo a 0.1 y decrecer de modo que siempre est´ por o e encima de 0.01, lo que se consigue mediante η0 = 0.1 y τ2 = 1000. • La funci´n de vecindad inicialmente debe incluir casi todas las neuronas en la red centra- o da en la neurona ganadora i, para despu´s decrecer lentamente con el tiempo. De forma e m´s espec´ a ıfica, durante aproximadamente las primeras 1000 iteraciones del algoritmo, hj,i (n) se reduce de manera que finalmente dicha funci´n de vecindad abarca solo un o par de neuronas en torno a la neurona ganadora (puede que s´lo incluya a ´sta). Por o e 1000 consiguiente, dado un cierto valor inicial σ0 tendremos τ2 = log σ0 . Etapa de convergencia. En esta fase se lleva a cabo una sintonizaci´n del mapa respecto del espacio de entradas o de forma m´s precisa. De forma general, esta etapa debe extenderse durante un n´mero de a u iteraciones cercano a 500 veces el n´mero de neuronas en la red. Por tanto, esta etapa de u convergencia puede dilatarse hasta alcanzar miles, e incluso decenas de miles de iteraciones. El siguiente par de aclaraciones merecen ser rese˜adas: n • Con vistas a alcanzar una cierta exactitud estad´ ıstica, conviene que η(n) mantenga durante esta fase un valor peque˜o del orden de 0.01. Bajo ninguna circunstancia debe n permitirse que decrezca hasta cero, pues de lo contrario puede que la red quede atascada en un estado meta-estable. • La funci´n de vecindad hj,i(x) debe incluir tan s´lo las neuronas vecinas m´s pr´ximas, o o a o las cuales se reducir´n finalmente a una sola o ninguna. a 2.2.2. Algoritmo “neural-gas” Es una variante de los mapas de Kohonen y aparece recogida en [4]. Ahora cada vez que se presenta una nueva entrada a la red, en lugar de buscar la neurona ganadora como se hacia en el anterior algoritmo, se establece un “ranking” de vecindad, es decir, se ordenan los distintos pesos asociados a cada una de las neuronas del mapa de menor a mayor proximidad respecto de la actual entrada. De este modo, para una cierta entrada x el conjunto ordenado de l pesos queda (w0 (i), w1 (i), . . . , wl−1 (i)), siendo w0 (i) los pesos de la neurona m´s cercana a x en el sentido de a distancia euclidiana y para la i-´sima iteraci´n del algoritmo, w1 los pesos de la segunda neurona e o m´s cercana a x para la i-´sima iteraci´n del algoritmo y as´ sucesivamente. Pues bien, la funci´n a e o ı o de vecindad a emplear se define a partir del “ranking” construido como hλ (kj (x, w)) = e−kj (x,w)/λ , j = 0, 1, . . . , l − 1 (13) donde kj (x, w) es cero para la nuerona asociada con w0 (i), 1 para la neurona asociada con w1 (i), . . . , l − 1 para la neurona asociada con wl−1 (i). La constante λ va a determinar la tasa de decaimiento de la funci´n de densidad. Al igual que se rese˜´ para la constante σ involucrada en el algoritmo de o no Kohonen, resulta recomendable hacer λ dependiente del tiempo de modo que decrezca con el mismo , consiguiendo de este modo una progresiva contracci´n de la vecindad. Un modo de conseguir esto o es haciendo λ(n) = λi · (λf /λi )n/nmax (14) donde λi y λf representan el valor inicial y final, respectivamente, del par´metro λ, los cuales se a determinar´n experimentalmente mediante el mecanismo de prueba-error, mientras que nmax es el a 6
  • 7. n´mero m´ximo de iteraciones a realizar. En consecuencia, la nueva funci´n de vecindad conduce u a o a una funci´n de adaptaci´n de los pesos dada por o o ∆wj (i + 1) = · hλ (kj (x, w)) · (x − wj (i)), j = 0, 1, . . . , l − 1 (15) wj (i + 1) = wj (i) + ∆wj (i + 1), j = 0, 1, . . . , l − 1 (16) Teniendo en cuenta las consideraciones hechas sobre la fase de adaptaci´n en el caso de los mapas o de Kohonen, se estima conveniente expresar la tasa de aprendizaje como n/nmax (n) = i( f / i) . (17) 2.2.3. Predicci´n de series temporales o El objetivo es aproximar de forma adaptativa la funci´n y = f (v) con v ∈ V ⊂ RD e y ∈ R. o V denota la regi´n dominio de la funci´n. La red a dise˜ar consta de S neuronas, cada una de las o o n cuales lleva asociado un vector de pesos wi , un escalar yi y un vector D-dimensional ai . Los pesos de neuronas son los vectores de D dimensiones que resultan de aplicar el algoritmo “neural-gas” al conjunto de vectores de entrada v, los cuales se construyen a partir de la serie temporal teniendo en cuenta los valores ´ptimos para D y τ seg´n lo expuesto en el apartado 2.1. De esta forma, si la o u serie-temporal es un mapa ca´tico descrito como xn+1 = g(xn , xn−1 , . . . , xn−m , γ), los vectores o de entrada se construyen como: T v1 = x1+(D−1)τ x1+(D−2)τ . . . x1+τ x1 T v2 = x1+Dτ x1+(D−1)τ . . . x1+2τ x1+τ . . . T vk = x1+(D+k−2)τ x1+(D+k−3)τ . . . x1+kτ x1+(k−1)τ . . . Este conjunto de vectores determinan el espacio de entrada V , el cual es dividido por medio del algoritmo “neural-gas” en S regiones Vi (conocidas como poliedros de Voronoi), a cada una de las cuales se asocia la neurona i del mapa neuronal dise˜ado. Por su parte, los coeficientes yi y n los vectores ai permiten definir, para cada uno de los poliedros de Voronoi, una aplicaci´n linear o RD → R mediante y = yi + ai (v − wi ) ˜ (18) o a ˜ ˜ La funci´n y = f (v) ser´, pues, aproximada por medio de y = f (v) con ˜ f (v) = yi(v) + ai(v) v − wi(v) (19) denotando i(v) la unidad computacional i con su wi m´s pr´ximo a v. En orden a aprender la a o aplicaci´n entrada-salida, se llevan a cabo una serie de fases de entrenamiento presentando a la o red parejas de entrada-salida (v k , y = f (v k )), donde y = x1+(D+k−1)τ . Los vectores de referencia son ajustados haciendo uso del algoritmo “neural-gas”, mientras que los par´metros ai e yi son a obtenidos mediante un proceso iterativo, de modo que en cada iteraci´n aquellos par´metros se o a actualizan siguiendo la direcci´n contraria a la dada por el gradiente, respecto de ai e yi , de la o funci´n de error existente entre y e y . Pues bien, la actualizaci´n, cuya deducci´n y justificaci´n o ˜ o o o se puede encontrar en [4], es: ∆yi = · hλ (ki (v, w))(y − yi ) (20) ∆ai = · hλ (ki (v, w)) (21) con lo que yi+1 = yi + ∆yi , ai+1 + ∆ai . 2.3. Estrategias de transmisi´n ca´tica v´ redes neuronales o o ıa Se analizar´n dos esquemas de codificaci´n-decodificaci´n de la se˜al v´ caos y haciendo uso a o o n ıa de las redes neuronales reci´n presentadas: e 7
  • 8. Modulaci´n ca´tica (codificaci´n LM )/decodificaci´n mediante inversi´n o o o o o Responde al esquema indicado en [5]. La codificaci´n de la informaci´n se efect´a a trav´s del o o u e mapa log´ ıstico seg´n u xk = rk xk−1 (1 − xk−1 ) (22) rk = 3.9757 + 0.0145Ik (23) de modo que Ik se obtiene normalizando la se˜al original de voz sk de forma que |Ik | < 1 para n todo k. Respecto a la decodificaci´n, se lleva a cabo por simple inversi´n: o o est rk = xk /(xk−1 (1 − xk−1 )) (24) est est Ik = (rk − 3.9757)/0.0145. (25) El problema de este m´todo es su sensibilidad respecto al ruido existente en el canal de comuni- e caci´n. o Modulaci´n ca´tica/decodificaci´n v´ algoritmo LMS o o o ıa La codificaci´n de la informaci´n tambi´n se efect´a mediante (22). Por su parte, la decodificaci´n o o e u o de la informaci´n se consigue por medio del algoritmo LMS. Para ello se define el error como o est ek = xk+1 − rk xk (1 − xk ) , (26) con lo que la funci´n a minimizar ser´ o a 1 2 ξ= e . (27) 2 k est El gradiente de (27) respecto a rk es 1 est ξ = 2 ek ek = ek [−xk (1 − xk )] = − xk − rk xk (1 − xk ) xk (1 − xk ), (28) 2 resultando la siguiente estimaci´n del par´metro de bifurcaci´n o a o est est est rk+1 = rk + µxk−1 (1 − xk−1 ) xk+1 − rk xk−1 (1 − xk−1 ) , (29) est donde se considera r0 = 3.9757 y 0 < µ < 2/var(xk (1 − xk )). Realimentaci´n din´mica -Dynamic Feedback, DF- o a Partiendo de los resultados obtenidos en [6], se propone un sistema de codificaci´n que, usando o el mapa log´ıstico, va a modular la se˜al a transmitir como n xk = xk−1 · r · (1 − xk−1 ) + 0.005 · Ik (30) con |Ik | < 1 y r = 3.8. Para la decodificaci´n se hace o est Ik = 200 · (xk − xk−1 · r · (1 − xk−1 )). (31) Modulaci´n ca´tica/decodificaci´n mediante predicci´n no linear (decodificaci´n NLP) o o o o o De nuevo la codificaci´n de la informaci´n se efect´a mediante (22). Considerando τ = 1 y D = 3 o o u (m´ınimo valor exigido por el teorema de Takens), se efect´a una predicci´n no linear del mapa u o ca´tico xpred = fSOM −gas−N LP (xk , xk−1 , xk−2 ), lo que permite decodificar la se˜al recibida medi- o k+1 n ante el modelo de predicci´n no linear: o est rk = xest /(xpred (1 − xpred )) k+1 k k k = 3, . . . (32) est est Ik = (rk − 3.9757)/0.0145. (33) Codificaci´n-decodificaci´n mediante realimentaci´n din´mica v´ SOM-gas: esquema o o o a ıa SOM-gas-DF Ahora en lugar de proyectar el atractor original sobre un espacio D-dimensional, se va a generar una serie temporal pseudoca´tica haciendo uso de la aproximaci´n local del sistema din´mico o o a original mediante redes SOM basadas en el algoritmo “neural-gas”. El esquema de codificaci´n- o decodificaci´n queda o xk = fSOM −gas−DF (xpred , xpred , . . . , xpred ) + 0.3IK k−1 k−2 k−D (34) 10 est Ik = (xk − fSOM −gas−DF (xk−1 , xk−2 , . . . , xpred )) pred pred k−D (35) 3 8
  • 9. donde |Ik | < 1. Con este esquema es posible alcanzar una perfecta reconstrucci´n de la din´mica o a asociada al atractor pseudo-ca´tico generado por el transmisor, consiguiendo una reducci´n del o o ruido, tanto en cuanto se lleva a cabo una proyecci´n de la se˜al recibida sobre un espacio de o n dimensi´n D finita, mientras que el espacio de estados asociado al ruido es de dimensi´n infinita o o (infinitos grados de libertad). Esta proyecci´n, precisamente, es la que permite usar un valor, a o primera vista elevado, para el coeficiente que multiplica la se˜al de voz en la codificaci´n. n o 2.4. Simulaciones: resultados y conclusiones Siguiendo lo desarrollado en 2.1, se analiz´ el mapa log´ o ıstico para r = 3.97 y valor inicial 0.5. La informaci´n mutua existente entre la se˜al y ella misma desplazada temporalmente, para valores o n de desplazamiento temporal entre 1 y 20, aparece e 1.8 1.6 1.4 1.2 Información mutua 1 0.8 0.6 0.4 0.2 0 −0.2 0 5 10 15 20 25 30 τ Figura 2: B´squeda de τ mediante informaci´n mutua u o Por otro lado, el an´lisis de los falsos vecinos conduce a los resultados sintetizados en la figura a 3, los cuales llevan a concluir DE = 4. Dimensi´n de embebido o Figura 3: Porcentaje de falsos vecinos en funci´n de la dimensi´n de embebido para el mapa log´ o o ıstico con r = 3.97 y τ = 14 2.4.1. Comparaci´n entre los diversos esquemas de codificaci´n-decodificaci´n para o o o un canal de comunicaci´n con ruido o Se van analizar las t´cnicas de codificaci´n-decodificaci´n previamente presentadas para cinco e o o se˜ales de voz, las cuales aparecen en la figura 4. Si denominados Ik a la se˜al de voz original, e ik n n la se˜al de voz estimada, la figura que se va a utilizar para medir las prestaciones de los diversos n m´todos a analizar ser´ e a 2 Ik SN Rsig = 10 log10 (36) (ik − Ik )2 9
  • 10. es decir, SN Rsig aumenta a medida que disminuye el error en la estimaci´n, esto es, a medida o que mejoran las prestaciones de un cierto m´todo de codificaci´n-decodificaci´n. El mejor m´todo e o o e ser´ aquel para el cual (36) es m´ximo. Ahora bien, para determinar dicho m´todo ser´ preciso a a e a simular el comportamiento de los diversos esquemas para varios valores de la relaci´n se˜al a ruido o n (SN R) en el canal de comunicaci´n. Los resultados que se obtuvieron para cada una de las se˜ales o n de voz previamente citadas aparecen en la figura 5. 1 0.8 0.6 Amplitud normalizada 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8 0 1 2 3 4 5 6 7 8 9 10 (a) 4 x 10 1 Amplitud normalizada Amplitud normalizada 0.5 0.5 0 0 −0.5 −0.5 −1 1000 2000 3000 4000 1000 2000 3000 4000 (b) (c) 1 1 Amplitud normalizada Amplitud normalizada 0.5 0.5 0 0 −0.5 −0.5 −1 −1 0 2000 4000 6000 8000 0 2000 4000 6000 (d) (e) Figura 4: Se˜ales normalizadas empleadas en las simulaciones n En las simulaciones realizadas, la red neuronal utilizada en la predicci´n temporal consta de o 200 neuronas, habi´ndose entrenado la misma durante 400 ´pocas, siendo una ´poca la fase del e e e entrenamiento durante la cual se presentan a la red cada una de las parejas entrada-salida, con lo que cada una de esas parejas es presentada a la red 400 veces. Los tres m´todos que mejores e resultados presentan son el SOM − gas − DF , codificaci´n v´ mapa log´ o ıa ıstico (LM ) - decod- ificaci´n bien v´ algoritmo LM S bien v´ predictor no linear basado en una red SOM − gas o ıa ıa (esquema SOM − gas − N LP ), siendo clara la superioridad del m´todo basado en la codificaci´n- e o decodificaci´n mediante realimentaci´n din´mica (Dynamic Feedback ) v´ redes SOM − gas (es- o o a ıa quema SOM − gas − DF ). Tal superioridad se da tanto para SN R baja como alta. Adem´s, a SN Rsig para SOM − gas − DF depende linealmente de la relaci´n se˜al a ruido en el canal de o n comunicaci´n, de modo que la superioridad de este esquema respecto a los otros dos crece a medida o que se incrementa SN R, ya que en el caso de codificar mediante el mapa log´ ıstico y decodificar usando el algoritmo LM S, SN Rsig es independiente de SN R para SN R superior a unos 30 dBs, circunstancia que tambi´n se observa cuando se decodifica usando el esquema SOM − gas − N LP e para SNR mayor que unos 10 dBs, factor ´ste que hace que para SNR suficientemente elevada un e esquema de codificaci´n-decodificaci´n mediante realimentaci´n din´mica mejore las prestaciones o o o a 10
  • 11. de estos dos m´todos. e 0 −20 −40 −60 SNRsig −80 Cod. LM / Decod. inversión Cod. LM / Decod. LMS Cod. DF /Decod. DF −100 Codif. LM/Decod. NLP−gas Cod. DF−gas/Decod. DF−gas −120 −140 −160 1 2 3 4 5 6 7 8 9 SNR dBs (a) 0 20 0 −20 −50 −40 SNRsig SNRsig −60 −80 −100 −100 −120 −150 −140 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 SNR dBs SNR dBs (b) (c) 20 20 0 0 −20 −20 −40 −40 SNRsig SNRsig −60 −60 −80 −80 −100 −100 −120 −120 −140 −140 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 SNR dBs SNR dBs (d) (e) Figura 5: Simulaciones con los distintos esquemas de codificaci´n-decodificaci´n para las cinco o o se˜ales n Una vez comentada la superioridad del esquema SOM −gas−DF respecto a los cuatro restantes m´todos expuestos, es necesario realizar una puntualizaci´n. En las simulaciones mostradas m´s e o a arriba, la red neuronal utilizada consta de 200 neuronas, las cuales se entrenaron durante 400 ´pocas. Ahora bien, si, por ejemplo, nos centramos en los resultados obtenidos al considerar como e se˜al de voz la que aparece en la figura 4 (e), y aplicamos el esquema de codificaci´n SOM − n o gas − DF , se observa que conviene reducir el n´mero de neuronas hasta 50, tanto en cuanto u se consigue aumentar SN Rsig (mirar figura 6). Asimismo, la figura 7 muestra la conveniencia de reducir el n´mero de ´pocas en la fase de entrenamiento a tan s´lo 200. De este modo, con u e o menos neuronas y menos ´pocas de entrenamiento de las que se ten´ originalmente, se consiguen e ıa mejores resultados debido al efecto de lo que se conoce con el nombre de sobre-entrenamiento y sobre-dimensionamiento. 11
  • 12. Figura 6: Comparativa n´mero de neuronas y ´pocas en el entrenamiento de una red SOM basada u e en el algoritmo neural-gas En efecto, el proceso de aprendizaje o entrenamiento de una red neuronal puede ser consid- erado como un problema de interpolaci´n no linear, de modo que la red no s´lo ha de ser capaz o o de generar la salida correspondiente a cada una de las entradas empleadas en la fase de entre- namiento, sino que adem´s deber´ determinar adecuadamente la salida correspondiente a entradas a a diferentes de aquellas. Por ello se dice que la red neuronal debe realizar una interpolaci´n o, mejor, o una generalizaci´n a partir de los datos que proces´ durante el proceso de aprendizaje. Una buena o o generalizaci´n exige entrenar la red durante un n´mero suficientemente elevado de ´pocas. Ahora o u e bien, si dicho n´mero de ´pocas es excesivamente elevado, puede que la red aprenda ciertas carac- u e ter´ısticas presentes en el conjunto de parejas entrada-salida empleadas en la sesi´n de aprendizaje, o las cuales pueden ser originadas por eventos no deseados tales como el ruido. A esto es a lo que se llama problema del sobre-entrenamiento, el cual conduce a una pobre generalizaci´n. Por otro lado, o puede que aunque el n´mero de ´pocas elegido sea el adecuado para lograr buenos resultados, la u e generalizaci´n finalmente obtenida sea pobre debido a que el n´mero de neuronas es excesivamente o u elevado. Esto es, si el n´mero de neuronas de la red neuronal es demasiado grande, la red est´ ca- u a pacitada para “aprehender” el ruido que, de forma inherente, se halla presente en el conjunto de pares entrada-salida de la fase de aprendizaje. Por tanto, a la hora de elegir el n´mero de neuronas u de la red se aplicar´ el principio de la navaja de Occam: elegir la funci´n de interpolaci´n no linear a o o m´s simple, es decir, la red con menor n´mero de neuronas tal que el comportamiento del sistema a u sea aceptable. En el caso que nos ocupa el principio de Occam se traduce en limitar a 50 el n´mero u de neuronas de la red, mientras el problema de sobre-entrenamiento hace recomendable limitar el proceso de entrenamiento a unas 200 ´pocas aproximadamente. e Figura 7: Comparativa n´mero ´pocas en el entrenamiento de una red SOM basada en el algoritmo u e neural-gas y con 50 neuronas 12
  • 13. 3. Sistema de comunicaci´n basado en un esquema de m´ lti- o u ples niveles ca´ticos o Sabemos que un mapa ca´tico viene dado por una expresi´n del tipo xn+1 = f (xn , xn−1 , . . . , γ), o o donde γ representa el par´metro o conjunto de par´metros que determinan la din´mica del sis- a a a tema, junto con las condiciones iniciales. Pues bien, se pretende construir un sistema de m´ltiples u niveles l´gicos (M = 2l niveles l´gicos, siendo l el n´mero de bits por nivel), de modo que a cada o o u uno de ellos se asocia una cierta se˜al ca´tica generada como xn+1 = fi (xn , xn1− , . . . , γj ), con n o i = 1, 2, . . . , K y j = 1, 2, . . . , mk satisfaciendo m1 + m2 + . . . + mk = M . Si definimos ∞ m0 +β+1 ck (t) = fi (xm , xm−1 , . . . , γj ) × rectTc (t − (n − n0 )TM + (m − m0 )Tc ) n=n0 m=m0 k = 1, 2, . . . , M (37) donde 1 0 ≤ t ≤ Tc rectTC = (38) 0 |t| > Tc Por otro lado, se cumple 1≤ k ≤ m1 ⇒ i = 1 m1 < k ≤ m2 ⇒ i = 2 . . . (39) mk−1 < k ≤ mk ⇒ i = K (40) El esquema de comunicaci´n propuesto es el que recoge la figura 8. o ´1`=qd )t(1c rotpeceR )t(n )t(s nóicnuf olucláC )t(2c :nóicalerrocotua DER ´2`=qd )t(p MT adac oeteser LANORUEN olobmíS sodnuges odacifidoced )t(Mc ´M`=qd Figura 8: Sistema de comunicaci´n basado en m´ltiples niveles ca´ticos o u o (k) Si definimos xn+1 = fi (xn , xn−1 , . . . , γj ) como la se˜al ca´tica asociada al s´ n o ımbolo ‘k’(con k cumpliendo 40), la se˜al que se transmite por el canal de comunicaci´n correspondiente al s´ n o ımbolo q−´simo dq de una cierta secuencia de s´ e ımbolos es  β−1 (1)    x rectTc (uTc + (q − 1)TM ] si dq = ‘1 u=0 u+(q−1)β  β−1    (2)  xu+(q−1)β rectTc (uTc + (q − 1)TM ] si dq = ‘1 (q) v (t) = u=0 (41)   .   . .  β−1     (M )  xu+(q−1)β rectTc (uTc + (q − 1)TM ] si dq = ‘M u=0 El receptor va a muestrear el canal de comunicaci´n cada Tc segundos. Si TM es el tiempo durante o el cual se transmite un s´ ımbolo, y Tb es el tiempo asociado a un bit de informaci´n, tenemos que o TM = l×Tb , siendo l el n´mero de bits por s´ u ımbolo. Por su parte, β es el factor de esparcimiento o ensanchamiento del espectro y se cumple TM = βTc , donde Tc es el tiempo de chip, es decir, el tiempo durante el cual se transmite una muestra de una cierta se˜al ca´tica. Suponiendo que n o existe sincronizaci´n entre emisor y receptor, tras TM segundos el receptor ha recogido todas las o 13
  • 14. muestras de la se˜al ca´tica asociadas al s´ n o ımbolo transmitido. Pues bien, a ese conjunto de β muestras se le calcula la funci´n de autocorrelaci´n, la cual servir´ de criterio para que una red o o a neuronal, convenientemente entrenada, decida cu´l es el s´ a ımbolo que se transmiti´. Ahora bien, o ¿por qu´ utilizar una red neuronal? La respuesta es simple: el decidir qu´ s´ e e ımbolo se ha transmitido es un problema de clasificaci´n, basado en la observaci´n de la funci´n de autocorrelaci´n de la se˜al o o o o n recibida durante cada instante de tiempo TM , y la solvencia de la aplicaci´n de redes neuronales o a problemas de clasificaci´n est´ m´s que demostrada, pudiendo encontrarse un gran n´mero de o a a u ejemplos en [7] y [8]. 3.1. Elecci´n del conjunto de se˜ ales ca´ticas a transmitir o n o Una vez presentado el esquema general, la siguiente labor a acometer es la de decidir e conjunto de M se˜ales ca´ticas van a ser transmitidas a trav´s del canal de comunicaci´n. Los mapas ca´ticos n o e o o con los que se trabaj´ son o Mapa log´ ıstico: xn+1 = rxn (1 − xn ) 0≤r<4 (42) Mapa senoidal: xn+1 = (a/4)sen (πn) 0≤a≤4 (43) Mapa de Henon: xn+1 = yn + 1 − ax2 n (44) yn+1 = byn (45) Mapa de Duffing: xn+1 = yn (46) 3 yn+1 = −bxn + ayn − yn (47) En el caso de los dos mapas bidimensionales considerados, la variable sobre la que se traba- jar´ ser´ xn . a a Para cada uno de aquellos mapas se determinaron los valores del par´metro o par´metros din´mi- a a a cos que hacen que el comportamiento del sistema fuera ca´tico. Para ello, se efect´o un an´lisis o u a del exponente de Lyapunov con objeto de hallar el valor m´ ınimo que asegura un comportamiento ca´tico. En principio, un valor positivo de dicho exponente asegura un comportamiento como el o deseado. Ahora bien, el procedimiento aplicado para su determinaci´n es de corte aproximado, por o lo que es preciso buscar esa cota inferior por encima de la cual estamos en condiciones de garantizar que la din´mica del sistema es ca´tica. a o Dado que no vamos a transmitir todas las se˜ales ca´ticas, lo que se trata es de establecer n o un criterio, un mecanismo que nos permita seleccionar M de aquellas se˜ales. La red neuronal n a dise˜ar va a clasificar las sucesivas se˜ales recibidas examinando la funci´n de autocorrelaci´n n n o o asociada a cada una de ellas. Por tanto, conviene de alguna manera sintetizar todas las funciones de autocorrelaci´n de las se˜ales ca´ticas por medio de M de ellas. Dicho de otro modo, conviene o n o agrupar las funciones de autocorrelaci´n asociadas al conjunto total de se˜ales ca´ticas en M o n o grupos distintos. Fruto de este agrupamiento, el espacio de las funciones de autocorrelaci´n queda o dividido en M hiper-esferas. A continuaci´n, para cada una de esas hiper-esferas se selecciona la o se˜al ca´tica cuya funci´n de autocorrelaci´n est´ m´s pr´xima al centro de la misma. Se elige el n o o o a a o centro de la hiper-esfera para conseguir una mayor protecci´n con respecto al ruido presente en el o canal de comunicaci´n. Al recibir la se˜al y calcular su funci´n de autocorrelaci´n, el ruido presente o n o o en el canal de comunicaci´n altera la misma. Ahora bien, si esa alteraci´n no es lo suficientemente o o grande como para que la funci´n de autocorrelaci´n “salga” de la hiper-esfera a la que estaba o o 14
  • 15. originalmente asociada, la red neuronal en principio clasificar´ adecuadamente la se˜al recibida. A a n la hora de proceder con el agrupamiento de las funciones de autocorrelaci´n, los puntos a tener en o cuenta son: Elegir un m´todo adecuado. Se van a analizar 3 m´todos: e e • Mapas de Kohonen (ver 2.2.1). • El algoritmo “neural-gas”(ver 2.2.2). • El algoritmo EM. N´mero de muestras de la funci´n de autocorrelaci´n que se van a tener en cuenta. u o o N´mero m´ximo de grupos o clusters que se pueden crear. u a 3.1.1. Algoritmo EM Este algoritmo considera el problema de agrupamiento como un problema de b´squeda de la u funci´n de distribuci´n de una cierta variable aleatoria x, a partir de N muestras de la misma. o o Dicha funci´n de distribuci´n puede ser aproximada de 3 maneras distintas [8]: o o 1. Mediante una aproximaci´n param´trica o e Se asume una forma espec´ıfica para la funci´n de distribuci´n, la cual puede ser muy distinta o o de la verdadera. Sin embargo, este tipo de modelos permiten evaluar de forma muy f´cil la a funci´n de probabilidad para nuevos valores de x. o 2. Mediante una aproximaci´n no param´trica o e En este caso se trabaja con funciones de distribuci´n generales, lo que se traduce en un modelo o cuya complejidad crece con el n´mero de datos empleados en la fase de entrenamiento, lo u que hace que sea muy complejo evaluar nuevas entradas. 3. Mediante modelos mixtos Este tipo de modelos combinan las ventajas de los anteriores, de ah´ que se diga que son ı m´todos semi-param´tricos. En un modelo mixto la funci´n de distribuci´n de los datos de e e o o entrada es modelada como M p(x) = p(x|j)P (j) (48) j=1 y se denomina distribuci´n mixta. Los coeficientes P (j) con los par´metros mixtos. Estos o a par´metros deben cumplir a M P (j) = 1 (49) j=1 0 ≤ P (j) ≤ 1 (50) p(x|j)dx = 1 (51) Todos los modelos mixtos que aqu´ se citan se basan en el concepto de funci´n de verosimilitud. ı o Si los par´metros que definen el modelo se designan como θ la funci´n de verosimilitud para cada a o una de las funciones base del modelo (p(x|θ) es N L(θ) ≡ p(x|θ) = p(xn |σ) (52) n=1 El objetivo ser´ maximizar esta funci´n para el conjunto de las M funciones base. Sin embargo, es a o m´s habitual trabajar con la expresi´n equivalente a o E = − ln(L(θ)) (53) lo que lleva a   N N  M  E = − ln(L) = − ln p(xn ) = ln p(xn |j)p(j) (54)   n=1 n=1 j=1 15
  • 16. Si suponemos que cada una de las funciones base es gaussiana 2 ||x−µj || 1 − 2σ 2 p(x|j) = 2 )d/2 e j (55) (2πσj se podr´ pensar en buscar los par´metros µj , σj y P (j) que minimizan la expresi´n (54). El ıa a o problema es que los datos de entrada no est´n etiquetados, esto es, no se sabe a qu´ clase pertenecen a e a priori, con lo que maximizaci´n directa de la funci´n de verosimilitud lleva a un problema de o o optimizaci´n no lineal sin soluci´n anal´ o o ıtica. Pues bien, el algoritmo EM [9] pretende solventar esta circunstancia. Supongamos que tenemos un conjunto de datos completo, es decir, para cada entrada xn se conoce la componente del modelo mixto que la genera. Dicho de otro modo, cada entrada xn lleva asociada una variable z n que toma un valor entero comprendido entre 1 y M . Dicho valor indica la componente del modelo que genera la entrada en cuesti´n. Por tanto, la nueva o funci´n de error a minimizar vendr´ dada por o a N N E comp = − ln Lcomp = − ln pnueva (xn , z n ) = − ln {pnueva (z n )pnueva (xn |z n )} . (56) n=1 n=1 Ahora bien, el valor de pnueva (z n ) no es conocido. El primer ser´, pues, calcular de forma aproxi- a mada lso valores de los par´metros del modelo mixto (los valores “viejos”) y despu´s usarlos junto a e con el teorema de Bayes para encontrar la probabilidad asociada a z n . Este valor ser´ utilizado a para determinar el valor esperado de E comp en la fase de c´lculo de esperanzas o fase E del al- a goritmo EM . Despu´s de esto, en la fase de maximizaci´n o fase M el valor esperado de (56) e o permite encontrar los nuevos par´metros del modelo. El m´todo es sintetizado matem´ticamente a e a a continuaci´n o M M N E [E comp ] = ··· E comp pvieja (z n |xn ) (57) z 1 =1 z N =1 n=1 N M E comp = − δjzn ln {pnueva (j)pnueva (xn |j)} . (58) n=1 j=1 Sustituyendo (58) en (??), y teniendo en cuenta M pvieja (z|xn ) = 1 (59) z=1 se llega a N M E [E comp ] = − pvieja (j|xn ) ln {pnueva (j)pnueva (xn |j)} (60) n=1 j=1 cuya minimizaci´n conduce a los nuevos par´metros del modelo o a N 1 pnueva (j) = pvieja (j|xn ) (61) N n=1 N 2 pvieja (j|xn ) xn − µnueva j nueva 2 1 n=1 σj = (62) p N pvieja (j|xn ) n=1 N pvieja (j|xn )xn n=1 µnueva j = N (63) pvieja (j|xn ) n=1 El algoritmo EM es iterado hasta que se alcanza un cierto valor umbral m´ ınimo para (57), o hasta que se alcance un cierto n´mero de iteraciones, seg´n se prefiera. Tras esta operaci´n se u u o habr´ conseguido dividir el espacio de entradas en M hiper-esferas con centro µj y radio σj . El a representante de la clase j es aquel vector xn1 tal que p(j)p(xn1 |j) > p(j)p(xn |j) ∀n = n1 (64) 16
  • 17. 3.2. Clasificaci´n de la se˜ al recibida: dise˜ o de una red neuronal o n n Hasta este punto hemos obtenido las M se˜ales ca´ticas que van a constituir el sistema de n o comunicaci´n, con lo que el siguiente paso ser´ crear un sistema que, observando la funci´n de o a o autocorrelaci´n de la se˜al obtenida a la entrada del receptor tras TM muestreando a una tasa o n de Tc segundos. Tal y como se rese˜´ anteriormente, tal problema no es m´s que una problema no a de clasificaci´n donde la figura a clasificar es la funci´n de autocorrelaci´n. Por ello, dada la o o o solvencia de las redes neuronales en problemas de clasificaci´n, esta ser´ la herramienta a emplear o a en la decodificaci´n de la informaci´n enviada a trav´s del canal enmascarada mediante caos. En o o e concreto, se van a presentar y, posteriormente, analizar mediante simulaciones 2 tipos de redes neuronales: 1. Mapas auto-sintonizables o mapas SOM (Self-Organizing Maps). Ejemplos de la solvencia de los mapas SOM en problemas de clasificaci´n pueden encontrarse o en [10]-[13], donde se utiliza tanto el modelo de Kohonen como el algoritmo “neural-gas”. El entrenamiento de los mapas SOM se lleva a cabo del mismo modo que se indic´ en 2.2.1 o en el caso de trabajar con mapas de Kohonen, o bien como se rese˜´ en 2.2.2 en el caso de no emplear el algoritmo “neural-gas”. De forma sucinta, se calcula un conjunto de p muestras de la funci´n de autocorrelaci´n de un grupo suficientemente grande de se˜ales ca´ticas para, a o o n o continuaci´n, llevar a cabo un proceso de clustering o agrupamiento del espacio o p-dimensional generado a partir de la funci´n de autocorrelaci´n. De este modo, la “esencia” o o de la din´mica de aquel espacio p-dimensional queda concretada en M neuronas, cada una a de las cuales lleva asociado un peso de dimensi´n p. Tras el proceso de entrenamiento, y o una vez etiquetas las distintas neuronas del mapa, el receptor dispone de un mecanismo que va a clasificar el conjunto de β muestras recibidas durante un intervalo de duraci´n TM , o atendiendo a la proximidad, respecto de cada neurona, de las p primeras muestras de la funci´n de autocorrelaci´n asociada a aquellas β muestras de la se˜al recibida. Esto es, el o o n receptor considera que ha recibido el s´ ımbolo i-´simo cuando la neurona i del mapa neuronal e es aquella cuyo vector de pesos es el m´s cercano eucl´ a ıdianamente al vector determinado por los p primeros valores de la funci´n de autocorrelaci´n de las β muestras recibidas. o o 2. Redes neuronales artificiales basada en funciones radiales base (redes RBF-ANN ). Las redes RBF-ANN ha sido aplicadas exitosamente en el modelado de secuencias ca´ticas o basadas en el mapa log´ ıstico [14]-[16], as´ como en problemas de clasificaci´n y quantizaci´n ı o o del espacio de entradas 3.2.1. Entrenamiento de las redes artificiales basadas en funciones radiales base (RBF-ANN) La arquitectura de este tipo de redes viene dada por la figura 9, donde T R−1 (x−ci ) ϕi (x) = e(x−ci ) i i = 1, 2, . . . , S (65) son las funciones base, con lo que el entrenamiento de la red se traduce en la b´squeda de los centros u ci , de las matrices Ri y de los distintos pesos. Con respecto a las matrices Ri , ser´n consideradas a diagonales con elementos id´nticos e iguales a ri , esto es, el radio de la i-´sima funci´n base. e e o w10 w11 x1 ϕ1 ? y1 wk0 xj ϕi ? yk wM0 ? yM xp ϕS wMS Figura 9: Esquema redes RBF-ANN 17
  • 18. Con este esquema, si una cierta entrada pertenece a la clase i-´sima se esperar´ que la salida e ıa yi sea igual a 1, mientras que el resto de salidas de la red son nulas. En la pr´ctica, se dir´ que a a una cierta entrada pertenece a la clase j-´sima cuando la salida yj > yk para todo k = j. e Determinaci´n de los centros y radios de las funciones base o Se analizan tres mecanismos para calcular los centros y radios de las funciones base: 1. Mediante clustering con redes SOM seg´n el algoritmo de Kohonen o el “neural-gas”. u Tras el proceso de agrupamiento, el mapa SOM presenta M neuronas, siendo M = S el n´mero de funciones base. Pues bien, los pesos asociados a cada una de esas neuronas van a u ser los centros de las funciones base, mientras que para la determinaci´n del radio de cada o funci´n base es preciso etiquetar previamente las entradas disponibles en el entrenamiento o de la red: una cierta entrada se considera que pertenece a la clase i si la neurona m´s cercana a a ella, desde un un punto de vista euclidiano, es la asociada a la funci´n base i. Hay que o hacer ver que cuando se habla de neurona m´s cercana, en realidad se hace menci´n al a o vector de pesos de dicha neurona. Una vez etiquetadas todas las entradas, se construye la matriz X i a partir de las ni entradas usadas en el entrenamiento y que est´n asociadas a a la clase i. Dicha matriz es de dimensiones ni × p, y sus filas son cada uno de los vectores p-dimensionales marcados con la etiqueta ‘i . Pues bien, a partir de tal matriz se estima la matriz de covarianza de la clase i, determinando previamente el vector de medias como ni p 1 media (i) = X i (j, k) (66) ni j=1 k=1 i y construyendo una nueva matriz X restando a cada fila de la matriz X i el vector de medias dado por (66), con lo que finalmente i i (X )T X covarianza(i) = . (67) ni − 1 El radio asociado a la funci´n base i ser´ el m´ximo de los valores diagonales de la matriz o a a de covarianzas asociada a tal funci´n. o 2. Construyendo redes de tipo GMM (Gaussian Mixture Models). Las funciones base de la red neuronal pueden ser interpretadas como las componentes de un modelo mixto [8], cuyos par´metros deber ser optimizados en orden a alcanzar la m´xima a a verosimilitud. De nuevo el n´mero de funciones base, i.e. S, es igual al n´mero de niveles u u l´gicos , i.e. M . Por consiguiente, la funci´n de distribuci´n de las entradas a la red se modela o o o como M p(x) = p(j)ϕj (x). (68) j=1 Por tanto, la situaci´n que tenemos es la misma que se describi´ en 3.1.1. Esto es, los centros o o 2 y radios de las diversas funciones base ser´n los par´metros µj y σj (j = 1, 2, . . . , M ) a a que resultan de aplicar el algoritmo EM al conjunto de entradas disponibles en la fase de entrenamiento. 3. Mediante la utilizaci´n de ´rboles de regresi´n. o a o Siguiendo [19], se presenta un m´todo que lleva a cabo la determinaci´n de los centros y e o radios de las funciones de base radial explotando las virtudes de los ´rboles de regresi´n. Este a o esquema requiere el etiquetado de todos los datos a emplear en el proceso de entrenamiento. Este etiquetado no es sino el agrupamiento del espacio de entradas y la asignaci´n de cada una o de las entradas a un grupo o cluster de los generados. Ello se har´ considerando la m´ a ınima distancia en sentido euclidiano de la entrada respecto al centro de los distintos grupos. Como consecuencia de esta clasificaci´n, cada entrada tiene asignado un entero que referencia el o grupo al que pertenece. De este modo, para cada entrada xi la salida yi ser´ el entero que a determina el grupo al que pertenece la entrada en cuesti´n. Pues bien, la red de la figura 10 o va a ser entrenada de modo que la salida de la misma sea ese entero, esto es, el grupo al que pertenece la entrada. El proceso de entrenamiento se va a llevar a cabo dividiendo por dos el espacio de entradas de forma sucesiva. En primer lugar, se genera un nodo ra´ como el ız hiper-rect´ngulo m´s peque˜o que contiene a todo el conjunto de entradas consideradas en a a n el entrenamiento. 18
  • 19. x 1 ϕ 1 w 11 w 01 x ϕ ? y w j i i1 x ϕ w p S S1 Figura 10: Red RBF mediante ´rboles de regresi´n a o Para cada dimensi´n k se define la anchura sk y el centro ck del hiper-rect´ngulo o a 1 sk = m´x(xi ) − m´ (xi ) a k ın k (69) 2 i∈Q i∈Q 1 ck = m´x(xi ) + m´ (xi ) a k ın k (70) 2 i∈Q i∈Q donde Q = [1, 2, . . . , N ] es el conjunto de ´ ındices asociados al grupo de entradas a emplear en el entrenamiento de la red neuronal. El nodo ra´ es dividido en dos subconjuntos QR y ız QL , estando formando cada uno de ellos por las entradas que, seg´n la dimensi´n k, quedan u o a la derecha o a la izquierda respectivamente de un cierto valor frontera b, esto es QL = i : xi ≤ b k QR = i : xi > b k (71) Si se define < yR > e < yL > como el valor medio de la salida a ambos lados del valor frontera, el valor del error residual cuadr´tico del modelo respecto de los datos reales es a   1  E(k, b) = (yi − < yL >)2 + (yi − < yR >)2  (72) N i∈QL i∈QR La partici´n que genera el m´ o ınimo valor de (72) para todas las posibles elecciones de k y b es utilizada para dar lugar a los hijos del nodo ra´ y es hallada mediante una b´squeda ız, u discreta sobre las p dimensiones patentes (los vectores de entrada tienen d componentes) y las N entradas disponibles. Este procedimiento se repite iterativamente hasta que los hijos generados contengan menos de Nmin muestras. Una vez generado el ´rbol es necesario llevar a a cabo el dise˜o de la red RBF a partir del mismo. Es decir, es necesario ejecutar una n aplicaci´n de cada uno de los hiper-rect´ngulos generados -cuyo centro y anchura mitad se o a determinan a trav´s de las muestras contenidas en los nodos terminales del ´rbol y seg´n (69)y e a u (70)- sobre la red RBF, para lo cual el centro c de cada uno de aquellos hyper-rect´ngulosa ser´ el centro de una funci´n base, mientras que el radio vendr´ determinado por el tama˜o a o a n s de cada hiper-rect´ngulo escalado mediante un cierto par´metro Λ (que es el mismo para a a todos los nodos del ´rbol), por tanto ri = Λsi . Sin embargo, la determinaci´n de los radios y a o centros de las funciones base no concluye aqu´ tanto en cuanto puede que existan demasiados ı, hiper-rect´ngulos en el ´rbol generado, por lo que puede resultar conveniente seleccionar un a a conjunto de ellos. El m´todo que selecciona el conjunto adecuado de hiper-rect´ngulos se basa e a en los conceptos de lista activa de nodos y de criterio de selecci´n de modelo. En un cierto o momento del proceso de selecci´n, s´lo los nodos incluidos en la lista activa, junto con los o o nodos hijos de los mismos, ser´n tenidos en cuenta para su inclusi´n o exclusi´n del modelo. a o o Cada vez que una funci´n base es incorporada o substra´ del modelo, la lista activa se o ıda expande sustituyendo los nodos vinculados por sus nodos hijos. La selecci´n concluir´ cuando o a la lista s´lo est´ constituida por nodos terminales. Por otro lado, el criterio de selecci´n de o e o modelo es un m´todo heur´ e ıstico para predecir la calidad de una red entrenada cuando se le presenten entradas desconocidas. Entre los distintos criterios existentes se utilizar´ el criterio a bayesiano de informaci´n (BIC). En el m´todo de selecci´n se pueden discernir 3 fases: o e o 19
  • 20. a) Inicializar la lista activa con el nodo ra´ Asimismo, dicho nodo ra´ constituir´ la ız. ız a primera funci´n base del modelo. o b) Para todos los nodos no terminales en la lista activa, se estima el efecto (seg´n el criterio u de selecci´n de modelo) de incorporar ambos o uno solo de sus hijos como centro y radio o de nuevas funciones base. Si el padre ya ha sido utilizado para generar una funci´n base, o adem´s se considera el efecto de primero eliminar la funci´n base generada a partir de a o ´l e incorporar una o dos nuevas funciones base a partir de uno o de sus dos nodos e hijos (es decir, se pueden efectuar tres modificaciones del modelo). Adem´s se analiza a la posibilidad de eliminar sin m´s el nodo padre (una cuarta posible modificaci´n del a o modelo). c) El n´mero de posibles ajustes del modelo est´ entre tres o siete veces el n´mero de nodos u a u activos no terminales, dependiendo de cuantas funciones base existan en el modelo. De todas las posibilidades se escoge aquella que hace m´ ınimo el criterio de selecci´n de o modelo. A continuaci´n se adapta el modelo eliminando el nodo involucrado de la lista o activa e incorporando a la lista los hijos del mismo. Si ninguna de las posibilidades hace decrecer el criterio de selecci´n de modelo, entonces se elige al azar uno de los o nodos activos y se sustituye por sus hijos pero dejando el modelo, esto es, el conjunto de funciones base inalterado. Determinaci´n de los pesos o El primer paso en la determinaci´n de la red neuronal ser´, en el caso de no haber sido efectuada, o a la clasificaci´n de las N entradas. En el supuesto de haber optado por redes SOM, el etiquetado o se lleva a cabo atendiendo a la proximidad, desde el punto de vista euclidiano, de cada entrada de dimensi´n p respecto a cada una de las M neuronas resultado del proceso de agrupamiento o o clustering. En definitiva, a una cierta entrada se le asigna la etiqueta ‘i cuando el vector de pesos de la neurona ‘i del mapa SOM es el m´s cercano a ella. Si se ha empleado el algoritmo EM, a una cierta entrada x es etiquetada como perteneciente a la clase j (i.e., se le asocia la etiqueta ‘j’) cuando p(j)p(x | j) > p(x | k) ∀k = j (73) donde p(j) y p(x | j) fueron definidas al hablar del algoritmo EM. Una vez etiquetadas las entradas es posible construir las parejas entrada-salida necesarias para llevar a cabo el entrenamiento. En el caso de estar trabajando con una red como la representada en figura 9, si la entrada n (xn ) pertenece a la clase i-´sima, entonces la salida del a red ser´ e a T tn = [tn 1 tn 2 ... tn ] M (74) mientras que si la red el del tipo representado en la figura 10 tn = i (75) Por otro lado, la salida de la red neuronal viene dada por S yk (x) = wkj ϕj (x) (76) j=0 con k = 1, 2, . . . , M en el caso de una red com la de la figura 9, mientras que si la red es del tipo definido en la figura 10 se tiene k = 1 (una sola salida). En (76) se ha a˜adido una funci´n base n o extra dada por ϕ0 = 1. De forma matricial se puede expresar y = Wϕ (77) donde W = (wkj ) y ϕ = (ϕj ) con j = 1, 2, . . . , S ,con lo que ϕ es un vector columna de longitud S, mientras que W es una matriz con tantas filas como salidas presenta la red neuronal y S columnas. De este modo, la funci´n suma de errores cuadr´ticos es o a N M E = 1/2 [yk (xn ) − tn ] k (78) n=1 k=1 Pues bien, los pesos de la red neuronal se determinar´n minimizando (78), es decir, son la soluci´n a o de un problema de m´ ınimos cuadrados, con lo que vendr´n dados como a W T = ϕ# T (79) 20
  • 21. donde ϕ# es la matriz pseudoinversa de ϕ (i.e., ϕ# = (ϕT ϕ)−1 ϕT ) y (T )nk =tn , (ϕ)nj = ϕ(xn ), k con n = 1, 2, . . . , N y j = 0, 1, 2, . . . , S (N es el n´mero de parejas entrada-salida empleadas en u el entrenamiento de la red neuronal). Esto es, ϕ es una matriz N filas y S + 1 columnas, mientras que T tiene N filas y tantas columnas como salidas presenta la red neuronal. 3.3. Simulaciones: resultados y conclusiones 3.3.1. Agrupamiento mediante el algoritmo EM Se van a analizar las prestaciones del algoritmo EM cuando es aplicado al agrupamiento o clustering del conjunto de vectores de dimensi´n p construidos mediante las p primeras muestras o de la funci´n de autocorrelaci´n de los mapas ca´ticos presentados en 3.1. Se determinaron las o o o regiones (los valores del par´metro que controla la din´mica del sistema) en las que los distintos a a mapas generaban un comportamiento ca´tico. Utilizando aquellos resultados se gener´ un conjunto o o de 7323 se˜ales ca´ticas (N = 7323), que constituir´ de aqu´ en adelante el grupo de se˜ales n o a ı n sobre las que se va a trabajar. Pues bien, a cada una de esas se˜ales se le calcul´ su funci´n de n o o autocorrelaci´n, que ser´ el elemento sobre el cual se construye el mecanismo de decodificaci´n en o a o el receptor. La primera cuesti´n a resolver ser´, consiguientemente, el n´mero de muestras p de la o a u funci´n de autocorrelaci´n a tener en cuenta, mientras que el segundo aspecto a analizar ser´ el o o a comportamiento del sistema de agrupamiento para diversos n´mero de niveles M . Por tanto, es u necesario establecer alg´n criterio que permita juzgar la calidad del sistema, as´ como los valores de u ı p y de M m´s convenientes. Lo que interesa es que el conjunto de M se˜ales elegidas de entre el total a n de 7323 posibles constituya un sistema lo m´s robusto posible. Dicho de otro modo, conviene que, a elegidos los M representantes, variaciones respecto a las funciones de autocorrelaci´n originales o no alteren, en la medida de lo posible, el proceso de clasificaci´n, esto es, que el representante o n´mero i siga siendo clasificado como perteneciente a la clase i cuando, fruto de la presencia de u ruido, su funci´n de autocorrelaci´n se ve alterada. Recordando que el representante de la clase j, o o en el caso de emplear el algoritmo EM para el agrupamiento, ven´ dado por (64), se va a sumar ıa a cada una de las p primeras muestras de la funci´n de autocorrelaci´n asociada a cada uno de o o los M representantes, un n´mero aleatorio generado a partir de funci´n de distribuci´n uniforme u o o entre −A y A, considerando que A puede tomar los valores 0.001 + 0.01K con K = 0, 1, . . . , 9. Para cada uno de los valores de K se verificar´ si el sistema sigue clasificando o etiquetando al a representante j como perteneciente a dicha clase, comprobaci´n que se efectuar´ 1000 veces (es o a decir, se realizar´n 1000K tests). En la figura 11 aparecen recogidos los resultados obtenidos para a p = 4, 5, 6 y 7, y valores de M = 16, 32, 64, 128, 256 (es decir, de 4 a 8 bits de informaci´n por o s´ ımbolo). 1 p=4 p=5 p=6 0.9 p=7 0.8 0.7 Precisión media 0.6 0.5 0.4 0.3 0.2 4 5 6 7 8 Numero de bits por símbolo Figura 11: Precision para el algoritmo EM para distintos valores de p y M Ahora bien, tambi´n conviene analizar la carga computacional asociada a los diversos valores e de p y M . Dicha carga computacional se medir´ como el n´mero medio de operaciones en precisi´n a u o flotante por ´poca, siendo una ´poca el tiempo que tarda el algoritmo en procesar los N datos a e e 21
  • 22. agrupar. En el caso que nos ocupa, el algoritmo EM se aplic´ para 100 ´pocas (100×N iteraciones) o e en todas las situaciones, observ´ndose que para valroes de M superiores a 256 y p superior a 4 a el par´metro σj se hacia demasiado peque˜o, si el n´mero de ´pocas era demasiado elevado. De a n u e modo que, debido a problemas de precisi´n, en lugar de disminuir la verosimilitud, ´sta diverg´ o e ıa. Por ello, el proceso se restringi´ a 20 ´pocas para p = 5, a 4 ´pocas para p = 6 y a 3 ´pocas para o e e e p = 7. Siguiendo estos requisitos, la carga computacional observada aparece resumida en la figura 12. N´ mero de operaciones flotantes por ´poca u e N´ mero de niveles (M = 2l ) u Figura 12: Complejidad del algoritmo EM para distintos valores de p y de M A la vista de las gr´ficas se concluye que una buena elecci´n de la dimensi´n de entrada ser´ a o o ıa p = 5 para valores peque˜os de M , y p = 6 para M > 32. Se comprueba que al aumentar p crece n considerablemente la carga computacional asociada al algoritmo, mientras que la mejora, en cuanto a precisi´n, no es tan destacable. o 3.3.2. Agrupamiento mediante SOM: comparaci´n con los resultados generados por o el algoritmo EM Partiendo de los resultados del apartado anterior, se procedi´ a agrupar el espacio determinado o por las 5 primeras muestras de la funci´n de autocorrelaci´n de cada una de las se˜ales ca´ticas. o o n o El primer factor observado fue la ventaja del algoritmo “neural-gas” sobre los mapas de Kohonen, tanto en cuanto estos ultimos requieren un n´mero mucho m´s elevado de ´pocas para conseguir ´ u a e seleccionar un conjunto M de representantes. De este modo, para M > 16 se requiere un n´mero u de ´pocas superior a 6000 para poder seleccionar M ¸ representantes adecuados. En consecuencia, e c las mapas de Kohonen se descartaron como mecanismo de agrupamiento, quedando reducido el posterior an´lisis al algoritmo “neural-gas”. En este caso la robustez del sistema de a agrupamiento se calcula observando qu´ neurona (el vector de pesos asociado a la neurona, para e ser m´s exactos) est´ m´s cerca del vector que se obtiene al sumar a las p primeras muestras de a a a la funci´n de autocorrelaci´n del representante de una cierta clase, un ruido del mismo tipo que el o o utilizado en la secci´n anterior.Para el representante de la clase j, con j = 1, . . . , M , se realizan o un total de 1000K tests, contabilizando el n´mero de situaciones favorables, esto es, aquellas en u las que la neurona m´s pr´xima al vector de entrada (funci´n de autocorrelaci´n + ruido) es la a o o o asociada a la clase j. Como resultado de este an´lisis. Los resultados obtenidos para p=5 aparecen a en la figura 13, donde ´stos son comparados con los obtenidos mediante el algoritmo EM para e diversos valores de p. A la vista de dicha gr´fica se concluye que interesa utilizar el algoritmo a “neural-gas” como m´todo para la elecci´n de los M representantes que se enviar´n a trav´s e o a e del canal de comunicaci´n.o 22
  • 23. Precisi´n media o N´ mero de s´ u ımbolos (M ) Figura 13: Comparativa algoritmo EM y “neural-gas” 3.3.3. Elecci´n de la red artificial RBF adecuada o En este apartado se va a comparar los distintos m´todos descritos en 3.2.1 para el dise˜o de las e n redes artificiales basadas en funciones de base radial. Para ello, las se˜ales sobre las se desplegar´n n a las distintas pruebas y simulaciones son obtenidos a partir unicamente del mapa log´ ´ ıstico. En primer lugar se considera el caso en el que se trata de aproximar la funci´n de distribuci´n asociada al o o espacio de entradas por medio del algoritmo EM . Como resultado de tal aproximaci´n, el espacio o de entradas queda dividido en M hiper-esferas de radios y centros conocidos, con lo que se sabe a qu´ clase pertenece cada entrada. Tras el etiquetado, el siguiente paso es determinar el n´mero e u de neuronas, as´ como el centro y radio de cada una de ellas. Si se utilizan redes GMM, el n´mero ı u de neuronas viene dado por el n´mero de niveles l´gicos M , mientras que el centro y radio de u o cada neurona se obtiene mediante el algoritmo EM . Ahora bien, en el caso de utilizar ´rboles de a regresi´n, el n´mero de neuronas no es conocido hasta concluir con el dise˜o y posterior an´lisis del o u n a citado ´rbol de regresi´n, siendo en general distinto y superior a M . Otro factor a tener en cuenta a o es el car´cter aleatorio de la determinaci´n de los par´metros del modelo mixto al aplicar el m´todo a o a e EM , lo que obliga a simular las redes dise˜adas para distintos modelos o resultados del etiquetado n o agrupamiento del espacio de entradas. En concreto, se realizaron 30 an´lisis distintos del espacio a de entradas, cada uno de los cuales se utiliz´ para contrastar el comportamiento de los dos tipos o de redes citados, realiz´ndose un total de 100 experimentos por modelo, esto es, se llevaron a cabo a 3000 tests sobre cada uno de los dos tipos de redes desarrollados a partir de un etiquetado del espacio de entradas fundamentado en el algoritmo EM . Antes de mostrar los resultados de las simulaciones, es conveniente decir que el algortimo EM , en el caso que nos ocupa, fue iterado un m´ximo de 1000 veces, lo que llev´ a un proceso de dise˜o muy lento, pero muy preciso. Adem´s, a o n a para M mayor o igual a 64 se plantearon problemas de convergencia del algoritmo de la misma naturaleza que los citados en 3.3.1, con lo que se concluye que es conveniente iterar el algoritmo EM un n´mero de veces no excesivamente elevado. Dicho de otro modo, es necesario buscar un u compromiso entre rapidez y precisi´n. o En primer lugar, se decidir´ qu´ tipo de red conviene emplear. Para ello, se llevaron a cabo a e una serie de pruebas con los dos modelos de redes RBF propuestos, esto es, las redes GMM y las redes basadas en ´rboles de regresi´n. Dichas pruebas part´ de los valores de par´metros M = 16, a o ıan a β = 400. En la gr´fica 14 aparecen los resultados obtenidos para diversos valores de la dimensi´n de a o las entradas p. A la vista de dicha figura, se concluye la superioridad de las redes GMM frente a los ´rboles de regresi´n. Por otro lado, las figuras 15 y 16 muestran los resultados obtenidos a o al trabajar con redes GMM para M = 32 y M = 64 respectivamente. Antes de continuar, cabe destacar que en las gr´ficas que se ir´n presentado, la escala del eje de ordenadas es logar´ a a ıtmica. Por tanto, cuando se tenga un valor nulo de probabilidad de error en la gr´fica correspondiente no a aparece punto alguno, pues en escala logar´ ıtmico un valor nulo toma valor infinito. Dicho esto, las gr´ficas que se acaban de mencionar muestran que se logra reducir la probabilidad de error sin m´s a a que aumentar la dimensi´n del espacio de entradas. Ahora bien, esto se cumple siempre que p < 7, o 23
  • 24. 1 1 Red árbol de regresión Red árbol de regresión Red GMM Red GMM 0.9 0.9 0.8 0.8 0.7 0.7 Probabilidad media de error Probabilidad media de error 0.6 0.6 0.5 0.5 0.4 0.4 0.3 0.3 0.2 0.2 0.1 0.1 0 0 0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70 SNR dBs SNR dBs (a) p = 2 (b) p = 3 1 Red árbol de regresión Red GMM 0.9 0.8 0.7 Probabilidad media de error 0.6 0.5 0.4 0.3 0.2 0.1 0 0 10 20 30 40 50 60 70 SNR dBs (c) p = 4 Figura 14: Comparativa redes GMM con redes de ´rboles de regresi´n para M = 16 a o pues para valores superiores se constata una degradaci´n en el comportamiento de nuestro sistema. o Esto es debido a lo que se conoce como maldici´n de la dimensi´n. En efecto, para valores de p o o superiores a 7 el modelo no s´lo crece en complejidad (aumenta la carga computacional asociada o tanto al proceso de agrupamiento como al dise˜o y c´lculo de salidas de la red neuronal), sino n a que adem´s aumenta la influencia del ruido. Es decir, para valores de la dimensi´n del espacio de a o entradas demasiado elevados el sistema aprehende defectos presentes en el conjunto de datos de entrada, lo que se traduce en un deterioro de sus prestaciones. El siguiente paso ser´ decidir respecto al m´todo de b´squeda de centros y radios de las funciones a e u de base radial. Los dos m´todos propuestos son los algoritmos EM y “neural-gas”. Con este fin e se efectuaron 3000 pruebas sobre la red construida seg´n la arquitectura referenciada en la figura u 9 y utilizando el algoritmo “neural-gas”, consider´ndose diversos valores de la relaci´n se˜al a a o n ruido en el canal de comunicaci´n y para M = 16, 32. En las figuras 17 y 18 se comparan los dos o procedimientos, comprob´ndose la superioridad de las redes GMM con centros y radios dados a por un agrupamiento del espacio de entradas fundamentado en el algoritmo “neural-gas”. 24
  • 25. p=2 0 p=6 0 10 10 p=3 p=7 p=4 p=8 p=5 p=9 −1 Probabilidad media de error 10 Probabilidad media de error −1 10 −2 10 −2 10 −3 10 −3 −4 10 10 0 10 20 30 40 50 60 70 0 5 10 15 20 25 30 35 40 45 50 SNR dBs SNR dBs (a) (b) Figura 15: Comportamiento de una red GMM para M = 32 y distintos valores de dimensi´n de o entrada 0 p=2 10 p=3 p=4 p=5 p=7 Probabilidad media de error −1 10 −2 10 −3 10 0 10 20 30 40 50 60 70 SNR dBs Figura 16: Comportamiento de una red GMM para M = 64 y distintos valores de dimensi´n de o entrada 0 10 Probabilidad media de error −1 10 −2 10 p=4 ’neural−gas’ p=4 EM 0 2 4 6 8 10 12 14 16 18 20 SNR dBs Figura 17: Comparativa entre la determinaci´n de centros y radios mediante los algoritmos EM y o “neural-gas” para p = 4 y M = 16 25
  • 26. 0 10 p=6 ’neural−gas’ p=6 EM −1 10 Probabilidad media de error −2 10 −3 10 −4 10 0 10 20 30 40 50 60 SNR dBs Figura 18: Comparativa entre la determinaci´n de centros y radios mediante los algoritmos EM y o “neural-gas” para p = 6 y M = 32 0 0 10 10 p=3 p=3 p=4 p=4 p=5 p=5 −1 −1 Probabilidad media de error Probabilidad media de error 10 10 −2 −2 10 10 −3 −3 10 10 0 5 10 15 20 25 0 5 10 15 20 25 30 SNR dBs SNR dBs (a) M = 16 (b) M = 32 0 10 p=3 p=4 p=5 −1 10 Probabilidad media de error −2 10 −3 10 −4 10 0 5 10 15 20 25 30 35 SNR dBs (c) M = 64 Figura 19: Redes GMM con centros y radios mediante el algoritmo “neural-gas” para distintos valores de M y p 3.3.4. Elecci´n de la red neuronal adecuada: comparaci´n entre redes RBF y redes o o SOM Hasta este punto se tiene que las M se˜ales a enviar como representantes de los distintos n niveles l´gicos se obtendr´n v´ agrupamiento mediante el algoritmo “neural-gas”, el cual tambi´n o a ıa e 26
  • 27. ser´ empleado para la selecci´n de los centros y radios de las funciones base de las redes neuronales a o RBF. El siguiente punto a satisfacer es determinar si conviene emplear la arquitectura dada por la figura 9 -arquitectura GMM-, o bien es preferible hacer uso de una red SOM, en este caso entrenada mediante el algoritmo “neural-gas”. Con este objetivo se analiz´ el comportamiento de o los dos tipos de redes reci´n citados, para distintos valores de M (i.e., el n´mero de niveles l´gicos), e u o distintos valores de p y diversos valores de la relaci´n se˜al a ruido en el canal de comunicaci´n. o n o Del an´lisis se concluy´ que s´lo cuando la dimensi´n del espacio de entradas, esto es, el n´mero a o o o u de muestras de la funci´n autocorrelaci´n es igual a 5 se lograba alcanzar 128 niveles l´gicos, o o o siendo imposible aumentar tal n´mero con el n´mero de se˜ales ca´ticas disponibles. Sin embargo, u u n o esto no es un problema, ya que el n´mero de se˜ales ca´ticas de partida (antes del proceso de u n o agrupamiento) puede ser aumentado tanto como se desee. Hecha esta aclaraci´n, la figura 20 recoge o el comportamiento de una red SOM basada en el algoritmo “neural-gas” para distintos valores de M y de p. Se verifica que la elecci´n de un espacio de entradas de dimensi´n 5 (i.e., p = 5) garantiza o o unas buenas prestaciones, pues para relaciones de se˜al a ruido no muy elevadas (bastan 30 dBs n para M ≤ 64) se clasifican de forma correcta todas las se˜ales previamente enviadas a trav´s del n e canal de comunicaci´n. En la figuras 21, 22, 23 y 24 estos resultados son contrastados con los o obtenidos al usar redes GMM con centros y radios calculados mediante el algoritmo “neural-gas”. Las gr´ficas indican la superioridad de las redes SOM , sobre todo cuando se trabaja con 128 a niveles l´gicos. Por ultimo, en base a los diversas gr´ficas, se concluye que una buena elecci´n en o ´ a o cuanto a la dimensi´n del espacio de entradas es p = 5. o 0 0 10 10 p=3 p=3 p=4 p=4 p=5 p=5 −1 10 −1 Probabilidad media de error Probabilidad media de error 10 −2 10 −2 10 −3 10 −3 −4 10 10 0 5 10 15 20 25 0 5 10 15 20 25 30 SNR dBs SNR dBs (a) M = 16 (b) M = 32 0 10 p=3 p=4 p=5 −1 Probabilidad media de error 10 −2 10 −3 10 0 5 10 15 20 25 30 35 SNR dBs (c) M = 64 Figura 20: Redes SOM entrenadas mediante el algoritmo “neural-gas” para distintos valores de M yp 27
  • 28. 0 0 10 10 SOM ’neural−gas’ SOM ’neural−gas’ GMM ’neural−gas’ GMM ’neural−gas’ −1 −1 Probabilidad media de error Probabilidad media de error 10 10 −2 −2 10 10 −3 −3 10 10 0 5 10 15 20 25 0 5 10 15 20 25 SNR dBs SNR dBs (a) p = 3 (b) p = 4 0 0 10 10 SOM ’neural−gas’ SOM gas p=5 GMM ’neural−gas’ GMM gas p=4 −1 −1 Probabilidad media de error Probabilidad media de error 10 10 −2 −2 10 10 −3 −3 10 10 0 5 10 15 20 25 0 5 10 15 20 25 SNR dBs SNR dBs (c) p = 5 (d) p ´ptima o Figura 21: Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 16 0 0 10 10 SOM ’neural−gas’ SOM ’neural−gas’ GMM ’neural−gas’ GMM ’neural−gas’ −1 10 −1 Probabilidad media de error Probabilidad media de error 10 −2 10 −2 10 −3 10 −4 −3 10 10 0 5 10 15 20 25 30 0 5 10 15 20 25 30 SNR dBs SNR dBs (a) p = 3 (b) p = 4 0 10 SOM ’neural−gas’ GMM ’neural−gas’ −1 Probabilidad media de error 10 −2 10 −3 10 0 5 10 15 20 25 30 SNR dBs (c) p = 5 Figura 22: Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 32 28
  • 29. 0 0 10 10 SOM ’neural−gas’ SOM ’neural−gas’ GMM ’neural−gas’ GMM ’neural−gas’ −1 10 −1 Probabilidad media de error Probabilidad media de error 10 −2 10 −2 10 −3 10 −4 −3 10 10 0 5 10 15 20 25 30 35 0 5 10 15 20 25 30 35 SNR dBs SNR dBs (a) p = 3 (b) p = 4 0 10 SOM ’neural−gas’ GMM ’neural−gas’ −1 Probabilidad media de error 10 −2 10 −3 10 0 5 10 15 20 25 30 35 SNR dBs (c) p = 5 Figura 23: Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 64 0 10 −1 10 Probabilidad media de error −2 10 −3 10 SOM ’neural−gas’ GMM ’neural−gas’ −4 10 0 5 10 15 20 25 30 35 40 SNR dBs Figura 24: Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 128 y p = 5 El estudio practicado nos ha permitido dilucidar la dimensi´n del espacio de entradas y el tipo o de red neuronal a utilizar. Sin embargo, no se ha realizado comentario alguno respecto al par´metro a de ensanchamiento de espectro. En efecto, en todos las simulaciones que han sido mostradas se tiene β = 100. La pregunta: ¿conviene aumentar o disminuir el valor de este par´metro? De forma a intuitiva, si se aumenta el valor de β cabr´ esperar esperar una mejora en el comportamiento de ıa la red seleccionada para la decodificaci´n, ya que, al enviar m´s muestras a trav´s del canal de o a e comunicaci´n, la influencia del ruido sobre las p primeras muestras de la funci´n de autocorrelaci´n o o o disminuye, es decir, el efecto global del ruido se reduce. De forma te´rica se puede demostrar que la o se˜al recibida al aumentar el valor de β hace disminuir la varianza de la funci´n de autocorrelaci´n n o o obtenida en el receptor [20], lo que, en definitiva, se traduce en una mayor robustez del proceso 29
  • 30. de clasificaci´n respecto del ruido presente en el canal de comunicaci´n. Ahora bien, el aumento o o de β es concomitante con el del ancho de banda de la se˜al transmitida, circunstancia del todo n contraproducente en el caso de que existan limitaciones al respecto del ancho de banda disponible para el intercambio de informaci´n. La figura 25 compara el rendimiento del sistema para β = 100 o con el del sistema para β = 1000. Para valores inferiores a 5 dBs no se consigue pr´cticamente a mejora alguna, pero a medida que SN R crece por encima de 5 dBs no se observa pr´cticamente a mejora alguna, pero a medida que SNR crece por encima de aquel valor la mejora derivada del aumento del factor de ensanchamiento es ostensible. De hecho, para los diversos valores de M el valor m´ ınimo de SNR a partir de la cual la probabilidad de error se reduce pr´cticamente a cero, a disminuye pr´cticamente en unos 5 dBs. As´ cuando β = 1000 y M = 16 se requiere en el canal una a ı, SNR de unos 15 dBs para que la probabilidad de error tienda a cero (para SN R = 20 dBs se obtuvo una probabilidad de error aproximadamente nula), mientras que para β = 100 se requer´ al menos ıan 20 dBs. Esta misma circunstancia se aprecia para M = 32, M = 64 y M = 128, concluy´ndose e que un aumento del coeficiente de ensanchamiento lleva asociado una reducci´n de la probabilidad o de error en el receptor, siendo conveniente hacer β tan grande como las caracter´ısticas espectrales del sistema nos permitan. 0 0 10 10 β=100, p=5 β=100, p=5 β=1000, p=5 β=1000, p=5 −1 −1 Probabilidad media de error Probabilidad media de error 10 10 −2 −2 10 10 −3 −3 10 10 0 2 4 6 8 10 12 14 16 18 20 0 5 10 15 20 25 30 SNR dBs SNR dBs (a) M = 16 (b) M = 32 0 0 10 10 β=100, p=5 β=100, p=5 β=1000, p=5 β=1000, p=5 −1 10 −1 Probabilidad media de error Probabilidad media de error 10 −2 10 −2 10 −3 10 −3 −4 10 10 0 5 10 15 20 25 30 0 5 10 15 20 25 30 35 SNR dBs SNR dBs (c) M = 64 (d) M = 128 Figura 25: Comparativa entre redes SOM con β = 100 y β = 1000 30
  • 31. Lista de figuras 1. Falsos vecinos pr´ximos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 4 2. B´squeda de τ mediante informaci´n mutua . . . . . . . . . . . . . . . . . . . . . . u o 9 3. Porcentaje de falsos vecinos en funci´n de la dimensi´n de embebido para el mapa o o log´ıstico con r = 3.97 y τ = 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4. Se˜ales normalizadas empleadas en las simulaciones . . . . . . . . . . . . . . . . . n 10 5. Simulaciones con los distintos esquemas de codificaci´n-decodificaci´n para las cinco o o se˜ales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . n 11 6. Comparativa n´mero de neuronas y ´pocas en el entrenamiento de una red SOM u e basada en el algoritmo neural-gas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7. Comparativa n´mero ´pocas en el entrenamiento de una red SOM basada en el u e algoritmo neural-gas y con 50 neuronas . . . . . . . . . . . . . . . . . . . . . . . . 12 8. Sistema de comunicaci´n basado en m´ltiples niveles ca´ticos . . . . . . . . . . . . o u o 13 9. Esquema redes RBF-ANN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 10. Red RBF mediante ´rboles de regresi´n . . . . . . . . . . . . . . . . . . . . . . . . a o 19 11. Precision para el algoritmo EM para distintos valores de p y M . . . . . . . . . . . 21 12. Complejidad del algoritmo EM para distintos valores de p y de M . . . . . . . . . 22 13. Comparativa algoritmo EM y “neural-gas” . . . . . . . . . . . . . . . . . . . . . . 23 14. Comparativa redes GMM con redes de ´rboles de regresi´n para M = 16 . . . . . . a o 24 15. Comportamiento de una red GMM para M = 32 y distintos valores de dimensi´n o de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 16. Comportamiento de una red GMM para M = 64 y distintos valores de dimensi´n o de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 17. Comparativa entre la determinaci´n de centros y radios mediante los algoritmos EM o y “neural-gas” para p = 4 y M = 16 . . . . . . . . . . . . . . . . . . . . . . . . . . 25 18. Comparativa entre la determinaci´n de centros y radios mediante los algoritmos EM o y “neural-gas” para p = 6 y M = 32 . . . . . . . . . . . . . . . . . . . . . . . . . . 26 19. Redes GMM con centros y radios mediante el algoritmo “neural-gas” para distintos valores de M y p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 20. Redes SOM entrenadas mediante el algoritmo “neural-gas” para distintos valores de M yp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 21. Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 22. Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 23. Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 64 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 24. Comparativa entre redes SOM y redes GMM basadas en el algoritmo “neural-gas” para M = 128 y p = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 25. Comparativa entre redes SOM con β = 100 y β = 1000 . . . . . . . . . . . . . . . . 30 31
  • 32. Referencias [1] Takens, F., On the numerical determination of the dimension of an attractor, D. Rand, L.S. Young, eds., Dynamical Systems and Turbulence, Annual Notes in Mathematics, vol. 898, pp.366-381, Berlin: Springler-Verlag, 1981. [2] Fraser, A.M., Information and entropy in strange attractors, IEEE Trans. Information Theory, vol. 35, pp. 245-262, 1989. [3] Abarbanel, H.D.I., Analysis of observed chaotic data, New-York: Springler-Verlag, 1996. [4] T.M. Martinetz, S.G. Berkovich, K.J. Schulten, “Neural-Gas” Network for Vector Quantiza- tion and its Application to Time-Series Prediction, IEEE Transactions on Neural Networks, Vol.4, No. 4, Julio 1993. [5] J.M.H. Elmirghani, S.H. Milner, R.A. Cryan, Experimental evaluation of echo path modelling with chaotic coded speech, IEEE Trans. Signal Processing, vol.45, pp. 2600-2604, Oct. 1997. [6] J.B. Kadtke, J.B. Brush, Adaptive methods for cahotic communication systems, Proc. SPIE, Chaos in Communications, 1993, vol. 2038, pp. 182-193. [7] S. Haykin, Neural Networks. A comprehensive foundation, 2a edici´n, Prentice-Hall, 1999. o [8] C.M. Bishop, Neural Networks for Pattern Recognition, Clarendon Press-Oxford,1995. [9] A.P. Dempster, N.M. Laird and D.B. Rubin, Maximum likelihood for incomplete data via the EM algorithm, Journal of the Royal Statistical Society, B 39 (1), pp.1-38. [10] Ritter, H., Schulten, K., Topology conserving mapping for learning motor tasks, Neural Net- works for Computing, J.S. Denker, Ed., AIP Conf. Proc. 151, UT, pp.376-380, 1986. [11] Ritter, H., Martinetz, T., Schulten, K., Topology-conserving maps for learning visuomotor- coordination, Neural Networks, vol.2, pp. 159-168, 1988. [12] Martinetz, T., Ritter, H., Schulten, K., Three-dimensional neural net for learning visuomotor- coordination of a robot arm, IEEE Trans. Neural Networks, vol.1, no.1, pp.131-136, 1990. [13] Martinetz, T., Ritter, H., Schulten, K., Learning of visuomotor coordination of a robot arm with redundant degrees of freedom, Proc. Int. Conf. On Parallel Processing in Neural Systems and Computers, R. Eckmiller, G. Hartmann, G. Hauske, Eds., pp. 431-434, 1990. [14] A..Muller, and J.M.H. Elmirghani, Artificial neural networks for the generation and estimation of chaotic signals, Proc. IEEE Global telecommunications conference, GLOBECOM’98, vol. 4, pp. 2469-2473, 8-12, Nov.,1998. [15] A. Muller, and J.M.H. Elmirghani,, Novel approaches to signal transmission based on chaotic signals and artificial neural networks, IEEE Transactions on Communication, vol. 50, No. 3, pp. 384-390, March 2002. [16] A. Muller, J.M.H. Elmirghani, A chaotic spreading code and its application to blind channel estimation, Proc. IEEE Global telecommunications conference, GLOBECOM’01, San Antonio, pp., Nov. 01. [17] S.J. Nowlan, Maximum likelihood competitive learning, Advances in Neural Information Pro- cessing Systems 2, D.Touretzky, Ed. New York: Morgan Kauffman, 1990, pp.574-582. [18] J. Moody, C.J. Darken, Fast learning in networks of locally tuned processing units, Neural Computation, vol.1, pp.281-294, 1989. [19] M.J.L. Orr, Recent advances in radial basis functions networks, http:www.anc.ed.ac.uk ~mjopapersrecad.ps, 1999. [20] Tam, W.M., Lau, C.M., Tse, C.K., Yip, M.M., An approach to Calculating the Bit-Error Rate of a Coherent Chaos-Shift-Keying Digital Communication System Under a Noisy Mul- tiuser Environment, IEEE Transactions on Circuits and Systems, I Fundamental Theory and Applications, vol.49, no.2, pp.210-223, Feb. 2002. 32