Sei sulla pagina 1di 59

1.

2 DEFINICIONES DE REDES NEURONALES Una red neuronal es un sistema compuesto de muchos elementos procesadores simples operando en paralelo, cuya funcin es determinada por la estructura de la red, fuerza en las conexiones y el procesamiento realizado por los elementos computacionales en los nodos.

Otras definiciones nos dicen que: Las redes neuronales son una forma de un sistema computarizado multi-proceso con:
y y y y

Elementos de procesamiento sencillos. Alto grado de interconexin. Mensajes simples escalares. Interaccin adaptable entre elementos.

El concepto de Red Neuronal Artificial est inspirado en las Redes Neuronales Biolgicas. Una Red Neuronal Biolgica, es un dispositivo no

lineal altamente paralelo, caracterizado por su robustez y su tolerancia a fallos. Sus principales caractersticas son las siguientes:
y y y

Aprendizaje mediante adaptacin de sus pesos sinpticos a los cambios en el entorno. Manejo de imprecisin, ruido e informacin probabilstica. Generalizacin a partir de ejemplos.

Las Redes Neuronales Artificiales intentan imitar algunas, o todas, de estas caractersticas. Este paradigma de programacin difiere de las secuencias de instrucciones en que la informacin se encuentra almacenada en las conexiones sinpticas. Cada neurona es un procesador elemental con operaciones muy primitivas como la suma ponderada de sus pesos de entrada y la amplificacin o umbralizacin de esta suma. Una Red Neuronal viene caracterizada por su topologa, por la intensidad de la conexin entre sus pares de neuronas (pesos), por las propiedades de los nodos y por las reglas de actualizacin de pesos. Las reglas de actualizacin, tambin llamadas de aprendizaje, controlan los pesos y/o estados de los elementos de procesados (neuronas). Los principales aspectos de este modelo de computacin distribuida son los siguientes:
y y y y y

y y y

Un conjunto de unidades de procesamiento. Un estado de activacin ak para cada unidad, que es equivalente a la salida de la unidad. Conexiones entre unidades, generalmente definida por un peso Wjk, que determina el efecto de la unidad j sobre la unidad k. Una regla de propagacin que determina la entrada de la unidad Ska partir de sus entradas externas. Una funcin de activacin Fk que determina el estado de activacin en funcin de la entrada de la unidad (en algunos casos la funcin de activacin tiene en cuenta la activacin actual de la unidad). Una entrada externa (u offset llamado tambin umbral) bk para cada unidad. Un mtodo para modificar los valores de los pesos (regla de aprendizaje). Un entorno de trabajo en el que sistema opere, compuesto por seales de entrada y, si es necesario, seales de error.

Normalmente, la dinmica de actuacin es definir una funcin objetivo que representa el estado completo de la red y localizar el conjunto de

mnimos de esa funcin que se corresponden con los diferentes estados estables de la red. 1.6 ELEMENTOS DE UNA RED NEURONAL. Los elementos individuales de clculo que forman los modelos de sistemas neuronales artificiales, reciben el nombre de Elementos de Procesado o Neuronas Artificiales. Cada unidad realiza un trabajo muy simple: recibe impulsos de otras unidades o de estmulos externos y calcula una seal de salida que propaga a otras unidades y, adems, realiza un ajuste de sus pesos. Este tipo de modelos, es inherentemente paralelo en el sentido de que varias unidades pueden realizar sus clculos al mismo tiempo. El elemento de procesado ms simple suele tener el esquema mostrado en la Fig. 1.7.

Figura 1.7 Esquema de una Neurona Artificial.

(1.1) Donde: 1. 2. 3. 4. 5. a: es la salida de la neurona. Fk: es la funcin de transferencia de la neurona. Wij: es la matriz de pesos. Pi:es el patrn de entrenamiento. bk:es el umbral de activacin de la neurona.

Este esquema caractersticas:


y y y y

de

elemento

de

procesado

tiene

las

siguientes

Cada elemento de procesado puede tener varias entradas asociadas a propiedades diferentes. La entrada de tendencia es opcional (valor constante). Las entradas pueden ser: Excitadoras, inhibidoras, de ganancia, de disparo fortuito o de amortiguamiento. Las entradas estn ponderadas por un factor multiplicativo de peso o intensidad de conexin que resaltan de forma diferente la importancia de cada entrada. Cada elemento de procesado tiene un valor de activacin calculado en funcin del valor de entrada neto (calculado a partir de las entradas y los pesos asociados a ellas). En algunos casos, el valor de activacin, depende adems de la entrada neta del valor anterior de activacin. Una vez calculado el valor de activacin, se determina un valor de salida aplicando una funcin de salida sobre la activacin del elemento de procesado.

CONEXIN ENTRE UNIDADES. En la mayor parte de los casos se asume que cada unidad recibe contribuciones aditivas de las unidades que estn conectadas a ellas. La entrada total de la unidad k es la suma ponderada de las entradas que recibe ms el trmino de offset.

(1.2) Donde: 1. 2. 3. 4. nk: es la salida lineal de la neurona. Wij: es la matriz de pesos. Pi:es el patrn de entrenamiento. bk:es el umbral de activacin de la neurona.

Cuando el peso de la contribucin es positivo se considera que la entrada es excitatoria y cuando el peso es negativo que es inhibitoria. Este tipo de expresiones que calculan la entrada total se denominan reglas de propagacin y, en general, pueden tener diferentes expresiones.

FUNCIONES DE ACTIVACIN Y SALIDA Adems de la regla de propagacin es necesario poseer expresiones para las funciones de activacin (calculan la activacin en funcin de la entrada total) y funciones de salida (calculan la salida en funcin de la activacin). La funcin de activacin calcula la activacin de la unidad en funcin de la entrada total y la activacin previa, aunque en la mayor parte de los casos es simplemente una funcin no decreciente de la entrada total. Los tipos de funcin ms empleados son: la funcin escaln, funcin lineal y la funcin sigmoidal. La funcin de salida empleada usualmente es la funcin identidad y as la salida de la unidad de procesado es idntica a su nivel de activacin. Las redes neuronales estn formadas por un conjunto de neuronas artificiales interconectadas. Las neuronas de la red se encuentran distribuidas en diferentes capas de neuronas, de manera que las neuronas de una capa estn conectadas con las neuronas de la capa siguiente, a las que pueden enviar informacin. La arquitectura ms usada en la actualidad de una red neuronal, se presente en la Fig. 1.8, la cual consiste en: 1. Una primera capa de entradas, que recibe informacin del exterior. 2. Una serie de capas ocultas (intermedias), encargadas de realizar el trabajo de la red. 3. Una capa de salidas, que proporciona el resultado del trabajo de la red al exterior.

Figura 1.8 Esquema de una red neuronal antes del entrenamiento. Los crculos representan neuronas, mientras las flechas representan conexiones entre las neuronas. El nmero de capas intermedias y el nmero de neuronas de cada capa depender del tipo de aplicacin al que se vaya a destinar la red neuronal. FUNCIONES DE ACTIVACIN Y SALIDA Un modelo ms acadmico que facilita el estudio de una neurona, puede visualizarse en la Fig. 1.9.

