Sei sulla pagina 1di 19

Redes Neuronales Artificiales

Jose M. Conde Alonso y Javier Di Deco Sampedro

Indice

1. Introduccin o 2. Modelos recurrentes (a) Nociones matemticas a i. Modelo (sistema de ecuaciones diferenciales) ii. Estabilidad iii. Atractores (b) Modelos i. Modelo aditivo ii. Modelo relacionado iii. Modelo de Hopeld 3. Modelos feed-forward (a) Perceptrn de una sola capa o i. Denicin o ii. Teorema de convergencia del perceptrn o (b) Filtros adaptativos i. Denicin o ii. Mtodos iterativos de optimizacin e o iii. El algoritmo LMS (c) Perceptrones multicapa i. Denicin o ii. Algoritmo de retropropagacin o iii. Funciones limitadoras 4. Bibliograf a

1. Introduccion
Las redes neuronales articiales son objetos matemticos o computacionales que se denen en un intento a de simular el cerebro humano en un ordenador. Computacionalmente suponen un modelo distinto a la tradicional mquina de Turing o de procesamiento en serie. Una red neuronal articial permite un procesamiento altamente a paralelo, al menos en teor (es claro que si se implementan en un ordenador convencional con su procesamiento a en serie, el procesamiento de la informacin deja de ser realmente paralelo). o Una red neuronal tiene capacidad para aprender y adaptarse a nuevas condiciones del entorno, como las redes reales; en nuestro caso, esas condiciones de contorno vienen dadas por los valores en las seales de entrada n de la red. Se pueden distinguir modelos de redes neuronales con diversos tipos de aprendizaje: el aprendizaje puede ser no guiado o guiado, y dentro de que sea guiado, el modelo de profesor puede variar. Como el cerebro humano, un red neuronal articial ha de ser un sistema robusto, al que la prdida de e algunas de sus unidades constituyentes (las neuronas) no afecte de forma signicativa a efectos de resolver los problemas para los que se disee. n El primer modelo de neurona, propuesto por McCulloch y Pitts en los aos 40, es un combinador n lineal: la neurona realiza una combinacin lineal de las seales de entrada, cada una de las cuales tiene su o n peso, jo o no, y en funcin del valor obtenido puede activarse o no (si supera un cierto valor umbral, se activa o y devuelve una salida; si no, devuelve otro). El modelo puede mejorarse aplicando la salida de la combinacin o lineal a una cierta funcin, generalmente diferenciable, aunque ello no es impresicindible, y comparar el valor o que toma la funcin con el valor umbral para determinar si la neurona se activa o no. o Una red neuronal se puede representar mediante un grafo dirigido, donde cada nodo representa una neurona, y las aristas representan las conexiones entre las mismas. Es claro que el grafo es dirigido, pues las seales que se env las neuronas entre s son siempre en el mismo sentido (y por tanto, tiene sentido que las n an aristas sean dirigidas). Lo que s puede ocurrir, y de hecho ocurre en todos los modelos recurrentes de redes neuronales, es que la salida de una neurona inuya en sus propias entradas; es decir, una neurona se puede realimentar. Una red neuronal puede ser entrenada para que realice unas determinadas tareas. Una de las formas ms comunes de realizar dicho entrenamiento es proporcionar a la red un determinado conjunto de entradas y a las correspondientes salidas que se esperan para esas entradas. De ese modo las neuronas de la red podr an, si por ejemplo estuviramos trabajando con una red formada por neuronas de McCulloch-Pitts, ajustar sus pesos e para conseguir obtener los resultados deseados. Adems, si se trabaja previamente sobre el problema a resolver, a se puede disear la estructura de la red de forma que resulte ms sencillo el tratamiento del mismo. n a En general, se espera de una red neuronal articial que responda de forma similar ante entradas parecidas; es decir, que la red tenga capacidad de generalizacin. Para comprobar si dos entradas son parecidas se puede o medir la distancia (vectorial) entre ambas, o utilizar cualquier otro tipo de medida que tenga sentido en el contexto del problema que estemos resolviendo. Existen muchos tipos de redes neuronales. Nosotros vamos a estudiar dos: -Feedforward networks: Redes neuronales articiales en las que las salidas de las neuronas de un nivel solo inuyen en las entradas del siguiente nivel, y en ningn caso en las del propio, ni en ellas mismas. Estas u redes se organizan en capas o niveles interconectados. El nmero de estos niveles puede ir desde 1 (perceptrn u o de una capa) hasta cualquier nmero (perceptrones mmulticapa), siempre manteniendo la no conexin entre u o

neuronas de una misma capa. -Redes recurrentes: Redes neuronales articiales en las que las salidas de las neuronas de un nivel inuyen en las entradas de las neuronas del mismo nivel; es decir, redes en las que las neuronas se realimentan.

