16
FUNDAMENTOS D'E NEUROCOMPUTACION Germán J. Hernández' Luz Gloria Torres 2 , Luis Fernando Niño 1 Resumen En este documento se realiza una introducción histórica al desarrollo de la neurocomputación, se estudian los fundamentos teóricos que des- criben el funcionamiento de los dispositivos computacionales neuronales, llamados tam- bién Redes Neuronales Artificiales (RNA's) y se menciona una gama de aplicaciones que tienen tales dispositivos en la solución de problemas en Ciencias e Ingenierfa. Introducción Un dispositivo de cómputo cumple dos funcio- nes fundamentales, la primera es memorizar o almacenar información y la segunda es calcular o procesar, ésto es, obtener un resultado espe- cífico a partir de alguna información suministra- da o almacenada. La medida del desempeño de estas dos funciones se conoce como capa- 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 actualidad ésta se subdivide en tres ramas: la teoría "clásica" de la computación o teoría de la computación secuencial, la teoría de la com- putación concurrente o distribuida y la teoría de la computación masivamente paralela. La teoría "clásica" de la computación se originó en los intentos por entender cómo se efectúan los cálculos en el cerebro humano. Existe una aparente naturaleza secuencial en la forma en que se realiza el procesamiento en el cerebro humano, esta hipótesis surge de la forma como se llevan a cabo las operaciones aritméticas (p.e. la suma). A partir de tal hipótesis se desa- rrolló una amplia gama de modelos de compu- tación secuencial, entre los cuales está el introducido por Von Newmann [46], donde una computación es una secuencia de instrucciones que son ejecutadas para la solución de un pro- blema, a esta secuencia de instrucciones se le llama algoritmo. Los modelos teóricos de la computación secuencial tratan de formalizar la noción de algoritmo y entre ellos tenemos la Máquina de Turing [2][31 ][40][45], la Teoría de la Funciones Recursivas [2][31 ][40], el A-Cálcu- lo de Church [39], las Gramáticas de Chomsky [31)[39)[40] Y la Máquina RAM de Aho-Ullman [1][21]. La computación secuencial tiene limitaciones, i.e., existen problemas para los cuales no existe un algoritmo que permita solucionarlos y exis- ten problemas que a pesar de tener solución algorítmica, necesitan recursos (en tiempo o es- 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

FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

FUNDAMENTOSD'E NEUROCOMPUTACION

Germán J. Hernández'Luz Gloria Torres2, Luis Fernando Niño1

Resumen

En este documento se realiza una introducciónhistórica al desarrollo de la neurocomputación,se estudian los fundamentos teóricos que des-criben el funcionamiento de los dispositivoscomputacionales neuronales, llamados tam-bién Redes Neuronales Artificiales (RNA's) y semenciona una gama de aplicaciones que tienentales dispositivos en la solución de problemasen Ciencias e Ingenierfa.

Introducción

Un dispositivo de cómputo cumple dos funcio-nes fundamentales, la primera es memorizar oalmacenar información y la segunda es calcularo procesar, ésto es, obtener un resultado espe-cífico a partir de alguna información suministra-da o almacenada. La medida del desempeñode estas dos funciones se conoce como capa-cidad de computación del dispositivo. El estudiode la capacidad de computación de los disposi-tivos se denomina teoría de la computación. Enla actualidad ésta se subdivide en tres ramas:la teoría "clásica" de la computación o teoría dela computación secuencial, la teoría de la com-putación concurrente o distribuida y la teoría dela computación masivamente paralela.

La teoría "clásica" de la computación se originóen los intentos por entender cómo se efectúanlos cálculos en el cerebro humano. Existe unaaparente naturaleza secuencial en la forma enque se realiza el procesamiento en el cerebrohumano, esta hipótesis surge de la forma comose llevan a cabo las operaciones aritméticas(p.e. la suma). A partir de tal hipótesis se desa-rrolló una amplia gama de modelos de compu-tación secuencial, entre los cuales está elintroducido por Von Newmann [46], donde unacomputación es una secuencia de instruccionesque son ejecutadas para la solución de un pro-blema, a esta secuencia de instrucciones se lellama algoritmo. Los modelos teóricos de lacomputación secuencial tratan de formalizar lanoción de algoritmo y entre ellos tenemos laMáquina de Turing [2][31 ][40][45], la Teoría dela Funciones Recursivas [2][31 ][40], el A-Cálcu-lo de Church [39], las Gramáticas de Chomsky[31)[39)[40] Y la Máquina RAM de Aho-Ullman[1][21].

La computación secuencial tiene limitaciones,i.e., existen problemas para los cuales no existeun algoritmo que permita solucionarlos y exis-ten problemas que a pesar de tener soluciónalgorítmica, necesitan recursos (en tiempo o es-pacio de almacenamiento) que exceden las po-sibilidades reales de solución. Los primeros sonllamados 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

Page 2: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERíA DE SISTEMAS

bies secuencialmente y los segundos son lla-mados problemas no-factibles. Debido a estosurge la necesidad de construir dispositivos decómputo de mayor capacidad que los secuen-ciales, que permitan solucionar estos dos tiposde problemas de manera factible. El primer in-tento para lograrlo se hace a través de la com-putación distribuida o concurrente.

En la computación concurrente se interconec-tan varios dispositivos de cómputo secuencialque resuelven simultáneamente diferentes par-tes independientes de un mismo problema. Eneste tipo de computación se pueden resolver sóloproblemas algorítmicos y tales que el algoritmo sepueda separar en partes independientes simultá-neamente ejecutables, lo cual se tiene únicamen-te en casos muy especiales, ésto deja una granparte de los problemas no-factibles y los proble-mas no-algorítmicos sin solución.

Entre los problemas no solubles por los tipos decomputación, anteriormente descritos, se en-cuentra el reconocimiento de imágenes y voz,el cual es resuelto de manera muy eficiente porel cerebro humano. Por lo tanto se descarta lahipótesis inicial de un procesamiento secuen-cial en el cerebro. En realidad, los estudios enNeurofisiología han mostrado que el sistema ner-vioso central humano es de naturaleza masiva-mente paralela, es una red de células nerviosas(neuronas), altamente interconectadas que exhi-be una capacidad de cómputo muy alta.

Todo ésto ha conducido al estudio y desarrollode modelos y dispositivos de cómputo masiva-mente paralelo. Los más populares son las lla-madas Redes Neuronales Artificiales (RNAs),las cuales pretenden emular las redes neurona-les biológicas formadas por unidades simplesno-lineales de procesamiento (neuronas), alta-mente interconectadas y que dan lugar a fenó-menos dinámicos complejos. El-desarrollo detales modelos ha resultado del trabajo conjuntoen diferentes disciplinas del conocimiento comoNeuroñsíoloqla, Matemáticas, Física y Cienciasde la Computación. Al área de investigación que

64 Ingenierfa e Investigación

busca el establecimiento de modelos computa-cionales neuronales se le ha llamado Neuro-computación (NC) [1] [10] [11] [13] [18] [20] [27][28] [30].

En la actualidad la teoría de la computación ma-sivamente paralela incluye la Neurocomputa-ción, el estudio de los Autómatas Celulares (AC)[7][17][19][41 ][44][47] Y de las Redes de Autó-matas (RA) [6][7][42][43], que constituyen elmodelo más general conocido de este tipo decomputación.

En este trabajo se tratará fundamentalmente laNeurocomputación, en 2 se hace una introduc-ción histórica a su desarrollo, en 3 se presentanlos fundamentos de redes neuronales artificia-les, en 4 se estudia el aprendizaje o entrena-miento de RNAs yen 5 se enumeran algunasde sus aplicaciones.

Historia

La fuente de inspiración para el estudio de lasRNAs es el sistema nervioso central humano(más exactamente el cerebro), sobre el que,aún en la actualidad, tenemos un escaso cono-cimiento, y del cual se están investigando am-pliamente muchos aspectos. En varias de talesinvestigaciones se usan hipótesis y resultadosobtenidos de la NC. En la medida en que laNeurofisiología y la Neurobiología nos brindenmayor información sobre el cerebro y su funcio-namiento, en un futuro cercano, se podrán for-mular mejores modelos que reflejen sucapacidad computacional.

El origen de la NC se ubica en 1943 con lostrabajos de McCulloch y Pitts [32] quienes pro-pusieron un modelo simple de una neurona ar-tificial y probaron que un ensamblaje sincrónicode estas neuronas, bajo ciertas condiciones,tiene capacidad de computación (secuencial)universal, esto es, que puede realizar cualquierfunción que realice una Máquina de Turing o uncomputador secuencial de cualquier tipo. Du-rante los siguientes quince años, se hizo énfasis

Page 3: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUlNCE AÑOS DE INGENIERIA DE SISTEMAS

en la lógica de estas redes, se consideraroncomo máquinas de estado finito y se analizó sucapacidad de computación. Por otro lado, sedesarrollaron algunas teorías en campo de laNeurociencia como la Neurodinámica o teoríaneuronal de campos que trabajó en la formula-ción de ecuaciones diferenciales que describíanlos patrones de actividad 'electromagnética enel cerebro.

Alrededor de 1960, Rosenblat y su grupo [36]influyeron notablemente en el desarrollo de laNC. Ellos se concentraron en el desarrollo y es-tudio de una red llamada Perceptron capaz deresolver algunos problemas de reconocimientode patrones relacionados con percepción visual.Más tarde, en 1969, Minsky y Papert [33] probaronque el perceptron era incapaz de realizar algunastareas sencillas, tales como calcular la función 0-

exclusiva (XOR). Implícitamente, defendían la te-sis de que todas las redes neuronales adolecíande la misma falla y que era mejor explorar otroscampos de la Inteligencia Artificial. Debido al plan-teamiento de Minsky y Papert se abandonó eltrabajo' intenso en esta área por cerca de 20años. Durante este lapso, sólo algunos se de-dicaron al desarrollo de la teoría de las redesneuronales especialmente en lo relacionadocon las memorias asociativas.

FIGURA 1. Diagrama exquemático de una neurona.

A partir de 1982 aparece en el escenario el pres-tigioso físico John Hopfield [22][23][24] con dosartículos que iniciaron un segundo período deintensa actividad investigativa en NC. Hoy, lasredes neuronales no solo están revolucionandoideas fundamentales en ciencias de computa-ción sino que se están convirtiendo en herra-mientas importantes en campos muy diversoscomo Ingeniería, Física, Matemáticas, Medici-na, Biología, Estadística, Ciencia Cognoscitivae Inteligencia Artificial, entre otras.

Fundamentosde redes neuronales artificiales

Las redes neuronales biológicas consisten demuchas células nerviosas comunicadas a tra-vés de un alto grado de interconexión. Por lotanto, inicialmente se describirán las caracterís-ticas esenciales de las neuronas biológicas locual conduce a un modelo formal de una neu-rona artificial.

Descripción de la neurona biológica

La Figura 1 muestra un dibujo esquemático deuna neurona biológica simplificada. Una red defibras nerviosas llamadas dendritas están co-

AXON

+--DENDRITAS

Ingenierla e Investigación 65

Page 4: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE ;NGENIERfA DE SISTEMAS

'YsCt)y~t) \'111

y~t2Y,Ct) Wj2- 2

• ••.'~

~(t) Wijj

nectadas al cuerpo de la neurona llamado soma.Saliendo del soma de la neurona se encuentrauna fibra sencilla larga llamada el axón, el cual sedivide en una serie de fibras terminales.

Una neurona recibe impulsos de otras neuronasa través de las dendritas. Los impulsos que lle-gan son enviados por los terminales de los axo-nes de las otras neuronas. A la conexión entreuna de las fibras terminales del axón de unaneurona y una de las dendritas de otra neuronase le llama unión sináptica o sinapsis. Cabeanotar que algunas sinapsis van de un terminaldel axón de una neurona al soma de otra direc-tamente. El axón de una neurona típica hacemiles de sinapsis con otras neuronas.

La transmisión de una señal de una neurona aotra, a través de una sinapsis, es un complicado

refractorio. Una vez pasado este tiempo la neu-rona está en capacidad de volver a disparar.

McCulloch y Pitts [32] propusieron en 1943 unmodelo de neurona o unidad binaria de umbral(binary threshold unit), inspirado en el compor-tamiento de las neuronas biológicas típicas. Talmodelo es explicado en seguida.

Modelo de neurona de McCulloch-Pitts

El modelo de neurona de McCulloch-Pitts, lla-mada también unidad binaria de umbral, calculauna suma ponderada (weighted sum) de las en-tradas que tiene desde otras neuronas y colocaen su salida uno o cero dependiendo de que talsuma supere o no un nivel de umbral asociadoa la neurona. La Figura 2 muestra un diagramaesquemático de la neurona de McCulloch-Pitts.

FIGURA 2. Diagrama Esquemático de la neurona de McCulloch-Pitts.

proceso químico, en el cual sustancias transmi-soras específicas son enviadas del lado quetransmite en la sinapsis. El efecto de tal sustan-cia es generar una baja en el potencial eléctricoal interior de la célula receptora. Si el nivel depotencial alcanza un nivel de umbral determina-do, la célula envía un pulso o acción potencialde fuerza y duración fija a través de su axón, esdecir, envía un pulso a todas las neuronas queestán conectadas con ella. Cuando esto suce-de, se dice que la neurona disparó. Después dedisparar, la neurona se mantiene un tiempo fue-ra de actividad, este tiempo es llamado período

66 Ingenierfa e Investigación

En la Figura 2, se supone que la neurona estáinterconectada con otras neuronas como ella ylas entradas y1(t), Y2(t), ... , yj(t) corresponden alas salidas de tales neuronas en el instante t.Además, el valor que ella produce a su salidavaría únicamente en instantes de tiempos dis-cretos, considerando para su actualización susentradas en el instante anterior. Se tiene que

Yi(t+1): Salida de la i-ésima neurona en elinstante t+1.

Wij: Peso (fuerza) de conexión entre la salidade la j-ésima neurona y entrada de la i-ésimaneurona.

Page 5: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERIA DE SISTEMAS

J.1i:Umbral ae disparo de la i-ésima neurona

Si:R -+ R: Función de respuesta de la i-ésimaneurona

y la correspondiente ecuación del nodo

yl (t + 1) ~ 81 [~ WIi YI ( t) - ~/]

donde j toma todos los valores correspondien-tes a los números de las neuronas con las cua-les está interconectada la neurona i y la funciónestá definida así

e f 1 si x ~ o(x) = lO en otro caso

es llamada función paso-unitario o función deHeaviside, Figura 3.

Claramente, se observa que la función de res-puesta de la neurona es no-lineal y, además,discontinua. La no-linealidad proviene del he-cho que las neuronas biológicas tienen la pro-piedad universal de que su salida tiene unarelación no-lineal respecto de su entrada.

8(x)

1¡""---

x

FIGURA3. Función paso-unitario o de Heaviside.

La neurona de McCulloch-Pitts es un sencillodispositivo computacional, pero al interconectarvarias de estas neuronas se tiene un poderosodispositivo computacional, ya se mencionó queuna red ensamblada con neuronas de este tipoy en la cual las neuronas se actualizan de rna-

nera sincrónica (todas se actualizan en cadainstante de tiempo) tiene capacidad de compu-tación universal. El) otras palabras podría reali-zar cualquier computación que realice uncomputador secuencial digital, aunque tal com-putación con una red de neuronas puede no sermás rápida o conveniente.