Figura 1.9 Neurona de una sola entrada.

Donde: 1. 2. 3. 4. nk: es la salida lineal de la neurona. Wij: es la matriz de pesos. Pi:es el patrn de entrenamiento. bk:es el umbral de activacin de la neurona.

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.
Funcion Escaln (Hardlim)

La Fig. 1.10, 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.

(1.3)

Figura 1.10 Funcin de Transferencia Escaln (Hardlim). El cono para la funcin escaln (Hardlim) reemplazar a la letra f en la expresin general, cuando se utilice la funcin Hardlim. Una modificacin de esta funcin puede verse en la Fig. 1.11, la que representa la funcin de transferencia Escaln Simtrica (Hardlims) que restringe el espacio de salida a valores entre 1 y 1.

(1.4)

Figura 1.11 Funcin de Transferencia de Escaln Simtrica.


Funcin de Transferencia lineal (purelin)

La salida de una funcin de transferencia lineal es igual a su entrada, la cual se representa en la figura 1.12.

(1.5)

Figura 1.12 Funcin de Transferencia Lineal (purelin). En la grfica del lado derecho de la figura 1.12, 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 ms y menos infinito, y restringe la salida a valores entre cero y uno, de acuerdo a la expresin:

(1.6) Esta funcin es comnmente usada en redes multicapa, como la Backpropagation, en parte porque la funcin logsig es diferenciable, como se muestra en la Fig. 1.13.

Figura 1.13 Funcin de Transferencia Sigmoidal. La Fig. 1.14, hace una relacin de las principales funciones de transferencia empleadas en el entrenamiento de redes neuronales. Nombre Relacin Entrada /Salida icono Funcin en Matlab hardlim hardlims poslin purelin

Limitador Fuerte Limitador Fuerte Simtrico Lineal Positiva Lineal

Lineal Saturado

satlin

Lineal Saturado Simtrico Sigmoidal Logartmico Tangente Sigmoidal Hiperblica Competitiva a=1 Neurona con n max a=0 El resto de las neuronas

satlins logsig tansig compet

Figura 1.14 Funciones de Transferencia. 1.7 ESTRUCTURAS GENERALES DE LAS REDES NEURONALES PERCEPTRN En 1943, Warren McCulloc y Walter Pitts originaron el primer modelo de operacin neuronal, el cual fu mejorado en sus aspectos biolgicos por Donald Hebb en 1948. En 1962 Bernard Widrow propuso la regla de aprendizaje Widrow-Hoff, y Frank Rosenblatt desarroll una prueba de convergencia, y defini el rango de problemas para los que su algoritmo aseguraba una solucin. El propuso los 'Perceptrons' como herramienta computacional, mostrado en la Fig. 1.15.

Figura 1.15 Modelo del Perceptrn Simple. BACKPROPAGATION En la red multicapa, se interconectan varias unidades de procesamiento en capas, las neuronas de cada capa no se interconectan entre s. Sin embargo, cada neurona de una capa proporciona una entrada a cada una de las neuronas de la siguiente capa, esto es, cada neurona transmitir su seal de salida a cada neurona de la capa siguiente. La Fig. 1.16 muestra un ejemplo esquemtico de la arquitectura de este tipo de redes neuronales.

Figura 1.16 Red Backpropagation. HOPFIELD La Red de Hopfield que se muestra en la Fig. 1.17, es recurrente y completamente conectada. Funciona como una memoria asociativa no lineal que puedealmacenar internamente patrones presentados de forma incompleta o con ruido. De esta forma puede ser usada como una herramienta de optimizacin. El estado de cada neurona puede ser actualizado un nmero indefinido de veces, independientemente del resto de las neuronas de la red pero en paralelo.

Figura 1.17 Red de Hopfield de 3 Unidades. KOHONEN Existen evidencias que demuestran que en el cerebro existen neuronas que se organizan en muchas zonas, de forma que las informaciones captadas del entorno a travs de los rganos sensoriales se representan internamente en forma de capas bidimensionales. Por ejemplo, en el sistema visual se han detectado mapas del espacio visual en zonas de crtex (capa externa del cerebro). Tambin en el sistema auditivo se detecta organizacin segn la frecuencia a la que cada neurona alcanza la mayor respuesta (organizacin tono tpica). Aunque en gran medida esta organizacin neuronal est predeterminada genticamente, es probable que de ella se origine mediante el aprendizaje. Esto sugiere, por tanto, que el cerebro podra poseer la capacidad inherente de formar mapas topolgicos de las informaciones

recibidas del exterior. De hecho, esta teora podra explicar su poder de operar con elementos semnticos: algunas reas del cerebro simplemente podran crear y ordenar neuronas especializadas o grupos con caractersticas de alto nivel y sus combinaciones. Se tratara, en definitiva, de construir mapas espaciales para atributos y caractersticas. 1.9 MECANISMOS DE APRENDIZAJE. Construir un sistema que aprenda ha sido tradicionalmente uno de los objetivos ms escurridizos de la inteligencia artificial. El aprendizaje, es un proceso de adaptacin al entorno; durante el se crean y manipulan representaciones que sean capaces de explicar dicho entorno. En las redes neuronales la esencia del aprendizaje se encuentra en la modificacin colectiva de los pesos de los elementos de procesado. Una definicin de aprendizaje en redes neuronales podra ser la siguiente: Proceso por el cual los parmetros libres de una red neuronal son ajustados a travs de un proceso continuo de estimulacin por parte del entorno en donde se sita el sistema. El tipo de aprendizaje viene determinado por la forma en la que tienen lugar dichos cambios. Esta definicin, implica tres hechos fundamentales:
y

La red neuronal se encuentra estimulada por el entorno, cambia como consecuencia de esos estmulos y responde de manera diferente al entorno a causa de los cambios que se han producido en sus estructura interna.

Existen tres paradigmas de aprendizaje: Supervisado, No supervisado (o auto supervisado) y Reforzamiento (se puede considerar como un caso especial del aprendizaje supervisado). Existen una gran cantidad variedad de algoritmos dentro de cada una de estas categoras. Supervisado En el aprendizaje supervisado (aprender con un maestro), la adaptacin sucede cuando el sistema compara directamente la salida que proporciona la red con la salida que se deseara obtener de dicha red. Existen tres tipos bsicos: por correccin de error, por refuerzo y estocstico. En el aprendizaje por correccin de error el entrenamiento consiste en presentar al sistema un conjunto de pares de datos, representando la