2. Modelos recurrentes
El estudio de una red neuronal recurrente no es sencillo debido a la retroalimentacin, que puede generar o problemas de estabilidad. Para discernir en qu casos la red ser estable se necesitar una base matemtica. e a a a

Modelo: El comportamiento de una red se modeliza mediante un espacio n-dimensional en el que cada punto representa un estado de la red, y mediante un sistema de ecuaciones diferenciales autnomo (las Fi no dependen o expl citamente del tiempo), que permite conocer la evolucin de la red gracias al plano de fases (familia de o trayectorias del sistema). d xi (t) = Fi (xj (t)) i = 1, 2...n, j = 1, 2, ...n dt Para garantizar la existencia y unicidad de solucin el sistema debe cumplir la condicin de Lipschitz: o o Sea V abierto, x, u V k tq F (x) F (u) k x u Si todas las derivadas parciales de las F son nitas, se cumple la condicin de Lipschitz. o o Teorema de la divergencia: (en sistemas autnomos)

(F (x)n)dS =
S V

( F (x))dV

n es el vector unitario normal a la supercie, apuntando hacia afuera del volumen encerrado. Si F (x) = 0 el sistema es conservativo, si es menor que 0, disipativo.

Puntos de equilibrio: Denicin: Se dice que x0 es un punto de equilibrio si Fi (x0 ) = 0 i. o Se puede estudiar el comportamiento de las trayectorias del sistema alrededor de los puntos de equilibrio gracias a la aproximacin mediante la serie de Taylor de F (x) como x0 + Ax(t). x(t) = (x x0 )(t) y A es o la matriz Jacobiana de F (x) evaluada en x0 . Se asume, sin prdida de generalidad, que x0 est siempre en el origen de coordenadas (si no, basta una e a traslacin para solucionarlo). Entonces, si A1 los autovalores y autovectores de A determinan el comporo tamiento local de las trayectorias del sistema en un entorno de x0 . Si hay m autovalores con parte real positiva, se dice que x0 es de tipo m. En el caso particular de dimensin 2 existen los siguientes casos, en funcin de los autovalores: o o -Nodo: reales. Estable si son negativos, inestable si son positivos. -Foco (o punto espiral): complejos conjugados. Estable si la parte real es negativa, inestable si es positiva. -Punto silla: reales, uno positivo y otro negativo. -Centro: imaginarios puros. 5

Deniciones de estabilidad: Se considera que el sistema es autnomo, y que x0 es un punto de equilibrio del sistema. o Denicin 1: o x0 es uniformemente estable si > 0 > 0 tq x(0) x0 < x(t) x0 < t > 0

Denicin 2: o x0 es convergente si > 0 tq x(0) x0 < x(t) x0 t

Denicin 3: o x0 es asintticamente estable si es estable y es convergente. o Denicin 4: o x0 es globalmente asintticamente estable si es estable y todas las trayectorias del sistema convergen a o x0 cuando t . Lo cul implica que no existe otro punto de equilibrio en el sistema. a Lyapunov: Se dice que una funcin escalar V (x) es de Lyapunov si cumple las siguientes condiciones: o 1) Tiene derivadas parciales continuas respecto a los elementos de x. 2) V (x0 ) = 0 3) V (x) > 0 si x = x0 Teorema 1: x0 es estable si en un entorno pequeo de x0 existe V (x) de Lyapunov y tal que n
d dt V

(x) 0

Teorema 2: x0 es asintticamente estable si en un entorno pequeo de x0 existe V (x) de Lyapunov y tal que o n d V (x) < 0 dt La existencia de una funcin de Lyapunov es condicin suciente, pero no necesaria para la estabilidad. o o

Atractores: Un atractor es una subvariedad del espacio n-dimensional hacia la que se aproximan asintticamente las o trayectorias cercanas del sistema. Suelen aparecer en sistemas disipativos. Un dominio de atraccin es la regin del espacio n-dimensional tal que las trayectorias que comiencen o o en cualquiera de sus puntos van a parar a un mismo atractor. Una separatriz es una suvariedad que separa dominios de atraccin. o 6

Se dice que un punto es atractor hiperblico si, dada la matriz Jacobiana explicada anteriormente, se o cumple || < 1 autovalor de dicha matriz.

Modelos: Una vez estudiada la base matemtica necesaria, se pueden proponer ciertos modelos concretos, cuyo a comportamiento se pueda analizar mediante sistemas de ecuaciones diferenciales. Las caracter sticas generales de estos sistemas son: 1) Tienen muchos grados de libertad (relacionado con el procesamiento paralelo). 2) Son sistemas no lineales. 3) Son sistemas disipativos, es decir, aparecen puntos atractores. 4) Ruido, que se ignorar porque complica el anlisis. a a