Neuronas biológicas vs.Neuronas de McCulloch-Pitts

A continuación se hace un recuento de las ca-racterísticas de las neuronas biológicas que re-coge el modelo de McCulloch-Pitts y se hacennotar características de tales neuronas que noestán reflejadas en el modelo.

(i) Las neuronas biológicas en general no sonni siquiera aproximadamente dispositivosde umbral como las describe el modelo deMcCulloch Pitts. En realidad, ellas respon-den a su entrada de una manera continua,lo cual es llamado respuesta gradual. Exis-ten modelos de neurona en los cuales lasalida es continua y son llamadas unidadesde valor continuo.

(ii) La no-linealidad de la relación entre las en-tradas y las salidas sí es una propiedad uni-versal de las neuronas biológicas. Por ello,algunos autores llaman a las neuronas ele-mentos no-lineales de procesamiento.

(iii) Las neuronas biológicas producen en su sa-lida una secuencia de pulsos y no un simplenivel de salida ni, y aunque este nivel de sa-lida represente la frecuencia de disparo deuna manera continua se estaría perdiendoinformación, p. e., con respecto a la fase dela señal. Cabe aclarar que muchos investiga-dores consideran que la fase de la señal nojuega un papel fundamental en el comporta-miento de las redes neuronales.

(iv) Las neuronas biológicas, en general, notienen un mismo intervalo de tiempo luegodel cual se actualizan, es decir, no existeun reloj central que gobierna la actualiza-