entrada y la salida deseada para dicha entrada (este conjunto recibe el nombre de conjunto de entrenamiento). El objetivo, es minimizar el error entre la salida deseada y la salida que se obtiene. El aprendizaje por refuerzo, es ms lento que el anterior. No se dispone de un ejemplo completo del comportamiento deseado pues no se conoce la salida deseada exacta para cada entrada sino que se conoce el comportamiento de manera general para diferentes entradas. La relacin entrada-salida, se realiza a travs de un proceso de xito o fracaso, produciendo este una seal de refuerzo que mide el buen funcionamiento del sistema. La funcin del supervisor es ms la de un crtico que la de un maestro. El aprendizaje estocstico consiste bsicamente en realizar cambios aleatorios de los valores de los pesos y evaluar su efecto a partir del objetivo deseado. Regla del Perceptrn Supongamos que tenemos un conjunto de muestras de aprendizaje consistentes en vectores de entrada x y salidas deseadas d(x) (en tareas de clasificacin d(x) es, usualmente, +1 o -1). La regla de aprendizaje del perceptrn es muy simple y se desarrolla a travs de los siguientes pasos. 1. 1. Iniciar la red con un conjunto aleatorio de pesos para las conexiones. 2. 2. Seleccionar un vector de entrada x del conjunto de muestras de entrenamiento. 3. 3. Si el perceptrn proporciona una salida incorrecta, modificar todas las conexiones mediante la expresin:

(1.7) 1. 4. Volver al paso 2. Cuando la red responde de forma correcta los pesos de las conexiones no se modifican. Regla Delta

Para una red con una nica capa con un nico elemento de procesado en la salida con una funcin de activacin lineal, la salida viene dada por:

(1.8) Una red simple con una nica capa, es capaz de representar relaciones lineales entre el valor del elemento de procesado de la salida y el valor de los elementos de procesado de la entrada. Umbralizando el valor de la salida se puede construir un clasificador. Pero, tambin se pueden realizar otras tareas como aproximacin de funciones. En espacios de entrada multidimensionales la red representa un hiperplano de decisin y es trivial asumir que se pueden definir varias unidades de salida. Supongamos que vamos a entrenar una red para localizar el hiperplano de decisin ms idneo para un conjunto de muestras de entrada consistente en valores de entrada y valores de salida deseada . Para cada muestra dada del conjunto de entrada, la salida real de la red difiere de la salida deseada en , donde es la salida real para el patrn de entrada . La regla delta una funcin de error (o funcin de costo) basada en dicha diferencia para realizar el ajuste de los pesos. La funcin de error, dada por el mtodo del menor error cuadrtico medio, es la suma de los cuadrados de los errores individuales de cada patrn. Es decir, el error total E viene dado por:

(1.9) En donde el ndice p recorre el conjunto de patrones de entrada y representa el error del patrn p-simo. Los valores de los pesos de conexin se buscan de forma tal que se minimice la funcin y este proceso se realiza por un mtodo conocido gradiente descendiente. La idea del mtodo, es realizar un cambio en los pesos inversamente proporcional a la derivada del error respecto al peso para cada patrn:

(1.10)

En donde es una constante de proporcionalidad. La derivada se puede descomponer mediante la siguiente expresin:

(1.11) Dado que la funcin de activacin es lineal, como se comentaba al comienzo,

(1.12) Y:

(1.13) con lo cual:

(1.14) En donde , es la diferencia entre la salida deseada y la salida real para el patrn de entrada p. La regla Delta, modifica los pesos como funcin de las salidas deseada y real para unidades de entrada y salida binarias o continuas. Estas caractersticas abrieron un nuevo campo de posibilidades para las redes neuronales. Regla Delta generalizada La regla Delta generalizada, ampla la regla delta al caso de usar unidades de procesamiento con funciones de activacin no lineal. La activacin es una funcin diferenciable de la entrada total dada por la siguiente ecuacin:

(1.15)

En donde:

(1.16) Para realizar la generalizacin de la regla delta debemos considerar:

(1.17) La medida de error Ep viene definida como el error cuadrtico total para el patrn p en las unidades de salida N0.

(1.18) Considerando E, como la suma de los errores cuadrticos podemos ver que la variacin del error respecto a los pesos viene dada por:

(1.19) A partir de la expresin de la salida total y definiendo:

(1.20) Se puede obtener una regla de actualizacin de pesos equivalente a la regla Delta, resultando un descenso en el valor del gradiente sobre la superficie de error si se realizan los cambios de los pesos de acuerdo a la expresin:

(1.21)

La conclusin ms importante, es que el clculo recursivo de los factores Delta puede implementarse propagando las seales de error desde la capa de salida a capas ocultas de la red. El clculo de puede realizarse en trminos de un producto de dos factores; uno que refleje el cambio del error como funcin de la salida de las unidades y otro que refleje el cambio de la salida como funcin de los cambios en la entrada; es decir:

(1.22) Ahora bien, el segundo factor no es otro que la derivada parcial de la funcin de activacin F. Para calcular el primer factor vamos a considerar dos casos: que la unidad k es una unidad de salida de la red y que la unidad k es una unidad de una capa oculta. En el primer caso, a partir de la definicin del error para el patrn p, podemos obtener que:

(1.23) Que es el mismo resultado que en la regla Delta bsica. Por tanto, para las unidades de la capa de salida:

(1.24) En el segundo caso, no se conoce como contribuye la unidad al error de salida de la red, pero la medida de error se puede escribir como funcin de los pesos de las unidades de la capa oculta a la capa de salida:

(1.25) Con lo cual:

(1.26) Extendiendo este clculo de forma recursiva se pueden calcular los cambios en los pesos de todas las unidades de la red. Este procedimiento, se denomina regla Delta generalizada para redes feedforward con unidades no lineales. No supervisado En el aprendizaje no supervisado (o auto supervisado), la red se sintoniza a las regularidades estadsticas de datos de entrada de forma tal que se formen categoras que optimizan, respecto a los parmetros libres de la red, una medida de calidad de la tarea que se quiere realizar con la red. El funcionamiento de estas redes se basa en la bsqueda de caractersticas, regularidades, correlaciones y categoras del conjunto de datos de entrada. Existen diferentes interpretaciones que se le pueden dar a las salidas generadas por una red que utilice este tipo de aprendizaje: similaridad (semejanzas entre la informacin actual y la informacin pasada), clusterizacin (establecimiento de clases), codificacin (versin codificada de las entradas) o mapeo (representacin topogrfica de los datos de entrada). Aprendizaje competitivo El aprendizaje competitivo, es un proceso que divide el conjunto de patrones de entrada en clusters inherentes a los datos de entrada. El procedimiento de entrenamiento es muy simple: cuando se presenta un patrn de entrada se selecciona una nica unidad de salida (la unidad ganadora) y se modifican los pesos de esa unidad. Seleccin de la unidad ganadora mediante producto. Asumamos que los patrones de entrada y los pesos estn normalizados a la unidad. Cada unidad de salida o calcula su valor de activacin a partir del producto del vector del patrn de entrada por el vector de pesos:

(1.27)

A continuacin, se selecciona el elemento de procesado de salida que presenta mayor valor de activacin. Su activacin se pone a valor 1 y la del resto de elementos de procesado a 0. En este hecho radica el aspecto competitivo de la red. Una vez que se ha seleccionado el elemento de procesado k ganador, se adaptan sus pesos (slo del elemento ganador) de acuerdo a la expresin siguiente:

(1.28) Cuando no se pueden utilizar patrones normalizados la eleccin del elemento de procesado ganador se realiza mediante el clculo de la distancia Euclidiana entre el vector del patrn y el vector de pesos. Aquel vector de pesos que presente una distancia mnima determinar el elemento ganador. La ley de actualizacin de pesos del elemento ganador es la misma que en el caso anterior, sin el denominador pues los vectores no estn normalizados. Reforzamiento En el aprendizaje con reforzamiento, la red aprende de relaciones entrada-salida. Sin embargo, al contrario que en el aprendizaje supervisado, el sistema conoce si la salida es correcta o no, pero no conoce la salida correcta.

2.1 El Perceptrn La primera red neuronal conocida, fue desarrollada en 1943 por Warren McCulloch y Walter Pitts; la cual consista en una suma de las seales de entrada, multiplicadas por unos valores de pesos escogidos aleatoriamente. La entrada es comparada con un patrn preestablecido para determinar la salida de la red. Si en la comparacin, la suma de las entradas multiplicadas por los pesos es mayor o igual que el patrn preestablecido la salida de la red es uno (1), en caso contrario la salida es cero (0). Al inicio del desarrollo de los sistemas de inteligencia artificial, se encontr gran similitud entre su comportamiento y el de los sistemas biolgicos y en principio se crey que este modelo poda computar cualquier funcin aritmtica o lgica.

La red tipo Perceptrn fue inventada por el psiclogo Frank Rosenblatt en el ao 1957. Su intencin era ilustrar algunas propiedades fundamentales de los sistemas inteligentes en general, sin entrar en mayores detalles con respecto a condiciones especficas y desconocidas para organismos biolgicos concretos. Rosenblatt crea que la conectividad existente en las redes biolgicas tiene un elevado porcentaje de aleatoriedad, por lo que se opona al anlisis de McCulloch Pitts en el cual se empleaba lgica simblica para analizar estructuras bastante idealizadas. Rosenblatt opinaba que la herramienta de anlisis ms apropiada era la teora de probabilidades, y esto lo llev a una teora de separabilidad estadstica que utilizaba para caracterizar las propiedades ms visibles de estas redes de interconexin ligeramente aleatorias. Por otro lado, el primer modelo de Perceptrn fue desarrollado en un ambiente biolgico imitando el funcionamiento del ojo humano, el fotoperceptrn como se le llamo era un dispositivo que responda a seales pticas; como se muestra en el figura 2.1, en la cual la luz incide en los puntos sensibles (S) de la estructura de la retina, cada punto S responde en forma todo-nada a la luz entrante, los impulsos generados por los puntos S, en donde se transmiten a las unidades de asociacin (A) de la capa de asociacin; cada unidad A est conectada a un conjunto aleatorio de los puntos S, denominados conjunto fuente de la unidad A, y las conexiones pueden ser tanto excitatorias como inhibitorias. Las conexiones tienen los valores posibles +1, -1 y 0 respectivamente, cuando aparece un conjunto de estmulos en la retina, una unidad A se activa si la suma de sus entradas sobrepasa algn valor umbral; si la unidad esta activada, A produce una salida que se enva a la siguiente capa de unidades.

Figura 2.1: Modelo del Perceptrn de Rosenblatt. De forma similar, las unidades A estn conectadas a unidades de respuesta (R) dentro de la capa de respuesta y la conectividad vuelve a ser aleatorio entre capas, pero se aaden conexiones inhibitorias de realimentacin procedentes de la capa de respuesta y que llegan a la capa de asociacin, tambin hay conexiones inhibitorias entre las unidades R. Todo el esquema de conexiones se describe en forma general en un diagrama de Euler, para un Perceptrn sencillo con dos unidades de respuesta como se representa en la figura 2.2.

Figura 2.2: Esquema de conexiones de un Perceptrn Sencillo. El Perceptrn era inicialmente un dispositivo de aprendizaje, en su configuracin inicial no estaba en capacidad de distinguir patrones de entrada muy complejos, sin embargo mediante un proceso de aprendizaje era capaz de adquirir esta capacidad. En esencia, el entrenamiento implicaba un proceso de refuerzo mediante el cual la salida de las unidades A, se incrementaba o se decrementaba dependiendo de si las unidades A contribuan o no a las respuestas correctas del Perceptrn para una entrada dada. Se aplicaba una entrada a la retina, y el estmulo se propagaba a travs de las capas hasta que se activase una unidad de respuesta. Si se haba activado la unidad de respuesta correcta, se incrementaba la salida de las unidades A que hubieran contribuido. Si se activaba una unidad R incorrecta, se haca disminuir la salida de las unidades A que hubiesen contribuido. Mediante estas investigaciones se pudo demostrar que el Perceptrn era capaz de clasificar patrones correctamente, en lo que Rosenblatt denominaba un entorno diferenciado, en el cual cada clase estaba formada por patrones similares. El Perceptrn tambin era capaz de responder de manera congruente frente a patrones aleatorios, pero su

precisin iba disminuyendo a medida que aumentaba el nmero de patrones que intentaba aprender. En el ao de 1969 Marvin Minsky y Seymour Papert publicaron su libro: "Perceptrons: An introduction to Computational Geometry", el cual para muchos signific el final de las redes neuronales. En el se presentaba un anlisis detallado del Perceptrn, en trminos de sus capacidades y limitaciones, en especial en cuanto a las restricciones que existen para los problemas que una red tipo Perceptrn puede resolver; la mayor desventaja de este tipo de redes es su incapacidad para solucionar problemas que no sean linealmente separables. Minsky y Papert se apartaban de la aproximacin probabilstica de Rosenblatt y volvan a las ideas de clculo de predicados en el anlisis del Perceptrn. Su idea de Perceptrn aparece en la figura 2.3.

Figura 2.3: Perceptrn segn Minsky y Papert. La estructura de un Perceptrn sencillo es similar a la del elemento general de procesamiento que se muestra en la figura 2.3; en la que se observa la adicin de una condicin umbral en la salida. Si la entrada neta, a esta condicin es mayor que el valor umbral, la salida de la red es 1, en caso contrario es 0. La funcin de salida de la red en la figura 2.3 es llamada funcin umbral o funcin de transferencia, es decir:

(2.1) A pesar de esta limitacin, el Perceptrn es an hoy una red de gran importancia, pues con base en su estructura se han desarrollado otros modelos de red neuronal como la red Adaline y las redes multicapa.

Caractersticas El perceptrn simple es un modelo neuronal sin capa oculta, el cual maneja informacin binaria a su entrada y a su salida y su regla de aprendizaje por correccin de error es de tipo supervisado, realizando un entrenamiento offline, tiene una gran aplicacin para reconocimiento de patrones sencillos de tipo linealmente separables, por ejemplo clasificar compuertas lgicas como AND y OR o aplicaciones ms especficas como el reconocimiento de caracteres impresos alfanumricos.

2.1.1. Arquitectura La arquitectura de una red perceptrn consiste de una capa de S neuronas perceptrn, conectadas a r entradas a travs de un conjunto de pesos Wij como se muestra en la figura 2.4. Como ya se mencion anteriormente, los ndices de la red i y j indican que Wij es la fuerza de conexin de la j-sima entrada a la i-sima neurona.

Figura 2.4: Arquitectura de una Red Perceptrn La red perceptrn puede tener nicamente una sola capa, debido a que la regla de aprendizaje del perceptrn es capaz de entrenar solamente una capa. Esta restriccin coloca limitaciones en cuanto a lo que un perceptrn puede realizar computacionalmente.