Modelo aditivo (o RC) El modelo de neurona es un circuito electrnico, de tal forma que aplicando la ley de Ohm, y la ley de o Kircho para los nodos, se obtiene una ecuacin diferencial. Si se toman n neuronas (ignorando los tiempos o de propagacin desde que una seal de salida de una neurona llega hasta la entrada de otra), se consigue un o n sistema de ecuaciones diferenciales como los que ya se han visto. Vemoslo con ms detalle: a a Tanto las seales de entrada(xi ) como la de salida (xj ) de cada de neurona se representan mediante n potenciales. Los pesos se representan mediante conductancias (unidades de 1 ) (wji ). La seal de sesgo (Ij ) n se representa mediante una intensidad, que junto a una combinacin lineal de las seales de entrada por los o n pesos componen las intensidades que entran a un nodo del circuito. En las ramas de salida de dicho nodo hay un condensador (de capacidad Cj ) y una resistencia(Rj ). Entonces, si llamamos vj al potencial de dicho nodo, se cumple: dvj (t) vj (t) wji xi (t) + Ij = Cj + dt Rj i Considerando , diferenciable, como funcin de activacin, la salida de la neurona se obtiene como: o o xj (t) = (vj (t))

De este modo ya se tiene un sistema de ecuaciones diferenciales en el que los elementos del vector de estados son los vj . Escrito ms explic a tamente: Cj dvj (t) vj (t) = + dt Rj wji xi (t) + Ij
i

Modelo relacionado Se puede conseguir un sistema en el que los elementos del vector de estados sean las seales de salida de n cada neurona (xj ). Adems, existe una transformacin lineal que relaciona ambos modelos, de tal forma que la a o estructura de atractores de ambos sistemas sea similar. Veamos cmo: o 7

Denimos j = Rj Cj y suponemos que es igual para toda neurona j. Entonces, normalizando el tiempo t respecto de y wij y Ij respecto de Rj , el modelo aditivo se puede expresar: dvj ( tj ) dt = vj ( tj ) j +
i

wji xi ( tj ) j
i

Ij j Ij j

t vj ( tj ) 1 dvj ( j ) = + j dt j

wji xi ( tj ) j

dvj (t) = vj (t) + dt

wji (vi (t)) + Ij


i

Por otro lado, el modelo relacionado es: dxj (t) = xj (t) + ( dt wji xi (t)) + Kj
i

Si a esta ecuacin la multiplicamos por wkj y a continuacin sumamos respecto de j tenemos: o o d


j

wkj xj (t) dt

=
j

wkj xj (t) +
j

wkj ((
i

wji xi (t))) +
j

wkj Kj

Sustituyendo j wkj xj (t) por vk (t) y j wkj Kj por Ik se observa claramente que se llega al modelo aditivo (recordar que las variables empleadas en los sub ndices son variables mudas): dvk (t) = vk (t) + dt wkj (vj (t)) + Ik
j

Manipulacin de atractores: o Una red neuronal recurrente tiene, como ya sabemos, las siguientes propiedades: muchos grados de libertad, no linealidad y disipacin. Ests caracter o a sticas se pueden aprovechar para que la red realice una determinada funcin si se tiene un nmero suciente de neuronas. o u Una de las funciones que puede cumplir es la de memoria asociativa. Se puede almacenar informacin o de tal forma que sea posible recuperarla a partir de patrones incompletos o con algn error. u Para ello hay que conseguir manipular la localizacin de los puntos atractores del sistema, de tal forma que o se aproveche esta circunstacia para resolver el problema. De esta tarea se ocupan los algoritmos de aprendizaje. Una de las formas ms comunes de controlar la estructura de atractores es mediante la minimizacin a o de energ a. Se dene una funcin de energ (como las de Lyapunov) y en los puntos de m o a nima energ a 8

estarn localizados los atractores del sistema. Este mtodo es utilizado por el modelo de Hopeld que se ver a e a a continuacin. o

Modelo de Hopeld: Una red Hopeld consta de un conjunto de neuronas que cumplen la ecuacin del modelo aditivo visto o anteriormente (xi (t) = i (vi (t))): Cj vj (t) dvj (t) = + dt Rj wji i (vi (t)) + Ij
i

La salida de cada neurona se emplea como entrada de todas las dems neuronas de la red. Adems se a a establecen las siguientes condiciones: 1) La matriz de los pesos es simtrica (wji = wij ). e 2) Cada neurona tiene su propia funcin de activacin i . o o 3) La inversa de dicha funcin existe: v = 1 (x). o i i.
i Se toma x = i (v) = tanh( a2v ). Su derivada en v = 0 es

ai 2 .

Se dice que ai es la ganancia de la neurona

