65
REDES NEURONALES ARTIFICIALES FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES

FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

REDES NEURONALES ARTIFICIALES

FUNDAMENTOS

CARACTERÍSTICAS

MODELOS

APLICACIONES

Page 2: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 1I. INTRODUCCION A LAS R.N.A. 1.1 EL PROCESAMIENTO COMPUTACIONALAlgunas operaciones típicas en el procesamiento computacional son:- Procesamiento de Señales:+ Supresión de ruido+ Transformación+ Filtrado+ Extracción de características- Procesamiento de datos:+ Aproximación numérica+ Determinación de modelos+ Predicción numérica+ Sorteo- Procesamiento de conocimiento:+ Identificación+ Entendimiento de escenas+ RazonamientoEstos estados representan que una computadora puede hacer algo mas que "masticar" datos. CARACTERISTICAS DE LA COMPUTACION CONVENCIONAL.PASOS:1. Desarrollo de una formación matemática del problema.2. Desarrollo del algoritmo (procedimiento paso a paso) para implementar la solución matemática.3. Codificación del algoritmo para una máquina específica.4. Ejecución del código.

Muchos problemas son difíciles de implementar con esta técnica (en especial los no estructurados) EXITOS Y FRACASOS DE LA COMPUTACION CONVENCIONALExitos:+ Muy exitosa resolviendo modelos matemáticos complejos y de simulación.+ Muy eficiente realizando tareas repetitivas, rápidas y bien definidas.+ Incluso en sistemas de tipo "experto" tiene éxito en un dominio restringido.Fracasos:+ Incapaz de resolver eficientemente problemas de reconocimiento de imágenes, voz y deentendimiento de lenguaje natural.+ Incapaz de adaptación y/o aprendizaje.+ Ineficiente en problemas de percepción. 1.2 EL PROCESAMIENTO EN SISTEMAS BIOLOGICOS+ Aún el organismo más primitivo tiene herramientas sofisticadas de percepción.+ Los sistemas biológicos muestran gran capacidad de adaptación y aprendizaje.+ Los sistemas biológicos pueden conseguir este éxito aun con dispositivos bastante lentos y pocoexactos (décimas de milisegundos).

Page 3: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

+ Los seres humanos son malos realizando tareas que las computadora convencionales ejecutanexcelentemente. CARACTERISTICAS DE LA COMPUTACION BIOLOGICA:+ Masivamente paralela.+ Altamente interconectada.+ Tolerante al ruido en el medio ambiente y en sus componentes.+ Adaptiva.+ Lenta.+ No existen estructuras centrales de control.+ Baja precisión.+ Desarrollo evolutivo hacia sistemas más complejos.Al parecer los sistemas biológicos utilizan estrategias de procesamiento muy diferentes a lasconvencionales. 1.3 QUE SON LAS REDES NEURONALES ?Las redes neuronales artificiales (RNA en adelante) son modelos matemáticos inspirados ensistemas biológicos, adaptados y simulados en computadoras convencionales.Las RNA se conocen con diferentes nombres, como por ejemplo modelos conexionistas(connectionist models), procesamiento distribuido en paralelo (Parallel Distributed Processing óPDP), Sistemas Neuronales Artificales (Artificial Neural Systems ó ANS), sistemas neuromórficos,etc.Investigadores de muchas áreas estudian RNA´s; por ejemplo biólogos, fisiólogos, psicólogoscognitivos, ingenieros electrónicos, computólogos, matemáticos etc. Ellos tienen diversas metas,entre otras:+ Entender los sistemas biológicos.+ Entender el comportamiento humano y animal.+ Desarrollar sistemas para aplicaciones específicas.+ Analizar datos neuro-fisiológicos.Las RNA. no fueron estudiadas por cerca de dos décadas, pero su interés ha crecido bastante en losúltimos años debido al éxito mostrado en la solución de problemas antes reservados exclusivamentea los humanos. 1.4 CARACTERISTICAS DE LAS REDES NEURONALES ARTIFICIALESLas RNA están compuestas por elementos que se comportan de una manera parecida a las funcionesmás elementales de una neurona biológica. Estos elementos se organizan de una manera que puedeo no estar relacionada a la manera en que está organizado el cerebro.No obstante su burdo parecido a los sistemas biológicos, las RNA presentan algunas característicaspropias del cerebro como son:+ Pueden aprender de la experiencia.+ Pueden generalizar a partir de ejemplos previos.+ Pueden abstraer carecterísticas esenciales de entradas que contienen datos irrelevantes.Es importante enfatizar que las RNA no duplican las funciones cerebrales exactamente; a decirverdad, están aún lejos de poder simularlo fielmente.Las características más importantes de las RNA son:+ HABILIDAD DE APRENDIZAJELas RNA pueden modificar su comportamiento en respuesta al medio ambiente. Esto es muyimportante. Las RNA se auto-ajustan produciendo respuestas consistentes con el medio ambiente.Existen muchos algoritmos de aprendizaje que pueden aplicarse a las RNA.+ GENERALIZACION

Page 4: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Una vez entrenada, una RNA es, hasta cierto grado, insensible a variaciones pequeñas en susentradas. Esto es, las RNA producen sistemas capaces de manejar el mundo "imperfecto" en quevivimos.Nótese que las RNA generalizan automáticamente como resultado de su estructura y no debido ainteligencia humana "introducida" en forma de programas "ad-hoc".

ABSTRACCIONAlgunas RNA son capaces de abstraer la esencia de una serie de entradas. Se pueden abstraerpatrones perfectos de modelos distorsionados.

1.5 APLICACIONES DE LAS RNA.Las RNA no son una panacea y definitivamente no son el sustituto de las computadorasconvencionales; por ejemplo no serían adecuadas para escribir un sistema de nómina.Algunas áreas en las que se han aplicado exitosamente son:+ Análisis financiero+ Procesamiento de señales+ Mercadotectnia+ Automatización y robótica+ Diagnóstico médico+ Clasificación+ Reconocimiento de patrones+ Control de procesos+ Optimización 1.6 RESUMEN HISTORICO [Oldham, 90]El hombre siempre ha investigado acerca de las mentes y sus funcionamientos. Sin embargo losexpertos acerca del cerebro lo han encontrado muy difícil de entender. Se conoce mucho acerca del"alambrado central", pero poco acerca de su funcionamiento. No obstante, a través del progreso dela neuro-anatomía y la neuro-fisiología se fueron desarrollando modelos de aprendizaje humano.

EVENTOS HISTORICOS IMPORTANTES1920. Petrovich Paulov define su teoría del condicionamiento.1943. W. McCulloch y W. Putts publican el artículo "A logical Calculus of the ideas inminents innervious activity" en Bolletin of Matematical Biophysics. Vol. 5 pp.115-33.1949. D. O. Hebb publica el libro "Origanization of Behavior". New York: Science Editions. Hebbpropuso una ley de aprendizaje que ha sido la base para los algoritmos de entrenamiento de RNA.Años 50´s y 60´s. Se producen las primeras RNA´S implementadas en circuitos electrónicos.Participan entre otros investigadores Marvin Minsky, Frank Rosenblatt y Bernard Widrow.1962. F. Rosenblatt publica el libro "Principles of Neurodinamics" New York: Spartan Books,presentando las bases del perceptrón. Las redes del perceptron se aplicaron entonces a problemas depredicción de clima, análisis de electrocardiogramas y visión artificial. Parecían una maravilla, perofallaron en reconocer problemas similares a otros en que sí servían. Esto llevó a realizar un análisismas profundo de la teoría del perceptrón.1969. M. Minsky y S. Papert publicaron "Perceptrones", Cambridge MA: MIT Press. En este libromuestran que el perceptrón es teóricamente incapaz de resolver problemas muy simples como elproblema del XOR exclusivo. Esto generó una fuerte desmotivación en el área. No obstante,algunos científicos como Tenvo Kohonen, Stephen Grossberg y James Anderson siguierontrabajando.1986. D. E. Rumelhart, G. E. Hinton y R. J. Willians publican "Learning internal representations byerror propagations" en Paralell Distributed Procesing. Vol. 1 pp. 318-62. Cambridge MA: MITPress. Acá se presentan uno de los primeros algoritmos para entrenar redes de varios niveles,

Page 5: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