Figura 2.5: Perceptrn Simple 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 (figura 2.4), la salida depende de la entrada neta (n = en donde presenta la suma de las entradas pi ponderadas). La red tipo Perceptrn emplea principalmente dos funciones de transferencia, funcin escaln (hardlim) con salidas 1, 0 o funcin escaln simtrica (hardlims) con salidas 1, -1; su uso depende del valor de salida que se espera para la red; es decir, s 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 considere la matriz de pesos en forma general.

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

(2.3) De esta forma y empleando la funcin de transferencia en escaln hardlim la salida de la neurona i de la capa de salida:

(2.4) 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 (concepto que se estudiar en la seccin 2.1.4), el caso ms conocido es la imposibilidad del Perceptrn de representar la funcin OR EXCLUSIVA.

2.1.2. Algoritmo de Aprendizaje El algoritmo de aprendizaje es supervisado, en el cual, la regla es provista como un conjunto del comportamiento propio de la red:

Donde: pq: Es la entrada de la red. tq: Es la salida destino correspondiente. La regla de aprendizaje es un procedimiento para modificar los pesos y los niveles de umbral de activacin en una red neuronal.

La principal aportacin de Rosenblatt fue el desarrollo de una regla de aprendizaje simple y automtica aplicada al reconocimiento de patrones. La red aprenda de sus errores y se inicializaba con valores aleatorios. La regla de aprendizaje siempre converge a los pesos correctos de la red si es que existen los pesos que solucionen dicho problema. El entrenamiento comienza asignndole valores iniciales pequeos en forma aleatoria a los parmetros de la red y , por medio de las siguientes ecuaciones: Para el vector de pesos W: (2.5) Para el umbral b: (2.6) Para el error e: (2.7) En donde: W: Es la matriz de pesos sinpticos. b: Es el umbral de activacin. p: Es el patrn de anlisis. e: Es el error. t: Es el valor objetivo relacionado con el patrn : Es la velocidad de aprendizaje.

2.1.3. Aplicaciones El rango de tareas que el Perceptrn puede manejar es mucho mayor que simples decisiones y reconocimiento de patrones. Por ejemplo, se puede entrenar una red para formar el tiempo pasado de los verbos en ingls, leer texto en ingls y manuscrito. El Perceptrn multicapa (MLP) puede ser usado para la prediccin de una serie de datos en el tiempo;

tal a sido su xito en la medicin de la demanda de gas y electricidad, adems, de la prediccin de cambios en el valor de los instrumentos financieros. NETtalk, es un Perceptrn que es capaz de transformar texto en ingls en sonido individual (representaciones fonticas) y la pronunciacin con la utilizacin de un sintetizador de voz; cuenta con aproximadamente 300 nodos de neuronas (siendo 80 en la capa oculta) y 20,000 conexiones individuales.

2.1.4. Ejercicios 1. Use un perceptrn simple para clasificar el siguiente conjunto de patrones: a. Trace la frontera de decisin. b. Encuentre la matriz de pesos W y el umbral de activacin b . c. Compruebe el funcionamiento del perceptrn con el conjunto de patrones de entrada .

Solucin a) Trace la frontera de decisin Se traza sobre la grfica una lnea que separe los patrones que arrojen salida 1 (negro) de los patrones cuya salida deseada sea 0 (Blanco). El trazo de esta lnea o frontera de decisin depende del diseador,

siempre y cuando se cumpla la clasificacin (separacin de patrones con salida 1 de los de salida 0). El trazo de la frontera de decisin implica la determinacin inmediata del vector de pesos que da solucin al problema (la frontera de decisin es siempre perpendicular al vector de pesos W). Esto se muestra en la figura 2.6.

Figura 2.6 Trazo de la Frontera de Decisin y Vector de Pesos b) Encuentre la matriz de pesos W y el umbral de activacin b De la grfica anterior, se obtiene el vector de pesos W: W=[-2 1] Dado que la frontera de decisin atraviesa por el origen (0,0), el umbral de activacin es cero. b=0 Compruebe el funcionamiento del perceptrn con el conjunto de patrones de entrada. Para el primer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el segundo par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el tercer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el cuarto par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el quinto par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el sexto par de entrada/salida

hola desde qui revisar


Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el sptimo par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el octavo par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

CONCLUSIN. Despus de haber obtenido la matriz de pesos

y el

umbral que permiten clasificar los patrones mediante el mtodo grfico se concluye que el problema es linealmente separable y puede ser solucionado por un perceptrn simple, el cual introduce una sola frontera de decisin separado el espacio de los patrones en dos regiones. Regla de aprendizaje 1. Resuelva el siguiente problema de clasificacin del perceptrn y su regla de aprendizaje en donde los pares de entrada/salida son los siguientes: 2. Usando la regla de aprendizaje del perceptrn, calcule la matriz de pesos y el umbral de activacin. 3. Grafique su solucin, indicando la frontera la decisin y su vector de pesos.

Solucin

1. Usando la regla de aprendizaje del perceptrn, calcule la matriz de pesos W y el umbral de activacin b. Considere los parmetros iniciales:

Para el primer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4. Para el umbral

Para el segundo par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red (Con los Nuevos Pesos):

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4. Para el umbral

Para el tercer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4.Para el umbral

COMENTYARIO. Es necesario verificar, cuando se obtiene un vector de pesos nuevo que, el error e = 0 para todos los pares de entrada/salida, para dar por terminado el proceso de entrenamiento:
Para el primer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el segundo par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Para el tercer par de entrada/salida

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Por lo tanto, los valores finales de W = [3 0.2] b=0

y b son:

1. Grafique su solucin, indicando la frontera de decisin, y su vector de pesos.

CONCLUSIN. La figura 2.7 muestra la solucin del ejercicio. Donde se puede ver el vector de pesos W, la frontera de decisin (perpendicular al vector de pesos ) pasando por el origen, esto ltimo se debe a que el valor del umbral b es cero. Disee una red neuronal que permita clasificar dos tipos de fruta considerando la forma, la textura y el peso. Observe la figura 2.8.

Figura 2.8: Clasificador De Frutas Las entradas para el perceptrn tienen la forma siguiente:

P= Los valores para cada parmetro son: Forma:


y y

1, si la fruta es redonda. -1, si la fruta es elptica.

Textura:
y y

1, si la superficie de la fruta es suave. -1, si la superficie es rugosa.

Peso:
y y

1, 1 libra. -1, < 1 libra.

Segn lo anterior, los vectores de entrada para las frutas a clasificar son: Naranja Manzana

Considerando que los valores iniciales del vector de pesos y el umbral son:

Aplique la regla de aprendizaje del perceptrn para calcular el vector de pesos W y el umbral b.

Solucin

Primera poca Para el primer par de entrada/salida (Primera iteracin)

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4. Para el umbral

Para el segundo par de entrada/salida (segunda iteracin)

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4. Para el umbral

Segunda poca Para el primer par de entrada/salida (Primera iteracin)

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Paso 3. Usando la regla de aprendizaje del perceptrn, se modifica el vector de pesos:

Paso 4. Para el umbral

Para el segundo par de entrada/salida (segunda iteracin)

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

CONCLUSIN. De acuerdo a la regla de aprendizaje del perceptrn se ha alcanzado un mnimo por lo que se obtienen valores estables para la matriz de pesos y el umbral . Slo .

resta comprobar si se cumple para el primer par de entrada

Paso 1. Se calcula la salida utilizando la funcin de activacin propia de la red:

Paso 2. Se calcula el error:

Por lo tanto, los valores finales de W y b son:

2.1.5 Simulaciones en Matlab. 1. Resuelva el siguiente problema de clasificacin del perceptrn y su regla de aprendizaje. Los pares de entrada/salida son:

En el editor de Matlab teclee el siguiente cdigo que resuelve el problema anterior:


clear;echo on;clc; %Se definen los vectores de entrada P = [1 2 -1 2 0; -1];

%Se define el vector de salida

T = [1 0 0] % Se inicializa la red con los valores anteriores [w,b]=initp(P,T); %Se entrena la red usando la regla de aprendizaje [w,b,epoch,errors]=trainp(w,b,P,T,-1); %Evala un par de entrada para clasificarlo a=simup([-1;0],w,b) echo off

En la ventana de comandos de Matlab aparece paso a paso la ejecucin del programa, como sigue:

La salida del programa (Adems del Proceso Descrito en la Ventana de Comandos de Matlab) es una grfica donde aparecen los patrones de entrada en un plano de dos dimensiones, con la clasificacin correspondiente (Frontera de Decisin). Esto se muestra en la Fig. 2.9.

Figura 2.9 La frontera de decisin y el vector de pesos y umbral que dan solucin al problema depender de los valores iniciales que Matlab asigna a y . 2. Perceptrn de cuatro clases Clasifique el siguiente grupo de vectores de entrada en cuatro clases.

Para solucionar un problema de 4 clases de entrada, se necesita un perceptrn con al menos dos neuronas, lo que traer como consecuencia dos vectores de pesos y, por lo tanto, dos fronteras de decisin. En el editor de Matlab teclee el siguiente cdigo que resuelve el problema anterior:
clear;echo on;clc; %Se definen los vectores de entrada P=[1 1 2 2 -1 -2 -1 -2; 1 2 -1 0 2 1 -1 -2];

%Se define los vectores de salida T = [0 0 0 0 1 1 1 1; 0 0 1 1 0 0 1 1];

% Se inicializa la red con los valores anteriores [w,b]=initp(P,T)

%Se entrena la red usando la regla de aprendizaje [w,b,epoch,errors]=trainp(w,b,P,T,-1);

%Evala un par de entrada para clasificarlo a=simup([1;1],w,b)

echo off

En la ventana de comandos de Matlab aparece paso a paso la ejecucin del programa, como sigue:

La salida del programa (adems del proceso descrito en la ventana de comandos de Matlab) es una grfica donde aparecen los patrones de entrada de las cuatro clases, con una marca especial para diferenciar

cada una de ellas en un plano de dos dimensiones, con la clasificacin correspondiente. Ahora se ve una frontera de decisin en rojo, mientras que la otra es de color azul. Esto se muestra en la Fig. 2.10.

Figura 2.10 Las fronteras de decisin al que dan solucin al problema depender de los valores iniciales que Matlab asigna a W y b.

MATLAB: Neural Network Toolbox.

5.1.1 Introduccin. Los tcnicos profesionales por todo el mundo confan en MATLAB acelera su investigacin, condensa el tiempo invertido en el anlisis y desarrollo, reduce costos del proyecto, y produce soluciones eficaces. El ambiente de MATLAB fomenta la creatividad y le permite probar y comparar rpidamente alternativas mltiples. Consecuentemente, usted produce soluciones mejores Los usuarios han encontrado que la combinacin de la interfaz de MATLAB, el lenguaje, y las funciones incorporadas de las matemticas y de los grficos hace a MATLAB la plataforma preferida para programar, comparado a C, al FORTRAN, y a otros lenguajes.

Diagrama 7 Matlab
5.1.2 Caractersticas Generales.

MATLAB maneja una gama de tareas computacionales que se usan en la ingeniera y la ciencia, de la adquisicin de datos y del anlisis, al desarrollo. El ambiente de MATLAB integra procesador matemtico, la visualizacin, y un lenguaje tcnico de gran alcance. Las interfaces incorporadas le permiten tener acceso rpidamente e importar datos a los instrumentos, de los archivos, y de las bases de datos y de los programas externos. Adems, MATLAB le deja integrar las rutinas externas escritas en C, C++, el FORTRAN, y Java con sus usos de MATLAB. Caractersticas Dominantes El procesador numrico para los resultados rpidos y exactos Grficos para visualizar y para analizar sus datos Ambiente interactivo del lenguaje y de programacin Herramientas para construir GUIs de encargo Interfaces a las lenguajes externos, tales como C, C++, FORTRAN, y Java Ayuda para los datos de importacin de archivos y de dispositivos externos y para usar el archivo bajo I/O (ms el acceso a las bases de datos y al hardware adicional va productos adicionados) Conversin de los usos de MATLAB a C y a C++ con la habitacin del recopilador

Este amplio sistema de capacidades hace de MATLAB una base de origen ideal para los lquidos de revelado de los problemas tcnicos. El ambiente de MATLAB se disea para el cmputo interactivo o automatizado. Usando las funciones incorporadas de las matemticas y de los grficos y las herramientas fciles de utilizar, usted puede analizar y visualizar sus datos en marcha. Las herramientas estructuradas del lenguaje y la programacin le dejan los resultados de sus exploraciones interactivos y desarrollan sus propios algoritmos y usos. Que es MATLAB? El de MATLAB es una lengua de alto rendimiento para un proceso computacional tcnico. Integra el cmputo, la visualizacin, y la programacin en un ambiente fcil de utilizar donde los problemas y las soluciones se expresan en la notacin matemtica familiar. Las aplicaciones tpicas incluyen:
y y y y y y

Matemticas y cmputo Desarrollo de algoritmo El modelar, simulacin, y el prototipo Anlisis de datos, exploracin, y visualizacin Grficos cientficos y de ingeniera Desarrollo del uso, incluyendo el edificio grfico del interfaz utilizado

MATLAB es un sistema interactivo con un elemento de datos bsico, es un arsenal que no requiere el dimensioning. Esto permite que usted solucione muchos problemas tcnicos, especialmente sos con formulaciones de matriz y de vector, en una fraccin del tiempo que tomara para escribir un programa en una lengua no interactivo escalar tal como C o FORTRAN.

El nombre MATLAB est dado por el laboratorio de la matriz . MATLAB fue escrito originalmente para proporcionar el acceso fcil al software de la matriz desarrollado por los proyectos de LINPACK y de EISPACK. Hoy, el software de las aplicaciones de MATLAB se convirti por los proyectos de LAPACK y de ARPACK, que juntos representan el estado plus ultra en el software para el cmputo de la matriz. MATLAB se ha desarrollado durante aos con la entrada de muchos usuarios. En ambientes de la universidad, es la herramienta educacional estndar para los cursos introductorios y avanzados en matemticas, la ingeniera, y la ciencia. En industria, MATLAB es la herramienta de la