Si se dene 1 (x) = log( 1x ), se puede expresar la inversa de la funcin de la neurona i como o 1+x 1 1 1 i (x) = ai (x). Como ya se ha comentado, una forma de asegurar la existencia de puntos atractores es deniendo una funcin de Lyapunov. Se suele llamar funcin de energ y en los puntos de m o o a nima energ del sistema se a encontrarn los puntos atractores. La funcin de energ que se dene para el modelo de Hopeld es la siguiente: a o a E= 1 2 wji xi xj +
i j j

1 Rj

xj 0

1 (x)dx j
j

Ij x j

ndices i Se tiene que cumplir que dE 0. Al derivar el producto xi xj se realiza un intercambio de los dt y j aprovechando que wij = wji , y adems, hay que recordar que 1 (x) = vj . Por tanto a j dE = dt (
j i

wji xi

vj dxj + Ij ) Rj dt

Lo que aparece entre parntesis es exactamente el lado derecho de la ecuacin del modelo aditivo. e o Sustituyendo dE dvj dxj = Cj dt dt dt j 9

dE = dt dE = dt

Cj
j

d1 (xj ) dxj dt dt

Cj
j

d1 (xj ) dxj 2 ( ) dxj dt

Es evidente que dE 0 ya que la capacidad de un condensador es un valor positivo, otro de los trminos e dt de la multiplicacin es un cuadrado, y la derivada de 1 es siempre positiva. Adems, slo es igual a 0 cuando o a o dxj (t) = 0 j. Por tanto, se cumplen los requisitos del segundo teorema de Lyapunov, y los puntos del sistema dt que cumplan que su derivada es 0 sern los puntos de m a nima energ esto es, los puntos atractores del modelo a, de Hopeld.

Una vez establecida la funcin de energ se puede analizar la estructura de atractores del caso continuo o a (con la neurona del modelo aditivo) frente al caso discreto (con la neurona de McCulloch-Pits). Se establecen las siguientes condiciones: 1) Cuando vj + xj = +1, cuando vj xj = 1. 2) j (0) = 0, lo que implica que la seal de sesgo debe ser 0 (Ij = 0 j). n 3) wjj = 0. La salida de una neurona no se emplea para realimentar a la propia neurona, slo a las o dems. a

La funcin de energ del modelo continuo, tras quitarle el trmino correspondiente a la seal de sesgo o a e n 1 y reescribir 1 como aj 1 , quedar a: j E= 1 2 wji xi xj +
i j j

1 aj Rj

xj 0

1 (x)dx

En el modelo discreto, dado que la funcin de activacin es la funcin de Heaviside (o escaln), su o o o o derivada en el origen ser innito, por lo que tendr una ganancia innita. Evidentemente se est tratando a a a de una manera muy informal, interpretando la derivada en un sentido amplio, pero as a la vista de la ecuacin , o anterior, se comprueba fcilmente que la funcin de energ del modelo discreto queda reducida unicamente a: a o a E= 1 2 wji xi xj
i j

Como xj slo puede valer 1 o 1, es evidente que los m o nimos (y los mximos) de energ del modelo a a discreto se encontraran en los vrtices del espacio de estados (un hipercubo). En el modelo continuo la ganancia, e por muy grande que sea, nunca llegar a innito, por lo que los puntos de m a nima energ no se alcanzarn a a exactamente en los vrtices, sino ligeramente desplazados hacia el interior del espacio de estados. e

10

Memoria de contenido direccionable (CAM) Se pretende emplear el modelo discreto de Hopeld como una CAM. La idea es identicar cada uno de los elementos de informacin que se quieren almacenar (memorias fundamentales) con un punto atractor de o una red Hopeld. Entonces, dada una informacin (que puede ser errnea o incompleta) se pretende recuperar o o alguno de los datos almacenados, a ser posible el que ms se parezca a la informacin proporcionada. Para a o ello, se deben establecer los pesos que tendr cada neurona de la red para conseguir los atractores necesarios a para almacenar la informacin (fase de almacenamiento). Una vez hecho eso, para recuperar la informacin, o o se le proporciona a la red una entrada, es decir, se sita al sistema en un estado inicial, y se deja evolucionar u hasta que alcance un punto atractor para devolver la informacin correspondiente a dicho atractor (fase de o recuperacin). Veamos concretamente cmo hacerlo. o o