destruyendo el mito de Minsky y haciendo resurgir la investigación. (Nota: BP fue propuestoindependientemente también por otros investigadores tales como Werbos (1974) y Parker (1982)Cientos de otros modelos y arquitecturas de RNA se han propuesto desde entonces. A lo largo deeste curso estudiaremos algunos de los más populares. 1.7 ALCANCES Y LIMITACIONES DE LAS RNA.Las RNA tienen aplicaciones potenciales en tareas donde no hay reglas bien definidas las cualesparecen fáciles para los humanos y difíciles para las computadoras. Este campo es tan amplio comoel de las computadoras convencionales.La Inteligencia Artificial ha estado generalmente dominada por las áreas de manipulación lógica ysimbólica, pero algunos piensan que RNA remplazarán la Inteligencia Artificial tradicional actual.Mas bien parece que se combinarán en sistemas apoyándose mutuamente, como sucede en los sereshumanos, pues éstos se apoyan en sistemas rápidos soportados por reconocimiento de patrones.Otros sistemas realizan actividades que requieren más tiempo cuando el reconocimiento falla ocuando se requieren niveles superiores de decisión.

1.8 CONFIABILIDAD DE LAS RNA.Las RNA son hasta cierto grado impredicibles (como los humanos). No hay manera de garantizar lasalida de una red para una entrada a menos que se prevean todas las posibilidades en las entradas, yse entrene la red suficientemente bien. Sin embargo, esto puede resultar impráctico en muchos casosy verdaderamente imposible en otros, lo que ha originado muchas críticas a las RNA. Parte de estacrítica se debe al hecho de que esperamos que las computadoras sean perfectas, pero los humanosno son perfectos...Otro problema relacionado y criticado en las RNA es su inhabilidad de "explicar" como resuelven elproblema. Esta inhabilidad se debe a que la representación interna generada en la red puede serdemasiado compleja aún en los casos más sencillos.

Page 6: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 2FUNDAMENTOS DE LAS RNA

Se han desarrollado RNA´s con una gran variedad de configuraciones. En éste punto hablaremos delos elementos comunes a todas las arquitecturas.

2.1 CONCEPTOS BASICOS DE REDES NEURONALES BIOLOGICAS

Como ya hemos dicho, la estructura de las Redes Neuronales Artificiales se basa vagamente en laestructura del cerebro. Se supone que un modelo más exacto podría presentar características mássorprendentes, pero la construcción de este modelo requiere información y tecnología con la queaún no se cuenta.

EL CEREBRO HUMANO

El cerebro sigue siendo un misterio. Se han descubiero algunas "rutas" existentes en él, y se handefinido sus partes principales, pero aún no hay un esquema completo.La bioquímica cerebral es un secreto. Se sabe algo acerca del comportamiento electromecánico ycada vez salen a la luz nuevos niveles de complejidad. En seguida se hablara de una manera muygeneral de la estructura y función cerebral.

ORGANIZACION DEL CEREBRO HUMANO

+ Contiene más de 100 billones (1011) de elementos de proceso llamados neuronas. Estos secomunican a través del cuerpo por medio de hileras nerviosas, las cuales forman cerca de 100trillones (1014) de conexiones llamadas sinapsis.

+ Esta red es responsable de todos los fenómenos de pensamiento, emoción y conocimiento y derealizar funciones sensoriales y motoras.

+ El cerebro contiene una densa capa de vasos sanguíneos que proveen de oxígeno y nutrientes alas neuronas y otros tejidos. El flujo de sangre se conecta al sistema circulatorio por medio de unsistema de filtrado bastante efectivo; una barrera entre el cerebro y la sangre protege a esteúltimo de substancias tóxicas que están en la sangre. Este aislamiento se lleva a cabo gracias a lapoca permeabilidad de los vasos sanguíneos del cerebro y también por medio de una tupidacantidad células que rellenan y dan forma al cerebro. Esta barrera es una protección, perocomplica la administración de drogas medicinales.

+ El cerebro es el más alto consumidor de energía del cuerpo humano. Siendo sólo 2% de la masadel cuerpo, consume más del 20% de oxígeno. Incluso cuando dormimos el consumo continúa.

+ El cerebro consume cerca de 20 watts de energía; es muy eficiente comparado con unacomputadora.

LA NEURONA BIOLOGICA

La neurona (figura 2.1) es el bloque fundamental de construcción del sistema nervioso. Esta es unacélula similar a otras del cuerpo con ciertas especializaciones.

Page 7: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Figura 2.1 Componentes de una neurona biológica

Una neurona está compuesta de 3 partes fundamentales:- cuerpo- dendritas- axon

Las dendritas reciben señales de otras células en puntos de conexión llamadas sinápsis. De acá, lasseñales se pasan al cuerpo de la célula, donde son esencialmente "promediadas" con otras señales.Si este promedio en un determinado tiempo es suficientemente grande, la célula es excitada,mandando un pulso a través del axon a otras células. No obstante esta simplicidad en su operación,las neuronas realizan la mayoría de las actividades cerebrales. Internamente existe un complicadosistema electroquímico de comunicación y control. Enseguida se explica con algún detalle cadacomponente.

EL CUERPO

Las células de un adulto no se regeneran, deben durar toda la vida, lo que requiere que suscomponentes sean reemplazados contínuamente. Esta actividad de mantenimiento se lleva a cabo enel cuerpo, donde una fábrica química construye una variedad de moléculas. El cuerpo tambiéncontrola la energía de la neurona y regula otras actividades. La capa externa del cuerpo tiene lacapacidad única de generar impulsos nerviosos; una función vital. Hay cientos de tipos de neuronas,el diámetro del cuerpo es entre 5 a 100 micras.

LAS DENTRITAS

Las dentritas son ramas que salen del cuerpo. Estas poseen algunas conexiones sinápticas en dondese reciben señales que generalmente vienen de otros axones. Hay un número significativo deconexiones sinápticas de axon a axon, axon a cuerpo y dentrita a dentrita.A diferencia de los circuitos eléctricos comunes, no hay conexión física en las sinapses, sino que unespacio separa los químicos especiales que son liberados por el axon y se transmiten hacia la

Page 8: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

dentrita. Estos químicos se llaman neurotransitores. Algunos neuro-transitores son "activadores" yotros son inhibidores.

EL AXON

Puede ser tan corto como 0.1 mm. ó tan largo como 1 mt. El axón tiene varias ramas cerca de lapunta, cada una terminando con una sinapse desde donde la señal se trasmite, así la neurona puedegenerar pulsos que pueden activar o inhibir otras neuronas (cientos o miles), las cuales a su vez sonactivadas por cientos o miles de otras neuronas. De esta manera es como la conectividad de lasneuronas, más que su complejidad funcional, da la capacidad de procesamiento al cerebro humano.La conexión sináptica es un pequeño bulbo que contiene estructuras esféricas llamadas vesículassinápticas, las cuales contienen un gran número de moléculas neurotransmisoras. Además de esteproceso de activación neuronal, algunas neuronas que han sido activadas muy débilmentetransmiten ciertos signos electromagnéticos a través de su interior con cierta respuesta. Podemosdecir que son "locales" pues el impulso muere después de cierta distancia.

LA MEMBRANA CELULAR

La comunicación cerebral es de dos tipos: química a través de las sinapses y eléctrica dentro de laneurona. La maravillosa y compleja acción de la membrana celular crea la habilidad de la célula deproducir y transmitir aun ambos tipos de señales.La membrana celular tiene cerca de 5 nanometros de espesor y consiste de dos capas de moléculaslípidas. En la membrana existen varios tipos de proteínas que se pueden clasificar en 5 grupos:bombas, canales, receptores, enzimas y proteínas estructurales.Las bombas mueven iones a través de la membrana para mantener concentraciones. Los canalespermiten selectivamente el paso de iones y controlan un flujo a través de la membrana. Algunoscanales se abren o cierran dependiendo del potencial eléctrico de la membrana; otros se controlanquímicamente.Los receptores reconocen y unen varios tipos de moléculas y son muy específicos. Las enzimas enlas membranas aceleran una gran variedad de reacciones químicas. La concentración de sodio enuna neurona es 10 veces más baja que en sus alrededores y la concentración de potasio es 10 vecesmás alta. Estas concentraciones tienden a nivelarse por medio de "fugas" en la célula debido a porosen las membranas. Para mantener las concentraciones una proteína llamada "bomba de sodio"contínuamente saca sodio de la célula y mete potasio. Se pueden mover cientos de millones de ionesde potasio por segundo. La combinación de estos dos químicos es responsable de crear y mantenerel equilibrio dinámico químico que constituye el estado de reposo de un neurón.La concentración iónica causa que en el interior de la célula se genere un potencial de -70 milivoltscon respecto a sus alrededores. Para que la célula se "encienda" o sea activada, las entradassinápticas deben reducir este nivel a aproximadamente -50 milivolts. Cuando esto ocurre, losniveles de sodio y potasio se invierten repentinamente, en un milisegundo el interior de la célula sevuelve 50 milivolts positivo con respecto al medio ambiente externo. Este cambio de polaridad setransmite a través del axon y a sus conexiones. Cuando el pulso llega a la terminal del axon, seabren canales de calcio con voltaje controlado, esto acciona la liberación de moléculas neuro-transmitoras y el proceso continúa a otras células. Después de generar un potencial, la célula entraen un período de varios milisegundos en el cual regresa a su estado de reposo en preparación paraotro pulso.Los investigadores han encontrado una gran complejidad bioquímica en el cerebro. Se cree que másde 30 substancias trabajan como neuro-transmisores y hay un gran número de receptores condiferentes modos de respuesta. Además, la acción de una molécula neurotransmisora depende del

Page 9: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

tipo de receptor en la membrana sináptica. El mismo neurotransmisor puede ser activador en unasinapsis e inhibidor en otra.Se ha tratado de alcanzar un patrón simple que unifique estas o otras muchas observaciones, pero lamayoría de los descubrimientos crean más dudas de las que resuelven. El cerebro humano es muydifícil de modelar, no existen matemáticas suficientemente complejas para hacerlo y probablementenunca las haya.

2.2 LA NEURONA ARTIFICIAL

El funcionamiento de una neurona artificial es simple. Básicamente consiste en aplicar un conjuntode entradas, cada una representando la salida de otro neurón, o un entrada del medio externo,realizar una suma ponderada con estos valores, y “filtrar” este valor con una función.

OUTF

Figura 2.1. Cálculo de la salida de una neurona artificial

Muchos autores representan a las neuronas con un circulo, como muestra la fig. 2.3

X 1

2X

Xn

W

W

W

1

2

n

SALIDA

Figura 2.3. La Neurona Artificial

Las entradas, que podemos llamar vector X, corresponden a las señales que llegan a la sinápsis deuna neurona biológica. Cada señal se multiplica por un peso que tiene asociado, W1,W2 ... Wn. Lospesos los podemos llamar vector W. Cada peso corresponde a la "intensidad" o fuerza de laconexión de una sinápsis en una neurona biológica. Estas multiplicaciones se suman. Este"sumador" corresponde vagamente a el cuerpo de una neurona biológica. Como podemos observar,esta es una suma algebraica de las entradas ponderadas, entonces queda que

NET = X1 W1 + X2 W2 + X3 W3 + ... + Xn Wn

Page 10: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

ó representado en notación matricial:

NET = XW

FUNCIONES DE ACTIVACION

La que hemos llamado señal NET generalmente se procesa por medio de una función de activaciónF, la cual producirá una señal que será la salida del neurón, que llamaremos OUT:

OUT = F(NET)

Un ejemplo de una función de activación puede ser una función lineal:OUT = K(NET) K = Constante

ó una función umbral:

OUT = 1 si NET > T donde T es un valor de umbral

0 si no

1

T

Figura 2.3 Función umbral

F también puede ser alguna otra función que simule mejor las características no lineales detransferencia de una neurona biológica.

Si F reduce el rango de NET de manera que OUT nunca se salga de algún límite,independientemente de lo grande que sea NET, entonces F es una función "squash". Una funciónsquash muy popular es la "sigmoide" o función logística.

F(X) = 1

1 + e-X

Page 11: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Figura 2.4. Función sigmoide ó logística.

Utlilizando la notación de la neurona artificial, tendríamos que:

OUT = 1

(1 + e - NET )

Podemos pensar que la función de activación determina la ganancia no lineal del neurón. Estaganancia se puede definir como la razón de cambio en OUT con respecto a cambio en NET.Nótese que en los valores pequeños de NET el cambio de OUT es alto, mientras que para un valorde NET muy grande, el cambio en OUT es mínimo. Grossberg (1973) encontró que este tipo defunciones no lineales resuelven un problema de saturación y ruido muy común en las RNA.Otra función muy común es la tangente hiperbólica (figura 2.5). La forma es similar y es usada porbiólogos como un modelo matemático de activación nervioso. Está dada por:

OUT = Tanh (NET)

Figura 2.5 Función tangente hiperbólica

La función tangente hiperbolica es simétrica en el origen, y a diferencia de la función sigmoide,tanh puede dar valores negativos, lo cual es útil en algunos modelos.

Page 12: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Nótese que este modelo de neurona simplificado no considera el tiempo en ningún punto, sino quesupone una salida instantánea. En otras palabras, no considera funciones de sincrónica.

2.3 REDES NEURONALES DE UN NIVEL (O DE UNA CAPA)

Como podemos ver el modelo de neurona artificial es sencillo; el poder de las RNA se obtiene delas conexiones entre neuronas.Las neuronas se relacionan entre si formando redes que pueden llegar a ser tan complejas como elneocognitrón, o tan simples como el perceptrón. En general, se pueden identificar capas o niveles enuna red. El modelo mas simple es el de una capa. La fig. 2.6 muestra una RNA de una capa.

YX

X

X Y

Y

1

2

3

2

3

1

W

W

W

W

W

W

WW

NODOS DE ENTRADA (no hacen nada)

11

12

13

2122

3132

33

W 23

Figura 2.6 Red neuronal de 1 nivel.

En la fig. 2.6 se muestran los siguientes valores:

W = matriz de m renglones y n columnasm = número de entradasn = número de salidasX = Vector renglón que contiene los valores de entrada

Sea N el vector de todas los valores NET yN = XWY = F(N)Y representa al vector de salida de la red.Por ejemplo, si n = 3 (ver figura 2.6) entonces calcularíamos Y de la siguiente forma:

Y1 = F(x1w11 + x2w21 + x3w31)Y2 y Y3 se pueden calcular de manera similar. En notación matricial tenemos que:

Page 13: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

X1X2 X3[ ] W11 W12 W13

W21 W22 W23

W31 W32 W33

=

X1W11 + X 2W21 + X3W31, X1W12 + X 2W22 + X3W32X1W13 + X2 W23 + X3W33[ ] = Y

2.4 REDES NEURONALES DE VARIOS NIVELES

Y

Y

1

2

NIVEL DE

ENTRADANIVELES

ESCONDIDOS

NIVEL DE

SALIDA

(a) 1 Nivel escondido

(b) 2 Niveles escondidos

X

X

X

X

1

2

3

4

Figura 2.7. Ejemplos de RNA de varios niveles.

Es importante hacer notar que algunos autores no se ponen de acuerdo con respecto al número decapas que se dice tiene una red. Esto esporque algunos cuentan el nivel de entrada como una capa, yotros no. El libro de texto utilizado para el curso [Wasserman, 89] no considera la capa de neuronasde entrada como uno de los niveles de la red.En una red con varios niveles o capas, la función de activación debe ser no lineal, ya que de no serasí una red con varios niveles equivaldría a una red con un nivel. Esta afirmación puededemostrarse de la siguiente manera:

Page 14: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Si F es una función lineal, entonces la salida del primer nivel de la red esta dada por:

OUT1 = F (X ⋅ W1 )

OUT1 = K1 ⋅ X W1 Si F es lineal,

y en la salida del 2do. nivel de la red neuronal tenemos:

OUT 2 = F(OUT1 W 2)= F(K1 ⋅ X W 1 W2)= K2 X(W1W 2)

este resultado equivaldría a tener solo un nivel, ya que siempre podemos hallar valores para una W3= W 1 ⋅W 2

2.5 REDES RECURRENTES

Las redes que hemos visto hasta ahora no presentan retroalimentación. Este tipo de redes seconocen como no recurrentes o "alimentadas hacia adelante" (feed-forward neural networks).También hay otros tipos de redes que presentan retroalimentación, esto es, la salida de sus neuronasse utilizan como otra entrada ya sea a sí mismos o a otros en el mismo nivel. En este tipo de redes lasalida de la red se determina por las entradas y por valores en salidas previas. Estas redes presentanpropiedades parecidas a la memoria corta de los humanos.Los algoritmos de aprendizaje de las redes recurrentes se pueden representar por medio deecuaciones diferenciales o ecuaciones en diferencia. Cuando se trabaja con máquinas analógicas laprimera representación es deseable.

2.6 TIPOS DE ENTRENAMIENTO

Esta es una de la partes más ingeniosas y sorprendentes de los sistemas neuronales artificiales. Unared es entrenada de manera que un conjunto de valores de entrada produce la salida deseada.

Durante el entrenamiento, los pesos W se van ajustando gradualmente, hasta encontrar aquellos quegeneren las salidas deseadas.Hay dos tipos de entrenamiento de RNA: entrenamiento supervisado y entrenamiento nosupervisado.

ENTRENAMIENTO SUPERVISADO

En este tipo de entrenamiento se requiere que cada vector de entrada esté relacionado con una salidadeseada representando cada vector. Al par de vectores representando los valores de entrada y salidadeseada se le llama el par de entrenamiento. (Ver fig. 2.8)

Page 15: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

ENTRENAMIENTO

PESOS

DATOS DE

ENTRADA

SALIDA

DESEADA

Figura 2.8 Entrenamiento Supervisado.

Cada vector de entrada se aplica a la red, la correspondiente salida (dada por los pasos de la red) secalcula y se compara con la salida deseada. La diferencia o error se da a la red y los pasos secambian de acuerdo a algoritmos que minimizan este error. Diferentes vectores de entrenamiento seaplican a la red secuencialmente hasta que el error en el conjunto de aprendizaje es suficientementepequeño.Por ejemplo supongamos que queremos enseñar a una red que aprenda la tabla del OR exclusivo(XOR).Representando al problema del XOR por medio de una caja negra, tenemos:

R E D NEURONAL

A

BA XOR B

Sabemos que la tabla de verdad de XOR está dada por:

A B A + B 0 0 0 0 1 1 1 0 1 1 1 0

Para este problema, una red con entrenamiento supervisado debería utilizar el siguiente conjunto deentrenamiento:

C = {Xi, Yi} para i = 1,4

DATOS DE ENTRADA SALIDA DESEADA

X1 = {0,0} Y1 = {0}X2 = {0,1} Y2 = {1}X3 = {1,0} Y3 = {1}

Page 16: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

X4 = {1,1} Y4 = {0}

ENTRENAMIENTO NO SUPERVISADO

El entrenamiento supervisado es poco común desde el punto de vista biológico. Por ejemplo,muchas de las actividades que se ejecutan en el cerebro de un recién nacido no son aprendidas através de un "vector de salida " que explícitamente se muestre a su cerebro.

ENTRENAMIENTO

PESOS

DATOS DEENTRADA

CLASES

Figura 2.9 Entrenamiento no Supervisado

El entrenamiento no supervisado se caracteriza porque no requiere de un vector de salida (ver figura2.9). Los pesos de la RNA se van modificando de manera que produzcan vectores de salida quesean consistentes, esto es, se espera que entradas similares produzcan las mismas salidas. Kohonen(1984) fue uno de los creadores de este tipo de entrenamiento.Matemáticamente hablando, el proceso de entrenamiento no supervisado extrae propiedadesestadísticas del conjunto de entrenamiento.

ALGORITMOS DE ENTRENAMIENTO

La mayoría de los algoritmos de entrenamiento están basados en los conceptos propuestos por D. O.Hebb (1961) [Wasserman 89]. Hebb propusoun modelo de aprendizaje no supervisado en el cual la fuerza de la conexión sináptica (el peso) seincrementa si la neurona fuente y destino son activados. De esta forma las rutas más usadas entreneuronas se fortalecen. El fenómeno de hábito y repetición toma sentido utilizando este método.En una neurona artificial que usa el método de Hebb se incrementan los pesos con respecto alproducto de excitación de la fuente y el destino:

W ij (n +1) = Wij (n) + α OUT i OUT j

W i j (n) = es el vector del peso del neurón i al neurón j

antes de ajuste.

W ij (n +1) = vector de peso del neurón i al neurón j después del aj

α = es el coeficiente de aprendizaje ó razón de aprendiz

OUT i = Salida del neurón i .

OUT j = Salida del neurón j .

Hoy en día hay algoritmos más efectivos de aprendizaje que el propuesto por Hebb. Lo queharemos de hoy hasta que termine el curso será estudiar los algoritmos y arquitecturas máspopulares.

Page 17: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s
Page 18: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 3El PERCEPTRON

3.1 DEFINICION

Mc. Culloch y Pitts (1943) publicaron el primer estudio sistemático relacionado con redesneuronales. Propusieron un modelo simple que consiste en un solo neurón, que se muestra en lafigura 3.1. La neurona calcula la suma de pesos y los substrae de un valor umbral, representado por�.

Figura 3.1 El perceptrón

3.2 REGIONES DE DECISION GENERADAS CON EL PERCEPTRON

Para 2 entradas, el perceptrón separa el plano de características en dos regiones, una de un lado dela línea y otra del otro lado. En un espacio de dimensión mayor (3 o más entradas) el perceptróndivide al espacio en 2 regiones separados por un hiperplano.

Page 19: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Fig.3.2 Dos regiones en un plano de características bidimensional.

Por ejemplo, supongamos un problema con 2 entradas. La figura 3.2 muestra el espacio decaracterísticas que podría formase. En este plano, cada eje representa a 1 de las entradas Xo y X1.

Si hay dos entradas tenemos que:

OUTPUT = XoWo + X1W1 - �

Si XoWo + X1W1- � < 0 entonces OUT = -1>= 0 entonces OUT = +1

La decisión está limitada por la recta:

WoXo + W1X1 - � = 0óX1 = -WoXo/W1 +� /W1

Conociendo lo anterior, podemos ver porque el problema del X-OR exclusivo no se puede resolvercon el perceptrón, hecho que demostró Minsky y que detuvo el estudio de RNA por varias decadas(ver sección 1.6).

0

1

1

0

A

B

Fig.3.3. Representación de problema XOR en un espacio de características

Page 20: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

El XOR puede representarse gráficamente. (Fig.3.3). Hay 4 puntos, 2 pertenecen a la clase "0" y 2pertenecen a la clase “1”. Podemos notar que no existe niguna línea que puede partir a este plano en2 partes de manera que cada clase quede de un lado diferente de la linea. En otras palabras, elproblema no es linealmente SEPARABLE.

3.2 ENTRENAMIENTO DEL PERCEPTRON

Rosemblatt (1962) propuso un algoritmo para entrenar el perceptrón.El perceptrón se entrena presentando un conjunto de vectores de entrada, uno a la vez y ajustandolos pasos hasta que la salida deseada ocurra para cada entrada. El entrenamiento del perceptrón essupervisado. Este algoritmo también se conoce con el nombre de "regla delta", y se muestra acontinuación:

ALGORITMO DE CONVERGENCIA DEL PERCEPTRON (Regla Delta)

Paso1: Inicialize el valor de los pesos Wi(0) y del umbral � con pequeños números aleatoriospequeños.

Wi(t) representa el valor del i-ésimo peso en el tiempo t.F(t) es el valor del umbral.

Paso 2: Lea un nuevo vector de entrada X (Xo, X1,....Xn-1) y su correspondiente salida deseada D.Si la entrada corresponde a la clase A, asignar D = 1.Si la entrada corresponde a la clase B, asignar D = -1.

Paso 3. Calcule la salida real del neurón; para la iteración t.

y(t) = FK Wi (t)Xi(t) − θ (t)i=0

n−1∑

donde FK es la función escalón,

Paso 4: Modifique los pesos de acuerdo a la siguiente fórmula:�= (D - y(t))

Para cada peso Wi calcule:�i = ��Xidonde �es el coeficiente de aprendizaje ( 0 < � <= 1)

Wi(t+1) = Wi(t) + �iF(t+1) = F(t) - ��

para 0 <= i <= n - 1.

Paso 5: Regrese al paso 2 hasta agotar el conjunto de entrenamiento.

Enseguida se muestra un ejemplo del proceso de entrenamiento para el caso de dimensiones,tomado de [Lippman 87].

Page 21: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

o Clase A* Clase B η = 0.01

80 ejemplos.Fig.3.4. Ejemplo de aprendizaje del perceptrón [Lippman, 87]

Rosemblatt demostró que si las entradas presentadas para las dos clases son separables (es decir quecaen en lados opuestos del hiperplano), el algoritmo converge y construye el hiperplano comofrontera de decisión entre las dos clases.Un problema con el algoritmo es que la frontera de decisión puede oscilar continuamente si lasentradas se superponen.Se puede modificar el algoritmo para aplicar el método de solución llamado "Last-Mean Square"(LMS) ó mínimo error promedio. LMS minimiza el promedio del cuadrado del error entre la salidadeseada y la salida real, utilizando la fórmula:

E = (Di - Yi)2

i∑

Una red similar al preceptrón que aplica la solución LMS fue propuesta por Widrow y Hoff en1985. Esta red usa una función lineal en vez de la escalón y las posibles salidas son 1 para la claseA y 0 para la clase B.

Page 22: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 4 RECONOCIMIENTO DE PATRONES

4.1 INTRODUCCION

El proceso de reconocimiento de patrones tiene que ver con la actividad de clasificar unobjeto o hecho en alguna categoría determinada, en base a particularidades del objeto queson comunes a los miembros de una misma clase. [Tau & Gonzalez, 74]Algunos ejemplos de actividades comunes de reconocimiento de patrones realizados porhumanos son:- Escuchar una conversación- Leer un libro- Reconocer un amigo entre la multitud- Traducir de un lenguaje a otro.

Una definición formal de Reconocimiento de Patrones es la siguiente:“Es la categorización de datos de entrada en clases identificadas, por medio de la extracciónde características significativas o atributos de los datos extraídos de un medio ambiente quecontiene detalles irrelevantes.” [Tau & Gonzalez, 74].Matemáticamente hablando, la clasificación consiste en la partición del espacio n-dimensional definido por las características de un objeto, en varias regiones, donde cadaregión corresponde a una clase.

4.2 NOMENCLATURA BASICA

Enseguida se definen algunos términos básicos:

Patrón - Descripción de un objeto o miembro de alguna categoría.

Clase - Categoría determinada por algunos atributos comunes a sus miembros.

Vector de características - Contiene la medida de las características de un patrón; puede estarformado de números binarios o valores reales.

La figura 4.1 muestra algunos ejemplos de Vectores de características. La figura 4.2 muestraun ejemplo de la representación de las características de un ejemplo en un planobidimensional.

Page 23: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

DOS TRAZOS HORIZONTALES ?

NO

NO

NO

SI

SI

SI

SI

TRAZOS VERTICALES ?

SECUENCIA DE PUNTOS ?

PARTE SUPERIOR ABIERTA ?

ENTRADA

Fig.4.0 Un clasificador de caracteres muy simple

Page 24: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Figura 4.1 Vectores de características

Kg.

X =peso2

Metros

X =altur1

1.50 1.60 1.70 1.80 1.90 2.0 2.10

100

90

80

70

60

50

W

W1

2

xx

x

xxx

OOO

OO

OO

2 clases: Jugadores de foot-ball americano x Jockeys o

Figura 4.2 Ejemplo de un espacio de características

Page 25: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

4.3 PROBLEMAS FUNDAMENTALES EN EL DISEÑO DE UN SISTEMARECONOCEDOR DE PATRONES

El diseño de un sistema reconocedor de patrones presenta 4 problemas fundamentales:

1) La representación de los datos de entrada.2) La extracción de características.3) La determinación del proceso de decisión óptimo.4) Problemas de estimación de parámetros.

