Tema 8. Redes Neuronales
|
|
|
- Domingo Rivero Espejo
- hace 9 años
- Vistas:
Transcripción
1 Tema 8. Redes Neuronales Pedro Larrañaga, Iñaki Inza, Abdelmalik Moujahid Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad del País Vasco Euskal Herriko Unibertsitatea 8.1 Introducción En este tema vamos a introducir el paradigma de redes neuronales artificiales, muy popular dentro de la Inteligencia Computacional. El enfoque que se va a seguir en la introducción del paradigma es fundamentalmente como una herramienta para resolver problemas de clasificación supervisada. En ningún momento tratamos de plantear un modelo del sistema nervioso de los seres vivos. A lo largo del tema se comienza en la Sección 8.2, introduciendo de manera muy resumida aquellos aspectos mas relevantes de un sistema neuronal artificial, tales como neurona, dendrita, axón, sinapsis, función de activación, finalizándose la sección con la exposición de distintos tipos de arquitecturas de redes neuronales. En la Sección 8.3 se presenta el modelo de red neuronal mas simple, el denominado asociador lineal, incluyéndose en la sección algunas ideas relacionadas con el aprendizaje Hebbiano. La Sección 8.4 presenta el perceptrón simple junto con el algoritmo de aprendizaje de pesos propuesto por Rosenblatt (1962) para este modelo de red neuronal. La Sección 8.5 introduce la denominada adalina junto con la regla de actualización de pesos propuesta para la misma por Widrow y Hoff (1960). El modelo perceptrón multicapa al igual que el algoritmo de retropropagación de error propuesto para el mismo por vez primera por Werboz (1974) se desarrollan en la Sección Sistema Neuronal Artificial Introducción biológica: 1888 Ramón y Cajal demuestra que el sistema nervioso está compuesto por una red de células individuales, las neuronas, ampliamente interconectadas entre sí. La información fluye desde las dendritas hacia el axón atravesando el soma. Neurona: neuronas en el cerebro. cuerpo celular o soma (de 10 a 80 micras de longitud) del soma surge un denso árbol de ramificaciones (árbol dendrítico) formado por las dendritas del soma parte una fibra tubular denominada axón (longitud de 100 micras hasta un metro) el axón se ramifica en su extremo final para conectar con otras neuronas Neuronas como procesadores de información sencillos. De manera simplista: 1
2 las dendritas constituyen el canal de entrada de la información el soma es el órgano de cómputo el axón corresponde al canal de salida, y a la vez envía información a otras neuronas. Cada neurona recibe información de aproximadamente 10,000 neuronas y envía impulsos a cientos de ellas algunas neuronas reciben la información directamente del exterior El cerebro se modela durante el desarrollo de un ser vivo. Algunas cualidades del ser humano no son innatas, sino adquiridas por la influencia de la información que del medio externo se proporciona a sus sensores. Diferentes maneras de modelar el sistema nervioso: establecimiento de nuevas conexiones ruptura de conexiones modelado de las intensidades sinápticas (uniones entre neuronas) muerte o reproducción neuronal Sistemas artificiales que van a copiar la estructura de las redes neuronales biológicas con el fin de alcanzar una funcionalidad similar. Tres conceptos clave a emular: procesamiento paralelo, derivado de que los miles de millones de neuronas que intervienen, por ejemplo en el proceso de ver, están operando en paralelo sobre la totalidad de la imagen memoria distribuida, mientras que en un computador la información está en posiciones de memoria bien definidas, en las redes neuronales biológicas dicha información está distribuida por la sinapsis de la red, existiendo una redundancia en el almacenamiento, para evitar la pérdida de información en caso de que una sinapsis resulte dañada. adaptabilidad al entorno, por medio de la información de las sinapsis. Por medio de esta adaptabilidad se puede aprender de la experiencia y es posible generalizar conceptos a partir de casos particulares El elemento básico de un sistema neuronal biológico es la neurona. Un sistema neuronal biológico está compuesto por millones de neuronas organizadas en capas. En la emulación de dicho sistema neuronal biológico, por medio de un sistema neuronal artificial, se puede establecer una estructura jerárquica similar a la existente en el cerebro. El elemento esencial será la neurona artificial, la cual se organizará en capas. Varias capas constituirán una red neuronal. Finalmente una red neuronal junto con los interfaces de entrada y salida constituirá el sistema global de proceso (véase Figura 1). El modelo estándard de neurona artificial Se va a introducir el denominado modelo estándard de neurona artificial según los principios descritos en Rumelhart y McClelland (1986) y McClelland y Rumelhart (1986). Siguiendo dichos principios, la i-ésima neurona artificial estándard consiste en: 2
3 Figura 1: Sistema global de proceso de una red neuronal Un conjunto de entradas x j y unos pesos sinápticos w ij, con j = 1,..., n Una regla de propagación h i definida a partir del conjunto de entradas y los pesos sinápticos. Es decir: h i (x 1,..., x n, w i1,..., w in ) La regla de propagación más comunmente utilizada consiste en combinar linealmente las entradas y los pesos sinápticos, obteniéndose: h i (x 1,..., x n, w i1,..., w in ) = w ij x j i=1 Suele ser habitual añadir al conjunto de pesos de la neurona un parámetro adicional θ i, que se denomina umbral, el cual se acostumbra a restar al potencial pos-sináptico. Es decir: h i (x 1,..., x n, w i1,..., w in ) = w ij x j θ i i=1 Si hacemos que los índices i y j comiencen en 0, y denotamos por w i0 = θ i y x 0 = 1, podemos expresar la regla de propagación como: h i (x 1,..., x n, w i1,..., w in ) = w ij x j = w ij x j θ i j=0 i=1 Una función de activación, la cual representa simultáneamente la salida de la neurona y su estado de activación. Si denotamos por y i dicha función de activación, se tiene y i = f i (h i ) = f i ( w ij x j ) j=0 La Figura 2 muestra el modelo de neurona artificial estándar descrito previamente. Algunos ejemplos de funciones de activación son los siguientes: (i) Neuronas todo-nada En este tipo de neuronas todo-nada, también llamadas dispositivos de 3
4 Figura 2: Modelo de neurona artificial standard umbral, la función f i ( w ij x j θ i ) es una función escalonada. En tal caso, se tiene: 1 si w ij x j θ i y i = 0 si w ij x j < θ i Este tipo de función de activación es la usada tanto por el modelo de neurona del perceptrón original como se verá más adelante así como por el modelo de neurona introducido en el trabajo pionero de McCulloch y Pitts (1943). Nótese que en las neuronas todo-nada la salida es digital. (ii) Neurona continua sigmoidea Si queremos obtener una salida continua, es habitual el utilizar como función de activación una función sigmoidea. Las funciones sigmoideas más usadas son: 1 y i =, con y i [0, 1] w ij x j θ i 1 + e w ij x j θ i w ij x j θ i y i = e e, con y i [ 1, 1] w ij x j θ i w ij x j θ i e + e Ambas funciones de activación son continuas y diferenciables, y son usadas en el denominado perceptrón multicapa véase Sección 8.6. El requisito de trabajar con funciones diferenciables puede venir impuesto por la regla de aprendizaje, como sucede tal y como se explicará posteriormente con la regla de retropropagación del error (backpropagation). 4
5 Arquitecturas de redes neuronales Se denomina arquitectura a la topología, estructura o patrón de conexionado de una red neuronal. En una red neuronal artificial los nodos se conectan por medio de sinapsis, estando el comportamiento de la red determinado por la estructura de conexiones sinápticas. Estas conexiones sinápticas son direccionales, es decir, la información solamente puede propagarse en un único sentido (desde la neurona presináptica a la pos-sináptica). En general las neuronas se suelen agrupar en unidades estructurales que denominaremos capas. El conjunto de una o más capas constituye la red neuronal. Se distinguen tres tipos de capas: de entrada, de salida y ocultas. Una capa de entrada, también denominada sensorial, está compuesta por neuronas que reciben datos o señales procedentes del entorno. Una capa de salida se compone de neuronas que proporcionan la respuesta de la red neuronal. Una capa oculta no tiene una conexión directa con el entorno, es decir, no se conecta directamente ni a órganos sensores ni a efectores. Este tipo de capa oculta proporciona grados de libertad a la red neuronal gracias a los cuales es capaz de representar más fehacientemente determinadas características del entorno que trata de modelar. Véase la Figura 3. Teniendo en cuenta diversos conceptos se pueden establecer diferentes tipos de Figura 3: Arquitectura unidireccional con tres capas de neuronas: una capa de entrada, una capa oculta y una capa de salida arquitecturas neuronales. Así considerando su estructura podemos hablar de redes monocapa compuestas por una única capa de neuronas o redes multicapa las neuronas se organizan en varias capas. Teniendo en cuenta el flujo de datos, podemos distinguir entre redes unidireccionales (feedforward) y redes recurrentes o realimentadas (feedback). Mientras que en las redes unidireccionales la información circula en un único sentido, en las redes recurrentes o realimentadas la información puede circular entre las distintas capas de neuronas en cualquier sentido, incluso en el de salida-entrada. La Figura 4 muestra dos ejemplos de arquitectura, uno corresponde a una red monocapa y recurrente y el otro a una red multicapa y unidireccional. Definición de una red neuronal artificial 5
6 Figura 4: Diferentes arquitecturas de redes neuronales Se puede definir una red neuronal artificial como un grafo dirigido, con las siguientes propiedades: (i) A cada nodo (neurona) i se le asocia una variable de estado X i. (ii) A cada conexión (i, j) entre los nodos (neuronas) i y j se le asocia un peso w ij IR. (iii) A cada nodo (neurona) i se le asocia un umbral θ i IR. (iv) Para cada nodo i se define una función f i (x 1,..., x n, w i1,..., w in, θ i ) que depende de los pesos de sus conexiones, del umbral y de los estados de los nodos j que estén conectados con el nodo i. El valor de esta función proporciona el nuevo estado del nodo. Por lo que respecta a la terminología habitual en redes neuronales artificiales, tal y como se ha comentado previamente los nodos del grafo representan a las neuronas y las conexiones a las sinapsis. Se denominan neuronas de entrada a aquellas neuronas sin sinapsis entrantes. A las neuronas sin sinapsis salientes se las denomina neuronas de salida, y finalmente a aquellas neuronas que no son ni de entrada ni de salida se les denomina neuronas ocultas. Una red es unidireccional cuando no presenta bucles cerrados o conexiones, mientras que una red se dice recurrente o realimentada cuando el flujo de información puede tener un bucle de atrás hacia adelante, es decir, una realimentación. En la relación con la manera en la que las neuronas de una red actualizan sus estados, podemos distinguir entre dinámica síncrona en la cual todas las neuronas pertenecientes a una misma capa se actualizan a la vez, comenzando en la capa de entrada y continuando hasta la de salida y dinámica asíncrona en la cual cada neurona actualiza su estado sin atender a cuando lo hacen las demás neuronas. Si bien el tipo de dinámica presente en los sistemas neuronales biológicos es asíncrono, lo habitual en las redes neuronales artificiales es que la dinámica sea síncrona. 8.3 El Asociador Lineal 6
7 En este tema vamos a presentar varios modelos de redes neuronales unidireccionales organizados en capas y cuya finalidad sea tratar un problema de aprendizaje supervisado, es decir, vamos a presentar modelos estándar de redes neuronales para reconocer patrones. Textos en los que profundizar los conocimientos aquí presentados incluyen los de Bishop (1995), Haykin (1999) y Principe y col. (2000). Ha de tenerse en cuenta que en el asociador lineal las variables (neuronas) de salida son continuas, de ahí que el interés de este paradigma para la resolución de problemas de clasificación supervisada sea limitado. Nótese igualmente que la notación usada en esta sección no es coherente con la del resto del tema, ya que en esta sección se denota por y 1,... y m a los valores de las variables respuesta a predecir, mientras que el valor predicho por la red neuronal se denota por W x. El asociador lineal. Aprendizaje Hebbiano El denominado asociador lineal véase Figura 5 consta únicamente de una capa Figura 5: Arquitectura (izquierda) y función de activación (derecha) del asociador lineal de neuronas lineales cuyas entradas denotamos por x 1,..., x n y cuyas salidas se denotan por y 1,..., y m. Denotamos por W M(m, n) a la matriz de pesos sinápticos, cuyos elementos se expresan por medio de w ij con i = 1,..., m y j = 1,..., n. La operación efectuada por el asociador lineal es: y = (y 1,..., y m ) == W (x 1,..., x n ) o bien y i = w ij x j, con i = 1,..., m. Dentro del marco de neurona estándar presentado en la sección anterior, el asociador lineal calcula el potencial pos-sináptico por medio de la convencional suma ponderada, cantidad a la que aplica posteriormente una función de activación de tipo identidad. El asociador lineal debe aprender a asociar N pares entrada-salida D = {(x r, y r ), r = 1,..., N} ajustando la matriz de pesos W, de tal manera que ante entradas similares a x r responda con salidas similares a y r. El problema radica en encontrar la matriz de pesos W óptima en el sentido anterior. Para ello, en el campo de las redes 7
8 neuronales se hace uso de una regla de aprendizaje, que a partir de las entradas y de las salidas deseadas proporcione el conjunto óptimo de pesos W. Uno de los modelos clásicos de aprendizaje de redes neuronales es el propuesto por Hebb (1949), el cual postuló un mecanismo de aprendizaje para una neurona biológica, cuya idea básica consiste en que cuando un axón presináptico causa la activación de cierta neurona pos-sináptica, la eficacia de la sinapsis que las relaciona se refuerza. Si bien este tipo de aprendizaje es simple y local, su importancia radica en que fue pionero tanto en neurociencias como en neurocomputación, de ahí que otros algoritmos más complejos lo tomen como punto de partida. De manera general se denomina aprendizaje Hebbiano a un aprendizaje que involucra una modificación en los pesos, w ij, proporcional al producto de una entrada x j y de una salida y i de la neurona. Es decir, w ij = εy i x j, donde a 0 < ε < 1 se le denomina ritmo de aprendizaje. En concreto al considerar el ejemplo (x r, y r ) la regla de actualización de pesos resulta ser: w new ij = w old ij + w r ij con w r ij = εy r i x r j Es habitual el tratar de deducir los algoritmos de aprendizaje a partir de un cierto criterio a optimizar, es decir, se debe de proponer un criterio que mida el rendimiento de la red neuronal para encontrar una regla de actualización de pesos que la optimice. Una manera extendida de definir el rendimiento es a partir del error cuadrático medio de las salidas actuales de la red respecto de las deseadas. Es decir: 1 N N y r W x r = 1 N m (yi r W x r r=1 N j) 2 r=1 i=1 De esta manera el problema del aprendizaje de los pesos de la red neuronal se transforma en el de obtener un conjunto de pesos que minimicen la expresión anterior. Si denotamos por X = (x 1,..., x N ), una matriz n N que tiene por columnas los vectores de entrada, y por Y = (y 1,..., y N ) una matriz m N cuyas columnas son los vectores de salida, la anterior ecuación se puede expresar como: 1 Y W X N La minimización de la expresión anterior se obtiene al hacer W = YX 1, de ahí que una regla de aprendizaje basada en la matriz pseudoinversa se puede escribir como W = YX +, donde X + denota la matriz pseudoinversa de X. 8.4 El Perceptrón Simple El perceptrón simple fue introducido por Rosenblatt (1962) y es un modelo unidireccional compuesto por dos capas de neuronas, una de entrada y otra de salida. La operación en un perceptrón simple que consta de n neuronas de entrada y m neuronas de salida se puede expresar como: y i = f w ij x j θ i 8
9 con i = 1,..., m. Las neuronas de entrada son discretas y la función de activación de las neuronas de la capa de salida es de tipo escalón. Véase la Figura 6. El perceptrón simple puede utilizarse como clasificador, radicando su importancia Figura 6: Arquitectura (izquierda) y función de transferencia (derecha) de un perceptrón simple histórica en su carácter de dispositivo entrenable, ya que el algoritmo de aprendizaje del modelo introducido por Rosenblatt (1962) permite determinar automáticamente los pesos sinápticos que clasifican un conjunto de patrones a partir de un conjunto de ejemplos etiquetados. Veamos con un ejemplo sencillo, que contiene dos neuronas de entrada, que el perceptrón simple tan sólo puede discriminar entre dos clases linealmente separables, es decir, clases cuyas regiones de decisión pueden ser separadas mediante una única condición lineal o hiperplano. Si denotamos por x 1 y x 2 a las dos neuronas de entrada, la operación efectuada por el perceptrón simple consiste en: { 1 si w1 x y = 1 + w 2 x 2 θ 0 si w 1 x 1 + w 2 x 2 < θ Si consideramos x 1 y x 2 situadas sobre los ejes de abcisas y ordenadas respectivamente, la condición w 1 x 1 + w 2 x 2 θ = 0 es equivalente a x 2 = w 1 w 2 x 1 + θ w 2 y representa una recta que define la región de decisión determinada por el perceptrón simple. Es por ello que dicho perceptrón simple representa un discriminador lineal, al implementar una condición lineal que separa dos regiones en el espacio que representan dos clases diferentes de patrones. Véase la Figura 7. Por tanto, el perceptrón simple presenta grandes limitaciones, ya que tan sólo es capaz de representar funciones linealmente separables. Basándose en este hecho, Minsky y Papert (1969) publicaron un trabajo exponiendo las limitaciones del perceptrón simple, como consecuencia del cual muchos de los recursos que se venían dedicando a las 9
10 Figura 7: Región de decisión correspondiente a un perceptrón simple con dos neuronas de entrada redes neuronales se desviaron a otros campos de la inteligencia artificial. Tal y como se ha comentado previamente, la importancia del perceptrón simple radica en el hecho de su carácter entrenable, ya que el algoritmo introducido por Rosenblatt (1962) permite que el perceptrón simple determine automáticamente los pesos sinápticos que clasifican un conjunto de patrones etiquetados. El algoritmo de aprendizaje del perceptrón simple pertenece al grupo de los algoritmos que se fundamentan en la corrección de errores. Los algoritmos de este tipo ajustan los pesos de manera proporcional a la diferencia existente entre la salida actual de la red neuronal y la salida deseada, con el objetivo de minimizar el error actual de la red. Veamos el funcionamiento del algoritmo de aprendizaje de pesos para el perceptrón simple propuesto por Rosenblatt (1962). Vamos a denotar por x r al conjunto de patrones de entrada y por c r a sus salidas respectivas, con r = 1,..., N. Supongamos que tanto las variables de entrada como las de salida toman dos posibles valores: 1 y +1. Se parte de una arquitectura de red neuronal que es un perceptrón simple y se requiere que clasifique correctamente todos los patrones de los que partimos, para llevar a cabo el entrenamiento de la red neuronal. La manera en la que actualizaremos los pesos es la siguiente: si ante la presentación de r-ésimo patrón la respuesta que proporciona el perceptrón simple es correcta, no actualizaremos los pesos, mientras que si la respuesta es incorrecta los pesos se modificarán según la regla de Hebb, es decir { wij(t) r 2εci = r r r x j si y ir c i 0 si y r r i = c i La regla anterior se puede reescribir de la siguiente manera w r ij(t) = ε(c i r y i r )x j r que es la forma habitual de expresar la regla de actualización de pesos del perceptrón simple, cuando las entradas y las salidas son discretas y toman valores 1 y +1. Puede 10
11 comprobarse que en este caso la actualización de pesos únicamente podrá tomar los valores 2ε, 0 y +2ε. A nivel práctico se debe llegar a un compromiso para el valor del ritmo de aprendizaje, ε, ya que un valor pequeño del mismo implica un aprendizaje lento, mientras que uno excesivamente grande puede conducir a oscilaciones excesivas de los pesos no aconsejables en el proceso de entrenamiento. Conviene aclarar que el proceso de aprendizaje es iterativo. Se parte de una configuración sináptica inicial habitualmente pesos pequeños inicializados aleatoriamente presentándose los patrones una y otra vez, con objeto de que los pesos se ajusten iterativamente según la regla anterior, w r ij(t) = ε(c i r y i r )x j r, hasta que todos los patrones queden bien clasificados si es posible-. El hiperplano que establece el límite entre dos clases tal y como se aprecia en la Figura 8 se desplaza lentamente hasta conseguir separarlas por completo si esto fuera posible. El ajuste de los pesos en la iteración t debido a todo el conjunto de aprendizaje será N w ij (t + 1) = w ij (t) + w r ij (t) r=1 Rosenblatt (1962) demostró que si la función a representar es linealmente separable, Figura 8: Evolución de las regiones de decisión establecidas por el perceptrón simple el algoritmo anterior siempre converge en un tiempo finito y con independencia de los pesos de partida. Si la función a representar no es linealmente separable, el proceso de entrenamiento oscilará. Tal y como puede en la Figura 8 el algoritmo de entrenamiento del perceptrón simple se detiene tan pronto como consigue clasificar correctamente todos los ejemplos de los que consta la base de datos inicial, de ahí que ocurra con frecuencia que la línea de discriminación quede muy cerca de las muestras de uno de los grupos. 8.5 La Adalina Otro modelo de red neuronal artificial clásico es la Adalina, introducida por Widrow y Hoff (1960), cuyo nombre proviene de ADAptative LInear Neuron. En la Adalina las entradas pueden ser continuas y se utiliza una neurona similar a la del perceptrón 11
12 simple, pero en este caso de respuesta lineal véase la Figura 9. A diferencia del asociador lineal la adalina incorpora un parámetro adicional denominado bias, el cual no debe de ser considerado como un umbral de disparo, sino como un parámetro que proporciona un grado de libertad adicional al modelo. Teniendo en cuenta lo anterior, la ecuación de la adalina resulta ser Figura 9: Neurona lineal de la Adalina con i = 1,..., m. y i (t) = w ij x j θ i Otra diferencia fundamental de la adalina con respecto del asociador lineal y el perceptrón simple radica en la regla de aprendizaje. En la adalina se utiliza la regla de Widrow-Hoff, también conocida como LMS (Least Mean Square) o regla de mínimos cuadrados. Esta regla permite actualizaciones de los pesos proporcionales al error cometido por la neurona. La adalina se viene utilizando desde comienzos de los años sesenta como filtro adaptativo, por ejemplo en aplicaciones relacionadas con la reducción del ruido en la transmisión de señales (Widrow y Winter, 1988). De este modo, y desde hace años, millones de modems de todo el mundo incluyen una adalina. La regla de actualización de pesos LMS que se lleva a cabo en la adalina se fundamenta en considerar el aprendizaje de dichos pesos como un problema de optimización de una determinada función de coste. Dicha función de coste va a medir el rendimiento actual de la red y dependerá de los pesos sinápticos de la misma. Vamos a ver cómo un método de optimización aplicado a dicha función de coste va a proporcionar una regla de actualización de los pesos, que a partir de los patrones de aprendizaje modifique iterativamente los pesos hasta alcanzar la configuración óptima de los mismos. El método de optimización utilizado por la regla LMS es el denominado descenso por el gradiente, el cual puede ser visto como un optimizador local en un espacio de búsqueda continuo. Se parte de una función de coste E que proporciona el error 12
13 actual cometido por la red neuronal. Dicha función de coste será una función de los pesos sinápticos. Es decir: E : IR (n m)+m IR (w 11,..., w 1n,..., w m1,..., w mn, θ 1,..., θ m ) E(w 11,..., w 1n,..., w m1,..., w mn, θ 1,..., θ m ) Figura 10: Superficie de error E(w) en el espacio de pesos (izquierda) y método de descenso por el gradiente (derecha) en el que se basa la regla de aprendizaje de la Adalina Nos podemos imaginar la representación gráfica de esta función como una hipersuperficie con montañas y valles (véase Figura 10) en la que la posición ocupada por un valle corresponde con una configuración de pesos localmente óptima. El objetivo del aprendizaje, es decir del proceso de actualización de pesos, consiste en encontrar la configuración de los mismos que corresponde al mínimo global de la función de error o función de coste definida. Con frecuencia en una red neuronal genérica nos vamos a tener que conformar con un mínimo local suficientemente bueno. Para encontrar la configuración de pesos óptima mediante el método del descenso por el gradiente se opera del siguiente modo. Se parte en t = 0 de una cierta configuración de peso w 0, y se calcula la dirección de la máxima variación de la función E(w) en w 0, la cual vendrá dada por su gradiente en w 0. El sentido de la máxima variación apuntará hacia una colina en la hipersuperficie que representa a la función E(w). A continuación se modifican los parámetros w siguiendo el sentido opuesto al indicado por el gradiente de la función de error. De esta manera se lleva a cabo un descenso por la hipersuperficie de error, aproximándose en una cierta cantidad al valle mínimo local. El proceso anterior de descenso por el gradiente se itera hasta que dicho mínimo local es alcanzado. Matemáticamente se expresaría w(t + 1) = w(t) ε E(w) donde ε (que puede ser diferente para cada paso) indica el tamaño del paso tomado en cada iteración. Si bien idealmente ε debería de ser infinitesimal, una elección de 13
14 este tipo llevaría a un proceso de entrenamiento extremadamente lento, de ahí que ε debe ser lo suficientemente grande como para que cumpla el compromiso de rápida actualización sin llevar a oscilaciones. Teniendo en cuenta que la función de error de la red neuronal, o función de coste a minimizar, si contemplamos el problema como un problema de optimización, es de la manera siguiente: E(w) = 1 N m (c r i yi r ) 2 2 r=1 i=1 Es decir, la función de error mide el error cuadrático correspondiente a las salidas actuales de la red respecto de los objetivos y calculando el gradiente de dicha función con respecto de cada variable (peso) w ij, y teniendo en cuenta que yi r = w ij x r j θ i, se obtiene: ( ) E(w ij ) 1 = 2 w ij 2 N (c r i yi r ) dyr N i = (c r i yi r ) x r j r=1 dw ij r=1 De ahí que el incremento de los pesos en la Adalina, según la regla de adaptación LMS resulte ser: w ij = ε E(w ij) N = ε (c r i yi r ) x r j w ij Conviene resaltar que mientras que en la regla del perceptrón simple se llevan a cabo actualizaciones discretas en los pesos, en la adalina la regla LMS produce actualizaciones de tipo continuo, de manera que un mayor error produce una actualización mayor. Otra diferencia entre ambos, derivada de la naturaleza del tipo de entradas, es que la regla del perceptrón converge en un número finito de iteraciones si es capaz de clasificar correctamente todos los patrones, mientras que la regla LMS se acerca asintóticamente a una solución, ya que el tamaño de los incrementos se hace cada vez menor. 8.6 El Perceptrón Multicapa En la sección 8.4 hemos visto las limitaciones del perceptrón simple, ya que con él tan sólo podemos discriminar patrones que pueden ser separados por un hiperplano una recta en el caso de dos neuronas de entrada. Una manera de solventar estas limitaciones del perceptrón simple es por medio de la inclusión de capas ocultas, obteniendo de esta forma una red neuronal que se denomina perceptrón multicapa. La Figura 11 muestra las regiones de decisión que se obtienen para distintas arquitecturas de redes neuronales considerando dos neuronas en la capa inicial. Así por ejemplo para una arquitectura de perceptrón simple la región de decisión es una recta, mientras que el perceptrón multicapa con una única capa de neuronas ocultas puede discriminar regiones convexas. Por otra parte el perceptrón multicapa con dos capas de neuronas ocultas es capaz de discriminar regiones de forma arbitraria. El perceptrón multicapa o MLP (Multi-Layer Perceptron) se suele entrenar por medio de un algoritmo de retropropagación de errores o BP (Back Propagation) de ahí que dicha arquitectura se conozca también bajo el nombre de red de retropropagación. El desarrollo del algoritmo BP resulta una curiosa historia de redescubrimientos y olvidos. Si bien fue Werboz (1974) quien en su tesis doctoral lo introdujo por vez r=1 14
15 Figura 11: Regiones de decisión obtenidas para el perceptrón simple (arriba), el perceptrón multicapa con una capa oculta (en medio) y el perceptrón multicapa cn dos capas ocultas (abajo) primera, el hecho no tuvo repercusión en su época hasta que Rumelhart y col. (1986) lo redescubrieron de manera independiente y comenzaron a popularizarlo ayudados por los avances en computación existentes en la época, los cuales permitían satisfacer los requisitos de computación que el algoritmo BP requiere. La estructura del MLP con una única capa oculta se muestra en las Figuras 12 y 13. Figura 12: Arquitectura (izquierda) y función de activación (derecha) para el perceptrón multicapa Denotamos por x i a las n entradas de la red, y j a las o salidas de la capa oculta y z k a las s salidas de la capa final por tanto a las salidas de la red las cuales deben de ser comparadas con las salidas objetivo c k. Además, w ij representarán los pesos de la capa oculta, θ j sus umbrales correspondientes, w kj los pesos de la capa de salida y θ k sus umbrales respectivos Las operaciones efectuadas por un MLP con una única capa oculta y con funciones de activación para la capa oculta y capa final de tipo sigmoide y lineal respectivamente, 15
16 Figura 13: Arquitectura del perceptrón multicapa son las siguientes: ( o o n ) z k = w kjy j θ k = w kjf w ji x i θ j θ k i=1 siendo f(x) una función de tipo sigmoideo. La popularidad de la arquitectura MLP se debe al hecho de que un MLP con una única capa oculta puede aproximar cualquier función continua en un intervalo hasta el nivel deseado, cuestión demostrada por Funahaski (1989) y que proporciona una base sólida al campo de las redes neuronales, aunque el resultado no informa sobre el número de nodos ocultos necesarios para llevar a cabo la aproximación. Veamos a continuación cómo entrenar un MLP con una única capa de neuronas oculta por medio del algoritmo BP de retropropagación de los errores. Dicho algoritmo BP puede verse como una extensión del algoritmo LMS a las redes multicapa. Para ello se planteará una función de error similar a la utilizada para obtener la regla de actualización de pesos LMS, y se obtendrán las fórmulas correspondientes al algoritmo BP tanto en función de los pesos de la capa de salida como de los pesos de la capa oculta. Se utilizará la regla de la cadena y para ello se necesitará que las funciones de transferencia de las neuronas sean derivables. Sea un MLP de tres capas es decir, con una capa oculta cuya arquitectura se presenta en la Figura 13-, con las entradas, salidas, pesos y umbrales de las neuronas definidos anteriormente. Dado un patrón de entrada x r (r = 1,..., N) la operación global de esta arquitectura se representa del siguiente modo, para cada una de las k con (k = 1,..., s) neuronas de salida: ( o o zk r = w kjy j r θ k = w n kjf ) w ji x r i θ j θ k i=1 Al igual que en el caso de la adalina, la función de costo de la que se parte es el 16
17 error cuadrático medio, E(w, w, θ, θ ) = 1 2 Nr=1 mk=1 (c r k z r k) 2, siendo la función E(w, w, θ, θ ) E : IR n o+o s+o+s IR (w 11,..., w on, w 1s,..., w os, θ 1,..., θ o, θ 1,..., θ s) E(w 11,..., w on, w 1s,..., w os, θ 1,..., θ o, θ 1,..., θ s) La minimización se llevará a cabo por el descenso por el gradiente, existiendo en este caso un gradiente respecto de los pesos de la capa de salida w kj = ε E y w kj otro respecto de los pesos de la capa oculta w ji = ε E w ji. Las expresiones de actualización de los pesos se obtienen derivando, teniendo en cuenta las dependencias funcionales y aplicando la regla de la cadena. 2 N o w kj = ε c r k w kjy j r θ k yj r r=1 N w ji = ε r jx r i r=1 ( n ) f w ji x s o r i θ j con r j = w kjy j r θ k w kj i=1 ( n ) k=1 w ji x r i θ j i=1 La actualización de los umbrales (bias) se realiza por medio de las anteriores expresiones, considerando que el umbral es un caso particular de un peso sináptico, cuya entrada es una constante igual a 1. En las expresiones anteriores está implícito el concepto de propagación hacia atrás de los errores que da el nombre al algoritmo. En primer lugar se calcula la expresión c r k w kjy j r θ k que se denomina señal de error, por ser proporcional o al error de la salida actual de la red, con el que se calcula la actualización w kj de los pesos de la capa de salida. A continuación se propagan hacia atrás los errores o c r k w kjy j r θ k a través de la sinapsis, obteniéndose las señales de error ( n ) f w s o ji x r i θ j w kjy j r θ k w kj ( i=1 n ) correspondientes a las sinapsis de la k=1 w ji x r i θ j i=1 capa oculta. Con estas señales de error se calcula la actualización de w ji de las sinapis ocultas. El algoritmo puede además ser extendido a arquitecturas con más de una capa oculta siguiendo este esquema de retropropagación del error. Según lo visto, el procedimiento para entrenar mediante el algoritmo BP una arquitectura MLP dada es el siguiente: Paso 1. Establecer aleatoriamente los pesos y umbrales iniciales (t := 0). 17
18 Paso 2. Para cada patrón r del conjunto de entrenamiento 2.1 Llevar a cabo una fase de ejecución para obtener la respuesta de la red frente al patrón r-ésimo o 2.2 Calcular las señales de error asociadas c r k w kjy j r θ k y ( n ) f w s o ji x r i θ j w kjy j r θ k w kj ( i=1 n ) k=1 w ji x r i θ j i=1 2.3 Calcular el incremento parcial de los pesos y umbrales debidos a cada patrón r. Paso 3. Calcular el incremento total actual, extendido a todos los patrones, de los pesos w kj y w ji. Hacer lo mismo con los umbrales. Paso 4. Actualizar pesos y umbrales. Paso 5. Calcular el error total. Hacer t := t + 1 y volver al Paso 2 si todavía el error total no es satisfactorio. Se debe comenzar siempre con pesos iniciales aleatorios pequeños, tanto positivos como negativos. En el esquema presentado se lleva a cabo una fase de ejecución para todos y cada uno de los patrones del conjunto de entrenamiento, se calcula la variación en los pesos debida a cada patrón, se acumulan, y a continuación se efectúa la actualización de los pesos. Este esquema se acostumbra a denominar aprendizaje por lotes o en batch. El algoritmo BP es un método de aprendizaje general que presenta como ventaja principal el hecho de que se puede aplicar a gran número de problemas distintos, proporcionando buenas soluciones con no demasiado tiempo de desarrollo. Sin embargo si se pretende afinar más y obtener una solución excelente habría que ser cuidadoso en cuestiones adicionales que se encuentran fuera del alcance de estos apuntes, tales como la determinación de una arquitectura óptima, la selección de los pesos iniciales, el preprocesamiento de los datos de entrada, la utilización de técnicas que eviten el sobreajuste, etc. 18
19 Referencias 1. S. Ramón y Cajal (1899). Textura del Sistema Nervioso del Hombre y de los Vertebrados, N. Moya. 2. D.E. Rumelhart, J.L. MacClelland (eds.) (1986). Parallel Distributed Processing. Vol 1. Foundations, MIT Press. 3. J.L. McClelland, E. Rumelhart (eds.) (1986). Parallel Distributed Processing. Vol 2. Psychological and Biological Models, MIT Press 4. W.S. McCulloch, W. Pitts (1943). A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, 5, C.M. Bishop (1995). Neural Networks for Pattern Recognition, Oxford University Press 6. S. Haykin (1999). Neural Networks. A Comprehensive Foundation, Prentice-hall 7. J.C. Principe, N.R. Eulalio, W.C. Lefebvre (2000). Neural and Adaptive Systems. Foundamentals Through Simulations, John Wiley 8. D. Hebb (1949). Organization of the Behaviour, Wiley 9. F. Rosenblatt (1962). Principles of Neurodynamics, Spartan Books 10. M. Minsky, S. Papert (1969). Perceptrons: An Introduction to Computational Geometry, MIT Press 11. B. Widrow, M.E. Hoff (1960). Adaptive switching circuits. IRE WESCON Convention Record, 4, B. Widrow, R. Winter (1988). Neural nets for adaptive filtering and adaptive patterns recognition. IEEE Computer, P.J. Werboz (1974). Beyond Regression: New Tools for Prediction and Analysis in Behavioral Sciences. Tesis Doctoral. Universidad de Harvard 14. K.I. Funahaski (1989). On the approximate realization of continuous mappings by neural networks. Neural networks, 2, D.E. Rumelhart, G.E. Hinton, R.J. Williams (1986). Learning representations by backpropagation errors. Nature, 323,
Tema 8: Redes Neuronales
Tema 8: Redes Neuronales Pedro Larrañaga, Iñaki Inza, Abdelmalik Moujahid Intelligent Systems Group Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad del País Vasco http://www.sc.ehu.es/isg/
Análisis de Datos. Perceptrón multicapa. Profesor: Dr. Wilfrido Gómez Flores
Análisis de Datos Perceptrón multicapa Profesor: Dr. Wilfrido Gómez Flores 1 Introducción De acuerdo con el consejo de la IEEE Neural Networks de 1996, inteligencia artificial (IA) es el estudio de cómo
REDES NEURONALES ADAPTABLES
REDES NEURONALES ADAPTABLES Unidad 3: Redes neuronales artificiales y modelos de entrenamiento SubTemas 3.2 Perceptron simple Arquitectura Regla delta Multi Layer Perceptrón 3.3 Redes Neuronales Adaptables
Redes Neuronales. Las redes neuronales son modelos computacionales que buscan imitar el funcionamiento
Redes Neuronales Las redes neuronales son modelos computacionales que buscan imitar el funcionamiento de las neuronas biológicas. Se usan principalmente para el reconocimiento de patrones complejos. Para
Técnicas de inteligencia artificial. Aprendizaje: Perceptrón multi-capa
Técnicas de inteligencia artificial Aprendizaje: Perceptrón multi-capa Índice Regla delta Modelo computacional Neuronas e hiperplanos Entrenamiento como ajuste supervisado No-separabilidad lineal Backpropagation
Redes Neuronales. Parte II. Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Mg. Ing. Gustavo E. Juárez
Redes Neuronales Parte II Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Mg. Ing. Gustavo E. Juárez UNIDAD TEMÁTICA : REDES NEURONALES Introducción. De/iniciones. Topologías
Inteligencia Artificial. Aprendizaje neuronal. Ing. Sup. en Informática, 4º. Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani
Inteligencia Artificial Aprendizaje neuronal Ing. Sup. en Informática, 4º Curso académico: 20/202 Profesores: Ramón Hermoso y Matteo Vasirani Aprendizaje Resumen: 3. Aprendizaje automático 3. Introducción
Redes Neuronales Artificiales
Redes Neuronales Artificiales Introducción a la Robótica Inteligente Álvaro Gutiérrez de abril de 208 [email protected] www.robolabo.etsit.upm.es Mapas Predicción Robótica M l M r W ij S S 2 S 3 S 4
Aprendizaje: Perceptrón multi-capa
Técnicas de inteligencia artificial Asignatura troncal: 4.5cr, 4ºCurso Ing Inf Aprendizaje: Perceptrón multi-capa 2003-2004 F.Escolano, O.Colomina, M.A. Cazorla Perceptrón 1 Indice Regla delta Modelo computacional
Tema 2 Primeros Modelos Computacionales
Universidad Carlos III de Madrid OpenCourseWare Redes de Neuronas Artificiales Inés M. Galván - José Mª Valls Tema 2 Primeros Modelos Computacionales 1 Primeros Modelos Computacionales Perceptron simple
Redes Neuronales Multicapa
Undécima sesión 16 de abril de 2010 Relación entre capas y conjuntos bajo estudio Estructura Regla de decisión XOR Clases no linealmente separables Regiones generalizadas Una capa Regiones separables con
Las Redes Neuronales Artificiales y su importancia como herramienta en la toma de decisiones. Villanueva Espinoza, María del Rosario CAPÍTULO V
CAPÍTULO V V. ALGORITMOS NEURONALES Los modelos neuronales utilizan varios algoritmos de estimación, aprendizaje o entrenamiento para encontrar los valores de los parámetros del modelo, que en la jerga
CONCEPTOS BÁSICOS (Freeman capt.1; Neural Nets capt. 4,5 y 7)
Tema 1: Conceptos Básicos Sistemas Conexionistas 1 CONCEPTOS BÁSICOS (Freeman capt.1; Neural Nets capt. 4,5 y 7) 1.- Introducción. 1.1.- Redes Neuronales de Tipo Biológico. 1.2.- Redes Neuronales dirigidas
Introducción a las Redes Neuronales
Introducción a las Redes Neuronales Excepto en las tareas basadas en el cálculo aritmético simple, actualmente, el cerebro humano es superior a cualquier computador: Reconocimiento de imágenes, Interpretación
Neural Network Toolbox
Neural Network Toolbox Sistemas Conexionistas - Curso 08/09 La Neural Network Toolbox es un paquete de Matlab que contiene una serie de funciones para crear y trabajar con redes de neuronas artificiales.
Aprendizaje Automatizado. Redes Neuronales Artificiales
Aprendizaje Automatizado Redes Neuronales Artificiales Introducción Otra forma de emular características propias de los humanos: memorizar y asociar hechos. Se aprende de la experiencia. El cerebro humano
EL PERCEPTRON MULTICAPA (MLP) 6
Otra diferencia fundamental de la adaline con respecto del asociador lineal y el perceptrón simple radica en la regla de aprendizaje. En la adaline se utiliza la regla de Widrow Holf, también conocida
Perceptrón multicapa. Diego Milone y Leonardo Rufiner Inteligencia Computacional Departamento de Informática FICH-UNL
Perceptrón multicapa Diego Milone y Leonardo Rufiner Inteligencia Computacional Departamento de Informática FICH-UNL Organización Un poco de historia... Cómo resolver el problema XOR? Métodos de gradiente
REDES NEURONALES Y MODELOS PREDICTIVOS
REDES NEURONALES Y MODELOS PREDICTIVOS Jorge Estévez Analista Grupo ER SERIES TEMPORALES El valor de un actico a lo largo del tiempo es una serie temporal. Por tanto, la predicción de valores futuros consiste
Sistemas Control Embebidos e Instrumentación Electrónica UNIVERSIDAD EAFIT Semestre 2009/2 2010/2
REDES NEURONALES Semestre 2010/2 INTRODUCCIÓN A LAS REDES NEURONALES La forma como el cerebro humano procesa la información es completamente diferente a la forma como la procesa un computador digital:
Instituto tecnológico de Minatitlán. Investigación de operaciones Ing. Erika Lissette Minaya mortera Unidad 3: programación no lineal
Instituto tecnológico de Minatitlán Investigación de operaciones Ing. Erika Lissette Minaya mortera Unidad 3: programación no lineal Alejandra de la cruz francisco Ingeniería en sistemas computacionales
REDES NEURONALES INTELIGENCIA ARTIFICIAL II
REDES NEURONALES INTELIGENCIA ARTIFICIAL II REDES NEURONALES El cerebro humano es el sistema de cálculo más complejo que conoce el hombre. El ordenador y el hombre realizan bien diferentes clases de tareas;
Redes neuronales en control de sistemas
Redes neuronales en control de sistemas Marco Teórico Las redes neuronales tratan de emular ciertas características propias de los humanos, una muy importante es la experiencia. El ser humano es capaz
ANEXO II.- TEORÍA SOBRE REDES NEURONALES ARTIFICIALES
ANEXO II.- TEORÍA SOBRE REDES NEURONALES ARTIFICIALES 1. Concepto de red neuronal artificial Una red neuronal artificial (RNA) es un modelo matemático que intenta reproducir el modo de funcionamiento y
Redes Neuronales. Elementos básicos de las redes neuronales Carlos Andrés Delgado S.
Redes Neuronales Elementos básicos de las redes neuronales [email protected] Carlos Andrés Delgado S. Facultad de Ingeniería. Universidad del Valle Agosto de 2017 Contenido 1
TLU(s) MULTICAPAS. Se pueden implementar funciones en TLU con más de una capa.
TLU(s) MULTICAPAS Se pueden implementar funciones en TLU con más de una capa 1 05 2 15 2 3 z 3 15 2 4 05 No eisten, en la actualidad, mecanismos de entrenamiento que permita conocer los pesos sinápticos
Redes Neuronales. Introducción a las redes neuronales Carlos Andrés Delgado S.
Redes Neuronales Introducción a las redes neuronales [email protected] Carlos Andrés Delgado S. Facultad de Ingeniería. Universidad del Valle Agosto de 2017 Contenido 1 Neurofisiología
Tema: Aprendizaje Supervisado.
Sistemas Expertos e Inteligencia Artificial. Guía No. 9 1 Tema: Aprendizaje Supervisado. Facultad: Ingeniería Escuela: Computación Asignatura: Sistemas Expertos e Inteligencia Artificial Objetivos Específicos
PROBABILIDAD Y ESTADÍSTICA. Sesión 5 (En esta sesión abracamos hasta tema 5.8)
PROBABILIDAD Y ESTADÍSTICA Sesión 5 (En esta sesión abracamos hasta tema 5.8) 5 DISTRIBUCIONES DE PROBABILIDAD CONTINUAS Y MUESTRALES 5.1 Distribución de probabilidades de una variable aleatoria continua
Aprendizaje Automatizado. Redes Neuronales Artificiales
Aprendizaje Automatizado Redes Neuronales Artificiales Introducción Una forma de emular características propias de los humanos: memorizar y asociar hechos. Se aprende de la experiencia. El cerebro humano
Práctica 2 Métodos de búsqueda para funciones de una variable
Práctica 2 Métodos de búsqueda para funciones de una variable Introducción Definición 1. Una función real f se dice que es fuertemente cuasiconvexa en el intervalo (a, b) si para cada par de puntos x 1,
Tema 11: Intervalos de confianza.
Tema 11: Intervalos de confianza. Presentación y Objetivos. En este tema se trata la estimación de parámetros por intervalos de confianza. Consiste en aproximar el valor de un parámetro desconocido por
Práctica 3. CÁLCULO DE LA FUNCIÓN SENO UTILIZANDO UN DESARROLLO EN SERIE
PROGRAMACIÓN (EUI). Curso 2001-2002 Práctica 3. CÁLCULO DE LA FUNCIÓN SENO UTILIZANDO UN DESARROLLO EN SERIE F. Marqués y N. Prieto Índice General 1 Introducción 1 2 El problema 1 2.1 Desarrollo en serie
Desarrollo de las condiciones de optimalidad y factibilidad. El problema lineal general se puede plantear como sigue:
Método simplex modificado Los pasos iterativos del método simplex modificado o revisado son exactamente a los que seguimos con la tabla. La principal diferencia esá en que en este método se usa el algebra
3. Métodos clásicos de optimización lineal
3. Métodos clásicos de optimización lineal Uso del método Simplex El problema que pretende resolverse es un problema de optimización lineal sujeto a restricciones. Para el modelo construido para el problema
INVESTIGACIÓN OPERATIVA Redes Neuronales Artificiales y Aplicaciones INTEGRANTES: Armijos Mauricio Jara Iza Rony
INVESTIGACIÓN OPERATIVA Redes Neuronales Artificiales y Aplicaciones INTEGRANTES: Armijos Mauricio Jara Iza Rony Técnicas De La Inteligencia Artificial Programación Heurística Redes Neuronales. Evolución
Redes Neuronales. Introducción. José Manuel Quero Reboul Dpto. Ingeniería Electrónica Universidad de Sevilla
Redes Neuronales Introducción José Manuel Quero Reboul Dpto. Ingeniería Electrónica Universidad de Sevilla Indice Motivación Arquitectura Leyes de Aprendizae Aplicaciones DILEMA MEMORIA CALCULO Aritmética
Tema 3: Ðreas de la IA: Ejemplos de Investigaci n Actual (III) Redes Neuronales
Tema 3: Ðreas de la IA: Ejemplos de Investigaci n Actual (III) Redes Neuronales SRP Carlos Carrascosa Casamayor Vicente J. Julián Inglada Tema 3: Ðreas de La IA: Ejemplos de Investigaci n Actual (II) Redes
Aplicaciones de las Derivadas
Tema 4 Aplicaciones de las Derivadas 4.1 Introducción Repasaremos en este Tema algunas de las aplicaciones fundamentales de las derivadas. Muchas de ellas son ya conocidas por tratarse de conceptos explicados
Redes Neuronales Artificiales
Redes Neuronales Artificiales Claudio Javier Tablada Germán Ariel Torres Resumen. Una Red Neuronal Artificial es un modelo matemático inspirado en el comportamiento biológico de las neuronas y en la estructura
Optimización en Ingeniería
Optimización en Ingeniería Departamento de Computación CINVESTAV-IPN Av. IPN No. 2508 Col. San Pedro Zacatenco México, D.F. 07300 email: [email protected] Método de Búsqueda de Fibonacci Algoritmo
Redes Neuronales Artificiales
Neuronales Artificiales Eduardo Morales, Hugo Jair Escalante Coordinación de Ciencias Computacionales Instituto Nacional de Astrofísica, Óptica y Electrónica Septiembre, 2015 (INAOE) Septiembre, 2015 1
Profesor: Leonardo Franco Despacho Web:
Asignatura: MODELOS COMPUTACIONALES Ingeniería a técnica t en informática de gestión Horario Clases: Martes y Jueves 7:30-9:30 Aula: 3.05 Profesor: Leonardo Franco Despacho 3.2.29 Email: [email protected]
www.matesxronda.net José A. Jiménez Nieto
NÚMEROS REALES 1. NÚMEROS IRRACIONALES: CARACTERIZACIÓN. En el tema correspondiente a números racionales hemos visto que estos números tienen una característica esencial: su expresión decimal es exacta
Redes Neuronales Multicapa
4 de abril de 2011 Relación entre capas y conjuntos bajo estudio Estructura Regla de decisión XOR Clases no linealmente separables Regiones generalizadas Una capa Regiones separables con hiperplanos Dos
Funciones de varias variables.
Funciones de varias variables. Definición. Hasta ahora se han estudiado funciones de la forma y = f (x), f :D Estas funciones recibían el nombre de funciones reales de variable real ya que su valor y dependía
Detección Multiusuario para DS-CDMA basado en SVM
9 Otra técnica basada en el aprendizaje y más conocida que la anterior es la basada en. Vamos a realizar una pequeña comparativa teórica de sobre ambas técnicas de clasificación. Estudiaremos los conceptos
Procesamiento Digital de Imágenes. Pablo Roncagliolo B. Nº 20
Procesamiento Digital de Imágenes Pablo Roncagliolo B. Nº 20 Orden de las clases... CAPTURA, DIGITALIZACION Y ADQUISICION DE IMAGENES TRATAMIENTO ESPACIAL DE IMAGENES TRATAMIENTO EN FRECUENCIA DE IMAGENES
CAPÍTULO 3. Las redes neuronales artificiales, ANNs por sus siglas en inglés, son el resultado de varias
CAPÍTULO 3 REDES NEURONALES ARTIFICIALES 3.1 Introducción Las redes neuronales artificiales, ANNs por sus siglas en inglés, son el resultado de varias décadas de investigaciones desarrolladas en torno
Introducción a las Redes de Neuronas
OPENCOURSEWARE REDES DE NEURONAS ARTIFICIALES Inés M. Galván José M. Valls Tema 1 Introducción a las Redes de Neuronas Introducción a las Redes de Neuronas 1 Introducción a las Redes de Neuronas Introducción
Inteligencia Artificial (Curso ) Grado en Ingeniería Informática - Ingeniería del Software
Inteligencia Artificial (Curso 0-0) Grado en Ingeniería Informática - Ingeniería del Software Redes neuronales Cuestión : Decir si las siguientes afirmaciones son verdaderas o falsas: Si tomamos la función
PROBLEMAS TEMA 1: Estructuras de interconexión de un computador
PROBLEMAS TEMA 1: Estructuras de interconexión de un computador Problemas propuestos en examen PROBLEMA 1. Una CPU que emplea un tamaño de palabra de 16 bits tiene un repertorio de 16 instrucciones con
Relación 7 - Redes neuronales
Sistemas Inteligentes 0-0 Relación - Redes neuronales Problemas Ejercicio. Explicar cómo se usaría una red neuronal para obtener un reconocedor de letras escritas a mano. Describir con precisión qué estructura
Redes Neuronales Artificiales
Redes Neuronales Artificiales Alejandro Osses Vecchi 11 de julio de 2009 1. Introducción Comenzaremos con una definición simple y general de Red Neuronal para, en las próximas secciones, explicar y profundizar
2. CURVAS PLANAS, ECUACIONES PARAMÉTRICAS Y COORDENADAS POLARES
2. CURVAS PLANAS, ECUACIONES PARAMÉTRICAS Y COORDENADAS POLARES INDICE 2.1. Curvas planas y ecuaciones paramétricas...2 2.2. Ecuaciones paramétricas de algunas curvas y su representación grafica 3 2.3.
Introducción a la Geometría Computacional
Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 8 de enero del 2013 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Introducción a la GC 8 de enero del 2013 1 / 17 1 Introducción a la Geometría Computacional
Modelos de input-output y cadenas de Markov
MaMaEuSch Management Mathematics for European Schools http://www.mathematik.unikl.de/~mamaeusch/ Modelos de input-output y cadenas de Markov Ao. Univ.-Prof. Werner Peschek El proyecto MaMaEuSch ha sido
Redes de Neuronas de Base Radial
Redes de Neuronas de Base Radial 1 Introducción Redes multicapa con conexiones hacia delante Única capa oculta Las neuronas ocultas poseen carácter local Cada neurona oculta se activa en una región distinta
BACK-PROPAGATION: UN ALGORITMO DE ENTRENAMIENTO PARA REDES NEURONALES
BACK-PROPAGATION: UN ALGORITMO DE ENTRENAMIENTO PARA REDES NEURONALES Paul Acquatella B. Universidad Simón Bolívar, Valle de Sartenejas, Caracas, Venezuela. [email protected] Resumen Este trabajo presenta
Los números naturales
Los números naturales Los números naturales Los números naturales son aquellos que sirven para contar. Se suelen representar utilizando las cifras del 0 al 9. signo suma o resultado Suma: 9 + 12 = 21 sumandos
Redes Neuronales Artificiales El Perceptrón
1 Sistemas Expertos e Inteligencia Artificial / Guía IX / Ciclo 01-2018 Facultad: Ingeniería Escuela: Computación Asignatura: Sistemas Expertos e Inteligencia Artificial Redes Neuronales Artificiales El
REDES NEURONALES. Una esquema simplificado de una neurona se muestra en la siguiente figura. Cuerpo celular. Dendrita. Axón.
REDES NEURONALES Las redes neuronales constituyen una poderosa herramienta para modelar sistemas, especialmente no lineales, sean dinámicos o estáticos. En el cuerpo celular se realizan la mayoría de las
TEMA 2: DERIVADA DE UNA FUNCIÓN
TEMA : DERIVADA DE UNA FUNCIÓN Tasa de variación Dada una función y = f(x), se define la tasa de variación en el intervalo [a, a +h] como: f(a + h) f(a) f(a+h) f(a) y se define la tasa de variación media
La programación lineal hace referencia al uso eficiente o distribución de recursos limitados, para alcanzar unos objetivos determinados.
Programación lineal La programación lineal hace referencia al uso eficiente o distribución de recursos limitados, para alcanzar unos objetivos determinados. El nombre de programación no se refiere a la
Profesor: Rafa González Jiménez. Instituto Santa Eulalia ÍNDICE
TEMA 5: DERIVADAS. APLICACIONES. ÍNDICE 5..- Derivada de una función en un punto. 5...- Tasa de variación media. Interpretación geométrica. 5..2.- Tasa de variación instantánea. Derivada de una función
Ejemplo Traza la gráfica de los puntos: ( 5, 4), (3, 2), ( 2, 0), ( 1, 3), (0, 4) y (5, 1) en el plano cartesiano.
Plano cartesiano El plano cartesiano se forma con dos rectas perpendiculares, cuyo punto de intersección se denomina origen. La recta horizontal recibe el nombre de eje X o eje de las abscisas y la recta
Sistemas de ecuaciones lineales
Sistemas de ecuaciones lineales Este tema resulta fundamental en la mayoría de las disciplinas, ya que son muchos los problemas científicos y de la vida cotidiana que requieren resolver simultáneamente
Tema 1. Álgebra lineal. Matrices
1 Tema 1. Álgebra lineal. Matrices 0.1 Introducción Los sistemas de ecuaciones lineales aparecen en un gran número de situaciones. Son conocidos los métodos de resolución de los mismos cuando tienen dos
Algoritmos y Diagramas de flujo
Algoritmos y Diagramas de flujo En los pasos a seguir para el desarrollo de un problema, existen básicamente dos tipos de elementos con los cuales es posible especificar un problema en forma esquemática
INTRODUCCION DE LA INTELIGENCIA ARTIFICIAL EN LA INGENIERIA CIVIL
INTRODUCCION DE LA INTELIGENCIA ARTIFICIAL EN LA INGENIERIA CIVIL RESUMEN: ATRAVEZ DE LAS REDES NEURONALES ARTIFICIALES * Ing. Karina Carbajal Valdivia El objetivo de este trabajo es hacer una introducción
Inteligencia Artificial II (Curso ) Ejercicios propuestos del tema 5
Inteligencia Artificial II (Curso 0-0) Ejercicios propuestos del tema Ejercicio : Diseñar un perceptrón simple con n valores de entrada y función umbral de activación que sirva para calcular la función
Determinantes. Primera definición. Consecuencias inmediatas de la definición
Determinantes Primera definición Para calcular el determinante de una matriz cuadrada de orden n tenemos que saber elegir n elementos de la matriz de forma que tomemos solo un elemento de cada fila y de
Reconocimiento automático de palabras en documentos históricos usando redes neuronales convolucionales
Reconocimiento automático de palabras en documentos históricos usando redes neuronales convolucionales Dra. Ma. de Guadalupe García Hernández Departamento de Ingeniería Electrónica Objetivo general Aplicar
Redes Neuronales Artificiales
Red de Hopfield Almacenar un conjunto de p patrones de forma tal que cuando se presente un nuevo patrón, la red responda produciendo alguno de los patrones previamente almacenados que más se parezca al
Perceptrones Fernando Berzal,
Fernando Berzal, [email protected] Introducción Redes neuronales artificiales Modelos de redes Modelo de neurona artificial Funciones de activación La neurona de McCulloch y Pitts El algoritmo de aprendizaje
CAPÍTULO 3: DETERMINANTES Y SISTEMAS DE ECUACIONES
CAPÍTULO 3: DETERMINANTES Y SISTEMAS DE ECUACIONES Parte A: determinantes. A.1- Definición. Por simplificar, consideraremos que a cada matriz cuadrada se le asocia un número llamado determinante que se
Perceptrón Simple. Aspectos Prácticos y Algoritmos Redes Neuronales, DC-FCEyN-UBA. Rosana Matuk Primer Cuatrimestre 2018
Perceptrón Simple Aspectos Prácticos y Algoritmos Redes Neuronales, DC-FCEyN-UBA Rosana Matuk Primer Cuatrimestre 2018 Rosana Matuk (DC-FCEyN-UBA) Perceptrón simple Primer Cuatrimestre 2018 1 / 29 Objetivo
P. A. U. LAS PALMAS 2005
P. A. U. LAS PALMAS 2005 OPCIÓN A: J U N I O 2005 1. Hallar el área encerrada por la gráfica de la función f(x) = x 3 4x 2 + 5x 2 y la rectas y = 0, x = 1 y x = 3. x 3 4x 2 + 5x 2 es una función polinómica
TEMA 5 COMUNICACIONES ANALÓGICAS
TEMA 5 COMUNICACIONES ANALÓGICAS Modulaciones angulares Introducen la información exclusivamente en la fase de una portadora, manteniendo constante la amplitud y(t )= A c cos[ω c t +ϕ(t)] La potencia media,
PROGRAMACIÓN LINEAL ENTERA
PROGRAMACIÓN LINEAL ENTERA Programación lineal: hipótesis de perfecta divisibilidad Así pues decimos que un problema es de programación lineal entera, cuando prescindiendo de las condiciones de integridad,
Unidad 1. Las fracciones.
Unidad 1. Las fracciones. Ubicación Curricular en España: 4º, 5º y 6º Primaria, 1º, 2º y 3º ESO. Objetos de aprendizaje. 1.1. Concepto de fracción. Identificar los términos de una fracción. Escribir y
Proyecciones. Producto escalar de vectores. Aplicaciones
Proyecciones La proyección de un punto A sobre una recta r es el punto B donde la recta perpendicular a r que pasa por A corta a la recta r. Con un dibujo se entiende muy bien. La proyección de un segmento
Explorando la ecuación de la recta pendiente intercepto
Explorando la ecuación de la recta pendiente intercepto Realiza las siguientes actividades, mientras trabajas con el tutorial. 1. Los puntos que están en la misma recta se dice que son. 2. Describe el
Programación Lineal. Unidad 1 Parte 2
Programación Lineal Unidad 1 Parte 2 Para la mayoría de los problemas modelados con programación lineal, el método gráfico es claramente inútil para resolverlos, pero afortunadamente y gracias a la dedicación
Complementos de Matemáticas, ITT Telemática
Introducción Métodos de punto fijo Complementos de Matemáticas, ITT Telemática Tema 1. Solución numérica de ecuaciones no lineales Departamento de Matemáticas, Universidad de Alcalá Introducción Métodos
Sistemas de Ecuaciones Lineales
Sistemas de Ecuaciones Lineales 1 Sistemas de ecuaciones y matrices Definición 1 Una ecuación lineal en las variables x 1, x 2,..., x n es una ecuación de la forma con a 1, a 2... y b números reales. a
Manejo de Entrada-Salida. Arquitectura de Computadoras
Manejo de Entrada-Salida Arquitectura de Computadoras Agenda 1.2.3.1Módulos de entrada/salida. 1.2.3.2Entrada/salida programada. 1.2.3.3Entrada/salida mediante interrupciones. 1.2.3.4Acceso directo a memoria.
Polinomios. 1.- Funciones cuadráticas
Polinomios 1.- Funciones cuadráticas Definición 1 (Función polinomial) Sea n un entero no negativo y sean a n, a n 1,..., a, a 1, a 0 número s reales con a n 0. La función se denomina función polinomial