Se trabaja sobre el modelo de Hopeld con la neurona de McCulloch-Pits (modelo discreto). Si se tienen N neuronas, cada estado de la red se representa mediante un vector N-dimensional, con elementos xi que pueden tomar los valores +1 y 1. El potencial de una neurona se calcula como vj = i wji xi + bj y la salida xj ser a +1 si vj > 0 y 1 si vj < 0. Si fuera vj = 0, la neurona mantendr la salida anterior por convenio. a En la fase de almacenamiento se desea recordar M elementos, identicando cada uno con un vector N-dimensional. A estos vectores se les llama . Segn la regla de aprendizaje de Hebb, los pesos de la red se u deben asignar de la siguiente forma: M 1 wji = ,j ,i N =1 Tambin se puede expresar directamente en notacin matricial, y teniendo en cuenta que wjj = 0, e o resultando W simtrica: e M 1 M T W = I N =1 N De este modo se consigue calcular los pesos de forma rpida y sencilla, y en principo los vectores que se a desean almacenar quedan como puntos jos (atractores) del sistema. En la fase de recuperacin se establece como estado inicial del sistema un vector prueba y se deja o evolucionar el sistema hasta que se alcance un estado que satisfaga la siguiente condicin: o Y = sgn(W Y + B)

Esa es la condicin que cumplen los puntos de estabilidad del sistema. Cuando se detecte que la red est o a en esta situacin, se puede dar por concluida la fase de recuperacin y devolver el elemento correspondiente al o o vector Y (que no tiene porque coincidir con un , como se ver a continuacin). a o La interpretacin algebraica del proceso anterior no es ms que el hecho de proyectar cierto vector (estado o a inicial) sobre un determinado subespacio en un espacio N-dimensional (espacio de estados del sistema). Si al realizar dicha proyeccin, se llega a un resultado correspondiente con uno de los vectores almacenados no hay o problema, pero puede suceder que se obtenga un resultado que no se corresponda con ninguna de las memorias 11

fundamentales almacenadas, y, sin embargo, tambin sea un punto atractor del sistema. A estos puntos, o e estados, se les denomina Spurious States (estados espreos, falsos). No se pueden evitar fcilmente, dado que u a los elementos que queramos almacenar deben ser forzosamente puntos jos del sistema, pero para conseguirlo, a la hora de asignar los pesos, puede que se creen inevitablemente estos estados estables falsos.

Por ultimo, un breve comentario sobre la capacidad de almacenamiento de una red Hopeld. Aunque aparentemente el uso de una red Hopeld como CAM parece plausible, a pesar de los estados espreos, se ha u comprobado que su capacidad de almacenamiento es relativamente baja. Si la red consta de N neuronas, el nmero de memorias fundamentales que es capaz de almacenar es, aproximadamente M = 0.14N si no se le u permite ningn error, y aproximadamente 0.36N si se permite una pequea probabilidad de error. u n

12

3. Modelos feed-forward a. Perceptron de una sola capa i. Definicion


Un perceptrn (de una sola capa) es una neurona articial construida sobre un modelo pseudo-lineal, o matizado por un sesgo y una funcin de activacin. La salida de la neurona viene dada por la composicin de o o o dos funciones v y , que actan sobre la entrada x de la siguiente manera: u
m

v(x) = b +
i=1

wi xi ; (v) =

0, v < 0 1, v > 0 donde b es el sesgo de la combinacin lineal (lo que la convierte en combinacin af o o n).

Esta denicin del funcionamiento del perceptrn es debida a Frank Rosenblatt, y sirve principalmente o o como clasicador de patrones. De la denicin de su funcionamiento, vemos que el perceptrn clasica cada o o entrada dentro de un patrn de dos posibles, el 0 y el 1, dependiendo de donde se site la seal de entrada o u n dentro del espacio de est mulos. Dicho espacio de est mulos queda dividido en dos zonas de clasicacin por la o m accin del perceptrn; la supercie de separacin es el hiperplano b + i=1 wi xi = 0. o o o

ii. Teorema de convergencia del perceptron


Es claro que para cualquier conjunto de patrones que se pueden separar por un hiperplano (i.e. linealmente separable) existe un perceptrn que los puede separar, ajustando adecuadamente los pesos. Se trata o de ver si hay algn mtodo o algoritmo que, dados unos pesos iniciales w(0) arbitrarios en el perceptrn y un u e o conjunto de ejemplos de aprendizaje el perceptrn puede ajustarse para cumplir la funcin de separador lineal o o que le pedimos. Tal algoritmo existe, y es el siguiente: Supongamos dos clases de vectores de dimensin n, que llamaremos C1 y C2 . Supongamos que ambas o clases son linealmente separables (en realidad, af nmente separables, dado que nuestro algoritmo tambin va a e poder modicar el sesgo de la neurona) y que y que deseamos que la salida de la neurona asociada a la clase C1 es 1. En tal caso, denimos el siguiente algoritmo de actualizacin del vector de pesos w(n) del perceptrn: o o 1 ota: usamos w(n) extendido con el sesgo - Si la entrada x(n) pertenece a la clase C1 y (v(x(n))) = 1, entonces hacemos w(n + 1) = w(n). - Si la entrada x(n) pertenece a la clase C2 y (v(x(n))) = 0, entonces hacemos w(n + 1) = w(n). - Si la entrada x(n) pertenece a la clase C1 y (v(x(n))) = 0, entonces hacemos w(n + 1) = w(n) (n)x(n).( es una funcin escalar arbitraria). o - Si la entrada x(n) pertenece a la clase C2 y (v(x(n))) = 1, entonces hacemos w(n + 1) = w(n) (n)x(n). El algoritmo presentado funciona correctamente, como asegura el siguiente Teorema:
1N