Un sistema automático de clasificación está formado de las siguientes partes (ver figura 4.3):

Transductor - Toma información del objeto y la transforma a señales analógicas, que a suvez son convertidas a su forma digital.

4.4 SISTEMAS CLASIFICADORES DE PATRONES

OBJETO

TRANSDUCTOR

EXTRACTOR DE CARACTERISTICAS

CLASIFICADOR DECISION

Figura 4.3 Sistema clasificador de Patrones [Duda & Hart.73]

Extractor de características - Mide propiedades importantes que representan al objeto. Supropósito es reducir la cantidad de datos obtenidos del transductor sin perder informaciónesencial. El resultado de tales medidas se llama vector de características.

Clasificador - Evalúa las propiedades dadas por el extractor de características y toma unadecisión final acerca de la clase del objeto.

4.5 MÉTODOS CONVENCIONALES PARA EL DISEÑO DE SISTEMASCLASIFICADORES

Los métodos de clasificación pueden ser de varios tipos. El método escogido depende de lascaracterísticas de las clases. Se pueden identificar 3 tipos de metodologías:

- Heurísticas. Se basan en la intuición y la experiencia humana. El diseño es tipo “as-hoc”.

Page 26: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

SENSADOPROCESAMIENTO Y SELECCION DE CARACTERISTICAS

MEDIDASVECTORES DE CARACTERISTICAS O PRIMITIVAS

CATEGORIZACION

ESTIMACION ADAPTACION APRENDIZAJE

ANALISIS DEL CONTEXTO

Fig. 4.4 Bloque funcional de un sistema reconocedor de patrones adaptativo [Tau &Gonzalez, 74]