opcin para la investigacin, el desarrollo, y el anlisis de altaproductividad. MATLAB ofrece una familia de las soluciones de aplicacin especifica (application-specific) llamadas las cajas de herramientas . Muy importante para la mayora de los usuarios de MATLAB, las cajas de herramientas permite que usted aprenda y que aplique tecnologa especializada. Las cajas de herramientas son colecciones comprensivas de las funciones de MATLAB (M-archivos) que extienden el ambiente de MATLAB para solucionar clases particulares de problemas. Las reas en las cuales las cajas de herramientas estn disponibles incluyen el proceso de seal, sistemas de control, redes neuronales, lgica difusa, la simulacin, y muchos otras. El Sistema de MATLAB El sistema de MATLAB consiste en cinco porciones principales: Ambiente Del Desarrollo. ste es el sistema de las herramientas y de las instalaciones que le ayudan a utilizar funciones y archivos de MATLAB. Muchas de estas herramientas son interfaces grficas. Incluye el tablero del escritorio de MATLAB y la ventana del comando, una historia del comando, y los browsers para la visin, el espacio de trabajo, los archivos, y el camino de bsqueda en un fichero. La Biblioteca Matemtica De la Funcin de MATLAB. sta es una coleccin extensa de algoritmos de cmputo que se extienden de funciones elementales como la suma, seno, coseno, y la aritmtica compleja, a funciones ms sofisticadas como lo contrario de la matriz, valores propios de la matriz, las funciones de Bessel, y transformada rpida de Fourier. El Lenguaje de MATLAB. Este es un lenguaje de alto nivel de matrix/array con declaraciones de control del flujo, funciones, las estructuras de datos, la entrada-salida, y las caractersticas de programacin orientadas al objeto. Permite la creacin rpida de pequeos programas desechables, y tambin crear programas completos de uso grande y complejo. Manejador Graphics. ste es el sistema de los grficos de MATLAB. Incluye los comandos de alto nivel para la visualizacin de los datos, el proceso de imagen, la animacin, y los grficos de dos dimensiones y tridimensionales de la presentacin. Tambin incluye los comandos bajos as como los cuales permita que usted modifique completamente

el aspecto para requisitos particulares de grficos para construir interfaces grficas completas en sus usos de MATLAB. El Application Program Interface de MATLAB (Api). sta es una biblioteca que permite que usted escriba los programas de C y del FORTRAN que trabajan recprocamente con MATLAB. Incluye las instalaciones para las rutinas que llaman de MATLAB (el ligamiento dinmico), llamando a MATLAB como motor de cmputo, y para los archivos de lectura y de escritura.

Descripcin de la caja de herramientas de redes neuronales (Neural Network Toolbox) La caja de herramientas de redes neuronales extiende el ambiente de aplicacin de MATLAB para proporcionar las herramientas para el diseo, la puesta en prctica, la visualizacin, y la simulacin de redes neuronales. Las redes neuronales son herramientas nicamente de gran alcance en usos donde estara difcil o imposible el anlisis formal, por ejemplo el reconocimiento de patrones y la identificacin y el control no lineales del sistema. La caja de herramientas de redes neuronales proporciona la ayuda comprensiva para muchos paradigmas probados de la red, as como una interfaz grfica que permita que usted disee y que maneje sus redes. El diseo modular, abierto, y extensible de la caja de herramientas simplifica la creacin de funciones y de redes modificadas para requisitos particulares. Caractersticas Dominantes Interfaz grfica (GUI) para crear, entrenar, y simular a sus redes neuronales La ayuda para usuario lo ms comnmente posible arquitecturas de red supervisada y no supervisada. Un sistema comprensivo de entrenamiento y de funciones de aprendizaje Una habitacin de los bloques del Simulink, as como la documentacin y demostraciones de los usos del sistema de control La generacin automtica de Simulink modelado de los objetos de la red neuronal Representacin modular de la red, permitiendo un nmero ilimitado de la entrada que fija capas, e interconexiones de la red Funciones pre y de proceso del bias para mejorar el entrenamiento de la red y determinar el funcionamiento de la red Rutinas para mejorar la generalizacin Funciones de la visualizacin para el funcionamiento de la red neuronal

5.1.3. Construccin de redes neuronales.

Creacin de una red neuronal (newff)

El primer paso del entrenamiento de una red neuronal es crear la red. La funcin newff crea una red con conexin hacia adelante. Esta funcin requiere de cuatro parmetros y regresa un objeto del tipo red:
1. La primera entrada es una matriz de (p-1)2 XR de mnimos y mximos valores por cada uno de los elementos (p-1) de el vector de entrada. 2. La segunda entrada es un arreglo con el tamao de cada capa. 3. La tercera entrada es un arreglo con los nombres de las funciones de transferencia que se van a usar en cada capa. 4. La ltima entrada contiene el nombre del algoritmo de entrenamiento que se va a utilizar.

Por ejemplo el siguiente comando crea una red de dos capas. Tendr un vector de entrada con dos elementos (p-1 = 2), tres neuronas en la primera capa (L-1 = 3) y una neurona en la segunda capa (salida) (m = 1).

La funcin de transferencia en la primera capa ser la tansig, y la funcin de transferencia en la capa de salida ser lineal. Los valores para el primer elemento del vector de entrada estarn en el rango de -1 y 2, los valores del segundo elemento del vector de entrada estar en el rango de 0 y 5, esto es, la matriz XR es de la forma siguiente: XR = [-1 2; 0 5]; Y la funcin de entrenamiento ser traingd (la cual describiremos ms adelante). net=newff(XR,[L-1,m],'tansig','purelin','traingd'); Este comando crea un objeto del tipo red y tambin inicializa los pesos y el bias de la red, usando por default el comando (initnw). Por lo tanto la red esta lista para ser entrenada. Inicializacin de pesos (init, initnw, rands) Si necesitas re- inicializar, o cambiar la inicializacin por default de los pesos, utiliza el comando init:

net=init(net); Esta funcin toma como entrada un objeto de tipo red y regresa un objeto de tipo red con los pesos y bias inicializados. Esta funcin es invocada por el comando newff y usa el algoritmo de Nguyen-Widrow. Si, por ejemplo, queremos re-inicializar los pesos y los bias en la primera capa de forma aleatoria, usando la funcin rands, debemos usar los siguientes comandos:
net.layers{1}.initFcn = 'initwb'; net.inputWeights{1,1}.initFcn = 'rands'; net.biases{1,1}.initFcn = 'rands'; net.biases{2,1}.initFcn = 'rands'; net = init(net);

5.1.4. Simulacin de Redes Neuronales. Simulacin (sim)

La funcin sim simula una red neuronal. La funcin sim toma la entrada de la red X, y el objeto red net, y regresa la salida de la red Y. Aqu se muestra como puede ser usado el comando simuff, para simular la red que creamos anteriormente para un vector de entrada simple:
x = [1;2]; a = sim(net,x) a = -0.1011