13

Teorema: (de convergencia del perceptrn) El algoritmo de correccin de pesos presentado ms arriba o o a converge a un hiperplano que resuelve el problema de la clasicacin de patrones linealmente separables con un o nmero nito de ejemplos. u La prueba del teorema se basa en la bsqueda del nmero m de ejemplos de entrada necesarios para que u u el algoritmo corrector converja; se encuentra buscando cotas superiores e inferiores de dicho valor, que queda nalmente determinado en cada caso en funcin del valor inicial del vector w(0) y del conjunto de ejemplos o presentado, pero que es nito en cualquier caso.

b. Filtros adaptativos i. Definicion


Un ltro adaptativo es un ente formado por una neurona articial y un algoritmo de correccin de o pesos. La neurona articial es modelada mediante un combinador lineal, esto es, produce una salida (en cada iteracin) y(n) que es el resultado de combinar linealmente las entradas xi (n), cada una con su peso wi (n), o caracter stico de la neurona. Los pesos son adaptables, y se modican tras cada salida mediante un algoritmo de correccin. Dicho algoritmo de correccin trata de reducir el error en la salida del algoritmo, calculado como o o la diferencia entre la salida de la neurona y la salida deseada, que llamamos d(n), y que se supone conocida. Cualquier algoritmo de correccin que empleemos, pues, no ser ms que un mtodo iterativo para resolver un o a a e problema de optimizacin, el de encontrar el valor del vector de pesos w0 que minimiza el error e(n) o alguna o funcin dependiente del mismo que tome su valor m o nimo en el mismo punto.

ii. Metodos iterativos de optimizacion


Vamos a ver tres mtodos de optimizacin, todos ellos iterativos, y sus respectivas condiciones de e o convergencia. El primero est basado en la idea ms intuitiva posible, y dene el concepto de parmetro de a a a aprendizaje de un algoritmo, que es de gran relevancia. Los dos siguientes, debidos a Newton y a Gauss, respectivamente, renan la idea usando conceptos estad sticos y de calculo diferencial. En los tres mtodos, la funcin que se minimiza no es directamente el error e(n) sino una funcin de e o o coste (n). En cualquier caso, se minimiza con respecto al vector de pesos w(n). Mtodo de descenso por el gradiente e Este mtodo considera, para cada iteracin, que la forma ms rpida de aproximarse a la solucin e o a a o buscada es moverse en el espacio de los parmtros en la direccin del vector gradiente de la funcin de coste, a o o , y en sentido contrario al mismo, intentando de esta manera aproximarse a la solucin ptima wo mediante o o una aproximacin lineal a tramos de la curva de mxima pendiente de la funcin. o a o As las cosas, la frmula de actualizacin de los pesos es o o w(n + 1) = w(n) (n), donde es el anteriormente mencionado parmetro de aprendizaje. En este mtodo y en los de Newton y Gaussa e Newton, dicho parmetro es constante. Es el valor de este parmetro el que determina el tipo de convergencia a a (o ausencia de la misma) en el mtodo, de la siguiente manera: e - Si es pequeo, la convergencia es suave (sin saltos alrededor de la solucin) y lenta, en general. n o 14

- Si es un poco mayor, la convergencia es ms rpida, pero puede producirse a saltos o en zigzag. a a - Si es demasiado grande, la convergencia puede no producirse, y no acercarse nunca lo suciente a la solucin ptima buscada w0 . o o Mtodo de Newton e La idea bsica del mtodo de Newton es minimizar la aproximacin de Taylor de segundo orden de la a e o funcin de coste (w) en cada iteracin, y utilizar el resultado en la actualizacin del parmetro en la siguiente o o o a iteracin. As la aproximacin de Taylor de segundo orden de (w) es o , o (w(n + 1)) (w(n)) = 1 (n)w(n) + wT (n)H(n)w(n), 2

donde H es la matriz Hessiana de . La diferencia (w(n + 1)) (w(n)) es m nima cuando (n) + H(n)w(n) = 0, de donde obtenemos la frmula de actualizacin o o w(n + 1) = w(n) + H 1 (n) (n)