- Matemáticas. Se dividen en 2 tipos:+ Determinísticas: No requieren de propiedades estadísticas, pero son limitadas.+ Estadísticas. Emplean propiedades estadísticas de las clases.

- Lingüísticas o sintácticas. Se basan en elementos primitivos (subpatrones) y relacionesentre ellos, definiendo gramáticas formales (variables, primitivas, reglas de producción, etc.)

4.6 DISEÑO DE CLASIFICADORES

Existen 2 fases fundamentales en un Clasificador:+ Entrenamiento+ Prueba de reconocimiento

Después de seleccionar las características y decidir el tipo de reconocedor a implementar sedeben recolectar datos para entrenamiento y pruebas. Durante el entrenamiento se usan datosde entrenamiento, que deben ser representativos del medio ambiente. Para medir lacapacidad del clasificador se usan los datos de prueba.

4.6 LOS CLASIFICADORES NEURONALES

La clasificación es un problema de decisión estadística. Los clasificadores Bayesianosconocen las funciones de distribución probabilística, mientras que las RNA sonclasificadores no paramétricos, es decir, no se conocen las funciones de distribución. Lafigura 4.5 muestra los posibles estados en que puede encontrarse un clasificador neuronal.

La figura 4.6 muestra el flujo de información que seguiría un sistema neuronal declasificación.

Page 27: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Figura 4.5 Estados de un clasificador neuronal

Red

Neuronal

Selección

de una claseSalida: clEntrada: vector de

características Figura. 4.6 Clasificación usando RNA

Page 28: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 5EL MODELO DE RETRO-PROPAGACION

Retro-propagación (Back-propagation) es un algoritmo de aprendizaje que se utiliza paraentrenar redes de perceptrones de varios niveles.(ver figura 5.1). Fue creado por David E.Rumelhart, G.E Hinton y R.J. Williams en 1986 [Rumelhart et al.86], aunque también fuepropuesto independientemente por otros investigadores [Parker (1982), Wenbos (1974)]Retropropagación es un algoritmo de aprendizaje supervisado con una base matemáticafuerte; puede verse como una generalización de la regla delta. Retro-propagación es unatécnica de minimización del error que aplica el concepto de gradiente descendente. Suobjetivo es minimizar la función del error promedio al cuadrado que hay entre la salida real yla salida deseada de la red.

Figura 5.1 Una red de perceptrones de varios niveles

La función de error que minimiza retro-propagación está dada por:

E = Epp∑

Donde

Ep = 1

2tpj - Opj( )

j∑

2

Ep - es el error producido por el patrón p.tpj - es el j-ésimo componente de la salida deseada cuando se aplica el patrón.Opj - es el j-ésimo componente de la salida obtenida en la red cuando se aplica el patrón p.

Retropropagación busca que los pesos de los niveles escondidos generen una representacióninterna adecuada al problema a resolverse. Retro-propagación ha mostrado éxito en muchas

Page 29: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

aplicaciones y es uno de los algoritmos más populares actualmente. Sin embargo tambiénmuestra limitaciones, entre las principales, el ser un algoritmo muy costosocomputacionalmente hablando, el hecho de que no hay garantía de éxito para una aplicacióndada, y la posibilidad de presentar problemas de saturación.

5.1 CONFIGURACION DE LA RED DE PERCEPTRONES DE VARIOS NIVELES

La figura 5.1 muestra a una red de perceptrones con varios niveles. El primer nivel (nivel 0 enla figura) se llama nivel de entrada; el último nivel (nivel 3 en la figura) se conoce como“nivel de salida”. Todos los demas niveles se llaman “niveles escondidos”.

La figura 5.2 muestra la arquitectura de cada neurona de la red. Podemos notar que cadaneurona es un perceptrón.

OUT

.

.

.

On

O1

w

w

w

2

1

n

Figura 5.2 Una neurona artificial

Las entradas de la neurona pueden venir del mundo exterior o de otras neuronas en un nivelanterior. Cada entrada a la neurona se multiplica por un peso y se suman los productosobteniéndose el valor que llamaremos NET:

NET = Oi Wii=1

n∑

La función de activación es de la forma

OUT = 1

1 + e−NET (función sigmoide)

Esta función, además de otros beneficios, presenta la característica de que su derivada puedeexpresarse en términos de la misma función, esto es:

∂ OUT∂ NET

= OUT 1- OUT( )

Page 30: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

La función de activación debe ser no lineal. Se pueden utilizar otras funciones diferentes a lasigmoide, con la condición de que sean contínuas y diferenciables en cualquier punto, a fin deque pueda obtenerse su gradiente.

5.2 ALGORITMO DE ENTRENAMIENTO

El algoritmo busca ajustar los pesos para que la aplicación de un vector de entrada genere elvector de salida deseado.Como el entrenamiento es supervisado, cada vector de entrada está asociado con una salidadeseada. El entrenamiento se lleva a cabo usando un conjunto de entrenamiento cuyoselementos son llamados “pares de entrenamiento”. Por ejemplo, si queremos construir unreconocedor que distinga entre las letras “T”, “C” y “X”, podríamos representar las letras dela siguiente forma, usando 9 pixels:

x x

x

x x

1

4

7

2

5

8

3

6

9

x

x

x xx

x x

x x

x

x

x

letra T letra C letra X Numeración de los pixels

El vector de entrada para la letra “T” sería VT :VT = (1,1,1,0,1,0,0,1,0)

y podemos definir que la salida deseada, al aplicar la letra T está dada por el vector DT : DT = (1,0,0)

De manera similar para “C” y “X” tenemos:VC = (1,1,1,10,0,1,1,1) DC = (0,1,0)

Vx = (1,0,1,0,1,0,1,0,1) DX = (0,0,1)

El conjunto de entrenamiento para este problema está dado por el conjunto:

{{VT, DT}, {VC, DC}, {VX, DX}}

Nótese que la red neuronal requiere de una salida (neurón) por cada clase.

ENTRENAMIENTO USANDO RETRO-PROPAGACION

De manera general, el algoritmo está formado de los siguientes pasos [ Wasserman 89 ].Paso 0. Inicialize los pesos con valores pequeños al azar.Paso 1. Seleccione el siguiente par de entrenamiento y aplique el vector de entrada a la red .Paso 2. Calcule la salida de la red.Paso 3. Calcule el error entre la salida de la red y la salida deseada, y acumule su valor en elerror total.Paso 4. Ajuste los pesos de la red de manera que se minimice el error, siguiendo la regla deltageneralizada.Paso 5. Repita los pasos 1 a 4 por cada vector en el conjunto de entrenamiento hasta que elerror en todo el conjunto sea suficientemente bajo. Al recorrer completamente el conjunto del

Page 31: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

entrenamiento (barrida) inicialize a cero el error total. Asegurese de que el error total en cadabarrida va disminuyendo.

PASOS 1 y 2Estos pasos son similares a lo que se hará cuando la red ya está entrenada, pues consisten enencontrar la salida la red dada una entrada.El cálculo de evaluación de una red de varios niveles se realiza capa por capa. Primero secalculan todas las salidas de las neuronas en el primer nivel, después en el segundo, etc. hastaalcanzar el nivel de salida.

Enseguida se muestra un algoritmo para calcular la salida de una red con un nivel escondido.Es sencillo generalizarlo para más niveles. Véase la figura 5.3 como referencia a las variablesutilizadas.

EVALUACION DE UNA RED DE VARIOS NIVELES CON:

* N entradas* M salidas* 1 capa escondida con L nodos

Sean: x[i] i-ésima entrada a la red 0<= i <= N-1

w1[i][j] Peso que conecta a la neurona j en el nivel de entrada con laneurona i en el nivel escondido

0<= i <= L-1, 0<= j <= N-1

TET1[i] Valor umbral para la i-ésima neurona en el nivel escondido.

w2[i][j] Peso que conecta a la neurona j en el nivel escondido con laneurona i en el nivel de salida

0<= i <= M-1, 0<= j <= L-1

TET2[i] Valor umbral para la i-ésima neurona en el nivel de salida.NET1[i] Sumatoria de la i-ésima neurona de la capa escondidaOUT1[i] Salida de la i-ésima neurona de la capa escondidaNET2[i] Sumatoria de la i-ésima neurona de la última capa.OUT2[i] Salida de la i-ésima neurona de la última capa.

FOR I=0 TO L-1 DOBEGINNET1 [I] = 0FOR J = 0 TO N-1 D0

NET1 [I] = NET1 [I] + W1 [I] [J] * X[J]NET1 [I] = NET1 [I] - TET1 [I]OUT1 [I] = sigmoid ( NET1 [I])

ENDFOR K=0 TO M-1 DOBEGIN

NET2 [K] = 0FOR I = 0 TO L-1 DO

Page 32: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

NET2 [K] = NET2 [K] + W2 [K] [I] * OUT1 [I]NET2 [K] = NET2 [K] - TET2 [K]OUT2 [K] = sigmoid (net2 [K])

END

Xo

X1

X2

OUT2[0]

OUT2[1]

OUT2[2]

00

W1 W2

W1

W1

W1

W1

W1

10

01

11

02

12 W2

W2

W2

W2

W2

21

11

01

20

10

00

OUT1[X]

Figura 5.3 Una red de perceptrones con un nivel escondido

PASOS 3 y 4Cada salida de la última capa de la red se substrae de su respectivo valor deseado a fin deconocer el error, y se modifican los pesos.En los pasos 1 y 2 podemos ver que el cálculo se realiza hacia adelante. En el paso 4 elcálculo se realiza hacia atrás, es decir empezando con el último nivel. De acá viene el nombrede "retro-propagación".Enseguida se muestra el algoritmo de retropropagación según definido en [Rumelhart et al.86].

ALGORITMO DE RETRO-PROPAGACION(BACK-PROPAGATION)

Sean:Wji = Peso que conecta hacia la neurona j en la capa k desde la neurona i en la capa k-1.

F = Función de activación (contínua y diferenciable)Opj = F(NETpj) Salida de la j-ésima neurona para el p-ésimo patrón.NETpj = ∑ WjiOpi

iDonde Opi es la entrada de la red si i está en la primera capa de la red, ó la

salida de la i-ésima neurona de la capa anterior si i no está en la primera capa de la red.

Page 33: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

∆pWji = Incremento en el peso Wji provocado por el p-ésimo patrón.

PASOS:

1.- Inicialice todos los pesos de la red con valores al azar pequeños.

2.- Repita lo siguiente hasta que el error ET del conjunto de entrenamiento seaaceptablemente pequeño, o alguna condición predeterminada de "fin de entrenamiento" seaverdadera.

2.1 Por cada patrón p en el conjunto de entrenamiento:2.1.1 Lea el vector de entrada Xp y el vector de la salida deseada Tp2.1.2 Calcule la salida de la red2.1.3 Calcule el error Ep y acumule su valor en ET2.1.4 Ajuste todos los pesos de la red aplicando la siguiente regla (regla delta

generalizada) para cada peso WjiWji(t+1) = Wji(t) + ∆pWjidonde :

∆pWji = �∂pjOpi y

� = Coeficiente de aprendizaje

∂ Se calcula como:

a) Si j corresponde a una neurona en la capa de salida de la red:

∂pj = (Tpj - Opj) F' (NETpj)∂pj =(Tpj - 0pj) Opj (1 - Opj)

b) Si j no corresponde a una neurona de salida: ∂pj = F' (NETpj) ∑∂pkWkj.

k2.1.5 Regrese al paso 2.1

3.- Regrese al paso 2.

El ajuste de los pasos en BP (por sus siglas en ingles) se puede dividir en dos partes: Ajustede los pasos en el último nivel y ajuste de los pasos en los niveles escondidos. Estos dos tiposde ajuste son diferentes como puede verse en los puntos 2.1.4 a) y b) del algoritmo.El cálculo de los valores � se realiza por cada neurón, exepto para el primer nivel ya que esteno contiene neuronas procesadores. Primero se calculan los valores � del último nivel ydespués los valores � hacia atrás. La figura 5.4 muestra un ejemplo para calcular 2 valores �.

Page 34: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Xo

X1

X2

OUT2[0]

OUT2[1]

OUT2[2]

00

W1 W2

W1

W1

W1

W1

W1

10

01

11

02

12 W2

W2

W2

W2

W2

21

11

01

20

10

00

OUT1[X]

0

1

2

δ [0]

δ [1]

δ [0]

δ [1]

δ [2]

1

1

2

2

2

