Anda di halaman 1dari 30

Practica Profesional III Introduccin a la Inteligencia Artificial (IA)

Redes Neuronales

La Inteligencia Artificial (IA) es un nuevo campo de amplia perspectiva en la ciencia moderna. El punto de partida de la IA generalmente se asocia con una pequea conferencia en el verano de 1956, propuesta por John McCarthy y otros. Participaron diez personajes importantes, provenientes de diversas disciplinas, en el reparto de este drama llamado Inteligencia Artificial. McCarthy anuncio confiadamente el advenimiento de la era de las mquinas que piensan, y pronosticaron su rpido desarrollo, en no ms de 20 aos. Hoy reconocemos tal prediccin cronolgica como algo ingenuo, fue John McCarthy quien propuso crear una nueva disciplina a la que se denominara Inteligencia Artificial y que apuntara a reproducir comportamientos inteligentes con ayuda de una mquina. La IA puede ser definida como el esfuerzo por reproducir el comportamiento del ser humano a travs de procesos secuenciales sucesivos. La IA busca maneras de hacer a los computadores ms inteligentes en su comportamiento aprovechando su capacidad deliberada y secuencial de ejecucin de procesos a fin de simular el proceso secuencial del razonamiento lgico." (Caudill, 1992) Dentro de la IA hay diferentes teoras, una teora "lgica" expone que las manipulaciones deberan corresponder a mecanismos de deduccin en sistemas de lgica formal (representacin del conocimiento de la realidad). En el lado contrario, la teora "conexionista", ms reciente que la anterior, afirma que las " mquinas inteligentes" deberan reflejar la estructura del cerebro y en las cuales el "conocimiento" no estara expresado explcitamente en ningn tipo de lenguaje sino que sera "aprendido" por la mquina como particulares estados-conexiones entre unos relativamente simples elementos de procesamiento (neuronas). Actualmente existen dos tendencias en cuanto al desarrollo de sistemas de IA: los sistemas expertos y las redes neuronales. Los sistemas expertos intentan reproducir el razonamiento humano de forma simblica. Las redes neuronales lo hacen desde una perspectiva ms biolgica (recrean la estructura de un cerebro humano mediante algoritmos genticos). A pesar de la complejidad de ambos sistemas los resultados distan mucho de un autntico pensamiento inteligente. La lista de aplicaciones de la IA incluye asuntos tales como robtica, comprensin del lenguaje natural (comprensin del significado ms all del idioma coloquial), comprensin correcta del idioma (comprensin correcta de los sonidos como una secuencia de palabras y frases), visin, aprendizaje mecnico, planeacin de la resolucin de problemas generales y una variedad de asuntos similares. Aplicaciones de la Inteligencia Artificial (AI) La inteligencia artificial se implica en nmeros tipos de problemas que se salen de la resolucin algortmica clsica. Principales tipos de aplicacin en los que se mueve este tipo de software. Sistemas expertos; Utilizacin de lenguaje natural; Reconocimiento de la voz; Redes Neuronales Artificiales Reconocimiento de formas; Robtica, etc.

Sistemas expertos Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Un sistema experto o sistema de conocimiento basado en reglas de inferencia es un conjunto de programas que puede acceder a una gran masa de informaciones donde se renen las experiencias y conocimientos de uno o ms expertos en un determinado campo de la ciencia o de la tcnica para la resolucin de problemas.

Utilizacin del lenguaje natural Las aplicaciones que utilizan el lenguaje natural, realizan procesos que reciben los datos de entrada en lenguaje natural, entendiendo como tal un lenguaje escrito o hablado en un determinado idioma y a continuacin los procesan, producindose la salida tambin el lenguaje natural. Un programa de reconocimiento del lenguaje natural consta de una base de conocimientos que contiene un diccionario completo de palabras del idioma, donde el objetivo del programa es el reconocimiento de las mismas para provocar las reacciones correspondientes a cada reconocimiento. En la actualidad, se utilizan mucho estos programas como interfaces con el exterior y una aplicacin informtica, como puede ser la programacin en un lenguaje determinado o en el acceso o consulta a un sistema de gestin de bases de datos utilizando la voz o la propia escritura. Reconocimiento de voz Las aplicaciones de reconocimiento de voz, tienen como objetivo la captura, por parte de una computadora, de la voz humana, bien para el tratamiento del lenguaje natural o para cualquier tipo de funcin. En primer lugar, la voz se captura electrnicamente con un micrfono que genera una seal analgica, para a continuacin, convertirla en una seal digital que pueda alimentar a un programa inteligente capaz de interpretarla con exactitud. En este casi, la base de conocimientos contiene patrones para que el programa pueda realizar las comparaciones y se produzca el reconocimiento.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Reconocimiento de formas

Redes Neuronales

Las aplicaciones de reconocimientos de formas tratan de imitar la visin humana a travs de la captacin de una imagen por medio de una cmara de video. Esta imagen produce una seal analgica que posteriormente digitaliza y, a continuacin, se procesa por medio de un programa inteligente que realiza las correspondientes comparaciones con los patrones contenidos en la base de conocimientos hasta conseguir el reconocimiento.

Robtica La robtica inteligente es la parte de la inteligencia artificial que trata de imitar las capacidades fsicas de los seres humanos. Se trata de la construccin y control de elementos electromagnticos, denominados comnmente brazos de robot, que puedan realizar determinadas funciones fsicas que habitualmente hacen las personas. Adems de las posibilidades fsicas, se aaden sensores y reconocedores de formas, con lo que puede obtenerse un robot inteligente capaz de controlar su entorno y sustituir al hombre en aquellos trabajos rutinarios y tcnicos a la vez, donde compaginado con el esfuerzo fsico se requiere una cierta destreza tcnica.

Otras aplicaciones de la inteligencia artificial: La retroalimentacin: un campo de continuo estudio es el que trata de conseguir que los procesos aprendan y se reajusten con los datos que reciben y con las salidas que producen, es decir, dotar a los programas inteligentes de capacidad para aprender con su propia experiencia. Enseanza asistida por computadora: con las aplicaciones de enseanza asistida, la computadora se convierte en un pseudo profesor, capaz de ensear una determinada materia que puede complementar la accin de un profesor. En este caso, se trata establecer un dialogo con el alumno con el fin de ensearle y transmitirle conocimientos. Al mismo tiempo que se le evalu constantemente, de tal manera que las propias enseanzas van reajustndose a los resultados de dicha evaluacin. Redes Neuronales Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Resea Histrica de las Redes Neuronales Artificiales

Redes Neuronales