En general, el mtodo de Newton converge asintticamente con rapidez, y adems, sin los saltos que e o a a veces aparec en el mtodo de mximo decrecimiento. Los inconvenientes principales, por otro lado, son an e a fundamentalente dos: la matriz Hessiana H(n) ha de ser denida positiva para garantizar la convergencia del algoritmo, y adems el algoritmo requiere el conocimiento de dicha matriz Hessiana, lo que implica que la a funcin de coste ha de ser de clase C 2 (Rn ), y adems debemos conocer o calcular sus derivadas. o a Mtodo de Gauss-Newton e El mtodo de Gauss-Newton es una mejora del anterior, que relaja el coste computacional del algoritmo, e al involucrar el clculo de la matriz Jacobiana de la funcin de coste en vez de la Hessiana. El algoritmo no a o funciona para cualquier funcin de coste; ms an, esta debe ser de una forma muy particular: ha de ser de la o a u n forma (w) = 1 i=1 e2 (i). La ecuacin de actualizacin es o o 2 w(n + 1) = w(n) (J T (n)J(n) + I)1 J T (n)e(n), donde J es la matriz jacobiana de la funcin de coste, y el incremento I en el producto de matrices sirve para o garantizar la convergencia del algoritmo, pues este requiere que J sea no singular (y la jacobiana de una funcin o es siempre denida no negativa).

iii. El algoritmo LMS


El algoritmo LMS es el algoritmo ms conocido de correccin de pesos para ltros adaptativos. Es una a o mejora del mtodo de descenso por el gradiente, usando un estimador de dicho gradiente a partir de una derivada e n 1 parcial. Partimos de una funcin de coste como la del mtodo de Gauss, es decir, (w) = 2 i=1 e2 (i). o e Si derivamos con respecto al vector de pesos w, y usamos que la seal de error e se puede calcular como n e(n) = d(n) xT (n)w(n), obtenemos que = e(n)x(n). w 15

Si ahora usamos dicha derivada parcial como un estimador g del vector gradiente g, podemos sustituir en la frmula de actualizacin de pesos del mtodo de descenso por el gradiente, obteniendo una estimacin de o o e o dicha frmula: o w (n + 1) = w (n) + e(n)x(n)

La estimacin de la frmula as obtenida tiene un par de ventajas, una de las cuales salta a la vista de o o manera evidente: la frmula es realmente sencilla de computar. Esto es as porque cada trmino de la frmula o e o es conocido directamente sin necesidad de realizar ningn clculo, salvo una suma en el caso de la seal de u a n error, que hemos de computar en cualquier caso. Ello representa una ventaja muy importante con respecto a los anteriores mtodos, que requer el clculo de derivadas (seguramente por mtodos numricos), y en ocasiones e an a e e de estad sticas relativas a las entradas. La segunda gran ventaja del algoritmo es que, si converge en un entorno estacionario, donde la solucin o ideal w0 es constante, tambin lo hace en un entorno no estacionario, donde w0 = w0 (t). e Vamos a ver ahora qu condiciones han de darse para la convergencia del algoritmo LMS. En general, e se puede asegurar la convergencia si tenemos convergencia en la media, esto es, E(w( n)) = w0 , n , pero esto no nos da ningn criterio prctico para decidir sobre la convergencia del algoritmo. Una condicin ms u a o a fuerte que la convergencia en media y que proporciona criterios ms sencillos en la prctica es la convergencia a a del cuadrado del error, esto es, E(e2 (n) = K), K constante, n . Este segundo criterio se cumple si tenemos que 2 0<< , T raza(H) siendo H la matriz Hessiana de , es decir, T raza(H) =
n i=1

E(x2 ) i

Todo lo anterior se cumple si hacemos una serie de suposiciones sobre la distribucin de los vectores de o entrada y las seales deseadas; todas ellas son razonables, salvo quiz que se pide que tanto la seal d como n a n las entradas x sigan distribuciones normales dentro de su espacio, lo cual, desde luego, no ocurre siempre. Pero cuando ocurre, la convergencia est asegurada tomando positivo y sucientemente pequeo. a n Los principales defectos del algoritmo, a la vista de lo anterior son la posible inestabilidad del algoritmo si la matriz Hessiana de la funcin de coste est muy mal condicionada, lo que obligar a tomar un muy o a a pequeo, y el elevado nmero de iteraciones necesario para que el ltro entrenado por el algoritmo llegue a un n u estado en el que sea util para los nes para los que se disea. n

c. Perceptrones multicapa i. Definicion


El perceptrn de una sola capa resulta muy util como clasicador de patrones, pero resulta de utilidad o limitada debido a que requiere que los patrones que clasica sean linealmente separables (i.e. separables por un hiperplano). El problema se puede intentar resolver cambiando la funcin de activacin de la neurona, usando o o una funcin diferenciable. Esto no resuelve el problema por si solo, pero un sistema de capas como el denido o a continuacin s amplia el conjunto de escenarios en los que un perceptrn puede ser usado como clasicador. o o