NET1[0] = Xo W1[0,0] + X1 W1[0,1] + X2 W1[0,2]OUT1[1] = F(NET1[0]

�2[1] = (T1-OUT2[1]) F´ (NET2[1])�1[1] = F´ (NET1[1]) ∑ �2 [K] W2[K,1]

k= F´ (NET1[1]) (�2[0] W2[0,1] + �2[1] W2[1,1] + �2[2] W2[2,1])

Figura 5.4 Ejemplo de cálculo de valores �

5.3 UN EJEMPLO DE ENTRENAMIENTO DE RETRO-PROPAGACION (BP)

Este ejemplo, tomando del libro de [Rumelhart et al.86], muestra como BP encontró soluciónal problema XOR. El algoritmo se ejecutó varias veces. En dos ocasiones la red no encontróla solución. Una de las soluciones halladas se muestra en la figura 5.4.

6.3

-6.4 -6.4

-4.2

Y2

-9.4 -4.2

Page 35: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Figura 5.5 Una solución al XOR

En el ejemplo mostrado.

# de barridas = 558 (sobre los cuatro patrones)��0.5 (coeficiente de aprendizaje)

f(x)=1

1+ l-x(función de activación)

Para [0,0] tenemos los siguientes cálculos al aplicar los valores de entrada :

Y1= f(-6.4*0 + (-6.4)+0+2.2) = f(+2.2)=0.90Y2 = f [ 0*(-4.2)+0.90(-9.4)+0*(-4.2)+6.3] = f(-2.16) = 0.103

Para [0, 1]:Y1 = f(0)(-6.4)=(1)(-6.4) + 2.2 = f(-4.2) = 0.01Y2 = f(0(-4.2)+(0.01)(-9.4)+1(-4.2)+6.3) = f(-2.006) = 0.8871

Para [1, 0]:Y1 = (1)(-6.4)+0(-6.4)+2.2) = f(-4.2) = 0.01Y2 = (1) (-4.2)+0.01(-9.4)+0(-4.2)+6.3 = f(2.006) = 0.88

Para [1, 1]:Y1 = (1)(-6.4)+(1)(-6.4)+2.2 = f(-10.6) = 2.49E-5Y2 = (1)(-4.2)+0(-9.4)+(1)(-4.2) = f(-8.4) = 2.24E-4

Otra posible arquitectura de red que puede aplicarse al problema sería:

- 4.5

-.85.3

2.0

- 2.0

-.1

4.38.8

9.2

(a) (b)Figura 5.6 Otra arquitectura para resolver XOR

Sin embargo, esta red cae en un mínimo local, generándose los valores mostrados en 5.6 (b)

Barridos = 6,587�= 0.25Esta red encuentra valores correctos para los puntos 00 y 10, no para 11 y 01.

Page 36: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

5.4 REGIONES DE DECISION FORMADAS POR PERCEPTRONES DE VARIOSNIVELES

Las redes de perceptrones con varios niveles presentan diferentes capacidades de aprendizajesi tienen una, dos o tres capas [Lippman 87]. Las redes de perceptrones de una capasolamente pueden dividir el plano a la mitad.+ Perceptrones de dos capas pueden formar regiones convexas cerradas o abiertas en elespacio formado por las entradas. Convexo significa que cualquier línea que une puntos en elborde de la región pasa sólo por puntos adentro de la región. Las regiones convexas se formanpor la intersección de regiones de planos que forma cada nodo en el primer nivel. Estasregiones convexas tienen cuando mucho el mismo número de lados que el número de nodosen el primer nivel escondido.El número de nodos a usar en una red con un nivel escondido debe ser tal que essuficientemente grande para formar una región de decisión tan compleja como la requeridapor el problema, pero no tan largo que los pasos no puedan estimarse con el número de datosexistentes.

+ Las redes de perceptrones de tres capas (sin contar la entrada) pueden formar regionesarbitrariamente complejas.

5.5 MEJORAS A RETRO-PROPAGACION

Rumelhart, Hinton & Williams describen un método para mejorar el tiempo de entrenamientode BP, llamado momentum, definido de la siguiente manera:W ji (n +1)= W ji (n)+ η δpj O pi + α W ji (n)-W ji (n -1)[ ]

0 < �< 1 ( en general se utiliza 0.9)

Cabe aclarar que a lo largo del tiempo se han propuesto inumerables modificaciones parareducir el tiempo de entrenamiento de retropropagación.

5.6 APLICACIONES DE RETRO-PROPAGACION

Existe una gran variedad de aplicaciones de este algoritmo. Enseguida se nombran algunosejemplos:

+ Sistema de reconocimiento óptico de caracteres con 99 % combinando métodosconvencionales y BP ( Japan NEC).+ Sejnowski y Rosemberg (1987) tuvieron un éxito espectacular con NETTALK, en unsistema que convierte texto de inglés en voz.+ Burr (1987), reconoce palabras escritas a mano en inglés, usando un diccionario, y obtieneun 99.7 % de reconocimiento en su experimento.+ Le Con construyó una red de retropropagación que incorpora cierto conocimineto sobre latopología del problema a resolver. La red reconoce dígitos manuscritos con un 95% de éxito.

5.7 LIMITACIONES DE RETRO-PROPAGACION

Entre las principales limitaciones de retropropagación están:

+ El proceso de entrenamiento es largo e incierto.

Page 37: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

+ Puede haber problemas en el entrenamiento debido a:- Parálisis de la red. Esto significa que los pesos crecen mucho, y las neuronas operan

en valores grandes de OUT, donde la derivada de la función de activación es 0 y como elerror es proporcional a este valor no hay cambio en él.

- Caída de la red en un mínimo local.

DISCUSION #2 Back-Propagation

1.- Se dice algunas veces que las RN involucran un nivel de computación sub-simbólico.¿Cómo puede emerger conocimiento de estas interacciones de bajo nivel? Cada nodo se puede vercomo un "detector de características".2.- Cada característica se conecta a otro clasificador. El umbral puede funcionar como un AND delas tres características. Si el umbral es bajo, empieza a funcionar como un OR.3.- Representación de intensidad, comparada con sistemas expertos.4.- Las RN de un nivel se limitan a cálculos que mapean patrones de entrada similares con patronesde salida similares.5.- ¿ Porqué decimos que esa es una definición recursiva ?6.- Los nodos escondidos representan los conceptos de lobo, * y leñador.

ARTICULO #5 Aplicación de BP a verificación de firmas

1.- Notese la manera en que se evalua el desempeño del sistema.2.- Análisis de escritura a mano

Reconocimiento:

escritor

Identificación Verificación

3.- Diferencia entre análisis dinámico y estático.4.- Notese la resolución.5.- La importancia de incluir "falsificadores" el conjunto de entrenamiento.

6.- Que opinan de las conclusiones .

Comentarios del Artículo 4 (BP)

- El conocimiento de una red está en los pesos.- El nivel de computación es sub-simbolico como es que emerge conocimiento? Cada neurona es undetector de características.- BP nos da un sistema que puede construir sus propias bases de reglas, con un mínimo deintervención.

Page 38: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 6 LAS REDES DE HOPFIELD

Las redes que hemos visto hasta ahora son N0-recurrentes; esto quiere decir que no hayretroalimentación de las salidas de un nodo hacia sus entradas. La no retro-alimentaciónasegura estabilidad, sin embargo, las redes no recurrentes están limitadas en comparación delas recurrentes.Inestabilidad significa que la red va de estado a estado infinitamente sin detenerse.En las redes recurrentes, se calcula su valor de salida, el cual es re-alimentado como entrada,recalculándose la salida otra vez. Los cambios en la salida supuestamente van siendo más ymás pequeños hasta llegar a cero, en donde la red se "estabiliza", aunque puede ser que estonunca suceda (ejemplo: un sistema caótico )Entre las redes recurrentes más populares se encuentran las Redes de Hopfield.John Hopfield fue uno de los pocos investigadores que siguió trabajando durante la "épocaobscura" de las RNA. En 1978 el MIT creó el “Centro para el procesamiento de informaciónBiológica", y Hopfield fue llamado a participar.

Una de las principales contribuciones de Hopfield es la conceptualización de las redesneuronales como sistemas dinámicos con energía.

Otros autores han contribuído también con modelos similares. S. Grossberg, con su libro"The adaptive brain" (1987) ha estudiado propiedades generales de este tipo de redes.

6.1 CONFIGURACION DE LA RED DE HOPFIELD

Hopfield diseñó varios modelos de redes. La que propuso originalmente en 1982 utilizanormalmente entradas binarias, por ejemplo imágenes en blanco y negro. Esta red se puedeutilizar como una memoria asociativa o para resolver problemas de optimización.Una memoria asociativa ó memoria dirigida por contenido es útil cuando se cuenta con partede un patrón de entrada y se requiere el patrón completo. Como ejemplo de memoriaasociativa citemos una referencia bibliográfica. Si contamos con una referencia bibliográficaincompleta podemos obtenerla completa a través de una memoria asociativa.

El modelo básico de Hopfield es el siguiente:

Xo X X1

n-1

n-1X

Xo´ X ´

ο

n-2n-1

1

n-2

1

µµ

µµ

Fig. 6.1 Red de Hopfield

Page 39: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

La red funciona de la siguiente manera: se aplica el vector X en el tiempo t=0. La redempieza a calcularse y recalcularse hasta que los valores �´s ya no cambian. Al momento deconvergencia, cuando las salidas ya no cambian, sucede que Xo ... Xn-1 = �o´... �n-1.Otras características de la red son:- La función de activación es la escalón.- Los patrones de entrada y salida pueden tomar valores +1 ó -1.- La salida de cada nodo se retroalimenta a los otros nodos vía pesos, que llamaremos tij.

6.2 ENTRENAMIENTO Y OPERACION DE LA RED HOPFIELD

En el caso de Hopfield, el cálculo de los pesos (entrenamiento de la red) es muy simple.Consiste simplemente en determinar el valor de la matriz de pesos T por medio demultiplicación de matrices.Por otro lado, el proceso de evaluación de la red, o recuperación de información, es iterativo;y finaliza cuando la red converge.De manera general, una red de Hopfield funciona así:Suponiendo M clases a almacenar, en una red de Hopfield con N nodos.

1) Se calculan los pesos Tij de acuerdo a una receta dada, que involucran las M clases (ópatrones que se desean almacenar en la memoria).2) Se muestra a la red un patrón cualquiera (completo o incompleto).3) La red empieza a iterar en pasos discretos de acuerdo a una fórmula dada, hasta que lasalida converge, es decir, no cambia más.4) El patrón mostrado en este momento por la red es el patrón de salida.Los pasos 2 a 4 se repiten para los patrones que se deseen recuperar de la red. Hopfield,Cohonen y Grossberg mostraron que esta red converge si los pesos son simétricos, esto es si: tij = tji y tij = 0 para todo i.De manera más formal, el algoritmo de Hopfield es el siguiente:

ALGORITMO DE HOPFIELD

Paso 1. Calcule los valores de los pesos que conectan los nodos utilizando la fórmula.

tij

=XisXj

s i ≠ j

s=0

M −1

∑ 0 i = j

donde: tij es el peso que va de la neurona i al j.

Xis es el valor del i-ésimo elemento (nodo) de la s-ésima clase.M es el # de clases que se desean aprender.

En notación matricial tenemos que :

T = Xi=0

M −1

∑ iT X i

Page 40: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Donde Xi es el i-ésimo patrón a almacenar.

Lo que se conoce como el producto externo (OUTER PRODUCT) de un vector-renglón consí mismo.

Paso 2. Inicialize la red con el patrón de entrada dado (X), esto es

�i(0)=Xi 0<= i <= N-1donde:

�i(0) es la salida de la red en el tiempo t=0.Xi puede ser +1 ó -1, y es el i-ésimo elemento del patrón de entrada. N es el

número de entradas de la red.

Paso 3. Itere hasta converger de acuerdo a la fórmula:

µj t+1( )= Fh tij µ i(t)i =0

N−1

0 ≤ j≤ N -1

Donde:

Fh(x)

=

1 si x> 0

-1 si x< 0

µj(t) si X= 0 esto es, no hay cambio en el valor

µi(t) en el vector µ.

La salida de la red estará dada después de la covergencia. Esta salida representa al patrónque más se parece al patrón de entrada dado.

EJEMPLO.Supongamos que queremos almacenar los siguientes 2 patrones en una red de Hopfield:

X1 = 1 1 1 -1[ ]X2 = -1 -1 -1 1[ ]

Multiplicando cada patrón por su transpuesta tenemos:

Page 41: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

1

1

1

-1

1 1 1 -1[ ]=

1 1 1 -1 1 1 1 -1

1 1 1 -1

-1-1-1 1

-1

-1

-1

1

-1 -1 -1 1[ ]=

1 1 1 -1

1 1 1 -1

1 1 1 -1

-1-1-1 1

Page 42: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Sumando ambos productos externos, haciendo la diagonal = 0, tenemos que:

T =

2 2 2 -2

2 2 2 -2

2 2 2 -2

-2-2 -2 2

=

0 2 2 -2