Abajo, el comando sim es llamado para calcular las salidas para un vector de entrada de tres elementos.
X = [1 3 2;2 4 1]; Y = sim(net,X) Y = -0.1011 -0.2308

0.4955

Entrenamiento incrementado (adapt)

La funcin adapt es usada para entrenar redes en el modo de crecimiento (pattern). Esta funcin toma el objeto red, las entradas y los valores deseados para el entrenamiento, y regresa el objeto red entrenado con los valores de salida y errores de la red para los pesos y bias finales.

Entrenamiento Batch (train)

La alternativa para un entrenamiento en crecimiento es el entrenamiento batch, el cual es invocado usando la funcin train. En el modo batch los pesos y bias de la red son actualizados solo despus de haber concluido el entrenamiento en la red. Algunas de las funciones disponibles para el entrenamiento de tipo batch se listan en la tabla siguiente junto con un tiempo relativo de convergencia. Function Technique Time Epochs Mflops traingdx Variable Learning Rate 57.71 980 2.50 trainrp Rprop 12.95 185 0.56 trainscg Scaled Conj. Grad. 16.06 106 0.70 traincgf Fletcher-Powell CG 16.40 81 0.99 traincgp Polak-Ribire CG 19.16 89 0.75 traincgb Powell-Beale CG 15.03 74 0.59 trainoss One-Step-Secant 18.46 101 0.75 trainbfg BFGS quasi-Newton 10.86 44 1.02 trainlm Levenberg-Marquardt 1.87 6 0.46

Lista de funciones Versin 4,0,1 Funciones del anlisis errsurf - superficie del error de la neurona de entrada maxlinlr mxima tarifa del aprendizaje para una capa lineal Funciones de inicializacin de la capa initnw - funcin de la inicializacin de la capa de Nguyen-Widrow initwb - funcin de inicializacin de los pesos y del bias. Funciones de aprendizaje learncon - funcin de aprendizaje diagonal de la conciencia learngd - funcin de aprendizaje del gradiente descendente learngdm - funcin de aprendizaje del gradiente con momentum learnh - funcin del aprendizaje de Hebb learnhd - Hebb con la funcin de aprendizaje descendente learnis - funcin de aprendizaje del peso de Instar learnk - funcin de aprendizaje Kohonen

learnlv1 - funcin de aprendizaje LVQ1 learnlv2 - funcin de aprendizaje LVQ2 learnos - funcin de aprendizaje de Outstar learnp - funcin de aprendizaje del Perceptron learnpn - funcin normalizada de aprendizaje del perceptron learnsom - funcin de aprendizaje del mapa de auto-organizacin learnwh - regla de aprendizaje de Widrow-Hoff Funciones de la bsqueda de la lnea srchbac - bsqueda de la vuelta hacia atrs srchbre - interpolacin de la combinacin de la seccin de oro y cuadrtica de Brent srchcha - interpolacin cbica de Charalambous srchgol - bsqueda de la seccin oro srchhyb - bsqueda del hbrido bisection/cubic Creacin redes red - crea una red neuronal newc - crea una capa competitiva newcf - crea una red conexin hacia adelante backpropagation newelm - crea una red de Elman backpropagation newff - crea una red feed-forward backpropagation newfftd - crea un red feed-forward de entrada retrasada backpropagation newgrnn - disea una red neuronal generalizada de regresin newhop - crea una red recurrente de Hopfield newlin - crea una capa lineal newlind - disea una capa lineal newlvq - crea una red de cuantizacin del vector de aprendizaje newp - crea un perceptron newpnn - disea una red probabilistica newrb - disea una red de base radial newrbe - disea una red de base radial exacta newsom - crea un mapa de auto-organizacin Funciones de inicializacin de la red initlay - funcin de inicializacin de la red capa por capa Funciones del error mae - funcin absoluta del error mse funcin cuadrtica media del error msereg funcin de regularizacin de ajuste del error medio sse funcin que ajusta la suma del error

Funciones para graficar hintonw - grfico de Hinton de la matriz del peso hintonwb - grfico de Hinton de la matriz del peso y del vector bias plotbr grafica el funcionamiento de la red del diagrama para el entrenamiento bayesian de la regularizacin plotes - traza una superficie del error de una sola neurona de entrada plotpc - traza la lnea en diagrama del vector de clasificacin del perceptron plotpv diagrama de los vectores input/target del perceptron plotep - traza una posicin del peso-bias respecto a una superficie de error plotperf diagrama del funcionamiento de la red plotsom diagrama del mapa de auto-organizacin plotv diagrama de los vectores de origen como lneas plotvec diagrama de los vectores con diversos colores Funciones de entrenamiento trainb - entrenamiento con regla de aprendizaje de la hornada del peso y del bias trainbfg - backpropagation quasi-Newton de BFGS trainbr - regularizacin bayesiana trainc - funciones ascendentes de entrenamiento cclico traincgb - backpropagation conyugal del gradiente de Powell-Beale traincgf - backpropagation conyugal del gradiente de Fletcher-Powell traincgp - backpropagation conyugal del gradiente de Polak-Ribiere traingd - backpropagation de la pendiente del gradiente traingdm - pendiente del gradiente con el backpropagation del mpetu traingda - pendiente del gradiente con el backpropagation adaptativo del lr traingdx - pendiente w/momentum y backpropagation adaptativo del gradiente del lr trainlm - backpropagation de Levenberg-Marquardt trainoss - backpropagation secante de un solo paso trainr - funciones ascendentes del entrenamiento w/learning al azar trainrp - backpropagation resistente (Rprop) trains - funciones incrementales del entrenamiento w/learning secuencial trainscg - backpropagation conyugal del gradiente descendente Funciones de transferencia compet - funcin de transferencia competitiva hardlim - funcin de transferencia escalon hardlims - funcin de transferencia de limite simtrica logsig - funcin de transferencia sigmoidal

poslin - funcin de transferencia lineal positiva purelin - funcin de transferencia lineal radbas - funcin de transferencia de base radial satlin - saturacin de la funcin de transferencia lineal satlins - funcin de transferencia lineal de saturacin simtrica softmax - funcin de transferencia mxima suave tansig - funcin de transferencia sigmoidea de la tangente hiperblica tribas - funcin de transferencia de base triangular Simulacin redes sim - simula una red neuronal init - inicializa una red neuronal adap - permite que una red neuronal se adapte train - entrena a una red neuronal disp - exhibe las caractersticas de una red neuronal exhibit - exhibe el nombre y las caractersticas de una variable de la red neuronal Funciones del peso dist - funcin euclidiana de la distancia del peso dotprod - funcin del producto de punto del peso mandist - funcin de la distancia de Maniatan del peso negdist - funcin del producto de punto del peso normprod - funcin normalizada del producto de punto del peso Funciones de inicializacin de los pesos y bias initcon - funcin de inicializacin diagonal de la conciencia initzero - funcin de inicializacin a cero de weight/bias randnc - funcin de inicializacin normalizada de la columna del peso randnr - funcin de inicializacin normalizada de la fila del peso rands - funcin de inicializacin simtrica al azar de weight/bias

Potrebbero piacerti anche