16

Un perceptrn multicapa es una red neuronal formada por neuronas de McCulloch-Pitts combinadas o en un sistema de dos o ms capas o niveles en los que la salida de cada nivel alimenta la entrada del siguiente a nivel, salvo el ultimo, cuya salida es la salida propiamente dicha del perceptrn. A la ultima capa se le llama o capa de salida del percptrn, y el resto se les llama capas ocultas. o Cada neurona de la red sigue el modelo de McCulloch-Pitts. Su seal de salida yi , expresada como n funcin de las salidas de la capa anterior (o est o mulos del perceptrn en el caso de la primera capa oculta) o n x, viene dada por la composicin de dos funciones: un combinador lineal v(x) = j=1 xj (n) y una funcin o o diferenciable , que desempear el papel anlogo a la funcin escalon del ltro lineal. n a a o

ii. Algoritmo de retropropagacion


Una vez que hemos denido lo que es un perceptrn de ms de una capa, tenemos que intentar disear o a n un algoritmo para entrenarlo, de manera anloga a como hac a amos con el ltro o el perceptrn de una sola capa. o De hecho, la idea del algoritmo y su prueba es la misma; la tcnica es, claro, ms complicada. e a La idea de un algoritmo de aprendizaje para un perceptrn de varias capas es la retropropagacin. Esto o o signica que el aprendizaje se realiza en sentido opuesto a la computacin, es decir, hacia atrs. Corregiremos o a primero el error en la capa de salida, para la que supondremos conocido el valor de la seal deseada, y usaremos de n forma recursiva los valores conocidos de capas posteriores para actualizar cada una de las capas. Supondremos n 1 una vez ms una funcin de coste (w) de la forma (w) = 2 i=1 e2 (i), con la particularidad de que nos a o referiremos siempre a los errores ei en la capa de salida, independientemente de la neurona que consideremos. Hay dos frmulas de actualizacin de pesos en el algoritmo de retropropagacin, una para el caso general o o o (i.e. para las neuronas de las capas ocultas) y otra para el caso inicial (i.e. para las neuronas de la capa de salida). La frmula de actualizacin para una neurona de la capa de salida es o o wji (n) = ej (vj (n))yi (n) , donde k (n) es una funcin (conocida como gradiente local), y que vale k (n) = ek (n) (vk ) o Para una neurona de una capa oculta, la frmula que se usa es la misma, cambiando el clculo del o a gradiente local. En una de estas neuronas dicho gradiente local viene dado por la expresin o j (n) = j (vj )
iC

i wij

, donde cada i es el gradiente local de la neurona i de la capa posterior. Es aqu donde aparece la recursividad del algoritmo y la necesidad de calcularlo desde delante y hacia atrs, quedando claro el por qu del nombre a e del algoritmo. El algoritmo as calculado sirve para entrenar al conjunto de neuronas que conforma un perceptrn o multicapa de forma que desempee una funcin de clasicacin de patrones de forma mejor que el perceptrn n o o o de una sola capa. El perceptrn multicapa, debido al uso de funciones diferenciables como limitadores en cada o neurona y el sistema de capas, es capaz de clasicar patrones que no sean linealmente separables. En particular, un perceptrn de dos capas y tres neuronas (una en la capa de salida) es capaz de resolver el problema XOR, es o decir, es capaz de simular el comportamiento de una puerta XOR, algo que el perceptrn unicapa de Rosenblatt o no era capaz de hacer. La capacidad de resolver este problema permiti enfrentarse a las cr o ticas que recib an los modelos feed-forward debido a las limitaciones que en ese campo ten el perceptrn, hasta el desarrollo de a o la retropropagacin. o

17

iii. Funciones limitadoras


En la frmula anteriormente desarrollada para el entrenamiento de perceptrones multicapa se supone o conocida la derivada de la funcin que se usa como limitador de la combinacin lineal. Esto es de hecho as dado o o , que esa funcin la dene el diseador. En general, se usan dos funciones para simular la funcin de Heaviside o n o o escaln unitario del perceptrn unicapa. Dichas funciones son la llamda sigmoidal y la tangente hiperblica. o o o As las frmulas (y sus derivadas) son las siguientes: , o - Sigmoidal: (v) = cuya derivada es (v) = a(1 ) 1 , a > 0, v R, 1 + eav

- Tangente hiperblica: o (v) = atgh(bv), a, b > 0, cuya derivada es (v) = b (a )(a + ) a

18

4. Bibliograf a
Para la realizacin del trabajo se ha usado como apoyo la siguiente bibliograf o a:

Hertz, Krogh y Palmer Introduction to the theory of neural computation - Addison-Wesley S. Haykin Neural Networks (2a edicin) - Prentice Hall International o

19

Potrebbero piacerti anche