1936 - Alan Turing. Fue el primero en estudiar el cerebro como una forma de ver el mundo de la computacin. Sin embargo, los primeros tericos que concibieron los fundamentos de la computacin neuronal fueron Warren McCulloch, un neurofisilogo, y Walter Pitts, un matemtico, quienes, en 1943, lanzaron una teora acerca de la forma de trabajar de las neuronas (Un Clculo Lgico de la Inminente Idea de la Actividad Nerviosa - Boletn de Matemtica Biofsica 5: 115-133). Ellos modelaron una red neuronal simple mediante circuitos elctricos. 1949 - Donald Hebb. Fue el primero en explicar los procesos del aprendizaje (que es el elemento bsico de la inteligencia humana) desde un punto de vista psicolgico, desarrollando una regla de como el aprendizaje ocurra. Aun hoy, este es el fundamento de la mayora de las funciones de aprendizaje que pueden hallarse en una red neuronal. Su idea fue que el aprendizaje ocurra cuando ciertos cambios en una neurona eran activados. Tambin intent encontrar semejanzas entre el aprendizaje y la actividad nerviosa. Los trabajos de Hebb formaron las bases de la Teora de las Redes Neuronales. 1950 - Karl Lashley. En sus series de ensayos, encontr que la informacin no era almacenada en forma centralizada en el cerebro sino que era distribuida encima de l. 1956 - Congreso de Dartmouth. Este Congreso frecuentemente se menciona para indicar el nacimiento de la inteligencia artificial. 1957 - Frank Rosenblatt. Comenz el desarrollo del Perceptron. Esta es la red neuronal ms antigua; utilizndose hoy en da para aplicacin como identificador de patrones. Este modelo era capaz de generalizar, es decir, despus de haber aprendido una serie de patrones poda reconocer otros similares, aunque no se le hubiesen presentado en el entrenamiento. Sin embargo, tena una serie de limitaciones, por ejemplo, su incapacidad para resolver el problema de la funcin OR-exclusiva y, en general, era incapaz de clasificar clases no separables linealmente. 1959 - Frank Rosenblatt: Principios de Neurodinmica. En este libro confirm que, bajo ciertas condiciones, el aprendizaje del Perceptron converga hacia un estado finito (Teorema de Convergencia del Perceptron). 1960 - Bernard Widroff/Marcian Hoff. Desarrollaron el modelo Adaline (ADAptative LINear Elements). Esta fue la primera red neuronal aplicada a un problema real (filtros adaptativos para eliminar ecos en las lneas telefnicas) que se ha utilizado comercialmente durante varias dcadas. 1961 - Karl Steinbeck: Die Lernmatrix. Red neuronal para simples realizaciones tcnicas (memoria asociativa). 1969 - Marvin Minsky/Seymour Papert. En este ao casi se produjo la muerte abrupta de las Redes Neuronales; ya que Minsky y Papert probaron (matemticamente) que el Perceptron no era capaz de resolver problemas relativamente fciles, tales como el aprendizaje de una funcin no-lineal. Esto demostr que el Perceptron era muy dbil, dado que las funciones no-lineales son extensamente empleadas en computacin y en los problemas del mundo real. 1974 - Paul Werbos. Desarroll la idea bsica del algoritmo de aprendizaje de propagacin hacia atrs (backpropagation); cuyo significado qued definitivamente aclarado en 1985. 1977 - Stephen Grossberg: Teora de Resonancia Adaptada (TRA). La Teora de Resonancia Adaptada es una arquitectura de red que se diferencia de todas las dems previamente inventadas. La misma simula otras habilidades del cerebro: memoria a largo y corto plazo. 1985 - John Hopfield. Provoc el renacimiento de las redes neuronales con su libro: Computacin neuronal de decisiones en problemas de optimizacin. 1986 - David Rumelhart/G. Hinton. Redescubrieron el algoritmo de aprendizaje de propagacin hacia atrs (backpropagation). A partir de 1986, el panorama fue alentador con respecto a las investigaciones y el desarrollo de las redes neuronales. En la actualidad, son numerosos los trabajos que se Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales realizan y publican cada ao, las aplicaciones nuevas que surgen (sobre todo en el rea de control) y las empresas que lanzan al mercado productos nuevos, tanto hardware como software (sobre todo para simulacin). Neurona Biolgica Las neuronas son los elementos bsicos de la estructura cerebral que se interconectan masivamente para formar estructuras altamente complejas, no lineales y con funcionamiento paralelo. Estn constituidas por tres partes: un cuerpo celular, extensiones en rbol (dendritas) que reciben estmulos de otras neuronas, y una extensin (axn) que lleva la salida de la neurona hacia las dendritas de otras neuronas. La sinapsis representa la unin entre una dendrita y un axn. Una neurona tpica recoge seales procedentes de otras neuronas a travs de unas delicadas estructuras llamadas dendritas. La neurona emite impulsos de actividad elctrica a lo largo de una fina y delgada capa denominada axn, que se escinde en millares de ramificaciones. Las extremidades de estas ramificaciones, llegan hasta las dendritas de otras neuronas y establecen conexin llamada sinapsis, que transforma el impulso elctrico en un mensaje neuroqumico mediante liberacin de unas sustancias, llamadas neurotransmisores, que excitan o inhiben sobre la neurona, de esta manera la informacin se transmite de neuronas a otras y va siendo procesada a travs de las conexiones sinpticas y el aprendizaje vara de acuerdo a la efectividad de la sinapsis.

Las uniones sinpticas operan a una velocidad de milisegundos. Las puertas lgicas de silicio operan en nanosegundos. Cada neurona est conectada y recibe estmulos de otras miles. La capacidad de propagacin de impulsos vara mucho segn tipos de neuronas. En general el cuerpo genera un potencial y se propaga por el axn y terminaciones (la seal se restaura y amplifica dentro del axn). Una neurona recolecta las seales en sus sinapsis sumando las influencias excitadoras. Si el resultado es excitacin, la neurona propaga su potencial a travs de su axn (comportamiento no lineal). Neurona Artificial

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Existen varias formas de nombrar una neurona artificial, es conocida como nodo, neuronodo, celda, unidad o elemento de procesamiento (PE). En la siguiente figura se observa un PE en forma general y su similitud con una neurona biolgica:

De la observacin detallada del proceso biolgico se han hallado los siguientes semejantes con el sistema artificial: Las entradas Xi representan las seales que provienen de otras neuronas y que son capturadas por las dendritas. Los pesos Wi son la intensidad de la sinapsis que conecta dos neuronas; tanto Xi como Wi son valores reales. es la funcin umbral que la neurona debe sobrepasar para activarse; este proceso ocurre biolgicamente en el cuerpo de la clula. Las seales de entrada a una neurona artificial X1, X2,.., Xn son variables continuas en lugar de pulsos discretos, como se presentan en una neurona biolgica. Cada seal de entrada pasa a travs de una ganancia o peso, llamado peso sinptico o fortaleza de la conexin cuya funcin es semejante a la de la funcin sinptica de la neurona biolgica. Los pesos pueden ser positivos (excitatorios), o negativos (inhibitorios), el nodo sumatorio acumula todas las seales de entradas multiplicadas por los pesos o ponderadas y las pasa a la salida a travs de una funcin umbral o funcin de transferencia. Redes Neuronales Artificiales Una de las mltiples ramas por las cuales se ha desarrollado la investigacin en la inteligencia artificial es el desarrollo de las llamadas Redes Neuronales. Las RNA estn compuestas de un gran nmero elementos de procesamiento altamente interconectados (Neuronas) trabajando al mismo tiempo para la solucin de problemas especficos. Las RNA, tal como las personas, aprenden de la experiencia. Una red neuronal es el intento de poder realizar una simulacin computacional del comportamiento de partes del cerebro humano mediante la rplica en pequea escala de los patrones que ste desempea para la formacin de resultados a partir de los sucesos percibidos. Concretamente, se trata de poder analizar y reproducir el mecanismo de aprendizaje y reconociendo de sucesos, de forma que se consiga un sistema que generalice su comportamiento a situaciones que an no se le haban presentado.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Mediante la aplicacin de las redes neuronales en la computacin se ha intentado capacitar a los programas para que sean capaces de realizar actividades que anteriormente se relacionaban con la actividad nicamente humana. Resultaba irnico pensar que estos procesadores capaces de realizar millones de operaciones por segundo, no sean capaces de entender el significado de las formas visuales, de distinguir entre distintas clases de objetos, o como en el caso que tenemos entre manos, reconocer patrones frecuenciales de diferentes seales sonoras. Los sistemas de computacin secuencial obtienen buenos resultados cuando se intentan resolver problemas matemticos o cientficos, en la creacin, manipulacin y mantenimiento de bases de datos, en comunicaciones electrnicas, en el procesamiento de textos, grficos y auto edicin, incluso en funciones de control de electrodomsticos, hacindolos ms eficientes y fciles de usar, pero definitivamente tienen una gran incapacidad para interpretar el mundo. Esta dificultad de los sistemas de computo que trabajan bajo la filosofa de los sistemas secuenciales, desarrollados por Von Newman, ha hecho que un gran nmero de investigadores centre su atencin en el desarrollo de nuevos sistemas de tratamiento de la informacin, que permitan solucionar problemas cotidianos, tal como lo hace el cerebro humano. Una Redes Neuronales Artificiales se asemeja al cerebro humano en los siguientes aspectos:

la red)