2 0 2 -2

2 2 0 -2

-2-2 -2 0

Donde M=2 y N=4.

Suponemos ahora que deseamos recuperar el patrón mas cercano a:

X = 1 1 1 -1( )Evaluando la red tenemos que :

X ⋅T = 1 1 1 -1( ) 0 2 2 -2

2 0 2 -2

2 2 0 -2

-2-2 -2 0

= 6 6 6 -6( )

µ(1)= F( X ⋅ T)= 1 1 1 -1( )

en este punto el nuevo µ(1) es igual al anterior µ(0), entonces el proceso terminará.Supongamos ahora que queremos recuperar al patrón más parecido a

X = (-1 -1 -1 -1)

tenemos que:

µ(0)⋅T = -1-1-1-1( ) 0 2 2 -2

2 0 2 -2

2 2 0 -2

-2-2 -2 0

= -2-2 -2 6( )

Page 43: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

µ(1)= F(µ ⋅T)= -1-1-1 1( )

µ(1)⋅ T = -1-1-1 1( ) 0 2 2 -2

2 0 2 -2

2 2 0 -2

-2-2 -2 0

= −6 -6 -2 6( )

µ(2)= F µ(1)⋅ T( )= -1-1-1 1( ) µ(2)= µ(1) Fin del proceso.

6.3 EJEMPLO DE UNA RED DE HOPFIELD

En su articulo “An Introduction to Computing with neural nets” [lippman 87], Lippmanmuestra el resultado obtenido al almacenar 8 patrones en una red de Hopfield con 120 nodos(ver figura 6.2)

6.4 LIMITACIONES DE LA RED DE HOPFIELD

Las principales limitaciones de la red de Hopfield son:

1) El número de patrones que se pueden almacenar depende del número de nodos en la red,y si se tratan de almacenar muchos patrones, la red converge a patrones desconocidos.Hopfield mostró que esto ocurre raramente si el número de patrones almacenados (M) esmenor que 0.15 N, donde N =#de nodos.2) La red es inestable si hay poca ortogonalidad entre patrones, esto es, un patrón tienevarios bits en común con otro.

6.5 ATRACTORES

El estado de las redes recurrentes se puede visualizar geométricamente por medio de cubos óhiper-cubos. Por ejemplo, si la red tiene 2 neuronas, estos pueden “caer” en 4 posiblesvalores 00,01,10,11, los cuales forman un cuadrado:

01 11

00 10

Si la red tiene 3 neuronas, tenemos que los posibles estados de las neuronas forman un cubo:

Page 44: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

111

011110

010

000

101

001100

Un sistema con n neuronas tiene 2n estados distintos y se pueden asociar con un hipercubon-dimensional.De manera simple podemos imaginar al proceso de convergencia de una red como aquel depasar a través de varias aristas del hipercubo hasta llegar a aquella que tiene la menorenergía en el sistema para el patrón dado. A estas aristas se les conoce como “atractores”.

6.6 LA RED DE HOPFIELD COMO SOLUCION A PROBLEMAS DE OPTIMIZACION

En 1985, Hopfield y D.W.Tank publicaron un artículo llamado "Neural Computacion ofDecisions in Optimization Problems", en el cual proponen una solución al problema delagente viajero (Traveling Salesman Problem,TSP).TSP consiste en planear el itinerario de un vendedor que tiene que visitar N ciudades, demanera que la distancia recorrida sea mínima. El vendedor empieza en una determinadaciudad y viaja de una a la siguiente visitándolas sólo una vez. Se supone que todas lasciudades están conectadas.Este es un problema combinatorial que aparece muchas veces en la vida real; es fácil deplantear pero difícil de resolver pues su complejidad crece exponencialmente con N.Pertenece a la clase de problemas llamados NP-Complete Problems (NON-deterministicpolynomial).Para este tipo de problemas no hay un mejor método de solución que tratar todas lasposibilidades y según la mayoría de los matemáticos no es probable que se encuentre algomejor. Sin embargo hay N! / 2N posibles soluciones. Por ejemplo, si N=60 tenemos69.34X1078 soluciones.La solución encontrada por Hopfield no es la óptima, sin embargo las respuestas seencuentran mas o menos rápidamente.Algunos investigadores calculan que usando este método se puede encontrar una solucióndespués de N3 cálculos. La solución obtenida por este método depende de parámetros queson difíciles de asignar, y muchas veces obtiene resultados más bien malos, sin embargo esingeniosa.

Page 45: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

6.6.1 DEFINICION DEL PROBLEMA

Supóngase que hay N ciudades: A,B,C,D etc... a visitar y que las distancias entre ellas estádada por el valor dxy que es la distancia de la ciudad x a la ciudad y .Un tour posible para el agente viajero se puede representar como un conjunto de N renglones(uno por cada ciudad) de 0´s y 1´s donde en cada renglón hay un solo 1, el cual indica laposición de esa ciudad en el tour. Un tour válido tiene sólo un uno por renglón y un uno porcolumna.Por ejemplo, suponiendo que el agente debe visitar 4 ciudades A,B,C y D podemos definir aun posible "tour" con la siguiente matriz:

CIUDADORDEN DE VISITA

A

B

C

D

1 2 3 4

0 1 0 0

0 0 0 1

1 0 0 0

0 0 1 0

La cual representa al tour C-A-D-B.Esta matriz se puede representar en un vector de una dimensión con N2 elementos. Dichovector puede representarse en una red de Hopfield de N2 neuronas.El objetivo de la red de Hopfield es hacer converger la red hacia un tour válido en el cualexista la mínima energía posible. El problema esta entonces en definir ahora que es la“energía” del sistema.

6.6.2 FUNCION DE ENERGIA

Podemos notar que la representación escogida del problema establece la restricción que hayun solo uno por renglón y un sólo uno por columna, Además, sabemos que el objetivo esminimizar la distancia entre ciudades.Hopfield y Tank definieron la siguiente fórmula de energía que contiene dichasrestricciones, que es la siguiente

E =A

2 V x,i

j ≠i∑

i

∑x

∑ V x,j+B

2 V x,i

y≠x∑

x

∑i

∑ Vy,i +C

2V x,i −ni

∑x

2

+

D

2 dx,y

i∑

y≠x∑

x∑ V x,i V y,i + 1+V y,i − 1( )

Page 46: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Donde Vx,y representa la salida de la neurona que muestra que la ciudad x está en laposición y.En la función se puede notar lo siguiente:- el primer término es cero si y sólo si hay un solo "uno" en cada renglón. De otra manera, eltérmino toma en valor mayor que cero.- el 2º término es cero si y sólo si hay sólo un uno en cada columna.- el 3º término será cero si y sólo si hay exactamente N 1´s en la matriz tour.- el 4º término representa la longitud un tour válido. Considérese que los subíndices de Vestán definidos en términos de módulo n, esto es:

Vj+n =Vj

CALCULO DE LA RED

La salida de cada nodo se calcula de la siguiente forma:Vx,i = g(�x,i) = 1/2(1+Tanh(�x,i/�o))

Donde �x,i representa la entrada de cada neurón. Su valor deberá cambiar de manera que sereduzca la energía del sistema, este cambio se puede escribir como:

µx,i= µx,i+δµx,i

δt

1

∆t

Donde

δµx,i

δt= −

µx,iτ

− A Vx,jj ≠i∑ − B Vy,i

y≠x∑ − C Vx,j− n

j∑

x∑

2

D

dx,y Vy,i +1+ Vy,i -1( )y∑

VALORES DE LOS PARAMETROS

A, B, C, D, �o, �t y � deben tomar un valor inicial.Desgraciadamente la convergencia de la red va a depender de estos valores, los cuales sonrealmente difíciles de establecer.Hopfield y Tank han sugerido que el valor inicial sea: �� = 1/N añadiendo un poco de ruidopara romper la simetría, esto es:

�� = �� + noise(0.1* � inicial)Dondenoise(x) = # al azar entre 0 y xEn algunas pruebas que realizaron Hopfield y Tank utilizaron los siguientes valores:A=1000B= 1000

Page 47: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

D= 1000�= 1.5*NC=0.75*D*N�o= 0.02t= 1Dt= 20000

Hopfield y Tank mostraron sus resultados con un experimento con 10 ciudades. De 20corridas que hicieron, 16 dieron tours válidos y cerca del 50 % de las 50 soluciones fueronde las más cortas halladas por el método exhaustivo. [Hopfield 87]

6.7 CONVERTIDOR ANALOGICO-DIGITAL CONSTRUIDO CON REDES DEHOPFIELD

En 1985 Hopfield y Tank mostraron un circuito eléctrico que una red recurrente paraproducir un convertidor Analógico-Digital de 4 bits. (Dada un señal analógica, producir unnúmero binario que lo representa de manera ideal, ver figura 6.1)

entrada