Ingenierfa e Investigación 67

Page 6: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERfA DE SISTEMAS

ción de todas las neuronas. En realidad, enlas redes neuronales biológicas, las neuro-nas se actualizan de manera asincrónica.

Modelo de neurona de McCulloch-Pittsgeneralizado

Tratando de considerar algunas de las caracte-rísticas no consideradas en el modelo inicial, seformuló el modelo generalizado de McCulloch-Pitts, que se resume en una modificación en laecuación de nodo.

Ecuación del nodo McCulloch-PittsGeneralizado

donde g es una función no-lineal y continua, a lacual 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ónde nodo aparece u:=" que significa asignación, esdecir, que la expresión de la derecha se le asignaa la variable de la izquierda cuando le correspondea la neurona actualizar su estado, pero que la igual-dad no es cierta en todo instante de tiempo.

Este modelo de neurona ya considera que lasalida de la neurona es de valor continuo y quesu actualización puede ser no sincrónica. Engeneral, se supone que para todas las neuronas.se tiene la misma función de activación, peroexisten modelos de redes neuronales en loscuales no ocurre ésto.

A continuación se dan algunas funciones típicasque se usan como funciones de activación.

Función Rampa Unidad

{

Osix<Or(x) = x si x E [ 0,1]

1 si x > 1

68 Ingenierla e Investigación

r(x)

1 x

FIGURA 4.

Función Sigmoid~

1s(x) = 1 + e-x

s(x)

x

FIGURA 5:

Función Sgn (Signo)

{-1 si x < O

sgn(x) = 1 si x ~ O

sgn(x)

1....----

x

-----1-1

FIGURA 6.

Redes Neuronales Artificiales RNAs

Las RNAs son modelos en los cuales se tienenelementos computacionales simples (llamadosneuronas, nodos, células o unidades) densa-mente interconectados. Tales elementos com-putacionales son en general no-lineales quepueden ser análogos o discretos. Estos ele-mentos computacionales, en general, son neu-

Page 7: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERIA DE SISTEMAS

ronas de McCulloch-Pitts o elementos que res-ponden a modelos similares.

Componentes de una RNA

Una red neuronal queda determinada completa-mente describiendo tres aspectos de la misma:

(i) NodosLa información de los nodos incluye la des-cripción del tipo de las entradas y salidas delos nodos o neuronas, p. e., si son discretaso continuas, enteras o decimales. También,incluye la descripción del tipo de los pesos(en general números reales), la definición dela o las funciones de activación de los nodosy la ecuación general de nodo.

(ii) Topología de la redDescrípclón.de la forma en que se interco-nectan los nodos p.e. si los nodos estánorganizados en niveles, si tienen conexiónde retroalimentación, si es completa la red,es decir si todos los nodos están conecta-dos con todos, etc.

(iii) Algoritmo de aprendizajeDescripción de la forma de ajustar los pe-sos de interconexión entre los nodos, paraque la RNA cumpla una tarea específica.Existen dos categorías de algoritmos deaprendizaje, los supervisados, los no su-pervisados y por refuerzo, en la sección 4se trata con mayor profundidad este tópico.

Caracterfsticas de las Redes Neuronales

Las redes neuronales son robustas (tolerantesa fallas), debido a la alta conectividad en la red(para cada neurona se están sumando ponde-radamente muchos términos en su entrada) setiene que al presentarse errores en algunos deestos términos podría no tener consecuenciasen el comportamiento global del sistema. Porejemplo, en el cerebro mueren en todo momen-to neuronas sin que ésto afecte sus funciones,lo cual nos da una idea de lo robusta que puede

ser una red neuronal. En contraposición, en un sis-tema convencional de computación secuencial, to-do el funcionamiento del sistema puede arruinarsepor un solo error o daño en el dispositivo.

Las redes neuronales pueden estar compues-tas de elementos computacionales lentos, conrespecto a los elementos en un sistema de com-putación secuencial, y sin embargo llevar a ca-bo tareas de procesamiento complejo demanera muy rápida: el ciclo de tiempo de lasneuronas en el cerebro es del orden de milise-gundos, es decir éstas son un millón de vecesmás lentas que los elementos de procesamien-to en un computador digital, que son las com-puertas lógicas construidas con semiconduc-tores. Y como es bien sabido, el cerebro realizarápidamente tareas complejas como visión,control motor y toma de decisiones basadas endatos incompletos o erróneos.

Las redes neuronales pueden cumplir tareasaunque la información que se les suministre es-té incompleta o contenga algunos errores.

Definición formal de una RNA

Para definir formalmente una RNA se debe de-finir el conjunto del cual los nodos o neuronastoman sus entradas y salidas, este conjunto esel mismo del cual se toman los pesos de cone-xión entre nodos, se requiere que tal conjuntotenga definida una suma y un producto, que sa-tisfacen ciertas propiedades, lo que en matemá-ticas se llama un anillo A - (A, +. j (en lamayoría de los casos se toma como A el con-junto de los reales R). A cada nodo v se le asociauna función de activación del anillo en el anillofv: A -+ A, con ésto quedan especificadas lascaracterísticas de cada nodo. Por otro lado, pa-ra especificar la topología de una RNA, es decir,la forma en que están interconectados los no-dos, se hace con un digrafo con arcos etiqueta-dos, la etiqueta de un arco es el peso deconexión entre los correspondientes nodos queune el arco, este peso,como se mencionó an-tes, debe estar en el anillo A.

Ingenierfa e Investigación 69

Page 8: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERfA DE SISTEMAS

Una RNAse define formalmente como una tripla

RNA = (A,D,[ ti ]i€V)

con

(i) A - (A, +. ") Anillo: Conjunto de donde setoman las entradas y salidas de los nodosy los pesos de interconexión.

(ii) D - (V, F, E) Digrafo con arcos etiquetados:Vértices V, Conjunto de arcos I',y función E:r --+ A etiqueta de los arcos. En cada vérticev E V se encuentra un nodo o elemento deprocesamiento; E asigna a cada arco en r elpeso de conexión entre los correspondientesnodos que conecta el arco.

(iii) {ti}i€V conjunto de funciones: ti: A --+ Ade acti-vación, una función para cada nodo, las fun-ciones no son necesariamente distintas.

y la ecuación del nodo es

yi: = ti [ LE [(j,i)]*Yi](j.i)tr

con yi la salida de nodo i E V.

En esta definición se incluyen las RNAs discre-tas y continuas, sincrónicas y asincrónicas, y,finitas o infinitas.

(iii) Los procedimientos no supervisados, los'cuales construyen modelos internos en lared que capturan regularidades en sus vec-tores de entrada sin recibir ninguna infor-mación adicional.

Existen frecuentemente formas de convertiruna clase de procedimiento de aprendizaje enotro. En la mayoría de las redes neuronales quetienen capacidad de aprendizaje, pero no entodas, el aprendizaje se lleva a cabo a través dela modificación de los pesos de los elementosde procesamiento, una forma de aprendizajedistinta podría ser que se modifiquen las funcio-nes de activación. En seguida se desarrolla unmodelo mental del proceso de modificación delos pesos.

Para este desarrollo se hacen las siguientesconsideraciones:

(i) Los pesos pertenecen a los númerosreales

(ii) La RNAes finita, esto es, tienen elementosde procesamiento con pesos que son mo-dificados por una ley de aprendizaje. Elvector de pesos de la red es el vector tor-mado por todos los pesos de todos los ele-mentos individuales de procesamiento.

Este vector de pesos se puede escribir así:

W = (W11,W12, ... ,W1n,W21,W22, ... ,W2n, ... ,Wn1,Wn2, ... ,Wnn)

sea

Aprendizaje o entrenamiento

Los procedimientos de aprendizaje en RNAs o tenemosaprendizaje conexionista se pueden dividir entres clases fundamentales:

(i) Los procedimientos supervisados, los cua-les requieren un "profesor" que especifiqueel vector de salida deseado.

(ii) Los procedimientos de refuerzo (reinforce-ment) que solamente requieren una eva-luación escalar de la salida.

70 Ingenierfa e Investigación

donde los vectores W1, W2, ... , Wn son los vec-tores de pesos de los elementos de procesa-miento 1,2,...,n respectivamente.

El valor de activación ai del nodo i-ésimo (tam-bién notado neti) es la suma de las entradas querecibe de otras neuronas en la red, ponderadapor los pesos de conexión.

Page 9: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERIA DE SISTEMAS

ai = L,Wii Yii

El estado de activación de la red A es el vectorde los estados de activación de cada una de losnodos.

A = (a1.a2,... ,an)

La salida de cada neurona i, notada Ci, se cal-cula como

e, = f¡ (ai)

donde ti es la función de activación de la i-ésimaneurona. Al vector formado por las salidas delas neuronas se le llama configuración de la red.

e = (C1,c2,... ,Cn)

Si se toma el vector F como el vector de la fun-ciones de activación de cada uno de las neuro-nas, compuesta con la proyección correspon-diente, así:

F = ('1 o P1/2 o pa. ... ,tn o pn)

se puede calcular la configuración de la red apartir del estado de activación como

e = F(A)

Un patrón de entrada x es un vector de A" que .se coloca como configuración inicial de la red.A la configuración que se obtiene cuando seestabiliza la red, a partir de la configuración ini-

cial x, se le llama el patrón de salida y corres-pondiente a x. Una red se estabiliza cuando suconfiguración no cambia al seguir operando. Sepuede considerar también como patrón de sali-da aquel que se obtiene después de tiempo fijode operación.

Dado un conjunto de parejas de patrones deentrada y patrones de salida correspondientes{(X1,Y1),(X2,Y2), ... ,(Xk,Yk)} se considera que laANA ha aprendido si se han modificado los pe-sos de manera que cuando se coloca como pa-trón de entrada Xi la ANA produce como salidael patrón yi. A continuación se presenta el algo-ritmo de aprendizaje más popular para una cía-se especial de ANAs.

Aprendizaje por retropropagaci6nen RNAs multicapa

Formalmente una red neuronal multicapa estádefinida sobre un digrafo D - (\1, T) vértices Vyarcos r acíclico (Le. sin ciclos dirigidos o circui-tos), unidireccional (í.e., todo par de vértices es-tán conectados en por lo menos una dirección),m-partito (Le., el conjunto de vértices tiene unapartición en m subconjuntos V1, V2, ... , Vm e Vdisyuntos Vi n Vj = C/J si l » j, con V = u~1 ViY tal que para todo arco (u, v) E I',u E Vi Y vE V¡ con i :F j. Cada uno de los v« se llama una

Y.c

Capa deSalida

CapaOculta

Capa deEntrada

Xl

FIGURA 7. RNA multicapa típica.

• • •

m neuronas

••• n neuronas

Ingenierla e Investigación 71

Page 10: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERíA DE SISTEMAS

capa). En la figura 7. se ilustran las conexionesen una RNA multicapa en la que cada nodo enuna capa está conectado con todos los nodosde la capa precedente.

Se ha probado que solo se requieren tres capaspara muchas tareas de aprendizaje de patro-nes, la primera capa se llama capa de entrada,la segunda capa oculta y la tercera capa de sa-lida. Si se considera que las conexiones entrecapas son totales, tenemos la matriz de pesosentre las neuronas en la capa de entrada con nneuronas, numeradas 1,2,,,.,n y la capa ocultacon m neuronas, numeradas 1,2,,,.,m, notadaWH (H por hidden).

[

W.11 W12.... W_1n]WH=' . .

W21 W22 ... W2nWn1 Wm2 Wmn

donde Wji es el peso de la conexión entre lai-ésima neurona de la capa de entrada y j-ésimaneurona de la capa oculta. Si se coloca en lasneuronas de la capa de entrada un vector x ERn y se considera que FH = (f1 aP1, f2ap2, ... , t-.a pm) es el vector de las funciones de activaciónde las neuronas en la capa oculta compuestascon las respectivas proyecciones, se tiene quea la salida de las neuronas de la capa oculta setiene el vector dado por

h = FH (WHX)

La matriz de pesos entre las neuronas en lacapa oculta con m neuronas y la capa de salidacon k neuronas, numeradas 1,2,...,k, Wo (O poroutput) se define así

[

W11 W12 W1m]IAI _ W21 W22 W2m""0 -. . .. . .

Wk1 Wk2 ••. Wkm

donde Wji es el peso de la conexión entre lai-ésima neurona de la capa oculta y j-ésima neu-rona de la capa de salida. Si se coloca en lasneuronas de la capa de entrada un vector x ER« y se considera que F« = (f1 oP1, tz o P2, ... , t«o pk) es el vector de las funciones de activación

72 Ingenierra e Investigación

de las neuronas en la capa de salida compues-tas con la respectiva proyección, se tiene que ala salida de las neuronas de la capa de salidase tiene el vector y E Rk dado por

y = Fa (Wa h) = Fa (WaFH (WH x))

En una red multicapa se considera que los pa-trones de entrenamiento son un conjunto de pa-rejas {(X1, Y1), (X2, Y2), ... , (Xr, Yr)} donde losvalores que se colocan en la capa de entrada yyi son las salidas de las neuronas de la capa desalida al propagar la entrada Xi,.

Un aprendizaje heurístico robusto para RNAmulticapa llamada la regla delta generalizada(ROG) o regla de aprendizaje por retropropaga-ción (backpropagation learning rule) fue pro-puesta por Rummelhart y otros [38]. La ROG esuna técnica basada en el descenso usando ladirección del gradiente para minimizar una fun-ción objetivo E(W) que es diferenciable con res-pecto a cada uno de los pesos en la red (si lafunción objetivo es también una función de lasalida de la red, esto implica que cada funciónde activación es diferenciable con respecto alos pesos correspondientes).Sin embargo, laprincipal contribución de Rummelhart, fue pro-veer una técnica de optimización distribuida ba-sada en el descenso, usando la dirección delgradiente, tal que las expresiones de descensoque usan el gradiente aparecen como reglasdiscretas de actualización de los pesos.que uti-lizan únicamente información localmente dispo-nible a cada nodo y una cantidad que esretropropagada desde los nodos en la penúlti-ma capa. A continuación se describe la deduc-ción de la regla y luego se explica cómo seaplica la regla.

Como ya se dijo atrás, la activación o entradaneta aj al nodo j es una función lineal de lassalidas Vi, de los nodos que están conectadosal nodo j-ésimo y de los pesos wji de tales co-nexiones

(1) aj = L yi Wji

Page 11: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERIA DE SISTEMAS

Tenemos que la salida del nodo j-ésimo, yj esde valor real yes una función no lineal de suentrada total, más exactamente se supone quela función de activación de todas las neuronases la función sigmoideo

(2) 1y¡ = 1 + e-a¡

El propósito es encontrar un conjunto de pesosque asegure que para cada vector de entrada, elvector de salida producido por la red, sea igual a(o lo suficientemente cercano a) el vector de salidadeseado. Si hay un conjunto fijo finito de casosentrada-salida, el error total en el desempeño dela red con un conjunto de pesos particulares sepuede calcular comparando los vectores de salidadeseados y los reales para todos los casos. Elerror total, E, es definido como

(3) E = ~ L ~ (y¡.c - d¡,c)2e J

donde e es un índice sobre Ios casos (parejasentrada-salida), j es un índice sobre los nodosde salida, yj es el estado real de un nodo desalida y dj es su estado deseado.

Para minimizar E usando la dirección del gradien-te se necesita calcular la derivada parcial de E conrespecto a cada peso en la red. Esto es simple-mente la suma de las derivadas parciales paracada uno de los casos entrada-salida.

Para cada caso dado, las derivadas parciales del, error con respecto a cada peso son calculadas endos pasos. El primer paso (paso directo), ya des-crito, consiste en obtener los estados de los nodosen cada capa, determinados por la entrada quereciben de los nodos en la capa precedente, usan-do las ecuaciones (1) Y(2). El segundo paso (pasoinverso) propaga las derivadas desde la últimacapa, hacia atrás, hasta la primera capa. El pasoinverso empieza calculando

aE para cada nodo de la capa de salida.By ,Diferenciando (3) para un caso particular, e, ysuprimiendo el índice e da

BE-= y¡-d¡ay¡

Se puede aplicar la regla de la cadena paracalcular

obteniendo

aEaa¡

aE ee dy;aa¡ - ay¡ da¡

Diferenciando la ecuación (2) se obtienedVI:=..L.!.. = y¡ (1 _ y¡ )da¡

y reemplazando en la ecuación anterior, setiene:

BE BE- = - y¡ (1 - y¡ )aa¡ By¡

por tanto aquí se sabe cómo un cambio en una en-trada total a para un nodo de salida afectará el error.

Ahora, para un peso Wji,de i a j la derivada es

ee BE Ba¡ aE--= - --= -y;aW¡; aa¡ aW¡; aa¡

usando (1), y para la salida del i-ésimo nodo lacontribución a

BEBy;

que resulta del efecto de ¡sobre j es simplemente

por tanto teniendo en cuenta todas las conexio-nes que salen de la unidad i se tiene

aE=~W';ay; . aa¡ J

J

Aquí se acaba de ver cómo calcular aElay paracualquier nodo en la penúltima capa cuando se

Ingenierla e Investigación 73

Page 12: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERíA DE SISTEMAS

tiene BE/By para todos los nodos en la últimacapa. Por tanto se puede repetir este procedi-miento para calcular este término para las pri-meras capas restantes.

Se puede usar BE/Bw para cambiar los pesosdespués de cada caso entrada-salida. Un es-quema alternativo es acumular BE/Bw sobre to-dos los casos entrada-salida antes de cambiarlos pesos.

La versión más simple del descenso usando elgradiente, es cambiar cada peso en una canti-dad proporcional al acumulado BEIBw .

BE~w = - E Bw para E > O (pequeño)

este método no converge muy rápidamente, pe-ro puede mejorarse significativamente introdu-ciendo un término de aceleración, y se obtiene

BE~w (t) = - E - (t) + oc ~ w (t-1)Bw

donde t se incrementa en uno después de usartodo el conjunto de casos entrada-salida, y es unfactor de decaimiento exponencial entre Oy 1 quedetermina la contribución relativa del gradiente ac-tual y los anteriores al cambio en los pesos.

Aplicación de la regla deltageneralizada

E(w) =L e, =L~1 ye - de 12

e e

Para la entrada xcla salida dada por la red es yey la deseada es de.

1. La RDG empieza inicializando todos los pe-sos de conexiones y sesgos (biases) a va-lores reales pequeños entre -0.5 y 0.5escogidos aleatoriamente.

74/ngenierfa e Investigación

2. Se presenta un patrón de entrenamiento enlas entradas de la red y es propagado haciaadelante para producir Ye.

3. Si el error para el patrón presentado (casoentrada-salida) es menor que una toleranciade aprendizaje (p.e. 0.01) ningún cambio enlos pesos ocurre. En otro caso, los pesosson ajustados según:

&Wji = r¡5c¡ ye¡ + oc&-1Wji

donde, &Wji es el cambio en el peso del nodoi al nodo j cuando se presenta el patrón e, r¡ esun término de ganancia (rata de aprendizaje)oc y es un término de momento, que suavizael efecto de cambios dramáticos en los pesos,adicionando una fracción del cambio en el pe-so, & - 1Wji en la presentación del anteriorpatrón, c-t ,La señal de error &¡es una medidade la distancia del nivel de activación del nodoj a su nivel deseado.

4. La RDG provee dos reglas para calcular laseñal de error de un nodo

(i) Para un nodo de salida j:

d~'(a ,),,_: = (d ' - 11 ,) , CJve;¡ CJ T CJ dae¡

(ii) Para un nodo j en una capa escondida:

d~' ~x.. = -' .L..J&kW:kve;¡ da' ,

CJ k

la suma se hace sobre todos los nodos k a loscuales el nodo j envía su salida.

FIGURA No. 8

éJCJWJI oCJWKJ

~

WKJ

~VCJ

VKJXci NODOJ NODO K

Page 13: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERIA DE SISTEMAS

Al aplicar las derivadas se tiene:

Be¡ = (de¡ - yej) ye¡ (1 - Yej)

si j es nodo de salida

Bej = yej (1 - ye¡) L k 5ck Wjk

en otro caso

Como el nombre retropropagación sugiere, laidea básica detrás de este cálculo de señalesde error para los nodos ocultos es propagar loserrores hacia atrás, basados en la discrepanciaobservada entre los valores de los nodos desalida y los esperados para un patrón de entre-namiento, ver figura 8. Nótese que en la RDGlos pesos se cambian cuando se presenta cadapatrón de entrenamiento.

Aplicaciones de las redes neuronales

En la Física, las redes neuronales constituyenuna herramienta para modelar los fenómenosmicroscópicos de los sistemas físicos. Un tipode red neuronal llamado autómata celular[40][43][46] provee un modelo discreto simplepara modelar una amplia variedad de fenóme-nos naturales y complejos como los modelosGreenberg-Hasting para la reacción de Belu-sov-Zhabotinsky, el modelo digital de los bilia-res para la mecánica conservativa, los modelosHPP-GAS, TM-GAS y FHP-GAS de la dinámicade fluidos para la ecuación de Navier-Stokes,los sistemas magnéticos y muchos otros.

En Ingeniería se puede utilizar una red de Hop-field para la reconstrucción de imágenes digita-les[3][27], para la implementación de circuitoseléctricos, para implementaciones ópticas. Porotro lado, se puede utilizar una red de Boltzmanpara resolver problemas de optimización clasi-ficados como NP en la teoría de la computación,para resolver problemas de optimización enprocesamiento de imágenes.

En las Matemáticas, las redes neuronales cons-tituyen por sí mismas un objeto de estudio: losalgoritmos de aprendizaje no son otra cosa quetécnicas de optimización de una función costo.En su operación básica, una red multicapaaproxima cualquier función de interés. Los pro-blemas definidos por iteraciones locales de lasfunciones de activación que inducen transfor-maciones globales de un espacio multidimen-sional en otro son temas de creciente interés ensistemas dinámicos.

En Estadística, las redes neuronales se puedentomar como método alternativo (no lineal) paraclasificación, análisis discriminante, regresión ypredicción con resultados satisfactorios.

En Biología y Neurofisiología se pueden mode-lar sistemas nerviosos de organismos primiti-vos, se puede modelar parte del cerebro huma-no, áreas corticales, mecanismos de control demovimiento de los ojos, etc.

En Ciencias de la Computación se encuentraque el poder computacional de los sistemas enparalelo es estrictamente mayor que el de lamáquina de Turing. El problema de la parada,que es insoluble en la teoría de la Computabi-lidad clásica, tiene solución en la computabili-dad neuronal, en la cual se establece, de ma-nera análoga, la insolubilidad del problema dela estabilidad[6][7].

En Inteligencia Artificial (lA) encuentra un nuevoparadigma para la representación del conoci-miento. En la red neuronal, el conocimiento esuna propiedad emergente del comportamientoglobal de la red (visión conexionista), no de sumicroestructura, en contraste con la visión sim-bólica donde las estructuras del conocimientose codifican explícitamente junto con algoritmosde inferencias que usan esa información. La Ló-gica Matemática constituye la base teórica dela lA ortodoxa, mientras que ninguna rama delas Matemáticas en especial domina una teoríaformal del enfoque conexionista, aunque la Ter-modinámica, la Mecánica Estadística y la Teoríade Sistemas Dinámicos han servido en el aná-

Ingenierfa e Investigación 75

Page 14: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

QUINCE AÑOS DE INGENIERíA DE SISTEMAS

lisis de su comportamiento. No se puede decirque un enfoque sea mejor que el otro. Ambastendencias pueden sobrevivir como modelosútiles en dominios particulares. Algunas tareasinteligentes se realizan mejor con las técnicastradicionales, mientras que otras tareas que in-volucran alto grado de paralelismo encuentranen las redes neuronales una enorme posibilidadpara ser solucionadas eficientemente, por

761ngenierla e Investigación

ejemplo, visión, control de movimiento, apren-dizaje, etc.Son muchas las aplicaciones que sehan implementado y en las que se está traba-jando. A pesar de ésto, solo podemos decir quela neurocomputación está en las primeras eta-pas de desarrollo. Por lo tanto, es muy grandeel panorama de investigación que se abre entodos los campos.

Page 15: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

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

5. Franklin S.P.y Garzón M.,Global dynamics in neu- 17. Hernández G. y Niño L.E, Automatas Celulares

ral networks, Complex Systems 3(1989), 29-36. en procesamiento de imágenes, Seminario Mul-timedia U. Nacional Bogotá D.C., 1993.

6. Franklin S.P. y Garzón M. Computation on18. 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á

7. Garzón M. Analysis of cellular automata and D.C., Nov 1991.

neural networks (preimpresión) Memphis State 19. Hernández G., Torres L.G., Automatas Celula-University, 1990. res Estocasticos, Rev. Fac. Ciencias U. Valle

8. Garzón M. Cellular automata and discrete neu-(sometido para publicación).

ral networks, Physica D 45 (1990), 431-440. 20. Hertz J., Krogh A and Palmer R.G. Introduction

9. Garzón M. Graphical words and languages,to the Theory of Neural Computation, Addison-

Memphis State University (1990).Wesley 1991.

10. Garzón M. and Franklin S.P., Neural Comput-21. Hopcroft J.E. and Ullman J.D., Introduction to

Automata Theory, Languages and Computa-abilityjur Internal report Department of Mathe- tion, Addison-Wesley publishing Co., 1979.matical Sciences and Institute for IntelligentSystems. Memphis State University, 1989. 22. Hopfield J.J. Neural Networks and Physical

11. Garzón M. and Franklin S., Neural Comput-Systems with Emergent Collective ComputationAbilities, Proc. Natl. Acad. ScL USA April (1982)

ability 11, Extenc:!edAbstract, 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

Garzón M. and Franklin S., Global Dynamics inhave Collective Computational Properties Iike

12. those of Two-State Neurons, Proceedings ofNeural Networks 11, Complex Systems(1990), National Academy of Science, May (1984) vol431-440. 81 , 3088-3092.

Ingenierla e Investigación 77

Page 16: FUNDAMENTOS D'E NEUROCOMPUTACION · 2015-01-08 · FUNDAMENTOS D'E NEUROCOMPUTACION Germán J.Hernández' LuzGloria Torres2, LuisFernando Niño1 Resumen En este documento se realiza

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.

Rujan P., Cellular Automata and Statistical Me-37.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 MathematicalMontly. 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, Memoriastomata: Theory Physica 045, (1990), 159-180, del seminario informática e imagen U. NacionalNorth-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 Matemá-

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