Fundamentos de Neurocomputacion PDF
Document Details
Uploaded by PrudentRockCrystal
Universidad Nacional de Colombia
Germán J. Hernández, Luz Gloria Torres, Luis Fernando Niño
Tags
Summary
This document provides an introduction to the field of neurocomputation. It covers the historical development and theoretical foundations of computational devices based on neural networks (RNAs). Also presented is a selection of applications of these devices in the areas of science and engineering.
Full Transcript
FUNDAMENTOS D'E NEUROCOMPUTACION Germán J. Hernández' Luz Gloria Torres2, Luis Fernando Niño1 Resumen La teoría "clásica" de la computación se originó...
FUNDAMENTOS D'E NEUROCOMPUTACION Germán J. Hernández' Luz Gloria Torres2, Luis Fernando Niño1 Resumen La teoría "clásica" de la computación se originó en los intentos por entender cómo se efectúan En este documento se realiza una introducción los cálculos en el cerebro humano. Existe una histórica al desarrollo de la neurocomputación, aparente naturaleza secuencial en la forma en se estudian los fundamentos teóricos que des- que se realiza el procesamiento en el cerebro criben el funcionamiento de los dispositivos humano, esta hipótesis surge de la forma como computacionales neuronales, llamados tam- se llevan a cabo las operaciones aritméticas bién Redes Neuronales Artificiales (RNA's) y se (p.e. la suma). A partir de tal hipótesis se desa- menciona una gama de aplicaciones que tienen rrolló una amplia gama de modelos de compu- tales dispositivos en la solución de problemas tación secuencial, entre los cuales está el en Ciencias e Ingenierfa. introducido por Von Newmann , donde una computación es una secuencia de instrucciones Introducción que son ejecutadas para la solución de un pro- blema, a esta secuencia de instrucciones se le Un dispositivo de cómputo cumple dos funcio- llama algoritmo. Los modelos teóricos de la nes fundamentales, la primera es memorizar o computación secuencial tratan de formalizar la almacenar información y la segunda es calcular noción de algoritmo y entre ellos tenemos la o procesar, ésto es, obtener un resultado espe- Máquina de Turing [31 ], la Teoría de cífico a partir de alguna información suministra- la Funciones Recursivas [31 ], el A-Cálcu- da o almacenada. La medida del desempeño de estas dos funciones se conoce como capa- lo de Church , las Gramáticas de Chomsky [31)[39) Y la Máquina RAM de Aho-Ullman cidad de computación del dispositivo. El estudio. de la capacidad de computación de los disposi- tivos se denomina teoría de la computación. En La computación secuencial tiene limitaciones, la actualidad ésta se subdivide en tres ramas: i.e., existen problemas para los cuales no existe la teoría "clásica" de la computación o teoría de un algoritmo que permita solucionarlos y exis- la computación secuencial, la teoría de la com- ten problemas que a pesar de tener solución putación concurrente o distribuida y la teoría de algorítmica, necesitan recursos (en tiempo o es- la computación masivamente paralela. pacio de almacenamiento) que exceden las po- sibilidades reales de solución. Los primeros son llamados problemas no-algorítmicos o no-soíu- Universidad Nacional de Colombia, Departamento de Ingeniería de Sistemas. 2 Universidad Nacional de Colombia, Departamento de Matemáticas y Estadística. Ingenierfa e Investigación 63 QUINCE AÑOS DE INGENIERíA DE SISTEMAS bies secuencialmente y los segundos son lla- busca el establecimiento de modelos computa- mados problemas no-factibles. Debido a esto cionales neuronales se le ha llamado Neuro- surge la necesidad de construir dispositivos de computación (NC) cómputo de mayor capacidad que los secuen-. ciales, que permitan solucionar estos dos tipos de problemas de manera factible. El primer in- En la actualidad la teoría de la computación ma- tento para lograrlo se hace a través de la com- sivamente paralela incluye la Neurocomputa- putación distribuida o concurrente. ción, el estudio de los Autómatas Celulares (AC) [41 ] Y de las Redes de Autó- En la computación concurrente se interconec- matas (RA) , que constituyen el tan varios dispositivos de cómputo secuencial modelo más general conocido de este tipo de que resuelven simultáneamente diferentes par- computación. tes independientes de un mismo problema. En este tipo de computación se pueden resolver sólo En este trabajo se tratará fundamentalmente la problemas algorítmicos y tales que el algoritmo se Neurocomputación, en 2 se hace una introduc- pueda separar en partes independientes simultá- ción histórica a su desarrollo, en 3 se presentan neamente ejecutables, lo cual se tiene únicamen- los fundamentos de redes neuronales artificia- te en casos muy especiales, ésto deja una gran les, en 4 se estudia el aprendizaje o entrena- parte de los problemas no-factibles y los proble- miento de RNAs yen 5 se enumeran algunas mas no-algorítmicos sin solución. de sus aplicaciones. Entre los problemas no solubles por los tipos de Historia computación, anteriormente descritos, se en- cuentra el reconocimiento de imágenes y voz, La fuente de inspiración para el estudio de las el cual es resuelto de manera muy eficiente por RNAs es el sistema nervioso central humano el cerebro humano. Por lo tanto se descarta la (más exactamente el cerebro), sobre el que, hipótesis inicial de un procesamiento secuen- aún en la actualidad, tenemos un escaso cono- cial en el cerebro. En realidad, los estudios en cimiento, y del cual se están investigando am- Neurofisiología han mostrado que el sistema ner- pliamente muchos aspectos. En varias de tales vioso central humano es de naturaleza masiva- investigaciones se usan hipótesis y resultados mente paralela, es una red de células nerviosas obtenidos de la NC. En la medida en que la (neuronas), altamente interconectadas que exhi- Neurofisiología y la Neurobiología nos brinden be una capacidad de cómputo muy alta. mayor información sobre el cerebro y su funcio- namiento, en un futuro cercano, se podrán for- Todo ésto ha conducido al estudio y desarrollo mular mejores modelos que reflejen su de modelos y dispositivos de cómputo masiva- capacidad computacional. mente paralelo. Los más populares son las lla- madas Redes Neuronales Artificiales (RNAs), El origen de la NC se ubica en 1943 con los las cuales pretenden emular las redes neurona- trabajos de McCulloch y Pitts quienes pro- les biológicas formadas por unidades simples pusieron un modelo simple de una neurona ar- no-lineales de procesamiento (neuronas), alta- tificial y probaron que un ensamblaje sincrónico mente interconectadas y que dan lugar a fenó- de estas neuronas, bajo ciertas condiciones, menos dinámicos complejos. El- desarrollo de tiene capacidad de computación (secuencial) tales modelos ha resultado del trabajo conjunto universal, esto es, que puede realizar cualquier en diferentes disciplinas del conocimiento como función que realice una Máquina de Turing o un Neuroñsíoloqla, Matemáticas, Física y Ciencias computador secuencial de cualquier tipo. Du- de la Computación. Al área de investigación que rante los siguientes quince años, se hizo énfasis 64 Ingenierfa e Investigación QUlNCE AÑOS DE INGENIERIA DE SISTEMAS en la lógica de estas redes, se consideraron A partir de 1982 aparece en el escenario el pres- como máquinas de estado finito y se analizó su tigioso físico John Hopfield con dos capacidad de computación. Por otro lado, se artículos que iniciaron un segundo período de desarrollaron algunas teorías en campo de la intensa actividad investigativa en NC. Hoy, las Neurociencia como la Neurodinámica o teoría redes neuronales no solo están revolucionando neuronal de campos que trabajó en la formula- ideas fundamentales en ciencias de computa- ción de ecuaciones diferenciales que describían ción sino que se están convirtiendo en herra- los patrones de actividad 'electromagnética en mientas importantes en campos muy diversos el cerebro. como Ingeniería, Física, Matemáticas, Medici- na, Biología, Estadística, Ciencia Cognoscitiva Alrededor de 1960, Rosenblat y su grupo e Inteligencia Artificial, entre otras. influyeron notablemente en el desarrollo de la NC. Ellos se concentraron en el desarrollo y es- tudio de una red llamada Perceptron capaz de Fundamentos resolver algunos problemas de reconocimiento de redes neuronales artificiales de patrones relacionados con percepción visual. Más tarde, en 1969, Minsky y Papert probaron Las redes neuronales biológicas consisten de que el perceptron era incapaz de realizar algunas muchas células nerviosas comunicadas a tra- tareas sencillas, tales como calcular la función 0- vés de un alto grado de interconexión. Por lo exclusiva (XOR). Implícitamente, defendían la te- tanto, inicialmente se describirán las caracterís- sis de que todas las redes neuronales adolecían ticas esenciales de las neuronas biológicas lo de la misma falla y que era mejor explorar otros cual conduce a un modelo formal de una neu- campos de la Inteligencia Artificial. Debido al plan- rona artificial. teamiento de Minsky y Papert se abandonó el trabajo' intenso en esta área por cerca de 20 Descripción de la neurona biológica años. Durante este lapso, sólo algunos se de- dicaron al desarrollo de la teoría de las redes La Figura 1 muestra un dibujo esquemático de neuronales especialmente en lo relacionado una neurona biológica simplificada. Una red de con las memorias asociativas. fibras nerviosas llamadas dendritas están co- AXON +-- DENDRITAS FIGURA 1. Diagrama exquemático de una neurona. Ingenierla e Investigación 65 QUINCE AÑOS DE ;NGENIERfA DE SISTEMAS nectadas al cuerpo de la neurona llamado soma. refractorio. Una vez pasado este tiempo la neu- Saliendo del soma de la neurona se encuentra rona está en capacidad de volver a disparar. una fibra sencilla larga llamada el axón, el cual se divide en una serie de fibras terminales. McCulloch y Pitts propusieron en 1943 un modelo de neurona o unidad binaria de umbral Una neurona recibe impulsos de otras neuronas (binary threshold unit), inspirado en el compor- a través de las dendritas. Los impulsos que lle- tamiento de las neuronas biológicas típicas. Tal gan son enviados por los terminales de los axo- modelo es explicado en seguida. nes de las otras neuronas. A la conexión entre una de las fibras terminales del axón de una Modelo de neurona de McCulloch-Pitts neurona y una de las dendritas de otra neurona se le llama unión sináptica o sinapsis. Cabe El modelo de neurona de McCulloch-Pitts, lla- anotar que algunas sinapsis van de un terminal mada también unidad binaria de umbral, calcula del axón de una neurona al soma de otra direc- una suma ponderada (weighted sum) de las en- tamente. El axón de una neurona típica hace tradas que tiene desde otras neuronas y coloca miles de sinapsis con otras neuronas. en su salida uno o cero dependiendo de que tal suma supere o no un nivel de umbral asociado La transmisión de una señal de una neurona a a la neurona. La Figura 2 muestra un diagrama otra, a través de una sinapsis, es un complicado esquemático de la neurona de McCulloch-Pitts. 'YsCt) y~t) \'111 y~t2 - Y,Ct) 2 Wj2. ' ~(t) Wij ~ j FIGURA 2. Diagrama Esquemático de la neurona de McCulloch-Pitts. proceso químico, en el cual sustancias transmi- En la Figura 2, se supone que la neurona está soras específicas son enviadas del lado que interconectada con otras neuronas como ella y transmite en la sinapsis. El efecto de tal sustan- las entradas y1(t), Y2(t),... , yj(t) corresponden a cia es generar una baja en el potencial eléctrico las salidas de tales neuronas en el instante t. al interior de la célula receptora. Si el nivel de Además, el valor que ella produce a su salida potencial alcanza un nivel de umbral determina- varía únicamente en instantes de tiempos dis- do, la célula envía un pulso o acción potencial cretos, considerando para su actualización sus de fuerza y duración fija a través de su axón, es entradas en el instante anterior. Se tiene que decir, envía un pulso a todas las neuronas que están conectadas con ella. Cuando esto suce- Yi(t+1): Salida de la i-ésima neurona en el de, se dice que la neurona disparó. Después de instante t+1. disparar, la neurona se mantiene un tiempo fue- ra de actividad, este tiempo es llamado período Wij:Peso (fuerza) de conexión entre la salida de la j-ésima neurona y entrada de la i-ésima neurona. 66 Ingenierfa e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS J.1i: Umbral ae disparo de la i-ésima neurona nera sincrónica (todas se actualizan en cada instante de tiempo) tiene capacidad de compu- Si: R -+ R: Función de respuesta de la i-ésima tación universal. El) otras palabras podría reali- neurona zar cualquier computación que realice un computador secuencial digital, aunque tal com- y la correspondiente ecuación del nodo putación con una red de neuronas puede no ser más rápida o conveniente. yl (t + 1) ~ 81 [~ WIi YI ( t) - ~/] Neuronas biológicas vs. Neuronas de McCulloch-Pitts donde j toma todos los valores correspondien- A continuación se hace un recuento de las ca- tes a los números de las neuronas con las cua- racterísticas de las neuronas biológicas que re- les está interconectada la neurona i y la función coge el modelo de McCulloch-Pitts y se hacen está definida así notar características de tales neuronas que no están reflejadas en el modelo. e f x~ o (x) = lO en1 siotro caso (i) Las neuronas biológicas en general no son ni siquiera aproximadamente dispositivos de umbral como las describe el modelo de es llamada función paso-unitario o función de McCulloch Pitts. En realidad, ellas respon- Heaviside, Figura 3. den a su entrada de una manera continua, Claramente, se observa que la función de res- lo cual es llamado respuesta gradual. Exis- puesta de la neurona es no-lineal y, además, ten modelos de neurona en los cuales la discontinua. La no-linealidad proviene del he- salida es continua y son llamadas unidades cho que las neuronas biológicas tienen la pro- de valor continuo. piedad universal de que su salida tiene una (ii) La no-linealidad de la relación entre las en- relación no-lineal respecto de su entrada. tradas y las salidas sí es una propiedad uni- versal de las neuronas biológicas. Por ello, algunos autores llaman a las neuronas ele- 8(x) mentos no-lineales de procesamiento. 1¡""--- (iii) Las neuronas biológicas producen en su sa- lida una secuencia de pulsos y no un simple nivel de salida ni, y aunque este nivel de sa- x lida represente la frecuencia de disparo de una manera continua se estaría perdiendo información, p. e., con respecto a la fase de FIGURA3. Función paso-unitario o de Heaviside. la señal. Cabe aclarar que muchos investiga- dores consideran que la fase de la señal no juega un papel fundamental en el comporta- La neurona de McCulloch-Pitts es un sencillo miento de las redes neuronales. dispositivo computacional, pero al interconectar varias de estas neuronas se tiene un poderoso (iv) Las neuronas biológicas, en general, no dispositivo computacional, ya se mencionó que tienen un mismo intervalo de tiempo luego una red ensamblada con neuronas de este tipo del cual se actualizan, es decir, no existe y en la cual las neuronas se actualizan de rna- un reloj central que gobierna la actualiza- Ingenierfa e Investigación 67 QUINCE AÑOS DE INGENIERfA DE SISTEMAS ción de todas las neuronas. En realidad, en las redes neuronales biológicas, las neuro- r(x) nas se actualizan de manera asincrónica. Modelo de neurona de McCulloch-Pitts generalizado 1 x Tratando de considerar algunas de las caracte- rísticas no consideradas en el modelo inicial, se FIGURA 4. formuló el modelo generalizado de McCulloch- Pitts, que se resume en una modificación en la Función Sigmoid~ ecuación de nodo. 1 Ecuación del nodo McCulloch-Pitts s(x) = 1 + e-x Generalizado s(x) donde g es una función no-lineal y continua, a la x cual se le conoce como función de respuesta, fun- ción de activación, función de transferencia o fun- ción de ganancia. Nótese que en la nueva ecuación FIGURA 5: de nodo aparece u:=" que significa asignación, es decir, que la expresión de la derecha se le asigna Función Sgn (Signo) a la variable de la izquierda cuando le corresponde a la neurona actualizar su estado, pero que la igual- -1 si x < O dad no es cierta en todo instante de tiempo. sgn(x) = { 1 si x ~ O Este modelo de neurona ya considera que la sgn(x) salida de la neurona es de valor continuo y que 1....---- su actualización puede ser no sincrónica. En general, se supone que para todas las neuronas x.se tiene la misma función de activación, pero -----1-1 existen modelos de redes neuronales en los cuales no ocurre ésto. FIGURA 6. A continuación se dan algunas funciones típicas que se usan como funciones de activación. Redes Neuronales Artificiales RNAs Función Rampa Unidad Las RNAs son modelos en los cuales se tienen elementos computacionales simples (llamados Osix 1 putacionales son en general no-lineales que pueden ser análogos o discretos. Estos ele- mentos computacionales, en general, son neu- 68 Ingenierla e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS ronas de McCulloch-Pitts o elementos que res- ser una red neuronal. En contraposición, en un sis- ponden a modelos similares. tema convencional de computación secuencial, to- do el funcionamiento del sistema puede arruinarse Componentes de una RNA por un solo error o daño en el dispositivo. Una red neuronal queda determinada completa- Las redes neuronales pueden estar compues- mente describiendo tres aspectos de la misma: tas de elementos computacionales lentos, con respecto a los elementos en un sistema de com- (i) Nodos putación secuencial, y sin embargo llevar a ca- La información de los nodos incluye la des- bo tareas de procesamiento complejo de cripción del tipo de las entradas y salidas de manera muy rápida: el ciclo de tiempo de las los nodos o neuronas, p. e., si son discretas neuronas en el cerebro es del orden de milise- o continuas, enteras o decimales. También, gundos, es decir éstas son un millón de veces incluye la descripción del tipo de los pesos más lentas que los elementos de procesamien- (en general números reales), la definición de to en un computador digital, que son las com- la o las funciones de activación de los nodos puertas lógicas construidas con semiconduc- y la ecuación general de nodo. tores. Y como es bien sabido, el cerebro realiza rápidamente tareas complejas como visión, (ii) Topología de la red control motor y toma de decisiones basadas en Descrípclón.de la forma en que se interco- datos incompletos o erróneos. nectan los nodos p.e. si los nodos están organizados en niveles, si tienen conexión Las redes neuronales pueden cumplir tareas de retroalimentación, si es completa la red, aunque la información que se les suministre es- es decir si todos los nodos están conecta- té incompleta o contenga algunos errores. dos con todos, etc. Definición formal de una RNA (iii) Algoritmo de aprendizaje Descripción de la forma de ajustar los pe- Para definir formalmente una RNA se debe de- sos de interconexión entre los nodos, para finir el conjunto del cual los nodos o neuronas que la RNA cumpla una tarea específica. toman sus entradas y salidas, este conjunto es Existen dos categorías de algoritmos de el mismo del cual se toman los pesos de cone- aprendizaje, los supervisados, los no su- xión entre nodos, se requiere que tal conjunto pervisados y por refuerzo, en la sección 4 tenga definida una suma y un producto, que sa- se trata con mayor profundidad este tópico. tisfacen ciertas propiedades, lo que en matemá- ticas se llama un anillo A - (A, +. j (en la Caracterfsticas de las Redes Neuronales mayoría de los casos se toma como A el con- junto de los reales R). A cada nodo v se le asocia Las redes neuronales son robustas (tolerantes una función de activación del anillo en el anillo a fallas), debido a la alta conectividad en la red fv: A -+ A, con ésto quedan especificadas las (para cada neurona se están sumando ponde- características de cada nodo. Por otro lado, pa- radamente muchos términos en su entrada) se ra especificar la topología de una RNA, es decir, tiene que al presentarse errores en algunos de la forma en que están interconectados los no- estos términos podría no tener consecuencias dos, se hace con un digrafo con arcos etiqueta- en el comportamiento global del sistema. Por dos, la etiqueta de un arco es el peso de ejemplo, en el cerebro mueren en todo momen- conexión entre los correspondientes nodos que to neuronas sin que ésto afecte sus funciones, une el arco, este peso,como se mencionó an- lo cual nos da una idea de lo robusta que puede tes, debe estar en el anillo A. Ingenierfa e Investigación 69 QUINCE AÑOS DE INGENIERfA DE SISTEMAS Una RNAse define formalmente como una tripla (iii) Los procedimientos no supervisados, los' cuales construyen modelos internos en la red que capturan regularidades en sus vec- RNA = (A,D,[ ti ]i€V) tores de entrada sin recibir ninguna infor- mación adicional. con Existen frecuentemente formas de convertir (i) A - (A, +. ") Anillo: Conjunto de donde se una clase de procedimiento de aprendizaje en toman las entradas y salidas de los nodos otro. En la mayoría de las redes neuronales que y los pesos de interconexión. tienen capacidad de aprendizaje, pero no en todas, el aprendizaje se lleva a cabo a través de (ii) D - (V, F, E) Digrafo con arcos etiquetados: la modificación de los pesos de los elementos Vértices V, Conjunto de arcos I', y función E: de procesamiento, una forma de aprendizaje r --+ A etiqueta de los arcos. En cada vértice distinta podría ser que se modifiquen las funcio- v E V se encuentra un nodo o elemento de nes de activación. En seguida se desarrolla un procesamiento; E asigna a cada arco en r el modelo mental del proceso de modificación de peso de conexión entre los correspondientes los pesos. nodos que conecta el arco. Para este desarrollo se hacen las siguientes (iii) {ti}i€V conjunto de funciones: ti: A --+ Ade acti- consideraciones: vación, una función para cada nodo, las fun- ciones no son necesariamente distintas. (i) Los pesos pertenecen a los números reales y la ecuación del nodo es (ii) La RNAes finita, esto es, tienen elementos de procesamiento con pesos que son mo- yi: = ti [ LE [(j,i)]*Yi] (j.i)tr dificados por una ley de aprendizaje. El vector de pesos de la red es el vector tor- mado por todos los pesos de todos los ele- con yi la salida de nodo i E V. mentos individuales de procesamiento. En esta definición se incluyen las RNAs discre- Este vector de pesos se puede escribir así: tas y continuas, sincrónicas y asincrónicas, y, finitas o infinitas. W= (W11,W12,... ,W1n,W21,W22,... ,W2n,... ,Wn1,Wn2,... ,Wnn) sea Aprendizaje o entrenamiento Los procedimientos de aprendizaje en RNAs o tenemos aprendizaje conexionista se pueden dividir en tres clases fundamentales: donde los vectores W1, W2,... , Wn son los vec- (i) Los procedimientos supervisados, los cua- tores de pesos de los elementos de procesa- les requieren un "profesor" que especifique miento 1,2,... ,n respectivamente. el vector de salida deseado. El valor de activación ai del nodo i-ésimo (tam- (ii) Los procedimientos de refuerzo (reinforce- bién notado neti) es la suma de las entradas que ment) que solamente requieren una eva- recibe de otras neuronas en la red, ponderada luación escalar de la salida. por los pesos de conexión. 70 Ingenierfa e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS ai = L,Wii Yi cial x, se le llama el patrón de salida y corres- i pondiente a x. Una red se estabiliza cuando su El estado de activación de la red A es el vector configuración no cambia al seguir operando. Se de los estados de activación de cada una de los puede considerar también como patrón de sali- nodos. da aquel que se obtiene después de tiempo fijo de operación. A = (a1.a2,... ,an) Dado un conjunto de parejas de patrones de La salida de cada neurona i, notada Ci, se cal- entrada y patrones de salida correspondientes cula como {(X1,Y1),(X2,Y2),... ,(Xk,Yk)} se considera que la e, = f¡ (ai) ANA ha aprendido si se han modificado los pe- donde ti es la función de activación de la i-ésima sos de manera que cuando se coloca como pa- neurona. Al vector formado por las salidas de trón de entrada Xi la A NA produce como salida las neuronas se le llama configuración de la red. el patrón yi. A continuación se presenta el algo- ritmo de aprendizaje más popular para una cía- e = (C1,c2,... ,Cn) se especial de ANAs. Si se toma el vector F como el vector de la fun- ciones de activación de cada uno de las neuro- Aprendizaje por retropropagaci6n nas, compuesta con la proyección correspon- en RNAs multicapa diente, así: Formalmente una red neuronal multicapa está F= ('1 o P1/2 o pa.... ,tn o pn) definida sobre un digrafo D - (\1, T) vértices Vy se puede calcular la configuración de la red a arcos r acíclico (Le. sin ciclos dirigidos o circui- partir del estado de activación como tos), unidireccional (í.e., todo par de vértices es- tán conectados en por lo menos una dirección), e = F(A) m-partito (Le., el conjunto de vértices tiene una Un patrón de entrada x es un vector de A" que. partición en m subconjuntos V1, V2,... , Vm e V se coloca como configuración inicial de la red. disyuntos Vi n Vj = C/J si l » j, con V = 1 Vi u~ A la configuración que se obtiene cuando se Y tal que para todo arco (u, v) E I', u E Vi Y v estabiliza la red, a partir de la configuración ini- E V¡ con i :F j. Cada uno de los v« se llama una Y.c Capa de Salida Capa Oculta m neuronas Capa de n neuronas Entrada Xl FIGURA 7. RNA multicapa típica. Ingenierla e Investigación 71 QUINCE AÑOS DE INGENIERíA DE SISTEMAS capa). En la figura 7. se ilustran las conexiones de las neuronas en la capa de salida compues- en una RNA multicapa en la que cada nodo en tas con la respectiva proyección, se tiene que a una capa está conectado con todos los nodos la salida de las neuronas de la capa de salida de la capa precedente. se tiene el vector y E Rk dado por y = Fa (Wa h) = Fa (WaFH (WH x)) Se ha probado que solo se requieren tres capas para muchas tareas de aprendizaje de patro- En una red multicapa se considera que los pa- nes, la primera capa se llama capa de entrada, trones de entrenamiento son un conjunto de pa- la segunda capa oculta y la tercera capa de sa- rejas {(X1, Y1), (X2, Y2),... , (Xr, Yr)} donde los lida. Si se considera que las conexiones entre valores que se colocan en la capa de entrada y capas son totales, tenemos la matriz de pesos yi son las salidas de las neuronas de la capa de entre las neuronas en la capa de entrada con n salida al propagar la entrada Xi,. neuronas, numeradas 1,2,,,.,n y la capa oculta con m neuronas, numeradas 1,2,,,.,m, notada Un aprendizaje heurístico robusto para RNA WH (H por hidden). multicapa llamada la regla delta generalizada (ROG) o regla de aprendizaje por retropropaga- W.11 W12.... W_1n] ción (backpropagation learning rule) fue pro- WH='.. W21 W22... W2n puesta por Rummelhart y otros. La ROG es [ una técnica basada en el descenso usando la Wn1 Wm2 Wmn dirección del gradiente para minimizar una fun- donde Wji es el peso de la conexión entre la ción objetivo E(W) que es diferenciable con res- i-ésima neurona de la capa de entrada y j-ésima pecto a cada uno de los pesos en la red (si la neurona de la capa oculta. Si se coloca en las función objetivo es también una función de la neuronas de la capa de entrada un vector x E salida de la red, esto implica que cada función Rn y se considera que FH = (f1 aP1, f2ap2,... , t-. de activación es diferenciable con respecto a a pm) es el vector de las funciones de activación los pesos correspondientes).Sin embargo, la de las neuronas en la capa oculta compuestas principal contribución de Rummelhart, fue pro- con las respectivas proyecciones, se tiene que veer una técnica de optimización distribuida ba- a la salida de las neuronas de la capa oculta se sada en el descenso, usando la dirección del tiene el vector dado por gradiente, tal que las expresiones de descenso h = FH (WHX) que usan el gradiente aparecen como reglas discretas de actualización de los pesos.que uti- La matriz de pesos entre las neuronas en la lizan únicamente información localmente dispo- capa oculta con m neuronas y la capa de salida nible a cada nodo y una cantidad que es con k neuronas, numeradas 1,2,...,k, Wo (O por retropropagada desde los nodos en la penúlti- output) se define así ma capa. A continuación se describe la deduc- W11 W12 W1m] ción de la regla y luego se explica cómo se IAI _ W21 W22 W2m aplica la regla. ""0 -...... [ Wk1 Wk2. Wkm Como ya se dijo atrás, la activación o entrada neta aj al nodo j es una función lineal de las donde Wji es el peso de la conexión entre la salidas Vi, de los nodos que están conectados i-ésima neurona de la capa oculta y j-ésima neu- al nodo j-ésimo y de los pesos wji de tales co- rona de la capa de salida. Si se coloca en las nexiones neuronas de la capa de entrada un vector x E R« y se considera que F« = (f1 o P1, tz o P2,... , t« o pk) es el vector de las funciones de activación (1) aj = L yi Wji 72 Ingenierra e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS BE Tenemos que la salida del nodo j-ésimo, yj es -= y¡-d¡ de valor real yes una función no lineal de su ay¡ entrada total, más exactamente se supone que Se puede aplicar la regla de la cadena para la función de activación de todas las neuronas calcular es la función sigmoideo aE 1 aa¡ (2) y¡ = 1+ e-a¡ obteniendo El propósito es encontrar un conjunto de pesos aE dy; ee que asegure que para cada vector de entrada, el aa¡ - ay¡ da¡ vector de salida producido por la red, sea igual a (o lo suficientemente cercano a) el vector de salida Diferenciando la ecuación (2) se obtiene deseado. Si hay un conjunto fijo finito de casos dVI entrada-salida, el error total en el desempeño de :=..L.!.. = y¡ (1 _ y¡ ) da¡ la red con un conjunto de pesos particulares se y reemplazando en la ecuación anterior, se puede calcular comparando los vectores de salida tiene: deseados y los reales para todos los casos. El error total, E, es definido como BE BE - = - y¡ (1 - y¡ ) aa¡ By¡ (3) E = ~ L ~ (y¡.c - d¡,c)2 por tanto aquí se sabe cómo un cambio en una en- e J trada total a para un nodo de salida afectará el error. donde e es un índice sobre Ios casos (parejas entrada-salida), j es un índice sobre los nodos Ahora, para un peso Wji,de i a j la derivada es de salida, yj es el estado real de un nodo de salida y dj es su estado deseado. ee BE Ba¡ aE --= - --= -y; Para minimizar E usando la dirección del gradien- aW¡; aa¡ aW¡; aa¡ te se necesita calcular la derivada parcial de E con respecto a cada peso en la red. Esto es simple- usando (1), y para la salida del i-ésimo nodo la mente la suma de las derivadas parciales para contribución a cada uno de los casos entrada-salida. BE Para cada caso dado, las derivadas parciales del , error con respecto a cada peso son calculadas en By; dos pasos. El primer paso (paso directo), ya des- que resulta del efecto de ¡sobre j es simplemente crito, consiste en obtener los estados de los nodos en cada capa, determinados por la entrada que reciben de los nodos en la capa precedente, usan- do las ecuaciones (1) Y(2). El segundo paso (paso inverso) propaga las derivadas desde la última por tanto teniendo en cuenta todas las conexio- capa, hacia atrás, hasta la primera capa. El paso nes que salen de la unidad i se tiene inverso empieza calculando aE=~W'; aE para cada nodo de la capa de salida. ay;. aa¡ J By , J Diferenciando (3) para un caso particular, e, y Aquí se acaba de ver cómo calcular aElay para suprimiendo el índice e da cualquier nodo en la penúltima capa cuando se Ingenierla e Investigación 73 QUINCE AÑOS DE INGENIERíA DE SISTEMAS tiene BE/By para todos los nodos en la última 2. Se presenta un patrón de entrenamiento en capa. Por tanto se puede repetir este procedi- las entradas de la red y es propagado hacia miento para calcular este término para las pri- adelante para producir Ye. meras capas restantes. 3. Si el error para el patrón presentado (caso Se puede usar BE/Bw para cambiar los pesos entrada-salida) es menor que una tolerancia después de cada caso entrada-salida. Un es- de aprendizaje (p.e. 0.01) ningún cambio en quema alternativo es acumular BE/Bw sobre to- los pesos ocurre. En otro caso, los pesos dos los casos entrada-salida antes de cambiar son ajustados según: los pesos. La versión más simple del descenso usando el &Wji = r¡5c¡ ye¡ + oc&-1Wji gradiente, es cambiar cada peso en una canti- dad proporcional al acumulado BEIBw. donde, &Wji es el cambio en el peso del nodo i al nodo j cuando se presenta el patrón e, r¡ es BE un término de ganancia (rata de aprendizaje) ~w = - E Bw para E > O (pequeño) oc y es un término de momento, que suaviza el efecto de cambios dramáticos en los pesos, adicionando una fracción del cambio en el pe- este método no converge muy rápidamente, pe- so, & - 1Wji en la presentación del anterior ro puede mejorarse significativamente introdu- patrón, c-t , La señal de error &¡es una medida ciendo un término de aceleración, y se obtiene de la distancia del nivel de activación del nodo j a su nivel deseado. BE ~w (t) = - E - (t) + oc ~ w (t-1) Bw 4. La RDG provee dos reglas para calcular la señal de error de un nodo donde t se incrementa en uno después de usar (i) Para un nodo de salida j: todo el conjunto de casos entrada-salida, y es un factor de decaimiento exponencial entre Oy 1 que ,,_: = (d ' - 11 ,) d~' , (a CJ,) determina la contribución relativa del gradiente ac- ve;¡ CJ T CJ dae¡ tual y los anteriores al cambio en los pesos. (ii) Para un nodo j en una capa escondida: Aplicación de la regla delta d~' ~ generalizada x.. ve;¡ = -' da'.L..J&kW:k , CJ k la suma se hace sobre todos los nodos k a los E(w) = L e, L ~ye - de = 1 12 cuales el nodo j envía su salida. e e FIGURA No. 8 Para la entrada xcla salida dada por la red es ye éJCJWJI oCJWKJ y la deseada es de. 1. La RDG empieza inicializando todos los pe- WKJ sos de conexiones y sesgos (biases) a va- VCJ ~ ~ lores reales pequeños entre -0.5 y 0.5 Xci NODOJ VKJ NODO K escogidos aleatoriamente. 74/ngenierfa e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS Al aplicar las derivadas se tiene: En las Matemáticas, las redes neuronales cons- tituyen por sí mismas un objeto de estudio: los Be¡ = (de¡ - yej) ye¡ (1 - Yej) algoritmos de aprendizaje no son otra cosa que técnicas de optimización de una función costo. En su operación básica, una red multicapa si j es nodo de salida aproxima cualquier función de interés. Los pro- Bej = yej (1 - ye¡) L k 5ck Wjk blemas definidos por iteraciones locales de las funciones de activación que inducen transfor- maciones globales de un espacio multidimen- sional en otro son temas de creciente interés en en otro caso sistemas dinámicos. Como el nombre retropropagación sugiere, la En Estadística, las redes neuronales se pueden idea básica detrás de este cálculo de señales tomar como método alternativo (no lineal) para de error para los nodos ocultos es propagar los clasificación, análisis discriminante, regresión y errores hacia atrás, basados en la discrepancia predicción con resultados satisfactorios. observada entre los valores de los nodos de salida y los esperados para un patrón de entre- En Biología y Neurofisiología se pueden mode- namiento, ver figura 8. Nótese que en la RDG lar sistemas nerviosos de organismos primiti- los pesos se cambian cuando se presenta cada vos, se puede modelar parte del cerebro huma- patrón de entrenamiento. no, áreas corticales, mecanismos de control de movimiento de los ojos, etc. Aplicaciones de las redes neuronales En Ciencias de la Computación se encuentra En la Física, las redes neuronales constituyen que el poder computacional de los sistemas en una herramienta para modelar los fenómenos paralelo es estrictamente mayor que el de la microscópicos de los sistemas físicos. Un tipo máquina de Turing. El problema de la parada, que es insoluble en la teoría de la Computabi- de red neuronal llamado autómata celular lidad clásica, tiene solución en la computabili- provee un modelo discreto simple dad neuronal, en la cual se establece, de ma- para modelar una amplia variedad de fenóme- nera análoga, la insolubilidad del problema de nos naturales y complejos como los modelos la estabilidad. Greenberg-Hasting para la reacción de Belu- sov-Zhabotinsky, el modelo digital de los bilia- En Inteligencia Artificial (lA) encuentra un nuevo res para la mecánica conservativa, los modelos paradigma para la representación del conoci- HPP-GAS, TM-GAS y FHP-GAS de la dinámica miento. En la red neuronal, el conocimiento es de fluidos para la ecuación de Navier-Stokes, una propiedad emergente del comportamiento los sistemas magnéticos y muchos otros. global de la red (visión conexionista), no de su microestructura, en contraste con la visión sim- En Ingeniería se puede utilizar una red de Hop- bólica donde las estructuras del conocimiento field para la reconstrucción de imágenes digita- se codifican explícitamente junto con algoritmos les, para la implementación de circuitos de inferencias que usan esa información. La Ló- eléctricos, para implementaciones ópticas. Por gica Matemática constituye la base teórica de otro lado, se puede utilizar una red de Boltzman la lA ortodoxa, mientras que ninguna rama de para resolver problemas de optimización clasi- las Matemáticas en especial domina una teoría ficados como NP en la teoría de la computación, formal del enfoque conexionista, aunque la Ter- para resolver problemas de optimización en modinámica, la Mecánica Estadística y la Teoría procesamiento de imágenes. de Sistemas Dinámicos han servido en el aná- Ingenierfa e Investigación 75 QUINCE AÑOS DE INGENIERíA DE SISTEMAS lisis de su comportamiento. No se puede decir ejemplo, visión, control de movimiento, apren- que un enfoque sea mejor que el otro. Ambas dizaje, etc.Son muchas las aplicaciones que se tendencias pueden sobrevivir como modelos han implementado y en las que se está traba- útiles en dominios particulares. Algunas tareas jando. A pesar de ésto, solo podemos decir que inteligentes se realizan mejor con las técnicas la neurocomputación está en las primeras eta- tradicionales, mientras que otras tareas que in- pas de desarrollo. Por lo tanto, es muy grande volucran alto grado de paralelismo encuentran el panorama de investigación que se abre en en las redes neuronales una enorme posibilidad todos los campos. para ser solucionadas eficientemente, por 761ngenierla e Investigación QUINCE AÑOS DE INGENIERIA DE SISTEMAS BIBllOGRAFIA 1. Aho A, Hopcroft J.E. and Ullman J.D., The De- 13. Hecht-Nielsen R. Neurocomputing, Addison- sign and Analysis of Computer Algorithms, Ad- Wesley, Reading MA, 1990. dison-Wesly, 1974. 14. Hedlund G.A, Endomorphism and Automorp- 2. Brookshear G. Teoría de la Computación, Addl- hism of the Shift Dynamical System, Math Sys. son-Wesley, 1993. Theory 3 (1969), 320. 3. Ersoy O.K. Signal/lmage Processing and Under- 15. Hernández G., Construcción de memorias aso- standing with Neural Networks, Neural Networks: ciativas binarias sobre redes neuronales, Me- Concepts, Applications and Implementations Vol morias del seminario de redes neuronales U. 1 y 2 (P. Antogneti V. Milutinovic eds.), Prentice- Nacional Bogotá D.C., 1992. Hall, Engelwood Cliffs, N. J., 1992. 16. Hernández G. y Niño L.F., Transformaciones 4. Michel A.N and Farrell J.A. Associative Memo- geométricas en imágenes digitales, Memorias ries via Artificial Neural Networks, IEEE Control 111 encuentro de geométria y sus aplicaciones, Systems Magazine vol 3, (1990),6-17. Bogotá D.C., 1992 17. Hernández G. y Niño L.E, Automatas Celulares 5. Franklin S.P.y Garzón M., Global dynamics in neu- en procesamiento de imágenes, Seminario Mul- ral networks, Complex Systems 3(1989), 29-36. timedia U. Nacional Bogotá D.C., 1993. 6. Franklin S.P. y Garzón M. Computation on 18. Hernández G., Torres L.G. y Niño L.F., Funda- graphs Memphis State University (preimpre- mentos de Redes Neuronales,.Memorias " sion). Congreso de Ingeniería de Sistemas, Bogotá D.C., Nov 1991. 7. Garzón M. Analysis of cellular automata and neural networks (preimpresión) Memphis State 19. Hernández G., Torres L.G., Automatas Celula- University, 1990. res Estocasticos, Rev. Fac. Ciencias U. Valle (sometido para publicación). 8. Garzón M. Cellular automata and discrete neu- ral networks, Physica D 45 (1990), 431-440. 20. Hertz J., Krogh A and Palmer R.G. Introduction to the Theory of Neural Computation, Addison- 9. Garzón M. Graphical words and languages, Wesley 1991. Memphis State University (1990). 21. Hopcroft J.E. and Ullman J.D., Introduction to 10. Garzón M. and Franklin S.P., Neural Comput- Automata Theory, Languages and Computa- abilityjur Internal report Department of Mathe- tion, Addison-Wesley publishing Co., 1979. matical Sciences and Institute for Intelligent Systems. Memphis State University, 1989. 22. Hopfield J.J. Neural Networks and Physical Systems with Emergent Collective Computation 11. Garzón M. and Franklin S., Neural Comput- Abilities, Proc. Natl. Acad. ScL USA April (1982) ability 11, Extenc:!ed Abstract, Proc. 3rd Int. Joint vol 79, 2554-2558. Conf. on Neural Networks (1989), 631-637, Washington D.C. 23. Hopfield J.J., Neurons with Graded Response have Collective Computational Properties Iike 12. Garzón M. and Franklin S., Global Dynamics in those of Two-State Neurons, Proceedings of Neural Networks 11, Complex Systems(1990), National Academy of Science, May (1984) vol 431-440. 81 , 3088-3092. Ingenierla e Investigación 77 QUINCE AÑOS DE INGENIERíA DE SISTEMAS 24. Hopfield J.J. and Tank D.W., Computing with 36. Rosenblatt R., Principies of Neurodynamics, Neural Circuits: A Model, Science August vol NewYork Spartan Books, 1960. 233 (1986), 625-633. 37. Rujan P., Cellular Automata and Statistical Me- 25. Johnsonbaugh R. and Murata T., Petri nets and chanical Models, Statistical Physics, vol 49 marked graphs : Mathematical rnodels of con- (1987), 139-232. current computation Americal Mathematical Montly. October (1982). 38. Rummelhart D.E., Hinton G.e. and Williams R.J. Learning intemal representations by back-propa- 26. Kosko B., Constructing an Associative Memory, gating errors, Nature 323 (1986), 533-536. BYTE Magazine September (1987), pages 137- 144. 39. Sethi R., Lenguajes de Programación: Concep- tos y constructores, Addison-Wesley, 1992. 27. Kosko B., Neural Networks for Signal Proces- sing Prentice-Hall, 1992. 40. Sudkamp T., Automata, Languages and Machi- nespubl Addison-Wesley, 1990. 28. Kosko B., Neural Networks and Fuzzy Systems: A Dynamical Systems Approach, Prentice-Hall, 41. Toffoli T. and Margolus N., Cellular Automata Ma- Englewood Cliffs, N.J, 1992. chines, The MIT Press, London, England, 1986. 29. Lee V.C. et al, Adaptive Stochastic Cellular Au- 42. Torres L.G., Lenguajes sobre grafos, Memorias tomata: Theory Physica 045, (1990), 159-180, del seminario informática e imagen U. Nacional North-Holland. Bogotá D.C., 1992. 30. Lippmann R.P., An Introduction to Computing 43. Torres L.G., Computación secuencial vs. com- with Neural Nets IEEE ASSP Magazine April putación masivamente paralela, Memorias del (1987) pages 4-22. seminario redes neuronales U. Nacional Bogotá D.C., 1992. 31. Manna Z., Mathematical theory of computatio n Ed. MacGrawHiII-Kogakusha, 1974. 44. Torres L.G., Hernández G. y Niño L.F., Automá- tas Celulares, IX Coloquio Distrital de Mate má- 32. McCulloch W.S. and Pitts W., A Logical Calculus ticas y Estadística, Bogotá D.C., 1992. of the Ideas Imminent in Nervous Activity, Bulle- tin Mathematical Biophysics vol 5 (1943),115- 45. Turing A.M., ¿Puede pensar una máquina?, 133. SIGMA Vol 6. (ed. Newman J.R.), Grijalbo Ed., Barcelona, 37-69. 33. Minsky M., Papert S., Perceptrons: An introduc- tion to computational geometry, MIT press 46. Von Neumann J., Teoría general y lógica de dis- (1969). positivos automáticos, SIGMA Vol 6. (ed. New- man J.R.), Grijalbo Ed., Barcelona, 8-35. 34. Narendra K. and Thathachar M.A.L., Learning Automata: An Introduction Prentice-Hall, 1989. 47. Wolfram S., Statistical mechanics of cellular au- tomata, Rev. of Modern Phys. vol 55 (1983), 35. Niño L.F. AMNIAC : Red Neuronal Universal, 601-644. Memorias seminario Redes Neuronales U. Na- cional Bogotá D.C. (1992). 78 Ingenierfa e Investigación