(voltaje

0000000100100011

1 2 3 4 5 15

1111

Figura 6.3 Conversión de valores analógicos a digitales

El circuito que construyeron es el siguiente:

Page 48: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

INOUT

OUT

Amplificador

inverso

0

1

3

OUT

OUTOUT

2

Figura 1 Convertidor A-D [Hopfield 85]

En este circuito los amplificadores representan a las neuronas, y las resistencias a los pesos.Los pesos son simétricos, esto es la resistencia de la i a j = resistencia j a i.Los amplificadores son normales e invertidos para simular pesos negativos, aunque enningún caso es necesario conectar ambos al mismo tiempo. Se asume que se usa la funciónescalar.Las salidas cambian de manera descrita al principio de intervalos de tiempo.La función de energía de este sistema está definida por :

E =1

2x- 2j OUTj

j∑

2

+ 22j- 1

OUT j 1− OUT j( )[ ]

j∑

Cuando E es minimizada, las salidas deseadas se han alcanzado.

Page 49: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 7 MEMORIAS ASOCIATIVAS BIDIRECCIONALES

BAM ( Bidirectional Asociative Memory )

La memoria humana es asociativa, ya que utilizamos algunos conceptos para recordar otros.Podemos identificar dos tipos de asociaciones: memorias auto-asociativas y memorias hetero-asociativas. La memoria de Hopfield es auto-asociativa; esto significa que es una memoriaque se puede completar (o converger) pero no se puede asociar con otro patrón diferente.[Esto se debe a que sólo hay un nivel de neuronas, es decir la salida aparece en la mismaneurona de entrada.]La red BAM (Memoria asociativa bidireccional) es hetero-asociativa, esto es, acepta unvector de entrada en un conjunto de neuronas y produce un vector de salida en otro conjuntode neuronas.Al igual que la red de Hopfield, BAM es capaz de generalizar produciendo salidas correctasde entradas corruptas. También puede abstraer, esto es, extraer patrones ideales de ejemplosligeramente diferentes. Estas características se aprecian en las funciones mentales humanas yhacen que las RNA se acerquen a una imitación del cerebro. El principal autor de las redesBAM es Bart Kosko, quien ha publicado varios trabajos en el área.

7.1 ESTRUCTURA DE LA RED BAM

La red BAM (Fig.7.1) funciona de la siguiente manera:Un vector entrada A se aplica a la parte de la red ponderada con la matriz W y produce unvector de salida B. B entonces se aplica a la transpuesta de W,WT y se producen nuevassalidas A. Este proceso se repite hasta que la red se estabiliza, esto es cuando A y B ya nocambian.Las neuronas en los niveles 1 y 2 funcionan como en otros modelos: se realizan sumasponderadas que se aplican en una función de activación.Las fórmulas para calcular A y B son:

bi= F( aj j

∑ w ij) ó

B = F( B W )

A = F(B WT

)

Page 50: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Nivel 0

Nivel 1

Nivel 2

W

W

B

A

B

T

Fig.7.1 Estructura de la Red BAM

Función de activación: puede ser una función sigmiode con la constante λ grande ó unafunción escalón, y puede definirse como:

OUTi (n+1) = 1 si NETi (n) > 0 = 0 si NETi (n) < 0

OUT (n+1) = OUT (n) si NET (n) = 0

Las asociaciones (que podemos comparar con lo que sería la memoria a largo plazo en unhumano) se almacenan en W y WT. Para recuperar un patrón (llamado “memoria” porKosko), se aplica A a la red y se espera a que esta se estabilice produciendose una B. Cadapaso en el ciclo se va acercando más y más a la memoria almacenada; este proceso sellama resonancia. El estado de las neuronas puede representar la memoria a corto plazo,porque puede cambiar rápidamente al aplicar otro vector.Esta red, igual que la de Hopfield, minimiza una función de energía.

7.2 CODIFICACION DE LAS ASOCIACIONES

La red se entrena por medio de un cálculo, donde la matriz de pesos W es la suma de losproductos externos de todos los pares de vectores que contiene el conjunto deentrenamiento:

W =i=0

M-1

∑ AiT Bi M = Número de clases

Se asume que las memorias (patrones) son vectores binarios. Estos deben convertirse aforma bipolar, esto es, los componentes > 0 se vuelven 1 y los menores o iguales a cero sevuelven -1.Ejemplo:Suponemos que se desean almacenar las siguientes 3 asociaciones en una rede BAM.

Ao = (1, 0, 0) Bo = (0, 0, 1) Ao´= (1,-1,-1)A1 = (0, 1, 0) B1 = (0, 1, 0) A1´= (-1, 1, -1)A2 = (0, 0, 1) B2 = (1, 0, 0) A2´= (-1,-1, 1)

Page 51: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Bo´= (-1,-1,1)B1´= (-1, 1,-1)Bi´ = (1,-1,-1)

W = Ao ′T Bo + A1

′T

B1 ′

+ A2 ′ T

B2 ′

1

-1

-1

-1-1 1( ) =

-1-1 1

1 1-1

1 1-1

-1

1

-1

-1 1-1( ) =

1-1 1

-1 1-1

1-1 1

-1

-1

1

1-1-1( ) =

-1 1 1

-1 1 1

1-1-1

W =

-1-1 3

-1 3-1

3 -1-1

Si ahora por ejemplo aplicamos Ao al sistema, tenemos

O =AoW

= (1 0 0)

-1-1 3

-1 3-1

3-1-1

= (-1-1 3)

Aplicando la función de activación tenemos que:

F(0) = F(-1,-1,3) = (0,0,1) que es el vector Bo, pero supuestamente no lo sabemos por lo quehay que continuar con el proceso.Aplicando el B generado a WT tenemos

O=BWT

= (0, 0, 1)

-1-1 3

-1 3 -1

3 -1-1

= 3 -1-1( )

Page 52: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

F(3, -1,-1) = (1, 0, 0) = que corresponde a Ao, entonces, fin de proceso.

Vemos que cuando W=WT y W es cuadrada, BAM se convierte en una red de Hopfield auto-asociativa.

CAPACIDAD DE MEMORIA

Hay 2n posibles estados que la red puede tomar (n=No. de neuronas en el nivel máspequeño ). Sin embargo se considera que la red es capaz de almacenar menos que:

n

2log 2n asociaciones.

Además se debe cumplir la siguiente restricción: si se desean almacenar m patrones con nneuronas en el nivel de A y p neuronas en el nivel B, debe cumplirse que:

m < min(n,p)

Page 53: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 8TEORIA DE RESONANCIA ADAPTIVA (ART)

8.1 REDES NEURONALES AUTO-ORGANIZABLES

Las redes vistas hasta ahora entrenan con supervisión. Sin embargo nuestro sueño seríaconstruir máquinas autónomas que puedan aprender de medios complejos, sin supervisión.Existen algunos intentos que se han hecho en RNA para construir sistemas de este tipo, loscuales han dado origen a las redes auto-organizacionales.Se define AUTO-ORGANIZACION como la capacidad de adaptación de un sistema sin unprofesor a través de su confrontación directa con el medio. Las redes auto-organizacionalesaprenden sin retro-alimentación del medio ambiente; la red debe descubrir por sí mismacualquier relación de interés que pueda existir entre los datos de entrada.

Algunos ejemplos de redes auto-organizacionales son:- Red de HAMMIN y MAXNET. Clasificador de 2 niveles.- Red de CONTRA-PROPAGACION.- Mapas de características auto-organizacionales de KOHONEN.- Redes ART (Adaptive Resonace Theory)

8.2 TEORIA DE RESONANCIA ADAPTIVA (ART)

- El cerebro recibe un flujo de información contínuo, extrae la información vital, actúa y aveces lo almacena en memoria a largo plazo.- Las nuevas memorias se almacenan de tal manera que las viejas no se olvidan.

8.2.1 EL DILEMA DE ESTABILIDAD - PLASTICIDAD

Este dilema se presenta en todas las máquinas inteligentes capaces de adaptaciónautónoma en tiempo real debido a cambios en el medio ambiente.El dilema dice: “Como se puede diseñar un sistema de aprendizaje de manera quepermanezca “plástico” ó adaptivo en respuesta a eventos significativos y a la vezpermanezca “estable” en su respuesta a eventos irrelevantes?”- En otras palabras como sabe el sistema cuando cambiar de modo estable a modo “plástico”de manera que alcance estabilidad sin rigidez y plasticidad sin llegar al caos?- Como se evita que nuevas memorias borren viejas memorias?

La mayoría de las RNA olvidan “viejos patrones” al aprender nuevos. Los científicosCARPENTER y GROSSBERG buscaron paradigmas muy diferentes de RNA, desarrollandoART (Adaptive Resonance Theory). Las redes ART mantienen la plasticidad necesaria paraaprender nuevos patrones, y a la vez previenen la modificación de otros que se hanaprendido previamente.Las redes ART entrenan sin supervisión, formando grupos de patrones conforme vanaprendiendo. Para funcionar, aplican el concepto de aprendizaje competitivo.

8.2.2 APRENDIZAJE COMPETITIVO

Los modelos de aprendizaje competitivo aparecieron a principios de los 70´s, desarrolladospor varias personas, por ejemplo MALSBURG y GROSSBER; después otros autores comoAMARI, COOPER, KOHONEN lo han usado en sus trabajos de mapas auto-organizados. En

Page 54: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

estos modelos se presenta una entrada a una red la cual calcula salidas. Otro nivel escoge elnodo que recibe la entrada más alta “uno se lleva todo”.8.2.3 Tipos de ART

Actualmente hay varios modelos ART, que se distinguen por los tipos de entrada y por elprocesamiento que efectúan. Los primeros modelos fueron ART1 y ART2.ART1 acepta sólo entradas binarias. ART2 acepta binarias y continuas.

VARIABLE INVOLUCRADAS EN ART

Variables de comunicación

X = Vector de entrada con m componentes.N = No. máximo de clases que la red puede discernir.M = No. de componentes en el vector de entrada.C = Vector resultante de comparar X con las “clases” ya identificadas por la red.Resultado de la regla de los 2/3. Contiene m componentes.R = Contiene un 1, y el resto 0´s. Representa a la neurona ganadora en la competencia delmódulo de reconocimiento. Contiene n componentesG1, G2 = Parámetros de control.R A T B X

GANANCIA 2

GANANCIA 1

NIVEL DE

RECONOCIMIENTO

NIVEL DE

COMPARACIONRESET

R

R C

X

G2

-

+

++

++

-

-

vigilancia

Fig. 8.1 Arquitectura ART

Variables locales:

T = Versión binaria de B . Vector de pesos. (nxm)B = B j valores reales, representa a la j-ésima clase ya reconocida. (mxn) Cada neurona

en el nivel de reconocimiento tiene un vector B asociado. Hay n vectores B de dimensiónm cada uno.

De manera general ART1 funciona así:

Page 55: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

- Se lee la primera entrada, la cual es asignada como un ejemplar del primer grupo.- La siguiente entrada se compara a los grupos existentes hallados, el “más parecido”.

G

r1 r2 rn

t11 t1m t21 t2m tn1 tnm

x1 x2 xm

p1 p2 pm

c1 c2 cm

a) Módulo de Comparación

. . .

r1 r2 rnb12 b22 bm2 b1n

bmnb11 b21 bm1

c1 cmc1 c1c2 c2 c2cm cm

b) Módulo de Reconocimiento

Fig. 8.2 Módulos de comparación y reconocimiento y Reconocimiento en ART

- La entrada se agrupa en el grupo ganador si la distancia al representante es menor que unvalor umbral, sino se forma un nuevo grupo. Si el vector de entrada no se ajusta a ningúngrupo se genera un nuevo. Si se encuentra algún patrón que asemeja el de entrada dentrode una tolerancia (vigilancia), el patrón es “entrenado” para hacerlo más parecido al patrónde entrada.- El proceso se repite para todas las siguientes entradas.

El número de grupos crece con el tiempo y depende de que tan “estricto” es el valor umbral yde la manera en que se comparen “las distancias”. Esto se conoce como un clasificador de

Page 56: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

vectores, pues acepta un vector de entrada y lo clasifica en una de varias categorías,dependiendo de cual de los 5 patrones almacenados es el más “parecido”.La decisión de clasificación se indica por la única neurona que se enciende en el nivel declasificación.Los patrones almacenados nunca se modifican si el patrón de entrada no se asemeja, deesta manera, el dilema plasticidad-estabilidad se resuelve.

ARQUITECTURA DE ART

- 2 niveles de neuronas: comparación y reconocimiento.- 3 funciones de control; ganancia1, ganancia 2 y reset.

Descripción de cada módulo

NIVEL DE COMPARACION

- Recibe el patrón binario de entrada X y obtiene como salida C .

- Inicialmente C = X , más tarde R se produce en el nivel de reconocimiento modificandoC .

Cada neurona i en el nivel de comparación recibe 3 entradas:

- El componente Xi de X (vector entrada).- La señal de retroalimentación pj que es la suma ponderada de las salidas del nivel dereconocimiento multiplicada por Tj.- Ganancia 1.

Para que salga un uno, al menos 2 de las 3 entradas deben ser 1. Esto se llama la regla dedos tercios.

Inicialmente Ganancia1=1, todos los componentes R =0, C = X .

NIVEL DE RECONOCIMIENTO

- Clasifica el vector de entrada.- Cada neurona en el nivel de reconocimiento tiene un vector de pesos Bj asociado. Sólo elneurona con el vector de pesos que más se parece al vector x, si enciende.- La entrada es C.- Los pesos B son números reales, no valores binarios.- T es una versión en “binario” de los mismos pesos (en el nivel de comparación)

Cada neurona calcula el producto punto entre sus pesos y C. La neurona con pesos másparecidos a C producirá el mayor valor, ganando la competencia e inhibiendo las demásneuronas.Las neuronas en este nivel están interconectados entre su formato lo que se llama RED deINHIBICION LATERAL. Esto asegura que sólo una neurona se enciende a la vez.“La ganadora se lleva todo”. Este proceso funciona asignando pesos positivos de cada nodohacia sí mismo y negativos hacia los demas.

GANANCIA 2

G2, la salida de ganancia 2 es nuevo si X tiene algún componente 1, ó sea, es el OR lógico

aplicado en los componentes X .

Page 57: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

G1 es 1 si cualquier componente de X es 1. Sin embargo, si cualquier componente de Res 1, G1 es forzado a valor 0.

GANANCIA 1

G1 se define de acuerdo al OR aplicado en X y R según la siguiente tabla.

OR X OR R

0 0

1 0

1 1

0 1

RESETMide la similitud entre X y C. Si se diferencian por más de lo permitido por un parámetro devigilancia, se manda una señal que desabilita esa neurona encendida en el nivel dereconocimiento. Este módulo calcula similaridad como la razón del número de unos en C al

número de unos en X .Vigilancia p indica que tan cercana una entrada debe estar a un ejemplar almacenado paraconsiderarse similares.

OPERACIONES DE CLASIFICACION DE ART

3 fases principales: reconocimiento, comparación y búsqueda.

++

-

-

--

+

-

-

Red de inhibición lateral para el nivel de reconocimiento.

FASE DE RECONOCIMIENTO

- Inicialmente x=0 -> G2=0 -> R=0- Se aplica X, el cual debe tener más de un componente igual a 1. -> G2=1, G1=1.

Page 58: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Con esto se marcan todos las neuronas en el nivel de comparación, proporcinanado una delas dos entradas necesarias para la regla 2/3, permitiendo a la neurona encender si elcorrespondiente componente X es 1, X=C.

Después, para la neuronas j en el nivel de reconocimiento se realiza el producto punto entreBj y C. La neurona con el valor mayor tiene pesos que más se parecen al vector de entrada.Esta neurona gana, e inhibe las demás salidas. Un componente R es 1 y todos los demásson 0.

FASE DE COMPARACION

La única neurona que se encendió en el nivel de reconocimiento regresa un 1 al nivel decomparación, por medio del componente rj =1. (j es la neurona encendida).Este valor va a través de un peso binario tij a cada neurona del nivel de comparación,generando una señal pi, la cual es igual al valor tij (uno o cero).

Los algoritmos de inicialización y entrenamiento aseguran que cada peso T j consiste devalores binarios.Cada vector Bj es una versión escalada del correspondiente vector de pesos Tj.Todos los componentes de P son también binarios. Después de iniciarse R≠ 0, ganancia 1se inhibe y G1 es 0.Entonces, de acuerdo a la ley de los 2/3, las únicas neuronas que se encenderán son las quereciban simultaneamente unos de X y P.Esta retroalimentación obliga a que algunos componentes de C se vuelvan 0, en los casosde que la entrada no coincide con el patrón almacenado. Esto es X y C no tienen valores 1que coincidan.Si hay una diferencia fundamental entre X y P (pocos unos coinciden), C contendrá muchos