El conocimiento es adquirido a travs de un proceso de aprendizaje. El conocimiento se almacena en la fuerza de las conexiones sinpticas (pesos de

La topologa de la red define la forma de interconexin de las neuronas (o nodos). El proceso de aprendizaje (o algoritmo de entrenamiento) modifica los pesos de la red de la forma adecuada para obtener la funcin deseada para el sistema. Topologa y aprendizaje estn ligados. En el entrenamiento se pueden crear o destruir neuronas. A continuacin detallamos algunas de las ventajas e inconvenientes que tiene el uso de redes neuronales en la informtica: Ventajas No linealidad distribuida a travs de toda la red Adaptabilidad a travs del re-entrenamiento. Carga computacional distribuida + paralelismo entrada/salida = robustez. Capacidad funcional a travs del entrenamiento de pares entrada-salida: aprendizaje supervisado. Capacidad de generalizacin proporcional al nmero de muestras de entrenamiento. Desventajas Complejidad de aprendizaje para grandes tareas. Tiempo de aprendizaje elevado, los modelos neuronales precisan elevados requisitos de cmputo.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Constituye un mtodo de resolucin de problemas demasiado creativo, es decir, dada las especificaciones del problema. Hay que utilizar el mtodo de prueba de error y la experiencia del diseador. Dificultad de interpretar a posteriori lo que ha aprendido la red (caja-negra), y en caso de que se produzca un fallo en el aprendizaje ser complicado detectar las causas de este. Necesidad de muchos datos de entrenamiento para un correcto aprendizaje y generalizacin posterior. Aplicaciones de las redes neuronales Las redes neuronales pueden utilizarse en un gran nmero y variedad de aplicaciones, tanto comerciales como militares. Se pueden desarrollar redes neuronales en un periodo de tiempo razonable, con la capacidad de realizar tareas concretas mejor que otras tecnologas. Cuando se implementan mediante hardware (redes neuronales en chips), presentan una alta tolerancia a fallos del sistema y proporcionan un alto grado de paralelismo en el procesamiento de datos. Esto posibilita la insercin de redes neuronales de bajo coste en sistemas existentes y recientemente desarrollados. Hay muchos tipos diferentes de redes neuronales, cada uno de los cuales tiene una aplicacin particular ms apropiada. Algunas aplicaciones comerciales son: Militares: Clasificacin de las seales de radar, Creacin de armas inteligentes, Optimizacin del uso de recursos escasos, Reconocimientos y seguimientos en el tiro al blanco.

Medio ambiente: Analizar tendencias y patrones, Previsin del tiempo.

Medicina: Analizadores del habla para ayudar en la audicin de sordos profundos, Diagnostico y tratamiento a partir de sntomas y/o de datos analticos (electrocardiograma, encefalografa, anlisis sanguneo, etc.), Monitorizacin en cirugas, Prediccin de reacciones adversas en los medicamentos, Entendimiento de la causa de los ataques cardiacos. Manufacturacin: Robots automatizados y sistemas de control (visin artificial y sensores de presin, temperatura, gas, etc.), Control de produccin en lneas de procesos, Inspeccin de la calidad. Empresa: Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Evolucin de probabilidades de formaciones geolgicas y petrolferas, Identificacin de candidatos para posiciones especficas, Explotacin de bases de datos, Optimizacin de plazas y horarios en lneas de vuelo, Optimizacin del flujo del trnsito controlado convenientemente la temporizacin de los semforos. Reconocimiento de caracteres escritos, Modelado de sistemas para automatizacin y control. Finanzas: Previsin de la evolucin de los precios, Valoracin del riesgo de los crditos, Identificacin de falsificaciones, Interpretacin de firmas.

La mayora de estas aplicaciones consisten en realizar un reconocimiento de patrones, como ser: buscar un patrn en una serie de ejemplos, clasificar patrones, completar una seal a partir de valores parciales o reconstruir el patrn correcto partiendo de uno distorsionado. Sin embargo, est creciendo el uso de redes neuronales en distintos tipos de sistemas de control. Desde el punto de vista de los casos de aplicacin, la ventaja de las redes neuronales reside en el procesado paralelo, adaptativo y no lineal. El dominio de aplicacin de las redes neuronales tambin se lo puede clasificar de la siguiente forma: asociacin y clasificacin, regeneracin de patrones, regresin y generalizacin, y optimizacin. Asociacin y clasificacin En esta aplicacin, los patrones de entrada estticos o seales temporales deben ser clasificados o reconocidos. Idealmente, un clasificador debera ser entrenado para que cuando se le presente una versin distorsionada ligeramente del patrn, pueda ser reconocida correctamente sin problemas. De la misma forma, la red debera presentar cierta inmunidad contra el ruido, esto es, debera ser capaz de recuperar una seal "limpia" de ambientes o canales ruidosos. Esto es fundamental en las aplicaciones hologrficas, asociativas o regenerativas. Asociacin: de especial inters son las dos clases de asociacin: auto asociacin y heteroasociacin. Como ya se mencion en el apartado 6.8, el problema del auto asociacin es recuperar un patrn enteramente, dada una informacin parcial del patrn deseado. La heteroasociacin es recuperar un conjunto de patrones B, dado un patrn de ese conjunto. Los pesos en las redes asociativas son a menudo predeterminados basados en la regla de Hebb. Normalmente, el auto similitud del conjunto de patrones almacenado determina los pesos en las redes autos asociativos. Por otro lado, la similitud cruzada de muchas parejas de patrones se usa para determinar los pesos de la red de heteroasociacin. Clasificacin no Supervisada: para esta aplicacin, los pesos sinpticos de la red son entrenados por la regla de aprendizaje no supervisado, esto es, la red adapta los pesos y verifica el resultado basndose nicamente en los patrones de entrada. Clasificacin Supervisada: esta clasificacin adopta algunas formas del criterio de interpolacin o aproximacin. En muchas aplicaciones de clasificacin, por ejemplo, reconocimiento de voz, los datos de entrenamiento consisten de pares de patrones de entrada Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales y salida. En este caso, es conveniente adoptar las redes Supervisadas, como las bien conocidas y estudiadas redes de retro propagacin. Este tipo de redes son apropiadas para las aplicaciones que tienen una gran cantidad de clases con lmites de separacin complejos. Regeneracin de patrones En muchos problemas de clasificacin, una cuestin a solucionar es la recuperacin de informacin, esto es, recuperar el patrn original dada solamente una informacin parcial. Hay dos clases de problemas: temporales y estticos. El uso apropiado de la informacin contextual es la llave para tener xito en el reconocimiento. Regeneracin y generalizacin El objetivo de la generalizacin es dar una respuesta correcta a la salida para un estmulo de entrada que no ha sido entrenado con anterioridad. El sistema debe inducir la caracterstica saliente del estmulo a la entrada y detectar la precisin. Tal habilidad para el descubrimiento de esa precisin es crtica en muchas aplicaciones. Esto hace que el sistema funcione eficazmente en todo el espacio, incluso cuando ha sido entrenado por un conjunto limitado de ejemplos. Optimizacin Las Redes Neuronales son herramientas interesantes para la optimizacin de aplicaciones, que normalmente implican la bsqueda del mnimo absoluto de una funcin de energa. Para algunas aplicaciones, la funcin de energa es fcilmente deducible; pero en otras, sin embargo, se obtiene de ciertos criterios de coste y limitaciones especiales. Caractersticas Las caractersticas de las redes neuronales van a surgir fundamentalmente de las diferencias entre la neurona biolgica y la unidad de procesos artificial. Ms concretamente de la conjuncin de muchos componentes sencillos. Por tanto, en funcin de estas diferencias, las propiedades ms relevantes de las redes neuronales artificiales son y deben ser, en la medida de lo posible, las siguientes: Paralelismo masivo:

Proporciona gran capacidad de procesamiento de datos. En el procesamiento secuencial, cada unidad de clculo debe ejecutarse despus de que hayan acabado las anteriores. En las redes, cada unidad se encarga de una tarea elemental sin necesidad de cooperar con las dems. Memoria asociativa distribuida:

Los datos no se encuentran en un nico sitio, sino repartidos por toda la estructura. Tolerancia a los fallos:

El sistema se degrada intensamente con la existencia de fallos, sin una ruptura total. Trata simultneamente una gran cantidad de datos:

Esto es posible gracias al paralelismo al que se ha hecho referencia. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Reconstruccin de datos parciales:

Redes Neuronales

Los datos de entrada a la red en ocasiones no pueden ser especificados completamente y sin embargo, puede procesar esta informacin parcial. Esta posibilidad est muy relacionada con la tolerancia a fallos. Capacidad de aprendizaje:

Esta es una de las caractersticas ms importante. El sistema se va modificando a medida que se le proporcionan nuevos datos de entrada. Esta propiedad permite que la red se adapte a variaciones que puedan surgir en el entorno. Elementos de una red neuronal La Capa Los elementos de procesamiento se agrupan en capas y aquellos que pertenecen a una misma capa son, por lo general, del mismo tipo y pueden ir o no (esto ltimo es lo ms frecuente), interconectados entre s. Distinguiremos tres tipos de capas en funcin del origen o salida de la informacin de los nodos que la componen:

1.

Capa de entrada

Formada por los PE (elementos de procesamiento), en los que se introducen valores del exterior para efectuar el entrenamiento de la red. Puede tambin que, en ocasiones, la propia red proporcione valores de entrada para esta capa, en este caso estamos ante una red realimentada. El nmero de nodos que debe poseer la capa de entrada, coincide en general con el nmero de elementos de cada vector de entrenamiento, que es, el nmero de variables independientes que se utilizan. Con mucha frecuencia se aade un nodo adicional de entrada, cuya entrada siempre ser uno, y tratar de recoger la preferencia, nombre por otra parte con que se denomina a este nodo. 2. Capas ocultas Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Es donde tiene lugar el procesamiento. Puede haber varias capas ocultas inter conexionadas entre s. Con el tratamiento adecuado de estas capas, se consiguen los objetivos de generalizacin y estabilidad de la red. En cuanto al nmero de capas ocultas suele resultar suficientes un mximo de dos, al menos si se utiliza una red clsica. Las neuronas de una misma capa pueden estar o no conectadas entre s, aunque con frecuencia no lo estn. 3. Capa de salida

Est compuesta por las neuronas que proporcionan la salida del sistema. Puede constar de una o varias neuronas, dependiendo de las salidas que se deseen. As pues, al disear la red, decidir el nmero de las mismas no plantea ninguna dificultad. Funcin de entrada La neurona trata a muchos valores de entrada como si fueran uno solo; esto recibe el nombre de entrada global. Por lo tanto, ahora nos enfrentamos al problema de cmo se pueden combinar estas simples entradas (in1, in2,...) dentro de la entrada global, gini. Esto se logra a travs de la funcin de entrada, la cual se calcula a partir del vector entrada. La funcin de entrada puede describirse como sigue: Input (i) = (ini1* wi1)* (ini2* wi2)*... (inin* win) Donde: (*) representa al operador apropiado (por ejemplo: mximo, sumatoria producto, etc.), (n) al nmero de entradas a la neurona (ni) y (wi) al peso. Los valores de entrada se multiplican por los pesos anteriormente ingresados a la neurona. Por consiguiente, los pesos que generalmente no estn restringidos cambian la medida de influencia que tienen los valores de entrada. Es decir, que permiten que un gran valor de entrada tenga solamente una pequea influencia, si estos son lo suficientemente pequeos.

Ejemplo de una neurona con dos entradas y una sola salida. La relacin utilizada en la Figura anterior es la siguiente: ini1 = entrada nmero 1 a la neurona Ni y wi1 = peso correspondiente a ini1; ini2 = entrada nmero 2 a la neurona Ni; wi2 = Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales peso correspondiente a ini2; y out1 = salida de la neurona Ni. El conjunto de todas las n entradas ini = (ini1, ini2,..., inin) es comnmente llamado vector entrada. Algunas de las funciones de entrada ms utilizadas y conocidas son: Sumatoria de las entradas pesadas: es la suma de los valores de la entrada de la neurona, multiplicados con sus respectivos pesos. Producto de las entradas pesadas: es el producto de todos sus valores de entrada a la neurona, multiplicados por sus correspondientes pesos. Mximo de las entradas pesadas: solo toma en consideracin el valor de entrada ms fuerte, previamente multiplicado por su peso correspondiente. Funcin de activacin (activation function). Una neurona biolgica puede estar activa (excitada) o inactiva (no excitada); es decir, que tiene un estado de activacin. Las neuronas artificiales tambin tienen diferentes estados de activacin, algunas de ellas solamente dos, al igual que las biolgicas, pero otras pueden tomar cualquier valor dentro de un conjunto determinado. La funcin activacin calcula el estado de actividad de una neurona, transformando la entrada global (menos el umbral, i) en un valor (estado) de activacin, cuyo rango normalmente va de (0 a 1) o de (1 a 1). Esto es as, porque una neurona puede estar totalmente inactiva (0 o 1) o activa (1). La funcin activacin, es una funcin de la entrada global (gini) menos el umbral (i). Funcin de Salida (out function) El ltimo componente que una neurona necesita es la funcin de salida. El valor resultante de esta funcin es la salida de la neurona i (outi); por ende, la funcin de salida determina que valor se transfiere a las neuronas vinculadas. Si la funcin de activacin est por debajo de un umbral determinado, ninguna salida se pasa a la neurona subsiguiente. Normalmente, no cualquier valor es permitido como una entrada para una neurona, por lo tanto, los valores de salida estn comprendidos en el rango [0, 1] o [-1, 1]. Tambin pueden ser binarios {0, 1} o {-1, 1}. Dos de las funciones de salidas ms comunes son: Ninguna: este es el tipo de funcin ms sencilla, tal que la salida es la mismas que la entrada. Es tambin llamada funcin identidad.

Binaria: 1 si act i umbral i; 0 de lo contrario.

Sistemas Expertos VS Redes Neuronales Artificiales Los sistemas basados en el conocimiento son el resultado de un largo proceso de investigacin realizado por los cientficos en el rea de la Inteligencia Artificial, cuando, en los aos setenta, comenzaron a comprender que la capacidad de un programa de computadora para resolver problemas no reside en la expresin formal ni en los esquemas lgicos de consecuencia que emplea sino en el conocimiento que posee. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Un experto es alguien que posee unos determinados conocimientos y experiencia en un campo de la actividad humana y es capaz de aplicarlos con rapidez y eficiencia en la resolucin de tareas diferentes aunque no le hayan sido encomendadas con anterioridad, pero que caen dentro de su dominio. Las reglas If - Then le dicen al sistema como se debe reaccionar ante los estados del mundo. Una regla del sistema experto puede ser If Y es un hombre, Then Y es mortal. Los hechos describen el estado del mundo. Por ejemplo: Juan es mortal. As, un sistema basado en el conocimiento es un cuerpo de programas de computadora que intenta imitar e incluso superar en algunas situaciones a un experto humano en un mbito concreto de su actividad. No pretende, en absoluto, reproducir el pensamiento humano, sino simplemente la pericia (habilidad, destreza) de un profesional competente (tngase en cuenta que para construir un Sistemas Basado en el Conocimiento se suele contar con grandes expertos en la materia que incorporan su conocimiento al sistema). Esta pretensin es ms sencilla ya que en algunos campos reducidos los expertos trabajan siguiendo normas, aunque, generalmente, no sean conscientes de ello. En aquellos campos en los que no sea necesario aplicar la intuicin ni el sentido comn, los sistemas basados en el conocimiento han conseguido notables xitos, consiguiendo en ocasiones ser ms regulares y rpidos que los propios expertos. Los sistemas expertos pueden ser tiles en aquellos problemas muy estructurados y eminentemente estticos, ya que, el proceso de considerar todas las posibles situaciones que se puedan presentar puede llevar mucho tiempo, adems de presentar un elevado coste. Cualquier cambio que pueda producirse en el entorno exige un cambio en la programacin. Los sistemas neuronales no requieren predefinir un conocimiento base y, adems, los cambios en el problema no precisan reprogramar la red. Es un sistema que se "auto mantiene, respondiendo automticamente a cambios en el entorno del problema ajustando los pesos de los nodos". Otro de los problemas que presentan los sistemas expertos es que no pueden trabajar con datos parciales, incompletos o inconsistentes. Las redes neuronales son capaces de detectar aquellas entradas atpicas o parcialmente errneas. En el mundo real, raramente el decisor financiero dispone de una informacin clara y precisa por lo que, en este campo, la ventaja que ofrecen las redes neuronales son definitivas. El mayor problema, inherente a las redes neuronales, aparte de las dificultades que pueden surgir a la hora de definir la adecuada arquitectura de una red para resolver un problema concreto, es que es difcil o imposible trazar los pasos que da a partir de las entradas para obtener una salida, de forma que el conocimiento de la matriz de pesos no tiene ninguna utilidad fuera de la red. El segundo problema importante al que se puede hacer referencia, es la gran cantidad de ejemplos que se necesitan para lograr un entrenamiento correcto de la red. Estructuras de las Redes Neuronales Artificiales Introduccin Las redes neuronales tpicamente estn formadas por una serie de capas de neuronas que estn unidas entre si mediante sinapsis. Las neuronas artificiales como unidades independientes no son muy eficaces para el tratamiento de la informacin y se agrupan en estructuras ms grandes, las redes de neuronas artificiales o redes neuronales.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales En este apartado veremos las estructuras ms comunes que forman las neuronas para formar redes. Para ello abordare el tema desde dos vistas distintas el nmero de capas y la forma de interconexin de las capas. Niveles de Neuronas: La distribucin de neuronas dentro de la red se realiza formando niveles o capas de un nmero determinado de neuronas cada una. A partir de su situacin dentro de la red se pueden distinguir tres tipos de capas: De entrada: estas capas reciben la informacin desde el exterior. De Salida: estas envan la informacin hacia el exterior Ocultas: son capas que solo sirven para procesar informacin y comunicar otras Capas. Segn algunos autores, las capas de entrada y de salida no son validas para producir procesamiento, y son usadas solo como sensores. Tras plantearlo de diferentes modos nuestro marco de trabajo se ha diseado de manera que puede usarse de las dos maneras, podemos usar las capas de entrada y salida para procesar o simplemente como sensores. Funciones en el modelo de Neurona Artificial. El modelo de neurona artificial que hemos expuesto en el apartado anterior, modela la neurona como una serie de funciones que se componen entre ellas siendo los resultados unas los parmetros de otras, as la funcion de ponderacin hace uso de los valores que le llegan de las entradas y los pesos de las sinapsis y la funcion de activacin toma este valor para transformarlo en el estado de la neuronas mediante la interaccin de estas funciones se procesa la informacin. En este apartado, especificaremos con ms detalle las diferentes las funciones que participan en el modelo.

Funcin de propagacin o ponderacin Esta funcin se encarga de transformar las diferentes entradas que provienen de la sinapsis en el potencial de la neurona. Normalmente se usa como funcin de propagacin la suma ponderada de las entradas multiplicadas por los pesos. En esta funcin se interpreta como un regulador de las seales que se emiten entre neuronas al ponderar las salidas que entran a la neurona. Otra regla de propagacin usada es la distancia eucldea. Usada en los mapas de kohonen y algunas redes competitivas. En ella, los pesos sinpticos funcionan de manera distinta al anterior ya que lo que hacen es aproximarse lo mximo posible al vector de entrada. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Es utilizada en redes no supervisadas para que se ajuste a los patrones. Otra versin de esta funcin es la misma pero con la distancia de Manhattan esto es en vez de usar el uadrado usamos el valor absoluto. En esta regla de propagacin los pesos tienen la misma interpretacin que la anterior, da la medida del parecido entre el patrn de entrada X y los pesos W. Funcin de activacin La funcin de activacin combina el potencial postsinaptico, que nos proporciona la funcin de propagacin, con el estado actual de la neurona para conseguir el estado futuro de activacin de la neurona. Sin embargo, es muy comn que las redes neuronales no tomen su propio estado como un parmetro y que por tanto no se considere . Esta funcin es normalmente creciente montona y podemos citar las funciones ms comunes: Lineal: Algunas redes neuronales usan esta funcin de activacin como el Adeline por su eficiencia y facilidad. Escaln: Esta funcin es la ms usada para redes neuronales binarias ya que no es lineal y es muy simple. Algunas redes que usan esta funcin son el Perceptrn y Hopfield. Para redes que trabajan en el rango [-1,1] se usa la funcion signo. Hiperblicas o tangenciales: Las redes con salidas continuas, como el Perceptron multicapa con retropropagacin, usan esta funcin ya que su algoritmo de aprendizaje necesita una funcin derivable Funcin de Salida. Esta funcin convierte el estado de la neurona en la salida hacia la siguiente neurona que se transmite por las sinapsis. Usualmente no se considera y se toma la identidad, esto es, de manera que la salida es el propio estado de activacin de la neurona. Existen algunas redes que transforman su estado de activacin en una salida binaria y para eso usan la funcin escaln antes mostrada como salida. Otra opcin, consiste en usar funciones probabilsticas como en la mquina de Boltzman. Las redes con este tipo de salidas no tienen un comportamiento determinista. Forma de Conexin de las Capas: Las neuronas se conectar unas a las otras usando sinapsis. Si miramos ms detenidamente observamos que estas uniones a nivel de capa forman distintas estructuras. Podemos distinguir varias como: Unin Todos con Todos: Consiste en unir cada neurona de una capa con todas las neuronas de la otra capa. Este tipo de conexionado es el ms usado en las redes neuronales, se usa en todo tipo de uniones desde el Perceptron multicapa a las redes de Hopfield o BAM

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III

Redes Neuronales

Unin Lineal: Consiste en unir cada neurona con otra neurona de la otra capa. Este tipo de unin se usa menos que el anterior y suele usarse para unir la capa de entrada con la capa procesamiento, si la capa de entrada se usa como sensor. Tambin se usa en algunas redes de aprendizaje competitivo

Predeterminado: Este tipo de conexionado aparece en redes que tienen la propiedad de agregar o eliminar neuronas de sus capas y de eliminar tambin conexiones.

Si establecemos un orden en las capas podemos establecer conexiones hacia delante, hacia atrs o conexiones laterales. Esto sirve para clasificar las redes en feedforward o hacia delante, no tienen ninguna conexin hacia atrs, y feedback o hacia atrs que si permiten este tipo de conexiones. Las conexiones laterales son conexiones entre neuronas de la misma capa, este tipo de conexin son muy comunes en las redes mono capa. Si la red admite que las neuronas tengan conexiones a s mismas se dice que la red es auto recurrente. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Clasificacin respecto a la Topologa

Redes Neuronales

La topologa o arquitectura de una red consiste en la organizacin y disposicin de las neuronas en la red. Las neuronas se agrupan formando capas, que pueden tener muy distintas caractersticas. Adems las capas se organizan para formar la estructura de la red. Se puede observar en la siguiente figura. La jerarqua de las redes neuronales :

Donde podemos ver que las neuronas se agrupan para formar capas y las capas se unen entre ellas formando redes neuronales. Para clasificar por la topologa usaremos el nmero de capas Las Redes MonoCapa Las redes mono capa son redes con una sola capa. Para unirse las neuronas crean conexiones laterales para conectar con otras neuronas de su capa. Las redes ms representativas son la red de Hopfield, la red BRAIN-STATE-IN-A-BOX o memoria asociativa y las maquinas estocsticas de Botzmann y Cauchy. Entre las redes neuronales mono capa, existen algunas que permiten que las neuronas tengan conexiones a si mismas y se denominan auto recurrentes.

Las redes mono capa han sido ampliamente utilizada en circuitos elctricos ya que debido a su topologa, son adecuadas para ser implementadas mediante hardware, usando matrices de diodos que representan las conexiones de las neuronas Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Las Redes Neuronales Multicapa

Redes Neuronales

Las redes multicapa estn formadas por varias capas de neuronas (2,3...). Estas redes se pueden a su vez clasificar atendiendo a la manera en que se conexionan sus capas. Usualmente, las capas estn ordenadas por el orden en que reciben la seal desde la entrada hasta la salida y estn unidas en ese orden. Ese tipo de conexiones se denominan conexiones feedforward o hacia delante. Por el contrario existen algunas redes en que las capas aparte del orden normal algunas capas estn tambin unidas desde la salida hasta la entrada en el orden inverso en que viajan las seales de informacin. Las conexiones de este tipo se llaman conexiones hacia atrs, feedback o retroalimentadas. Redes con conexiones hacia adelante: Como decamos antes, Este tipo de redes contienen solo conexiones entre capas hacia delante. Esto implica que una capa no puede tener conexiones a una que reciba la seal antes que ella en la dinmica de la computacin. Ejemplos de estas redes son Perceptron, Adaline, Madaline, Backpropagation y los modelos LQV y TMP de Kohonen. Redes con conexiones hacia atrs: Este tipo de redes se diferencia en las anteriores en que si pueden existir conexiones de capas hacia atrs y por tanto la informacin puede regresar a capas anteriores en la dinmica de la red. Este Tipo de redes suelen ser bicapas Ejemplos de estas redes son las redes ART, Bidirectional Associative Memory (BAM) y Cognitron . Mecanismo de aprendizaje El aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en respuesta a una informacin de entrada. Los cambios que se producen durante la etapa de aprendizaje se reducen a la destruccin (el peso de la conexin toma el valor 0), modificacin y creacin (el peso de la conexin toma un valor distinto de 0) de conexiones entre las neuronas. Podemos considerar que el proceso de aprendizaje ha terminado cuando los valores de los pesos permanecen estables dwj / dt = 0 Uns aspecto importante es determinar los criterios de la regla de aprendizaje; cmo se van a modificar los pesos. De forma general se consideran dos tipos de reglas: 1. 2. Aprendizaje supervisado Aprendizaje no supervisado

La diferencia entre ambos tipos estriba en la existencia o no de una agente externo que controle todo el proceso. Otro criterio para diferenciar las reglas de aprendizaje se basa en considerar si la red puede aprender durante su funcionamiento (aprendizaje ON LINE) o requiere de una fase previa de entrenamiento (aprendizaje OFF LINE). En este ltimo debe existir un conjunto de datos de entrenamiento y un conjunto de datos de test o prueba; igualmente los pesos de las conexiones no se modifican despus de terminar la etapa de entrenamiento de la red. En la red Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales ON LINE los pesos varan dinmicamente cada vez que se presente una nueva informacin al sistema. Redes con aprendizaje supervisado Se caracteriza porque el proceso de aprendizaje se realiza mediante un entrenamiento controlado por un agente externo (supervisor, maestro) que determina la respuesta que debera generar la red a partir de una entrada determinada. El supervisor comprueba la salida generada por el sistema y en el caso de que no coincida con la esperada, se proceder a modificar los pesos de las conexiones. En este tipo de aprendizaje se suelen distinguir a su vez tres formas de llevarlo a cabo:

1. Aprendizaje por correccin de error : Consiste en ajustar los pesos de las conexiones de la red en funcin de la diferencia entre los valores deseados y los obtenidos en la salida. La formula para la correccin de los pesos podra ser la siguiente:
Incr(wji) = yi (dj - yj) s iend o: Incr(wji) : Variacin en el peso de la conexin entre las neuronas i y j yi : Salida de la neurona i dj : Valor de salida deseado para la neurona j yj : Valor de salida obtenido en la neurona j : Factor de aprendizaje (0 < <= 1) que regula la velocidad del aprendizaje Algoritmos que utilizan este tipo de aprendizaje son: Regla de aprendizaje del perceptron: utilizada en la red PERCEPTRON Regla delta o del mnimo error cuadrado: utilizado redes ADALINE y MADALINE. Regla delta generalizada: utilizada en redes multicapa

en

las

1. Aprendizaje por refuerzo : este tipo de aprendizaje es ms lento que el anterior y se basa en la idea de no disponer de un ejemplo completo del comportamiento deseado; es decir, de no indicar durante el entrenamiento la salida exacta que se desea que proporcione la red ante una determinada entrada. Aqu la funcin del supervisor se reduce a indicar mediante una seal de refuerzo si la salida obtenida en la red se ajusta a la deseada (xito = +1 o fracaso = -1) y en funcin de ello se ajustan los pesos basndose en un mecanismo de probabilidades.
Ejemplos de este tipo de algoritmos son el denominado Linear Reward-Penalty o LRP [Narenda 74] y el Adapative Heuristic Critic [Barto 83] utilizado en redes feedforward de tres capas.

1. Aprendizaje estocstico : consiste bsicamente en realizar cambios aleatorios en los valores de los pesos y evaluar su efecto a partir del objetivo deseado y de distribuciones de probabilidad. Un red que utiliza este tipo de aprendizaje es la red Boltzman Machine, ideada por Hinton, Ackley y Sejnowski en 1984 y la red Cauchy Machine desarrollada por Szu en 1986.
Redes con aprendizaje no supervisado Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales No requieren de influencia externa para ajustar los pesos de las conexiones entre sus neuronas. La red no recibe ninguna informacin por parte del entorno que le indique si la salida generada en respuesta a una determinada entrada es o no correcta; son capaces de autoorganizarse. Estas redes deben encontrar las caractersticas, regularidades, correlaciones o categoras que se pueden establecer entre los datos de la entrada. Pero, qu genera la red en la salida. Existen varias posibilidades en cuanto a interpretacin : La salida representa el grado de familiaridad o similitud entre la informacin de entrada y las informaciones mostradas con anterioridad. Clusterizacin o establecimiento de categorias, indicando la red a la salida a qu categora pertenece la informacin de entrada, siendo la propia red la que debe establecer las correlaciones oportunas. Codificacin de los datos de entrada, generando a la salida una versin codificada con menos bits, pero manteniendo la informacin relevante de los datos. Mapeo de caractersticas, obtenindose una disposicin geomtrica que representa un mapa topogrfico de las caractersticas de los datos de entrada. Los algoritmos de aprendizaje no supervisado suelen ser de dos tipos:

1. Aprendizaje hebbiano : pretende medir la familiaridad o extraer caractersticas de los datos de entrada. Este aprendizaje consiste bsicamente en el ajuste de los pesos de las conexiones de acuerdo con la correlacin de los valores de activacin (salidas) de las dos neuronas conectadas :
Incr (wji) = yi yj Si las dos unidades son activas (salida positiva), se produce un reforzamiento de la conexin. Si por el contrario, una es activa y la otra pasiva (salida negativa), se produce un debilitamiento de la conexin. Por tanto, la modificacin de los pesos se realiza en funcin de los estados (salidas) de las neuronas, obtenidos tras la presentacin de cierto estmulo (informacin de entrada), sin tener en cuenta si se deseaba obtener o no esos estados de activacin. Este tipo de aprendizaje se utiliza en la RED HOPFIELD (1982), ADDITIVE GROSSBERG (1973), LEARNING MATRIX (1961), BIDIRECTIONAL ASSOCIATIVE MEMORY (1988), TEMPORAL ASSOCIATIVE MEMORY (1972). Estas dos ltimas son redes feedforward/feedback de 2 capas.

1. Aprendizaje competitivo y cooperativo : las neuronas compiten unas con otras con el fin de llevar a cabo una tarea dada. Se pretende que cuando se presente a la red cierta informacin, slo una o un grupo de ellas se activen. Por tanto las neuronas compiten por activarse, quedando las perdedoras a sus valores de respuesta mnimos. La conexin entre neuronas se realiza en todas las capas de la red, existiendo en estas neuronas conexiones recurrentes de autoexcitacin y conexiones de inhibicin (signo negativo) por parte de neuronas vecinas.
El objetivo de este aprendizaje es categorizar (clustering) los datos que se introducen en la red. De esta forma, las informaciones similares son clasificadas formando parte de la misma categora, activando por tanto la misma neurona de salida. La variacin del peso de una conexin entre una unidad i y otra j ser nula si la neurona j no recibe excitacin por parte de la neurona i y se modificar si es excitada por dicha neurona i Un ejemplo de este tipo de aprendiaje es el desarrollado por Kohonen conocido como Learning Vector Quantization (LVQ) aplicado a redes feedforward de dos capas. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Tipo de asociacin entre las informaciones de entrada y salida Las redes neuronales son sistemas que almacenan cierta informacin aprendida; esta se registra de forma distribuida en los pesos asociados a las conexiones entre neuronas. Hay que establecer cierta relacin o asociacin entre la informacin presentada a la red y la salida ofrecida por esta. Es lo que se conoce como memoria asociativa. Existen dos formas primarias de realizar esta asociacin entrada/salida y que generan dos tipos de redes:

1. Redes heteroasociativas : La red aprende parejas de datos [(A1,B1), (A2,B2),.... (An,Bn)], de tal forma que cuando se le presente determinada informacin de entrada Ai responda con la salida correspondiente Bi. Al asociar informaciones de entrada con diferentes informaciones de salida, precisan al menos de 2 capas, una para captar y retener la informacin de entrada y otra para mantener la salida con la informacin asociada. Si esto no fuese as se perdera la informacin inicial al obtenerse la salida asociada; es necesario mantener la informacin de entrada puesto que puede ser necesario acceder varias veces a ella, por lo que debe permanecer en la capa de entrada. El aprendizaje de este tipo de redes puede ser con supervisin. 2. Redes autoasociativas : La red aprende ciertas informaciones A1, A2, .., An de forma que cuando se le presenta una informacin de entrada realizar una autocorrelacin, respondiendo con uno de los datos almacenados, el ms parecido al de entrada. Este tipo de redes pueden implementarse con una sola capa de neuronas. El tipo de aprendizaje utilizado habitualmente es el no supervisado y suelen utilizarse en tareas de filtrado de informacin para la reconstruccin de datos, eliminando distorsiones o ruido, explorar relaciones entre informaciones similares para facilitar la bsqueda por contenido en bases de datos y para resolver problemas de optimizacin
Representacin de la informacin de entrada y salida Redes continuas : En un gran nmero de redes, tanto los datos de entrada como de salida son de naturaleza analgica (valores reales contnuos y normalmente normalizados, por lo que su valor absoluto ser menor que la unidad). En este caso las funciones de activacin de las neuronas sern tambin continuas, del tipo lineal o sigmoidal. Redes discretas : Por el contrario, otras redes slo admiten valores discretos [0,1] a la entrada, generando tambin en la salida respuestas de tipo binario. La funcin de activacin en este caso es del tipo escaln. Redes hbridas : La informacin de entrada es contnua pero a la salida ofrecen informacin binaria. TIPOS DE REDES NEURONALES El Perceptrn simple. Es la primera red neuronal que se conoce. El Perceptrn es una red de alimentacin directa, esto es la informacin fluye desde la capa de entrada hacia la capa de salida. Fue desarrollado por F. Rosenblatt hacia final de la dcada de los cincuenta basndose en la regla de aprendizaje de hebb y de los modelos de neuronas biolgicas de McCulloch y Pitts, fue desarrollada en 1943. Compuesta por una sola capa de entrada y salida. Posee una neurona por lo que tiene muy limitada la capacidad de discriminar patrones. Se le realiza un aprendizaje supervisado. Sus limitaciones son muy altas en cuanto a la dificultad del problema a solucionar

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales El Perceptrn es un clasificador, asigna a un vector de N valores un valor binario, usando una transformacin no lineal. As cada vector pertenece a una de las particiones que crea el perceptrn. El perceptrn es una mquina de computacin universal y tiene la expresividad equivalente a la lgica binaria ya que podemos crear un perceptrn que tenga el mismo comportamiento que una funcin boleana NAND y a partir de esta funcin se puede crear cualquier otra funcin boleana. Arquitectura del perceptron El perceptrn simple es una red que consta de dos capas de neuronas. Esta red admite valores binarios o bipolares como entrada para los sensores y los valores de su salida estn en el mismo rango que los de entrada. La funcin de la primera capa es hacer de sensor, por ella entran las seales a la red. La segunda capa realiza todo el procesamiento. La manera de interconexionar ambas capas es todas con todas esto es, cada neurona de la primera capa esta unida con todas las de la segunda capa. Dinmica del Perceptrn El funcionamiento para ejecutar un patrn de la red es el siguiente: 1. Se establece el patrn de entrada en los sensores, la capa de entrada. 2. Se actualizan las neuronas de la capa de Salida. Las neuronas de actualizan de la siguiente manera: Sea el potencial de la neurona i, el peso asociado a la sinapsis que une la neurona i de la capa actual y j de la capa de sensores. El estado del sensor j y el estado de la neurona es o bien la funcin escaln si las entradas de la red son binarias o bien la funcin signo si las entradas son bipolares {-1 ,1} estadoneuronaJ= Signo( Sumatorio( Peso(ij)*Estado(j)) Aprendizaje del Perceptrn Los pasos para que la red aprenda una lista de patrones son los siguientes 1. Tomar un patrn al azar de la lista. 2. Se establece el patrn de entrada en los sensores, la capa de entrada. 3. Se establecen los valores deseados en las neuronas de la capa de salida 4. Se actualizan las neuronas de la capa de Salida. 5. Solicitar que aprendan todas las sinapsis 6. Si las sinapsis han cambiado volver al paso 1 Si no han cambiado la red se ha estabilizado y paramos. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Las sinapsis que une las neuronas i, j aprender de la siguiente manera: Sea Ei = el estado de la neurona de la capa de entrada i, Pij = El peso actual asociado a la sinapsis que une la neurona i de la capa de entrada y la neurona j de la capa de salida. Ej = El estado de la neurona de la capa de salida j Sj = El valor deseado pora esa neruona Pijnuevo = El peso Pij actualizado. TASA =Es una constante entre 0 y 1 que indica cuanto aprende la red Pijnuevo = Pij + Tasa*(( Ej - Sj) *Ei) Hay que destacar que el perceptrn aprende solo cuando se equivoca al clasificar el patrn. Si clasifica correctamente el patrn, esto es , entonces con lo que no hay aprendizaje. La Red de Hopfield. La red de Hopfield es una de las redes unicapas ms importantes y ha influido en el desarrollo de multitud de redes posteriores. Es una red autoasociativa no lineal que fue desarrollada por Hopfield en 1982 basndose en los modelos de redes de McCulloch y Pitts y los smiles de los campos magnticos con spin de Amit, Gutfreund, & Sompolinsky. Arquitectura de la red de Hopfield La red de Hopfield es una red monocapa, esto es, de una sola capa. Aunque tambin se puede mostrar como una red bicapa de dos capas, la primera capa seria una capa de sensores y la segunda capa ser la capa donde se realiza el procesamiento. En la versin bicapa la manera de interconexionar ambas capas es unir la primera capa a la segunda linealmente, esto es cada neurona con su respectiva, y despus unir todas las neuronas con todas en la misma capa. La red de Hopfield toma valores bipolares esto es, {-1,1}, sin embargo se pueden usar tambin valores binarios {0,1}. Dinmica de la red de Hopfield Ejecutar un patrn en la red de Hopfield consiste en enviar un patrn en la red y actualizar las neuronas repetidamente hasta que se estabilicen los estados de las neuronas a un patrn memorizado. Con pasos sera as. 1. Se establece el patrn de entrada en la capa de entrada. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III 2. Se actualizan las neuronas de la capa de procesamiento.

Redes Neuronales

3. Si han cambiado el estado de la red o hemos realizada ya el nmero mximo de iteraciones paramos. 4. Si no volvemos al pasos 2. Las neuronas de actualizan de la siguiente manera: Sea POT = El potencial de la neurona i, Pij = El peso asociado a la sinapsis que une las neuronas i de la capa actual y j de la capa de sensores. Ej = El estado del sensor j Entonces POTi = SumatorioEnj(Pij*Ej) Y el estado de la neurona y la funcin de salida es la funcin signo. Si los valores de entrada fuesen binarios deberamos usar la funcin escaln en vez de la funcin signo. El potencial se calcula de la misma manera que en el caso bipolar. Aprendizaje de la red de Hopfield Esta red aprende usando la regla de hebb, esto es asociamos los pesos de las sinapsis al Estado de las neuronas pre y postsinpticas. Los pasos para que la red aprenda una lista de patrones son los siguientes: 1. Para cada patrn de la lista P. 2. Se establece el patrn de entrada de P en los sensores, la capa de entrada. 3. Se hace que las neuronas de la capa de salida se actualicen sus estados a los valores de la capa de entrada. 4. Solicitar que aprendan todas las sinapsis usando las sinapsis laterales. 5. Hacer los pesos de las sinapsis nulos. Si la red de Hopfield es bipolar, {-1,1}, Las sinapsis que une las neuronas i, j aprendern de la siguiente manera: Sea Ei = El estado de la neurona i de la capa de salida. Pij = El peso actual asociado a la sinapsis que une la neurona i y la neurona j de la capa de salida. Ej = El estado de la neurona j de la capa de salida. Pijnuevo = El peso actualizado. N = el nmero de patrones de la lista de patrones. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Entonces Pijnuevo = Pij + Ej*Ei / N El Perceptrn Multicapa.

Redes Neuronales

El perceptrn simple tiene una serie de limitaciones muy importantes. La ms importante es su incapacidad para clasificar conjuntos que no son linealmente independientes. Esto quedo patente el la obra Perceptrons que en 1969 demostr que un perceptrn es incapaz de aprender una funcin tan fcil como la XOR. Este modelo es una ampliacin del perceptrn a la cual aade una serie de capas que, bsicamente, hacen una transformacin sobre las variables de entrada, que permiten eludir el problema anterior. Esto acaba con el problema del perceptrn, convirtiendo las funciones linealmente no independientes en linealmente independientes gracias a la transformacin de la capa oculta. Adems el perceptron multicapa admite valores reales. Podemos decir que el perceptrn multicapa es un modelador de funciones universal Arquitectura del Perceptron Multicapa El perceptrn multicapa consta de una capa de entrada y una capa de salida y una o ms capas ocultas. Dichas capas se unen de forma total hacia delante, esto es, la capa entrada se une con la primera capa oculta y esta con la siguiente y la ltima capa oculta se une con la capa de salida. Los valores que el perceptrn multicapa acepta son reales. Red Perceptrn multicapa con tres neuronas de entrada, dos ocultas y dos de salida Red Competitiva Las redes de aprendizaje competitivo se diferencian de las otras redes neuronales en que en las anteriores redes las neuronas colaboran en la representacin de los patrones, sin embargo, en este tipo de redes cada neurona compite con las otras neuronas para representar los patrones. El aprendizaje de este tipo de redes es como su nombre indica, competitivo. Las neuronas compiten en cual representa mejor al patrn y la ganadora se lleva todo el aprendizaje de ese patrn. El objetivo de este tipo de redes es que se formen grupos de patrones, categoras, que son representados por cada neurona. Cuando ejecutamos un patrn en una red competitiva solamente se ctiva una neurona que es la que representa mejor el patrn. Este tipo de redes fue desarrollado por Rumelhart y Zipser en 1985 aunque a partir de l se han diversificado sus aplicaciones y modificaciones dando lugar a redes tan interesantes como las redes de kohonen y otras. Este es el ejemplo de red competitiva ms simple que podemos encontrar ya que no introduce ninguna mejora. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Arquitectura

Redes Neuronales

Las redes competitivas son usualmente bicapas Esta red admite valores binarios o bipolares como entrada para los sensores y su salida es en el mismo formato de la entrada. La funcin de la primera capa es hacer de sensor, por ella entran los patrones a la red y por tanto debe tener el mismo tamao que la longitud del patrn. La segunda capa tiene tantas neuronas como categoras deseemos. Sin embargo, algunas redes competitivas, como la familia de las ART, crean neuronas dinmicamente para ajustar el nmero de categoras automticamente. Ambas capas estn interconexionadas esto es todas las neuronas de la capa de sensores estarn interconectadas con todas las neuronas capa de salida. Dinmica de la red El objetivo de ejecutar un patrn en una red competitiva, es saber a que categora pertenece. La red activar una de las neuronas de salida estableciendo su estado a uno mientras que el resto de las neuronas tendr su estado a cero. En otras palabras, Ejecutar un patrn en la red de consiste en enviar un patrn, actualizar las neuronas de la capa de salida y tomar la neurona que se ha activado como la ganadora y que representa al patrn. 1. Se establece el patrn de entrada en la capa de entrada. 2. Se actualizan las neuronas de la capa de procesamiento. 3. A la neurona ganadora, la que tiene mayor estado, establecemos su estado a 1 y los estados del resto de las neuronas los anulamos Las neuronas de actualizan de la siguiente manera: Sea el potencial de la neurona i, el peso asociado a la sinapsis que une las neuronas i de la capa actual y j de la capa de sensores el estado del sensor j. Entonces Y el estado de la neurona y la funcin de salida es la funcin identidad Cada categora, es decir cada neurona de la capa de salida, tiene un patrn que representa a los patrones que se representan con ella. Para hallar este patrn solo debemos tomar los valores de los pesos que unen la neurona con la neurona de entrada. Esto se puede observar grficamente en la siguiente figura. El patrn esta formado por las sinapsis que llegan a la neurona. Se observa fcilmente en la figura de la derecha. El patrn que representara a la categora 1 es el formado por (S11, S21, S31) y el patrn de la categora 2 es el formado por el patrn (S12, S22, S32). Aprendizaje de la red Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales El aprendizaje de esta red se basa en comparar los patrones con los pesos sinpticos que llegan a las neuronas de salida. La funcin actualizar de la neurona asigna valores mayores a las neuronas de salida que representan mejor el patrn. Una vez que sabemos cual es la neurona ganadora, hacemos que sus pesos se acerquen an ms a los patrones para que lo aprendan. 1. Inicializamos los pesos sinpticos a valores aleatorios y pequeos (cercanos a cero). 2. Para cada patrn de la lista P 3. Se establece el patrn de entrada de P en los sensores, la capa de entrada. 4. Se hace que las neuronas de la capa de salida se actualicen sus estados a los valores de la capa de entrada. 5. Se halla la neurona ganadora que es la que tiene mayor estado. 6. Solicitar que aprendan las sinapsis que llegan la neurona ganadora. La manera que tienen las sinapsis de aprender es la siguiente: Sea El estado de la neurona i de la capa de entrada El peso actual asociado a la sinapsis que une la neurona i y la neurona ganadora de la capa de salida. El estado de la neurona j de la capa de salida El peso actualizado.N es un parmetro que se decremento segn el nmero de patrones asociados a la categora. Entonces N tiene que tener un valor aproximado a 0.8 cuando no hay valores asociados a la neurona ganadora , en cambio llegara a 0.1 cuando halla muchos patrones asociados a la neurona ganadora. Se puede ver en la figura de la derecha que representa una aproximacin a esta funcin Esta red tiene el problema de las neuronas muertas. Son neuronas de la capa de salida que no han ganado nunca y no representan ningn grupo de patrones y por tanto no sirven para nada , para solucionarlo podemos tomar varias soluciones, como repartir los primeros patrones entre los pesos con lo cual al menos todas las neuronas habrn ganado una vez. Otra solucin es aadir un parmetro que reste al estado segn el nmero de veces que gane as las neuronas que no ganen nunca tendrn ms posibilidades de ganar. Redes Neuronales ART1 Las redes basadas en la teora de resonancia adaptativa sirven para clasificar patrones de manera no supervisada, esto es, la red forma grupos y crea el nmero de categoras que crea conveniente en funcin de la configuracin que le demos y las cualidades de los patrones.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales Se considera que el aprendizaje no supervisado es el ms posible desde un punto de vista psicolgico, ya que los humanos aprendemos ms sobre nuestra experiencia que escuchando a profesores. Un ejemplo de aprendizaje no supervisado es el siguiente: debemos clasificar una serie de objetos y no tenemos a nadie que nos diga a que categora pertenece, as que tenemos que fijarnos en las caractersticas de los objetos y cuanto se parecen ART hace uso de dos trminos usados en el estudio del comportamiento del celebro: Estabilidad y Plasticidad para llevar a cabo esta clasificacin. Estabilidad refleja la capacidad del sistema para recordar patrones previamente aprendidos. Plasticidad es la capacidad de aprender nuevos patrones El equilibrio entre Estabilidad y Plasticidad es resuelto en las redes ART usando un parmetro llamado, granulidad , segn algunos autores , otros lo llaman parmetro de vigilancia , yo he usado el anterior nombre por que expresa mejor la idea de una red con muchos categoras formando muchos y pequeos grnulos de patrones o formando pocos y grandes grnulos. Este parmetro nos cuantifica cuanto debe diferenciarse un patrn al clasificar, del almacenado (estabilidad) en una categora para que sea considerado una nueva categora (plasticidad). Red ART2 La red ART2 es una ampliacin de la red art1 que admite valores reales, como la anterior red, sirve para clasificar patrones de manera no supervisada La arquitectura de la red ART2 es la misma que la de la art1. Consta de dos capas: la capa de entrada de sensores y la capa de salida, que en un principio no tiene ninguna neurona, pero que segn vamos entrenando la red, esta va formando grupos de patrones que clasifica en una categora cuyo patrn representativo son los pesos de entrada de la neurona de la capa de salida. La manera de unirse ambas capas es total, cada neurona de la capa entrada esta unida con todas las neuronas de la capa de salida. La diferencia principal entre la red art1 y la art2 es que esta ltima red admite valores reales. Este ejemplo representa a una red art2 que ya tiene dos categoras la Y1 y la Y2 . Mapas de Kohonen. Redes Neuronales Autorganizativas. La red de Kohonen pertenece a la categora de redes no supervisadas, la diferencia con otras redes, es que las neuronas que representan patrones parecidos aparecen juntas en el espacio salida, este espacio puede ser unidimensional, una lnea, bidimensional, un plano o Ndimensional. Es el propio diseador de la red el que establece el espacio de salida que tendr la red. Las redes de kohonen son redes bicapas, esto es, de dos capas: la capa de entrada de sensores y la capa de salida que realiza el clculo. Cada neurona de la capa de salida debe reflejar las coordenadas que tiene en el espacio que el diseador de la red decida. Para que las neuronas puedan ser comparadas con la posicin de otras neuronas de la red, se le asocia una regla de vecindad. Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Practica Profesional III Redes Neuronales El modo de unir las capas es todas con todas, total, cada neurona de la capa entrada esta unida con todas las neuronas de la capa de salida. Algo ms sobre las RNA Trabajar con redes neuronales requiere de grandes recursos de procesamiento y tiempo de investigacin para poder llegar a conclusiones acertadas. Las diferentes etapas que se deben seguir para poder desarrollar estas redes pueden tomar mucho tiempo de procesamiento si no se dispone de hardware y software apropiado. Estos dos componentes son de gran importancia si se desea poder concentrarse en el anlisis de resultados y diseo de redes, y optimizar el tiempo disponible de mejor manera. El programa desarrollado en este proyecto, por ejemplo, evit tener que preocuparse de la programacin de las redes y enfocar los esfuerzos en el desarrollo de las mismas, por lo que fue una decisin acertada invertir tiempo en su codificacin. La teora de redes neuronales artificiales, presenta ventajas con respecto a otros modelos tpicos de solucin de problemas de ingeniera, una de ellas es su inspiracin en modelos biolgicos del funcionamiento del cerebro, lo que facilita su estudio a las analogas que pueden introducirse para su anlisis. Hoy en da existe una gran cantidad de estudios sobre Redes Neuronales Artificiales en varios campos, incluyendo el procesamiento de seales digitales y seales de voz. Las redes NPC tienen gran importancia en sistemas de sntesis y econocimiento de seales de voz, ya que representan una alternativa prometedora a las tcnicas LPC. Estas redes poseen caractersticas de procesamiento que permiten tratar de mejor manera las seales de voz y obtener por tanto mejores resultados. Dentro del campo de la compresin de voz, muy pocos estudios han sido publicados, y posiblemente realizados, en base a estas redes, debido principalmente a que se trata de un tema ya dominado y saciado de algoritmos y tcnicas de compresin que han demostrado generar resultados satisfactorios. Sistemas basados en NPC no tienen forma de competir en el mercado contra mtodos de compresin existentes, ya que no ofrece resultados que justifiquen invertir recursos en su desarrollo e implementacin dentro de la industria de las comunicaciones.

Herrera, Jorge Sanchez Leonardo Romero Sabrina Sanchez Juan

Anda mungkin juga menyukai