Rna

download Rna

of 34

Transcript of Rna

  • 1

    UNIVERSIDAD TECNOLOGICA NACIONAL

    FACULTAD REGIONAL BUENOS AIRES

    Grupo de Inteligencia Artificial (GIA)

    INTRODUCCION A LAS REDES NEURONALES ARTIFICIALES

    Fernando Tanco

  • 2

    Redes Neuronales Artificiales 1. Introduccin

    Resulta irnico pensar que mquinas de cmputo capaces de realizar 100 millones de operaciones en coma flotante por segundo, no sean capaces de entender el significado de las formas visuales o de distinguir entre distintas clases de objetos. Los sistemas de computacin secuencial, son exitosos en la resolucin de 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 Neuman, 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; este rgano biolgico cuenta con varias caractersticas deseables para cualquier sistema de procesamiento digital, tales como:

    Es robusto y tolerante a fallas, diariamente mueren neuronas sin afectar su desempeo. Es flexible, se ajusta a nuevos ambientes por aprendizaje, no hay que programarlo. Puede manejar informacin difusa, con ruido o inconsistente. Es altamente paralelo. Es pequeo, compacto y consume poca energa.

    El cerebro humano constituye una computadora muy notable, es capaz de interpretar informacin

    imprecisa suministrada por los sentidos a un ritmo increblemente veloz. Logra discernir un susurro en una sala ruidosa, un rostro en un callejon mal iluminado y leer entre lneas un discurso; lo ms impresionante de todo, es que el cerebro aprende sin instrucciones explcitas de ninguna clase, a crear las representaciones internas que hacen posibles estas habilidades.

    Basados en la eficiencia de los procesos llevados a cabo por el cerebro, e inspirados en su funcionamiento, varios investigadores han desarrollado desde hace ms de 30 aos la teora de las Redes Neuronales Artificiales (RNA), las cuales emulan las redes neuronales biolgicas, y que se han utilizado para aprender estrategias de solucin basadas en ejemplos de comportamiento tpico de patrones; estos sistemas no requieren que la tarea a ejecutar se programe, sino que generalizan y aprenden de la experiencia.

    La teora de las RNA ha brindado una alternativa a la computacin clsica, para aquellos problemas, en los cuales los mtodos tradicionales no han entregado resultados muy convincentes, o poco convenientes. Las aplicaciones ms exitosas de las RNA son:

    Procesamiento de imgenes y de voz Reconocimiento de patrones Planeamiento Interfaces adaptivas para sistemas hombre/mquina Prediccin Control y optimizacin Filtrado de seales

    Los sistemas de computo tradicional procesan la informacin en forma secuencial; un computador

    serial consiste por lo general de un solo procesador que puede manipular instrucciones y datos que se localizan en la memoria. El procesador lee, y ejecuta una a una las instrucciones en la memoria; este sistema serial es secuencial, todo sucede en una sola secuencia determinstica de operaciones. Las RNA no ejecutan instrucciones, responden en paralelo a las entradas que se les presenta. El resultado no se almacena en una posicin de memoria, este es el estado de la red para el cual se logra equilibrio. El conocimiento de una red neuronal no se almacena en instrucciones, el poder de la red est en su topologa y en los valores de las conexiones (pesos) entre neuronas.

  • 3

    Las ventajas de las redes neuronales son:

    Aprendizaje adaptativo. Capacidad de aprender a realizar tareas basadas en un entrenamiento o una experiancia inicial.

    Autoorganizacin. Una red neuronal puede crear su propia organizacin o representacin de la informacin que recibe mediante una etapa de aprendizaje.

    Generalizacin. Facultad de las redes neuronales de responder apropiadamente cuando se les presentan datos o situaciones a los que no haban sido expuestas anteriormente.

    Tolerancia a fallos. La destruccin parcial de una red conduce a una degradacin de su estructura; sin embargo, algunas capacidades de la red se pueden retener, incluso sufriendo gran dao. Con respecto a los datos, las redes neuronales pueden aprender a reconocer patrones con ruido, distorsionados o incompletos.

    Operacin en tiempo real. Los computadores neuronales pueden ser realizados en paralelo, y se disean y fabrican mquinas con hardware especial para obtener esta capacidad.

    Fcil insercin dentro de la tecnologa existente. Se pueden obtener chips especializados para redes neuronales que mejoran su capacidad en ciertas tareas. Ello facilita la integracin modular en los sistemas existentes.

    2. Panorama histrico

    Alan Turing, en 1936, 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. Ellos modelaron una red neuronal simple mediante circuitos elctricos. Otro importante libro en el inicio de las teoras de las redes neuronales fue escrito en 1949 por Donald Hebb, La organizacin del comportamiento, en el que establece una conexin entre psicologa y fisiologa.

    En 1957, Frank Rosenblatt comenz el desarrollo del Perceptrn, es el modelo ms antiguo de red neuronal, y se usa hoy en da de varias formas para la aplicacin de reconocedor de patrones. Este modelo era capaz de generalizar; es decir, despus de haber aprendido una serie de patrones era capaz de reconocer otros similares, aunque no se le hubieran presentado anteriormente. Sin embargo, tena una serie de limitaciones, quizs la ms conocida era la incapacidad para resolver el problema de la funcin OR-exclusiva y, en general, no era capaz de clasificar clases no separables linealmente. En 1959, Bernard Widrow y Marcial Hoff, de Stanford, desarrollaron el modelo ADALINE (ADAptive LINear Elements). Esta fue la primera red neuronal aplicada a un problema real (filtros adaptativos para eliminar ecos en las lneas telefnicas) y se ha usado comercialmente durante varias dcadas. Uno de los mayores investigadores de las redes neuronales desde los aos 60 hasta nuestros das es Stephen Grossberg (Universidad de Boston). A partir de su extenso conocimiento fisiolgico, ha escrito numerosos libros y desarrollado modelos de redes neuronales. Estudi los mecanismos de la percepcin y la memoria. Grossberg realiz en 1967 una red, Avalancha, que consista en elementos discretos con actividad que vara con el tiempo que satisface ecuaciones diferenciales continuas, para resolver actividades tales como reconocimiento continuo del habla y aprendizaje del movimiento de los brazos de un robot. En 1969 surgieron numerosas crticas que frenaron, hasta 1982, el crecimiento que estaban experimentando las investigaciones sobre redes neuronales. Marvin Minsky y Seymour Papert, del MIT, publicaron un libro, Perceptrons, que adems de contener un anlisis matemtico detallado del Perceptrn, consideraba que la extensin a Perceptrones multinivel (el Perceptrn original solo posea una capa) era completamente estril. Las limitaciones del Perceptrn eran importantes, sobre todo su incapacidad para resolver muchos problemas interesantes. Esta fue una de las razones por la cual la investigacin en redes neuronales qued rezagada por ms de 10 aos. A pesar del libro Perceptrons, algunos investigadores continuaron con su trabajo. Tal fue el caso de James Anderson, que desarroll un modelo lineal llamado Asociador Lineal, que consista en

  • 4

    elementos integradores lineales (neuronas) que sumaban sus entradas. Tambin desarroll una potente extensin del Asociador Lineal llamada Brain-State-in-a-Box (BSB) en 1977. En Europa y Japn, las investigaciones tambin continuaron. Kunihiko Fukushima desarroll en 1980 el Neocognitrn, un modelo de red neuronal para el reconocimiento de patrones visuales. Teuvo Kohonen, un ingeniero electrnico de la universidad de Helsinki, desarroll un modelo similar al de Anderson pero independientemente. En 1982 comenz a resurgir el inters por las redes neuronales gracias a dos trabajos importantes. John Hopfield present su trabajo (basado en la fsica estadstica), en el cual describe con claridad y rigor matemtico una red a la que ha dado su nombre, que es una variacin del Asociador Lineal, pero, adems, mostr cmo tales redes pueden trabajar y qu pueden hacer. El otro trabajo pertenece a Teuvo Kohonen, con un modelo con capacidad para formar mapas de caractersticas de manera similar a como ocurre en el cerebro, este modelo tena dos variantes denominadas LVQ (Lerning Vector Cuantization) y SOM (Self-Organizing Map). En 1986, el desarrollo del algoritmo back-propagation fue dado a conocer por Rumelhart, Hinton y Williams. Ese mismo ao, el libro Parallel Distributed Processing, fue publicado por Rumelhart y McClelland, siendo este libro la mayor influencia para la aplicacin generalizada del algoritmo back-propagation.

    3. El modelo biolgico

    El cerebro consta de un gran nmero (aproximadamente 1011) de elementos altamente interconectados (aproximadamente 104 conexiones por elemento), llamados neuronas. Estas neuronas tienen tres componentes principales, las dendritas, el cuerpo de la clula o soma, y el axn. Las dendritas, son el rbol receptor de la red, son como fibras nerviosas que cargan de seales elctricas el cuerpo de la clula. El cuerpo de la clula, realiza la suma de esas seales de entrada. El axn es una fibra larga que lleva la seal desde el cuerpo de la clula hacia otras neuronas. El punto de contacto entre un axn de una clula y una dendrita de otra clula es llamado sinpsis, la longitud de la sinpsis es determinada por la complejidad del proceso qumico que estabiliza la funcin de la red neuronal. Un esquema simplificado de la interconexin de dos neuronas biolgicas se observa en la siguiente figura:

    Todas las neuronas conducen la informacin de forma similar, esta viaja a lo largo de axones en breves impulsos elctricos, denominados potenciales de accin; los potenciales de accin que alcanzan una amplitud mxima de unos 100 mV y duran un par de ms, son resultado del desplazamiento a travs de la membrana celular de iones de sodio dotados de carga positiva, que pasan desde el fluido extracelular hasta el citoplasma intracelular; seguidos de un desplazamiento de iones de

  • 5

    potasio (carga negativa) que se desplazan desde el fluido intracelular al extracelular. En la siguiente figura se observa la propagacin del impulso elctrico a lo largo del axn.

    Los potenciales de accin, son seales de baja frecuencia conducidas en forma muy lenta, estos no pueden saltar de una clula a otra, la comunicacin entre neuronas viene siempre mediada por transmisores qumicos que son liberados en las sinpsis, son los llamados neurotransmisores. Existen dos tipos de sinapsis: a) las sinapsis excitadoras, cuyos neurotransmisores provocan disminuciones de potencial en la membrana de la clula postsinptica, facilitando la generacin de impulsos a mayor velocidad, y b) las sinapsis inhibidoras, cuyos neurotransmisores tienden a estabilizar el potencial de la membrana, dificultando la emisin de impulsos.

    La neurona recibe las entradas procedentes de sinapsis excitadoras e inhibidoras, o sea recibe impulsos amplificados o atenuados. La suma de stos impulsos en el cuerpo de la clula determinar si ser o no estimulada, dependiendo de que si el valor de dicha suma es superior al valor de umbral de generacin del potencial de accin.

    4. La neurona artificial

  • 6

    El modelo de una neurona artificial es una imitacin del proceso de una neurona biolgica, puede tambin asemejarse a un sumador hecho con un amplificador operacional tal como se ve en la figura:

    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 anlogos 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 sinpsis 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 anloga 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. La entrada neta a cada unidad puede escribirse de la siguiente manera:

    Una idea clara de este proceso se muestra en la siguiente figura, en donde puede observarse el recorrido de un conjunto de seales que entran a la red.

  • 7

    Una vez que se ha calculado la activacin del nodo, el valor de salida equivale a

    Donde if representa la funcin de activacin para esa unidad, que corresponde a la funcin escogida para transformar la entrada netai en el valor de salida ix y que depende de las caractersticas especficas de cada red.

    5. Funciones de transferencia

    Un modelo ms acadmico que facilita el estudio de una neurona, puede visualizarse en la

    figura:

    Las entradas a la red sern ahora presentadas en el vector p, que para el caso de una sola neurona contiene solo un elemento, w sigue representando los pesos y la nueva entrada b es una ganancia que refuerza la salida del sumador n, la cual es la salida neta de la red; la salida total est determinada por la funcin de transferencia , la cual puede ser una funcin lineal o no lineal de n, y que es escogida dependiendo de las especificaciones del problema que la neurona tenga que resolver; aunque las RNA se inspiren en modelos biolgicos no existe ninguna limitacin para realizar modificaciones en las funciones de salida, as que se encontrarn modelos artificiales que nada tienen que ver con las caractersticas del sistema biolgico.

    Limitador fuerte (Hardlim): la siguiente figura muestra como esta funcin de transferencia acerca la salida de la red a cero, si el argumento de la funcin es menor que cero y la lleva a uno si este argumento es mayor que uno. Esta funcin crea neuronas que clasifican las entradas en dos categoras diferentes, caracterstica que le permite ser empleada en la red tipo Perceptrn

  • 8

    El cono para la funcin Hardlim reemplazara a la letra f en la expresin general, cuando se utilice la funcin Hardlim.

    Una modificacin de esta funcin puede verse en la siguiente figura, la que representa la funcin de transferencia Hardlims que restringe el espacio de salida a valores entre 1 y 1.

    Funcin de transferencia lineal (purelin): la salida de una funcin de transferencia lineal es igual a su entrada,

    En la grfica del lado derecho puede verse la caracterstica de la salida a de la red, comparada con la entrada p, ms un valor de ganancia b, neuronas que emplean esta funcin de transferencia son utilizadas en la red tipo Adaline.

    Funcin de transferencia sigmoidal (logsig): esta funcin toma los valores de entrada, los cuales pueden oscilar entre mas y menos infinito, y restringe la salida a valores entre cero y uno, de acuerdo a la expresin

    Esta funcin es comnmente usada en redes multicapa, como la Backpropagation, en parte porque la funcin logsig es diferenciable.

    La siguiente tabla hace una relacin de las principales funciones de transferencia empleadas en el entrenamiento de redes neuronales.

  • 9

    Nombre Relacin Entrada /Salida

    Icono Funcin

    Limitador Fuerte

    hardlim

    Limitador Fuerte Simtrico

    hardlims

    Lineal Positiva

    poslin

    Lineal

    purelin

    Lineal Saturado

    satlin

    Lineal Saturado Simtrico

    satlins

    Sigmoidal Logartmico

    logsig

    Tangente Sigmoidal

    Hiperblica

    tansig

    6. Toploga de una red

    Tpicamente una neurona tiene ms de una entrada; en la siguiente figura se observa una

    neurona con R entradas; las entradas individuales p1,p2,...,pR son multiplicadas por los pesos correspondientes w1,1, w1,2,...w1,R pertenecientes a la matriz de pesos W.

    La neurona tiene una ganancia b, la cual llega al mismo sumador al que llegan las entradas multiplicadas por los pesos, para formar la salida n,

    Esta expresin puede ser escrita en forma matricial

    Los subndices de la matriz de pesos representan los trminos involucrados en la conexin, el primer subndice representa la neurona destino y el segundo, representa la fuente de la seal que alimenta a la neurona. Por ejemplo, los ndices de w1,2 indican que este peso es la conexin desde la segunda entrada a la primera neurona. Esta convencin se hace ms til cuando hay ms de una neurona, o cuando se tiene una neurona con demasiados parmetros; en este caso la notacin de la

  • 10

    figura anterior, puede resultar inapropiada y se prefiere emplear la notacin abreviada representada en la siguiente figura

    El vector de entrada p es representado por la barra slida vertical a la izquierda. Las dimensiones de p son mostradas en la parte inferior de la variable como Rx1, indicando que el vector de entrada es un vector fila de R elementos. Las entradas van a la matriz de pesos W, la cual tiene R columnas y solo una fila para el caso de una sola neurona. Una constante 1 entra a la neurona multiplicada por la ganancia escalar b. La salida de la red a, es en este caso un escalar, si la red tuviera ms de una neurona a sera un vector.

    Dentro de una red neuronal, los elementos de procesamiento se encuentran agrupados por capas, una capa es una coleccin de neuronas; de acuerdo a la ubicacin de la capa en la RNA, esta recibe diferentes nombres: Capa de entrada: recibe las seales de la entrada de la red, algunos autores no consideran el vector de entrada como una capa pues all no se lleva a cabo ningn proceso. Capas ocultas: Estas capas son aquellas que no tienen contacto con el medio exterior, sus elementos pueden tener diferentes conexiones y son estas las que determinan las diferentes topologas de la red Capa de salida: Recibe la informacin de la capa oculta y transmite la respuesta al medio externo. Una red de una sola capa con un nmero S de neuronas, se observa en la siguiente figura en la cual, cada una de las R entradas es conectada a cada una de las neuronas, la matriz de pesos tiene ahora S filas.

    La capa incluye la matriz de pesos, los sumadores, el vector de ganancias, la funcin de transferencia y el vector de salida. Esta misma capa se observa en notacin abreviada en la siguiente figura.

  • 11

    En la figura anterior se han dispuesto los smbolos de las variables de tal manera que describan las caractersticas de cada una de ellas, por ejemplo la entrada a la red es el vector p cuya longitud R aparece en su parte inferior, W es la matriz de pesos con dimensiones SxR expresadas debajo del smbolo que la representa dentro de la red, a y b son vectores de longitud S el cual, como se ha dicho anteriormente representa el nmero de neuronas de la red.

    Ahora, si se considera una red con varias capas, o red multicapa, cada capa tendr su propia matriz de peso W, su propio vector de ganancias b, un vector de entradas netas n, y un vector de salida a. La versin completa y la versin en notacin abreviada de una red de tres capas, pueden ser visualizadas en las siguientes dos figuras respectivamente.

    Para esta red se tienen R entradas, S1 neuronas en la primera capa, S2 neuronas en la segunda capa, las cuales pueden ser diferentes; las salidas de las capas 1 y 2 son las entradas a las capas 2 y 3 respectivamente, as la capa 2 puede ser vista como una red de una capa con R=S1 entradas, S1=S2 neuronas y una matriz de pesos W2 de dimensiones S1xS2.

  • 12

    Las redes multicapa son ms poderosas que las redes de una sola capa, por ejemplo, una red de dos capas que tenga una funcin sigmoidal en la primera capa y una funcin lineal en la segunda, puede ser entrenada para aproximar muchas funciones de forma aceptable, una red de una sola capa no podra hacer esto como se ver ms adelante.

    En general las redes neuronales se pueden clasificar de diversas maneras, segn su topologa, forma de aprendizaje (supervisado o no supervisado), tipos de funciones de activacin, valores de entrada (binarios o continuos); un resumen de esta clasificacin se observa en la siguiente figura.

    7. Perceptrn

    7.1. Estructura de la red

    La nica neurona de salida del Perceptrn realiza la suma ponderada de las entradas, resta el umbral y pasa el resultado a una funcin de transferencia de tipo escaln. La regla de decisin es responder +1 si el patrn presentado pertenece a la clase A, o 1 si el patrn pertenece a la clase B, la salida depende de la entrada neta (n = suma de las entradas pi ponderadas).

    La red tipo Perceptrn emplea principalmente dos funciones de transferencia, hardlim con salidas 1, 0 o hardlims con salidas 1, -1; su uso depende del valor de salida que se espera para la red, es decir si la salida de la red es unipolar o bipolar; sin embargo la funcin hardlims es preferida sobre la hardlim, ya que el tener un cero multiplicando algunas de los valores resultantes del producto de las entradas por el vector de pesos, ocasiona que estos no se actualicen y que el aprendizaje sea ms lento.

    Una tcnica utilizada para analizar el comportamiento de redes como el Perceptrn es presentar en un mapa las regiones de decisin creadas en el espacio multidimensional de entradas de la red, en estas regiones se visualiza qu patrones pertenecen a una clase y cules a otra, el Perceptrn separa las regiones por un hiperplano cuya ecuacin queda determinada por los pesos de las conexiones y el valor umbral de la funcin de activacin de la neurona, en este caso los valores de los pesos pueden fijarse o adaptarse empleando diferentes algoritmos de entrenamiento.

    Para ilustrar el proceso computacional del Perceptrn consideremos la matriz de pesos en forma general:

  • 13

    Los pesos para una neurona estn representados por un vector compuesto de los elementos de la i-sima fila de W:

    De esta forma y empleando la funcin de transferencia hardlim la salida de la neurona i de la capa de salida ser:

    El Perceptrn, al constar de una sola capa de entrada y otra de salida con una nica neurona, tiene una capacidad de representacin bastante limitada, este modelo slo es capaz de discriminar patrones muy sencillos, patrones linealmente separables, el caso ms conocido es la imposibilidad del Perceptrn de representar la funcin OR EXCLUSIVA.

    7.2. Regla de aprendizaje

    El Perceptrn es un tipo de red de aprendizaje supervisado, es decir necesita conocer los valores esperados para cada una de las entradas presentadas; su comportamiento est definido por pares de esta forma:

    Cuando p es aplicado a la red, la salida de la red es comparada con el valor esperado t, y la salida de la red esta determinada por:

    Los valores de los pesos determinan el funcionamiento de la red, estos valores se pueden fijar o adoptar utilizando diferentes algoritmos de entrenamiento de la red.

    Como ejemplo de funcionamiento de una red neuronal tipo Perceptrn, se solucionar el problema de la funcin OR, para esta funcin la red debe ser capaz de devolver a partir de los cuatro patrones de entrada, a qu clase pertenece cada uno; es decir para el patrn 00 debe devolver la clase cero y para los restantes la clase 1, segn la siguiente grfica:

  • 14

    Para este caso las entradas a la red sern valores binarios, la salida de la red esta determinada por:

    Si w1p1+w2p2 es mayor que 0 la salida ser 1, en caso contrario la salida ser 1 (funcin escaln unitario). Como puede verse la sumatoria que se le pasa a cada parmetro (entrada total) a la funcin hardlims (funcin de salida o de transferencia) es la expresin matemtica de una recta, donde w1 y w2 son variables y p1 y p2 son constantes. En la etapa de aprendizaje se irn variando los valores de los pesos obteniendo distintas rectas, lo que se pretende al modificar los pesos de las conexiones es encontrar una recta que divida el plano en dos espacios de las dos clases de valores de entrada, concretamente para la funcin OR se deben separar los valores 01, 10, y 11 del valor 00; la red Perceptrn que realiza esta tarea y la grfica caracterstica pueden observarse en la siguiente figura, all puede verse como las posibles rectas pasarn por el origen de coordenadas, por lo que la entrada 00 quedar sobre la propia recta.

    Se aplicar este mtodo para resolver tambin el problema de la funcin AND, el cual se describe en la siguiente figura:

    Analizando el comportamiento de la AND se llega a la conclusin de que es imposible que una recta que pase por el origen, separe los valores 00,01 y 10 del valor 11, por lo que se hace necesario introducir un trmino independiente para realizar esta tarea, a este trmino se le da el nombre de ganancia, umbral o bias y se representa por la letra b, al cual por lo general se le asigna un valor inicial de 1 y se ajusta durante la etapa de aprendizaje de la red; este nuevo trmino permite desplazar la recta del origen de coordenadas dando una solucin para el caso de la funcin AND y ampliando el nmero de soluciones de la funcin OR. Ahora la salida de la neurona esta dada por:

    Las soluciones obtenidas para las funciones AND y OR se observan en la siguiente figura.

  • 15

    En el proceso de entrenamiento el Perceptrn se expone a un conjunto de patrones de entrada y los pesos de la red son ajustados de forma que al final de entrenamiento se obtengan las salidas esperadas para cada unos de esos patrones de entrada.

    El algoritmo de entrenamiento del Perceptrn para N elementos procesales de entrada y un nico elemento procesal de salida puede resumirse en los siguientes pasos:

    1) Se inicializa la matriz de pesos y el valor de la ganancia, por lo general se asignan valores

    aleatorios pequeos a cada uno de los pesos wi y al valor b. El valor de bias b puede tomarse como el valor de un peso adicional w0 asociado con una entrada adicional siempre en 1.

    2) Se presenta un nuevo patrn de entrada a la red, junto con la salida esperada (t) en forma de pares entrada/salida.

    3) Se calcula la salida de la red por medio de:

    donde f puede ser la funcin hardlim o hardlims. 4) Cuando la red no retorna la salida correcta, es necesario alterar el valor de los pesos, tratando

    de llevarlo hasta p y as aumentar las posibilidades de que la clasificacin sea correcta, entonces introduciendo un trmino error , la modificacin de los pesos ser:

    y extendiendo la ley a las ganancias:

    siendo un factor que define la velocidad de aprendizaje y vara en el rango de 0.0 a 1.0. Este factor debe ser ajustado de forma que satisfaga tanto los requerimientos de aprendizaje rpido como la estabilidad de las estimaciones de los pesos.

    5) Volver al paso 2. Este proceso se repite hasta que el error e que se produce para cada uno de los patrones es cero o bien menor que un valor preestablecido.

    Este algoritmo es extensible al caso de mltiples neuronas en la capa de salida. El Perceptrn

    ser capaz de aprender a clasificar todas sus entradas, en un nmero finito de pasos, siempre y cuando el conjunto de los patrones de entrada sea linelamente separable.

    Para ilustrar la regla de aprendizaje del Perceptrn, se dar solucin al problema de clasificacin de patrones ilustrado en la siguiente figura con los patrones de entrenamiento:

    , , ,

  • 16

    En este caso las salidas toman valores bipolares de 1 o 1, por lo tanto la funcin de transferencia a utilizar ser hardlims. Segn la dimensiones de los patrones de entrenamiento la red debe contener dos entradas y una salida.

    Para decidir si una red tipo Perceptrn puede aplicarse al problema de inters, se debe comprobar si el problema es linealmente separable, esto puede determinarse grficamente de la figura con los patrones de entrenamiento, en donde se observa que existe un gran nmero de lneas rectas que pueden separar los patrones de una categora de los patrones de la otra, el siguiente paso es asumir arbitrariamente los valores para los pesos y ganancias iniciales de entrada a la red; el proceso terminar cuando se hayan obtenido los pesos y ganancias finales que permitan a la red clasificar correctamente todos los patrones presentados.

    Los valores iniciales asignados aleatoriamente a los parmetros de la red son:

    Con base en el procedimiento descripto anteriormente, y considerando al factor igual a 1, el proceso de aprendizaje de la red es el siguiente:

    Iteracin 0

    La red clasificara los patrones de entrenamiento segn la caracterstica de decisin mostrada en la siguiente figura, la cual depende de los valores de los pesos y ganancias iniciales.

    Interseccin con los ejes:

  • 17

    Como puede verse, la caracterstica de decisin es ortogonal al vector de pesos W. La red clasifica incorrectamente los patrones p1, p3 y p4; en esta iteracin; a continuacin presentamos a la red el patrn de entrenamiento p1.

    Iteracin 1

    De la iteracin 0, p1 estaba mal clasificado, la actualizacin de pesos permite que este patrn sea clasificado correctamente.

    La iteracin 1 lleva a la caracterstica de decisin de la siguiente figura:

    Interseccin con los ejes:

    Como se observa el patrn de entrenamiento p1 ha sido clasificado correctamente, y

    casualmente los patrones p2 y p3 fueron correctamente ubicados, pues aun no han sido presentados a la red.

    Iteracin 2

    Se presenta p2 a la red, y es clasificado correctamente, como se observo grficamente.

  • 18

    Este patrn ha sido clasificado correctamente y por lo tanto no hay actualizacin del set de entrenamiento:

    Iteracin 3 Se presenta p3 a la red y es clasificado correctamente, como se observ grficamente.

    Como se esperaba, no hubo error en la clasificacin de este patrn, y esto lleva a que no haya actualizacin de los pesos de la red.

    Iteracin 4 Se presenta a la red p4,

    La red ha clasificado incorrectamente este patrn y por lo tanto deben modificarse pesos y ganancias.

  • 19

    En esta iteracin la red se comportar de acuerdo a la caracterstica de decisin de la siguiente figura:

    Interseccin con los ejes:

    De esta figura se observa que la red ha clasificado correctamente los patrones de

    entrenamiento, despus de entrenada la red con los pesos y ganancias finales, cualquier otro valor de entrada ser clasificado segn la caracterstica de decisin mostrada (generalizacin).

    Es de importancia notar que en este caso los patrones de entrada se encuentran en dos dimensiones y por lo tanto es fcil determinar grficamente cuando han sido clasificados correctamente, en el caso que los patrones se encuentren en tres dimensiones esta visualizacin se dificulta y en el caso de que los patrones sean de orden superior la visualizacin resulta imposible; para estos casos se debe comprobar matemticamente que el error correspondiente a cada patrn de entrenamiento para los pesos finales es nulo.

    7.3. Limitaciones del Perceptrn

    Ya anteriormente se plante la restriccin que existe para los tipos de problemas que una red

    Perceptrn puede solucionar, como se dijo, esta red puede resolver solamente problemas que sean linealmente separables, esto es problemas cuyas salidas estn clasificadas en dos categoras diferentes y que permitan que su espacio de entrada sea divido en estas dos regiones por medio de un hiperplano de caractersticas similares a la ecuacin del Perceptrn, es decir

    Ejemplos de problemas de este tipo son las funciones lgicas OR y AND estudiadas anteriormente; para ilustrar ms claramente que significa que un problema sea linealmente separable se analizar un caso que no lo sea, el caso de la compuerta XOR, el cual se visualiza en la siguiente figura:

    Se pretende que para los valores de entrada 00 y 11 se devuelva la clase 0 y para los patrones 01 y 10 la clase 1. Como puede verse en la siguiente figura, el problema radica en que no existe ninguna lnea recta que separe los patrones de una clase de los de la otra:

  • 20

    Los cuatro puntos en la figura son las posibles entradas de la red; la lnea divide el plano en dos regiones, por lo que se podra clasificar los puntos de una regin como pertenecientes a la clase que posee salida 1 (puntos negros) y los de la otra regin como pertenecientes a la clase que posee salida 0 (puntos blancos), sin embargo no hay ninguna forma de posicionar la lnea para que los puntos correctos para cada clase se encuentren en la misma regin. El problema de la compuerta XOR no es linealmente separable y una red tipo Perceptrn no est en capacidad de clasificar correctamente los patrones de esta funcin, debido a esta limitacin del Perceptrn y a su amplia publicacin en el libro de Minsky y Papert, el estudio de las redes neuronales se estanco durante casi 20 aos.

    El proceso para determinar si un problema es linealmente separable o no, se realiza grficamente sin problema, cuando los patrones de entrada generan un espacio de dos dimensiones, como en el caso de las funciones AND, OR o de la XOR; sin embargo, esta visualizacin se dificulta cuando el conjunto de patrones de entrada es de tres dimensiones, y resulta imposible de observar grficamente cuando los patrones de entrada son de dimensiones superiores; en este caso se requiere plantear condiciones de desigualdad que permitan comprobar la separabilidad lineal de los patrones, esto se realiza con base en la ecuacin de salida del Perceptrn:

    , para aquellos patrones cuya salida deseada sea 1. , para aquellos patrones cuya salida deseada sea 0.

    En el caso de la XOR, teniendo en cuenta los valores de la tabla al lado derecho de la figura de la compuera, estas desigualdades se expresan as:

    (p1) (p3)

    (p2) (p4) Si no hay contradiccin en las desigualdades anteriores, el problema es linealmente separable.

    Como se observa de las desigualdades 2, 3 y 4, es imposible que W2,1 0, W1,1 0, y que su suma sea menor que cero, esta es una forma alternativa de comprobar que el problema de la XOR no es linealmente separable. El aporte de esta tcnica se aprecia mejor para problemas cuyo espacio de entrada sea de dimensiones mayores.

    La solucin al problema de clasificacin de patrones de la funcin XOR se encontrara fcilmente si se descompone el espacio en tres regiones: una regin pertenecera a una de las clases de salida y las otras dos pertenecen a la segunda clase, as que si en lugar de utilizar nicamente una neurona de salida se utilizaran dos, se obtendran dos rectas por lo que podran delimitarse tres zonas; para poder elegir entre una zona u otra de las tres, es necesario utilizar otra capa con una neurona cuyas entradas sern las salidas de las neuronas anteriores; las dos zonas o regiones que contienen los puntos (0,0) y (1,1) se asocian a una salida nula de la red y la zona central se asocia a la salida con valor 1, de esta forma es posible encontrar una solucin al problema de la funcin XOR, por tanto se ha de utilizar una red de tres neuronas, distribuidas en dos capas para solucionar este problema.

    En la siguente figura se observa un esquema de lo que sera una red Perceptrn multicapa, con los valores de pesos y ganancias que clasifican correctamente los patrones de la compuerta XOR:

  • 21

    Los valores de la matriz de pesos y del vector de ganancias son:

    w11=1 w12=1 w21=1 w22=1

    w31=1 w32=-1.5 b1=-0.5 b2=-1.5 b3=-0.5

    7.4. Perceptrn multicapa

    Un Perceptrn multicapa es una red con alimentacin hacia delante, compuesta de varias capas

    de neuronas entre la entrada y la salida de la misma, esta red permite establecer regiones de decisin mucho ms complejas que las de dos semiplanos, como lo hace el Perceptrn de un solo nivel. En el problema de la funcin XOR se explic como un Perceptrn multicapa haba sido implementado para hallar una solucin.

    Las capacidades del Perceptrn multicapa con dos y tres capas y con una nica neurona en la capa de salida se muestran en la siguiente figura. En la segunda columna se muestra el tipo de regin de decisin que se puede formar con cada una de las configuraciones, en la siguiente se indica el tipo de regin que se formara para el problema de la XOR, en las dos ltimas columnas se muestran las regiones formadas para resolver el problema de clases mezcladas y las formas ms generales para cada uno de los casos:

    Estructura Regiones de

    Desicin Problema de la

    XOR Clases con Regiones

    Mezcladas

    Formas de Regiones ms

    Generales Medio Plano

    Limitado por un Hiperplano

    Regiones Cerradas o Convexas

    Complejidad

    Arbitraria Limitada por el

    Nmero de Neuronas

    El Perceptrn bsico slo puede establecer dos regiones separadas por una frontera lineal en el

    espacio de entrada de los patrones; un Perceptrn con dos capas, puede formar cualquier regin convexa en este espacio. Las regiones convexas se forman mediante la interseccin de regiones formadas por cada neurona de la segunda capa, cada uno de estos elementos se comporta como un

  • 22

    Perceptrn simple, activndose su salida para los patrones de un lado del hiperplano, si el valor de los pesos de las conexiones entre las neuronas de la segunda capa y una neurona del nivel de salida son todos igual a 1, y la funcin de salida es de tipo hardlim, la salida de la red se activar slo si las salidas de todos los nodos de la segunda capa estn activos, esto equivale a ejecutar la funcin lgica AND en el nodo de salida, resultando una regin de decisin interseccin de todos los semiplanos formados en el nivel anterior. La regin de decisin resultante de la interseccin ser una regin convexa con un nmero de lados a lo sumo igual al nmero de neuronas de la segunda capa.

    A partir de este anlisis surge el interrogante respecto a los criterios de seleccin para las neuronas de las capas ocultas de una red multicapa, este nmero en general debe ser lo suficientemente grande como para que se forme una regin compleja que pueda resolver el problema, sin embargo no debe ser muy grande pues la estimacin de los pesos puede ser no confiable para el conjunto de los patrones de entrada disponibles. Hasta el momento no hay un criterio establecido para determinar la configuracin de la red y esto depende ms bien de la experiencia del diseador.

    8. ADALINE

    Al mismo tiempo que Frank Rosenblatt trabajaba en el modelo del Perceptrn, Bernard

    Widrow y su estudiante Marcian Hoff introdujeron el modelo de la red Adaline y su regla de aprendizaje llamada algoritmo LMS (Least Mean Square).

    La red Adaline es similar al Perceptrn, excepto en su funcin de transferencia, la cual es una funcin de tipo lineal en lugar de un limitador fuerte como en el caso del Perceptrn. La red Adaline presenta la misma limitacin del Perceptrn en cuanto al tipo de problemas que pueden resolver, ambas redes pueden solo resolver problemas linealmente separables, sin embargo el algoritmo LMS es ms potente que la regla de aprendizaje del Perceptrn ya que minimiza el error medio cuadrtico, la regla sirvi de inspiracin para el desarrollo de otros algoritmos, ste es el gran aporte de esta red.

    El trmino Adaline es una sigla, sin embargo su significado cambi ligeramente a finales de los aos sesenta cuando decay el estudio de las redes neuronales, inicialmente se llamaba ADAptive LInear NEuron (Neurona Lineal Adaptiva), para pasar despus a ser Adaptive LInear Element (Elemento Lineal Adaptivo), este cambio se debi a que la Adaline es un dispositivo que consta de un nico elemento de procesamiento, como tal no es tcnicamente una red neuronal.

    El Adaline es ADaptivo en el sentido de que existe un procedimiento bien definido para modificar los pesos con objeto de hacer posible que el dispositivo proporcione el valor de salida correcto para la entrada dada; el significado de correcto para efectos del valor de salida depende de la funcin de tratamiento de seales que est siendo llevada a cabo por el dispositivo. El Adaline es LIneal porque la salida es una funcin lineal sencilla de los valores de la entrada. Es una NEurona tan solo en el sentido (muy limitado) del PE. Tambin se podra decir que el Adaline es un Elemento Lineal, evitando por completo la definicin como NEurona.

    8.1. Estructura de la red

    La estructura general de la red tipo Adaline puede visualizarse en la siguiente figura:

    La salida de la red est dada por:

  • 23

    Para una red Adaline de una sola neurona con dos entradas el diagrama corresponde a la figura siguiente:

    En similitud con el Perceptrn, el lmite de la caracterstica de decisin para la red Adaline se presenta cuando n = 0, por lo tanto:

    especfica la lnea que separa en dos regiones el espacio de entrada, como se muestra en la siguiente figura:

    La salida de la neurona es mayor que cero en el rea gris, en el rea blanca la salida es menor que cero. Como se mencion anteriormente, la red Adaline puede clasificar correctamente patrones linealmente separables en dos categoras.

    En este caso, la salida es la funcin unidad al igual que la funcin de activacin; el uso de la funcin identidad como funcin de salida y como funcin de activacin significa que la salida es igual a la activacin, que es la misma entrada neta al elemento.

    El elemento de procesamiento que realiza la suma de los productos de los vectores de entrada y de pesos se denomina combinador adaptivo lineal (ALC). Una variante consiste en agregar un conmutador bipolar para obtener un nico valor de salida, el cual debido a su funcin de transferencia ser +1 si la salida del ALC es positiva o 1 si la salida del ALC es negativa.

  • 24

    8.2. Regla de aprendizaje

    El ALC realiza el clculo de la suma ponderada de las N entradas:

    =

    +=N

    jjj pwba

    1

    Para realizar una simplificacin en la funcin de salida, vamos a considerar el valor umbral b como una conexin ficticia de peso w0. Si tenemos en cuenta que para esta entrada se toma el valor de p0=1, la ecuacin anterior se puede escribir de la forma:

    ==

    =+=N

    jjj

    N

    jjj pwpwpwa

    0100

    La regla de aprendizaje de mnimo error cuadrado medio LMS (Least Mean Squared) es

    conocida tambin como regla delta porque trata de minimizar un delta o diferencia entre valor observado y deseado en la salida de la red. Entonces, la regla delta, es un mtodo para hallar el vector de pesos W deseado, el cual deber ser nico y asociar con xito cada vector del conjunto de vectores o patrones de entrada {X1, X2, X3, ..., XQ} con su correspondiente valor de salida correcto o deseado {t1, t2, t3, ..., tQ}. Concretamente, la regla de aprendizaje LMS minimiza el error cuadrado medio, definido como:

    =

    =>

  • 25

    kkkkkk

    kk

    k

    k atata

    at

    a

    ===

    =

    >

  • 26

    6) Si el error cuadrtico medio =

    =>