ceros cuando X contiene unos. Esto quiere decir que P no es el patrón buscado, y laneurona que se encendió en el módulo de reconocimiento se debe inhibir.Esta inhibición se lleva a cabo en Reset si el grado de similitud es menor que el nivel devigilancia.

Fase de búsqueda

Si no hay señal de Reset, la equivalencia fue adecuada y la calsificación termina, si hayentonces se debe buscar una similitud mejor.

Cuando se encuentra Reset, R =0, G1=1 y otra vez X =C . Como resultado, otra neuronagana en el nivel de reconocimiento y otro patrón P se retroalimenta al nivel de comparación.Si P no se parece a X, la neurona encendida tambien se inhibe.Este proceso se repite hasta que uno de los dos puntos siguientes ocurre:1.- Se encuentra algún patrón almacenado que se parezca suficientemente a P.Si esto ocurre, la red entra a un ciclo de entrenamiento que modifica los pesos almacenadosen Tj y Bj.2.- Se prueban todos los patrones almacenados y ninguno se parece (todas las neuronashan sido inhibidas). Si esto ocurre a una neurona que no ha sido utilizado en el nivel dereconocimiento se le asigna este patrón y sus pesos Bj y Tj se colocan de manera que

coinciden con X .

8.3 IMPLEMENTACION DE ART

La implementación de ART es muy difícil en máquinas de señales digitales, pues muchaspartes del algoritmo son inherentemente paralelas.

Page 59: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

El proceso de inhibición lateral puede requerir gran cantidad de tiempo antes de que ocurraconvergencia.El siguiente algoritmo esta basado en una implementación hecha por Lippman:

1. InicializaciónInicialice valores de todos Bj, Tj y el parámetro de vigilancia P.

bi j =

1

1+ mm=número de componentes en el vector de entrada.

n=número máximo de clases que la red puede discernir.1<=L<=m, 1<=j<=n

tij=1 para todo j,i.Inicialice P en un valor entre 0 y 1.(P se puede cambiar durante el proceso) parámetro de vigilancia

2. Reconocimiento

Aplique un vector X .

G1=1 (debido al OR de X ) y por tanto C = X .

2.1 Calcule para cada neurona j en el nivel de reconocimiento.

NETj = ( Bj . C )

Bj = es el vector de pesos asociado con la neurona j en el nivel de reconocimiento.C = es la salida del nivel de comparación.NETj = es la excitación de la neurona j en el nivel de reconocimiento.

Aplique el algoritmo de inhibición lateral, de manera que la neurona con máximo NETsea el ganador y valga su salida 1 y todos los demás 0.

3. Comparación:Ahora G1=0 debido a que hay señal de retroalimentación.Aplique regla 2/3 para calcular salida de las neuronas del nivel de comparación. Acá

se encenderán sólo aquellas que tienen correspondientes componentes en P y X=1.

Compare C y X de la siguiente manera:

1. Sea D el número de unos en el AND lógico Tj y X .

2. Sea N el número de unos en C .

S = N/D No a<S<1 (perfecta coincidencia)

4. BúsquedaSi S > P fin de búsquedasino

- deshabilite la neurona encendida.- G1=1.- busque otra neurona ganadora, repita paso 2.1.

Si nadie satisface eventualmente C = X y S=1 entonces la condición S>P se va asatisfacer.

5. Entrenamiento

Page 60: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

Cálculo de nuevos valores de Bj:

bij = 2 Ci

1+ CkR∑

j= neurona ganadora

t ij = Ci para todo i6. Regrese al paso 2.

8.4 Los cuatro principales teoremas de ART

1. Después del entrenamiento, la aplicación de uno de los vectores de entrenamiento (o unocon las características esenciales de la categoría) activará la neurona correcta. Nivel dereconocimiento sin búsqueda (rápido acceso)2. El proceso de busqueda es estable. Después de que una neurona ganadora se escoge, elsistema no oscila de una neurona a otra debido a modificaciones en los pesos. Sólo resetpuede causar cambio.3. El entrenamiento es estable, no causa un cambio de una neurona del nivel dereconocimiento a otro.4. El entrenamiento termina, no importa la secuencia.

Page 61: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

CAPITULO 9REDES RECURRENTES

9.1. Procesamiento Temporal. (tomado de Haykin 89)

El algoritmo de Retro-propagación sólo puede aprender relaciones ESTÁTICAS. Una entrada X seasocia a una salida Y, esto es a patrones espaciales independientes del tiempo:

X Y

También se puede usar BP para realizar predicciones no lineales de una serie de tiempoestacionaria. Una serie de tiempo es estacionaria cuando su estadística no cambia con el tiempo. Eneste caso X se puede definir como:

X = [x(n-1), x(n-2),...,x(n-p)]T

Donde p es el orden de predicción, y la salida de la red es un escalar y(n) que se produce comorespuesta a la entrada X, representando la "predicción de un paso" o predicción del siguiente valorde X. ∧

Y(n)= x (n)

El valor real x(n) de la señal de entrada representa la respuesta deseada con la que se entrena la red.

X(n-1)

X(n-2) ∧ Y(n)=X(n)

X(n-p)

Aun así, esta red de perceptrones representaría un modelo estático, cuyos parámetros tienen valoresfijos. ¿Cómo podemos representar el tiempo, esto es, proveer de propiedades dinámicas a la red?Para que una red sea dinámica, debe poseer MEMORIA. Hay básicamente 2 maneras de ponermemoria en una red neuronal: con retrasos y con recurrencia.

z-1

z-1

Page 62: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

a) Una manera de poner memoria en una red es introduciendo retrasos de tiempo en la estructurasináptica de la red y ajustar sus valores durante el entrenamiento. Se sabe que en el cerebro semanejan señales retrasadas.Un ejemplo de esta metodología es la red "Time Delay Neural Network" (TDNN) descrita porLang y Hinton en 1988 y por Waibel en 1989. Es una red hacia delante de varios niveles cuyasneuronas escondidas y de salida se repiten a través del tiempo. Esta red fue creada para capturarel concepto de simetría en tiempo encontrada en el reconocimiento de fonemas, usandoespectogramas. (Un espectograma es una imagen bidimensional, donde la vertical representafrecuencia y la horizontal tiempo)

b) La otra opción para que una red sea dinámica es haciéndola recurrente. Hay dos metodologíasbásicas de entrenamiento de redes recurrentes:

• Retropropagación a través del tiempo. Creada originalmente en la tesis de P. Werbos(1974), (1990). Redescubierta independientemente por Rumelhart et al. (1986) y unavariación propuesta por Williams y Peng (1990).• Aprendizaje Recurrente al Tiempo Real (Real Time Recurrent Learning). Descrito porWilliams y Zipsen (1989), los orígenes del algoritmo fueron dados por McBride yNardendra (1965) en identificación de sistemas ajustando parámetros de un sistemadinámico.

9.2. RETROPROPAGACIÓN A TRAVÉS DEL TIEMPO (tomado de Gómez-Gil 98)

Un ejemplo de una red recurrente es:

1 3

2

El calculo de la salida yi, de cada neurona i, esta dado por

iIxiyityi

++−=∂∂ )(σ

donde:∑=

ji WjiYjX

Xi representa la entrada total a la i-ésima neurona que viene de otras neuronas, Ii es la entradaexterna a la neurona i, Vij es la conexión de la neurona i a la neurona j y σ es un funcióndiferenciable cualquiera, normalmente una sigmoide:

Page 63: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

xex −+

=1

1)(σ

BPTT intenta minimizar el error obtenido en un periodo de tiempo entre la salida de una neurona yel valor deseado para esa salida. El error total de una neurona está representado por:

∫ −=it

t

dttdtyE0

))()((

Donde Y(t) es la "Salida real" obtenida por la neurona y d(t) es la salida deseada. Se busca laminimización de la raíz cuadrada de E.

La dinámica de la neurona puede expresarse usando ecuaciones de recurrencia como:

iIxityit

tyittyi++−=

∆−∆+ )()()()(

σ

])()([)()( iIxityittyittyi ++−∆=−∆+ σ

))()(()()( iIxityittyittyi ++−∆+=∆+ σResolviendo la minimización de E, Permutter encontró la siguiente solución: (Ver Pearlmutter B.A."Learning State Space Trayectories in Recurrent Neural Networks" Neural Computation, Vol. 1 pp.263-269, 1989).

∑−=∆t

YiWij ση ' tZjXj ∆)(

η = coeficiente de aprendizaje

Donde:

tZitttZitZi∂

∂∆−∆+= )()(

∑−−=∂

jWijeiZi

tZi

σ ' ZjXj)(

)()()( tditYitei −= ,=)(tdi Valor deseado del nodo i en el tiempo t

∑−∆+−∆+∆−∆+=j

WijtteittZitttZitZi σ)()([)()( ' )]())(( ttZjttXj ∆+∆+

Page 64: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

El algoritmo para entrenar una red recurrente BPTT es el siguiente:

Algorithm to train a Recurrent Neural Network using BPTT

SOURCE: "The Effect of non-linear Dynamic Invariants in Recurrent Neural Networks forPrediction of Electrocardiograms. María del Pilar Gómez Gil. Ph. D. Dissertation in ComputerScience. Texas Tech University, December 1998, pp. 111-112 "

Given a discrete signal )( tnd ∆ over a period of time [0,FT], the Pearlmutter's implementation ofBPTT to train one output node of a complex network to learn d(t) results in the following algorithm:

1. Get parameters describing the architecture of the network, where n= total number of nodes.2. Get the desired values d[i][t] for each i-th output node" in the network at each time t in the

trajectory, assuming that such values are separated by a time period t∆ . The size of suchtrajectory will be refereed from now as FinalTime

3. Get or calculate the inital condigions for the outputs of all nodes, that is y[i][0] for all nodesi=0...n-1

3.1 If this network is learning by first time then3.1.1 Initialize weights of with small random numbers and/or3.1.2 Set any previously calculated weights corresponding to any

subnetworks

Else3.1.3 Read weights of network corresponding to past runnings

4. Repeat until Total/Error is small enough or until desired number of epochs (each step in thisloop is called an epoch)

4.1 For t=1 to FinalTime (and each time t in the trajectory)4.1.1 For i=0 to n-1 (each node in network),

calculate output of i-th node at time at as:],][[])][[(][]1[]][[ tittixtttyttiy ∆+∆+∆−∆−= σ

where ∑ −=j

tjWjiYtix ]1][[]][[

4.2 For i=0 to n-14.2.2 for t=1 to FinalTime-1

Calculate the error-by-node as:

]][[]][[ tidtiy − if i= output node

0 if i is not an output node

4.3 Calculate the Total error at this epoch as:

TotalError=

∑∑t i

tiesqrt ]][[21

4.4 For t=FinalTime-1 to 1 (propagation of error backwards)4.4.1 For i=0 to n-1 (for each node)

∑∆+∆+∆−+∆+∆=j

WijtttiztttitetiZ σ]][[*]1[]][[]][[ ' ]][[])][[( ttjzttjx ∆+∆+

4.5 Update the w's

Page 65: FUNDAMENTOS CARACTERÍSTICAS MODELOS APLICACIONES - Departamento de Ingeniería de ...lctorress/RedNeu/LiRna006.pdf · 2019-07-07 · FUNDAMENTOS DE LAS RNA Se han desarrollado RNA´s

4.5.1 For i=0 to n-14.5.1.1 For j=0 to n-1

∑∆−=t

tiytjiwjiw ση *]][[]][[]][[ ' ]][[*])][[( tiztjx

5. End.

Algorithm to Predict the trajectory of a time series

SOURCE: "The effect of non-linear Dynamic Invariants in Recurrent Neural Networks forPrediction of Electrocardiograms. Maria del Pilar Gómez Gil. Ph.D. Dissertation in ComputerScience. Texas Tech University, December 1998, pp.113 "

Once that the complex network is trained, or at any time during training, the output of this predictorfor a trajectory or arbitrary length can be calculated given only the initial conditions of the net(value of each node at time t=0) and the value of weights. Following is the appropiate algorithm:

1. Read the weights of complex network2. Read the initial conditions of each node, y[i][0], i=1...n-13. Read the size of the prediction, called as PredictionTime4. For t=1 to PredictionTime

4.1 or i=0 to n-1 (each node in network),4.1.1 Calculate output of i-th node at time t as:

],][[])][[(][]1[]][[ titItixtttyttiy ∆+∆+∆−∆−= σwhere ∑ −=

jtjWjiytix ]1][[]}][[

4.1.2 If i==n-1 (last output node) then4.1.2.1 display y[i][t]

5. End.