Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CH Csaavedra PDF
CH Csaavedra PDF
orden de los milisegundos (10¡3 ). Sin embargo, el cerebro se transmitirá un pulso a lo largo del axón, en caso
compensa en forma excepcional la lentitud relativa en el contrario no transmitirá. Después de transmitir un
funcionamiento neuronal con un número inmenso de neuronas impulso, la neurona no puede transmitir durante un
con interconexiones masivas entre ellas. Se estima que el tiempo de entre 0,5 ms a 2 ms. A este tiempo se le
número de neuronas en el cerebro es del orden de 1010 , y llama período refractario.
que el número de conexiones sinápticas es 6 £ 1013 . La red
En base a estas dos características, construiremos el
resultante que es el cerebro es una estructura enormemente
modelo de red neural.
eficiente. Específicamente, la eficiencia energética del
cerebro es aproximadamente de 10¡16 J=(operaciones £ s),
la cual es del orden de 1010 veces mayor que la de los mejores 3. Modelo Neuronal.
computadores en la actualidad.
Aquí se desea introducir un modelo sencillo de la
La mayoría de las neuronas codifican sus salidas como
neurona, para construir redes, nuestro fin último es modelar
una serie de breves pulsos periódicos, llamados potenciales
correctamente el comportamiento global de toda la red. No se
de acción, que se originan cercanos al soma de la célula y
pretende modelar exactamente el comportamiento fisiológico
se propagan a través del axón. Luego, este pulso llega a las
de la neurona, sino más bien sólo sus características más
sinapsis y de ahí a las dendritas de la neurona siguiente.
relevantes, que entran en juego en su interacción con toda la
Una sinapsis es una interconexión entre dos neuronas, un
red.
dibujo esquemático de ella se incluye en la figura 2. En ella,
Tenemos un esquema de neurona en la figura 3. En él
el botón sináptico corresponde al término del axón de una
nuestra neurona de interés es la yj . Las n neuronas xi están
neurona pre-sináptica, y la dendrita es la correspondiente a
enviando señales de entradas, que son los valores numéricos
una neurona post-sináptica.
de “algo”. Los valores wji representan los pesos sinápticos en
50 nm las dendritas de yj . Obsérvese la notación: el primer índice
denota a la neurona hacia donde se dirige la información, el
segundo índice denota de qué neurona procede la información.
y y
y(in) y(in)
Estas funciones evidentemente transmiten la idea de Resulta mucho más compacto y práctico añadir lo que se
“disparar sobre un umbral”. Las neuronas y sus funciones de llama una neurona de inclinación, x0 , a la que se asigna un
activación se dividen en dos tipos: bipolares o antisimétricas y valor fijo de 1, y un peso sináptico wj0 . A la neurona yj le
binarias. En las primeras, -a · yj · a, siendo generalmente asignamos un umbral fijo de cero.
a = 1, y en las segundas, 0 · yj · 1. Además, a veces Se ve claramente que esto es equivalente a que la neurona
se suele usar como función de activación una relación lineal, yj tenga un umbral de ¡wj0 . Entonces se tiene que:
generalmente la función identidad. Esta se usa por lo general
para neuronas de entrada a la red o sensores. Esto se debe
a que evidentemente, lo que esperamos de un sensor es que n
X
(in)
indique precisamente lo que está percibiendo. yj = wji xi ; con x0 = 1. (3)
Si la función de activación de una neurona es lineal, i=0
x1 x2 y x1 x2 y
1 1 1 x1 1 1 1 1 x1 2
0 1 0 y 0 1 1 y
1 0 0 1 0 1
0 0 0
x2 1 0 0 0
x2 2
Ahora es muy fácil comprobar que las tablas de verdad efectivamente se cumplen1 , por ejemplo, la primera línea de la tabla de
verdad para el And:
1 £ 1 + 1 £ 1 = 2 = y in ) y = 1
x1 x2 z 2
1 1 0 x1 -1
y1 2
0 1 1 z
1 0 1 -1
0 0 0 x2 y2 2
2
fig 9: Función xOr.
3.4. Problemas Linealmente Separables y Capas Neurales. Sabemos que la entrada y (in) estará dada por:
0 1
C la s e 1
Σwji xi =0
1 i =0
Clase1 Clase1
C la s e 0
0 0 0
x1 Clase2
0 1
Clase2
Espaciox
Figura 11: And sobre el plano.
Si la entrada está en la región “Clase 1” producirá una salida
1, si está en la “Clase 0”, una salida de 0. Vemos que se
Figura 13: Separabilidad Lineal.
pueden separar las entradas que deben producir una salida 1
de las que deben producir una salida 0 por una línea recta. Se Para aclarar el concepto de redes sencillas primero
dice entonces que el problema es linealmente separable. Para revisaremos otro concepto: las Capas Neurales.
resolver un problema linealmente separable, nos basta con una
red “sencilla”. 3.4.2. Capas Neurales
Revisemos en cambio, como es la función xOr sobre el
plano: Cuando trabajamos con grandes cantidades de neuronas,
es natural ordenar aquellas que tienen comportamientos
similares en “capas”, como en la figura 14. De ahí que se
x2 usen los subíndices para las neuronas. Cada capa es un vector
de neuronas.
1 1 0
0 0 1
x1
0 1
Figura 12: xOr sobre el plano.
6 F. IZAUTIRETA Y C. SAAVEDRA
w10
1= x0 wj0
wn0
w11
x1 wj1 y1
wn1
w1i
Entrada
Salida
xi wji yj
wni
w1m
xm wjm yn
wnm
Capa 0 Capa 1
Figura 14: Red Unicapa.
Se acostumbra no contabilizar la capa de entrada, por lo tanto se dice que la red de la figura 14 es “Unicapa”. Las sinapsis
obviamente están ordenadas en una matriz wji de n £ (m + 1). Evidentemente, de nuestro análisis anterior, tenemos que una red
unicapa sólo puede resolver problemas linealmente separables. En una red unicapa, las neuronas de salida pueden ser lineales o
no lineales.
Pero es evidente que podemos seguir añadiendo capas, como se muestra en la figura 15.
1
u10 v10
1= x0 uj0 y0 vk0
un0 vp0
u11 v11
x1 uj1 y1 vk1 z1
un1 vp1
u1i v1i
Entrada
Salida
xi uji yj vkj zk
uni vpj
u1m w1n
xm ujm yn wkn zp
unm wpn
Capa 0 Capa 1 Capa 2
Figura 15: Red Multicapa.
REDES NEURONALES ARTIFICIALES 7
En una red multicapa, las capas ocultas, que en nuestra ² Luego, con la señal de error ej (n), corrijo las sinapsis
figura corresponde a la Capa 2, siempre son no lineales. Se de la red mediante algún algoritmo de los que se verá a
puede demostrar muy fácilmente que si se construye una red continuación. “No hijo, esta no es una E, es una A...”.
multicapa con capas ocultas lineales, ésta es equivalente a una
red unicapa.
Podemos ver fácilmente la idea de paralelismo al observar
las capas de las redes. Cada neurona de una capa no necesita
de las demás en su misma capa para trabajar, son capaces Profesor
por lo tanto de trabajar simultáneamente. Esta cualidad {xi(n);dj(n)}
se ha aprovechado al diseñar chips paralelos con la nueva xi (n) dj (n)
tecnología VLSI (Very Large Scale Integrated), en donde se
han implementado varios tipos de neuroredes. oj (n) - +
Una red multicapa es capaz de resolver problemas más
complejos, pero su proceso de aprendizaje también es más Neurored
Σ
complicado.
² Luego comparamos ambas señales, la respuesta donde las capas de neuronas xi e yj están distribuidas como en
deseada dj (n) y la respuesta de la red oj (n), creando la figura 14. A la constante de proporcionalidad ´ se le llama
una señal de error, ej (n) = dj (n) ¡ oj (n). “Mmm... el “razón de aprendizaje”. Para ver como funciona, supongamos
niño no está tan despierto como esperaba...”. que xi e yj son bipolares o antisimétricas, con a = 1. Si xi
8 F. IZAUTIRETA Y C. SAAVEDRA
e yj toman ambas simultáneamente el valor de 1 (o de -1), ser un receptor, es capaz de reconocer el movimiento y
¢wji (n) = ´, y esa sinapsis se reforzará. En cambio, si una
tomase el valor -1 y la otra el de 1, ¢wji (n) = ¡´, y esa bordes, y puede adaptarse a cambios locales en el brillo.
sinapsis se debilitará. Un perceptrón es una red de una sola capa, como la de
Este aprendizaje explica el famoso experimento de Pavlov. la figura 14. Las neuronas de salida son no lineales, con
Él le daba alimento a un perro y simultáneamente tocaba una función de activación tipo escalón. En nuestros experimentos
campanilla. Después de repetir esto muchas veces, Pavlov numéricos, utilizamos funciones de activación bipolares o
tocó sólo la campanilla, sin alimento. Y el perro, sólo antisimétricas, como la siguiente:
oyendo la campanilla, salivaba. La explicación es muy simple.
Al activarse simultáneamente las neuronas que controlan la 8 (in)
salivación y las que perciben la campanilla, las sinapsis entre >
< ¡1 si yj < 0
(in)
ellas se refuerzan. yj = 0 si yj = 0 (9)
>
: (in)
1 si yj > 0
4.3. Aprendizaje para redes Unicapa.
4.3.1. Regla de Aprendizaje perceptrónico. Nótese que se incluyó un punto neutro. A este se le suele
llamar punto de indeterminación. A veces incluso se usa
Objetivo y funcionamiento general: Esta regla una región en torno al origen que produce una salida de cero, a
de aprendizaje está diseñada especialmente para el la cual se le llama banda de indeterminación. Simplemente
reconocimiento de patrones, pero por ser red unicapa, dice que la neurona no sabe que responder. Cada neurona de
sólo se pueden usar patrones linealmente separables. El salida representa a una clase determinada, si una de ellas se
perceptrón nació como un primer intento de modelar la retina, activa con una entrada, significa que pertenece a esa clase,
en 1958, por Rosenblatt. Es usual pensar que la retina es si está desactiva, que no pertenece. Aquí, incluimos dos
simplemente un receptor (como el detector CCD de una experimentos al respecto, clasificando imágenes de letras.
cámara de vídeo), pero en realidad es una red altamente La entrada xi corresponde al i-ésimo píxel de la imagen.
compleja. Sólo ha podido ser reproducida en ojos para robots Digamos por ejemplo que tenemos una red que nos clasifica
y retinas artificiales para ciegos en la última década, mediante una entrada como X u O. Lo que queremos es que funcione
los llamados circuitos neuromórficos. La retina, además de como se muestra en la figura 17, en donde la neurona marcada
con X reconoce a la clase X, y la con O, a la clase O:
x 1: “E s una X ”
X O -1 : “N o es u n a O ”
x -1 : “N o es u n a X ”
O O 1: “E s una O ”
Algoritmo Perceptrónico. Veamos ahora como entrenar 1; :::; N , hacer los pasos del 3 y 4.
esta red que cuenta mo y m1 número de neuronas de entrada
y salida respectivamente. Además, existen N pares de
entrenamiento fxi (n); dj (n)gN
n=1 . De esta forma el algoritmo Paso 3: j = 1; :::; m1
es:
m0
X
Paso 0: Inicializar las sinapsis de la red, se puede elegir (in)
wji (0) = 0 ó valores aleatorios. se elige una razón yj (n) = wji (n)xi (n)
de aprendizaje ´, 0 < ´ · 1. i=0
8 (in)
Paso 1: Mientras la condición de parada del paso 5 sea falsa, >
< ¡1 si yj (n) < 0
(in)
realizar los pasos del 2 al 5. yj (n) = 0 si yj (n) = 0
>
: (in)
Paso 2: Para cada par de entrenamiento, (xi (n); dj (n)) ; n = 1 si yj (n) > 0
REDES NEURONALES ARTIFICIALES 9
Paso 4: Si yj (n) 6= dj (n), para algún j entre 1 y m1 , el mismo hiperplano de separación, aunque distintos pesos
entonces sinápticos. Además, generalmente, no es un solo hiperplano
el que nos podría delimitar bien la frontera, sino que más bien
wji (n + 1) = wji (n) + ´dj (n)xi (n); hay infinitos, como se muestra en la figura 18:
donde j = 1; :::; m1 ; i = 0; :::; m0 . En caso contrario
wji (n + 1) = wji (n)
Paso 5: Si los pesos sinápticos no cambian para cada patrón
de entrenamiento durante la última vez que se realizó el Clase 1
paso 2, entonces parar, sino es así, continuar.
Se ve claramente que en nuestro caso, ¢wji (n) =
´dj (n)xi (n) o 0, dependiendo de si hubo error o no. Podemos
entender intuitivamente el algoritmo de la siguiente forma.
Supongamos que la j-ésima neurona respondió de forma
(in) Clase 2
incorrecta, dijo -1 en vez de 1. Esto significa que yj (n) fue
demasiado pequeño, debemos hacer que crezca haciendo que
P0
m
más términos en la sumatoria wji (n)xi (n) sean positivos
i=0
y lo máximo posible. O sea, si la i-ésima entrada, xi (n) es Espacio x
+1, entonces la i-ésima sinapsis, wji (n), debiera ser positiva
y lo más grande posible también: debemos hacerla crecer. Si Figura 18: Infinitas Soluciones.
por el contrario, xi (n) es -1, debemos hacer bajar a wji (n).
O sea, o no existe ninguna solución, o existen infinitas.
Eso es lo que se re eja en la forma en que hemos construido
Es posible demostrar que si existe solución, entonces
el ¢wji (n), si dj (n) es +1, entonces ¢wji (n) tiene el mismo
el algoritmo perceptrónico convergerá a una de las infinitas
signo que xi (n). En el caso contrario, es todo al revés.
soluciones en un número finito de pasos.
Es bastante evidente que si un problema es linealmente
separable, existen infinitos pesos sinápticos que servirán
para solucionar el problema. Basta con multiplicar por una Experimentos Computacionales. A modo de ejemplo se
Pn incluyen dos experimentos (computacionales), ambos de
constante la ecuación wji xi = 0 y seguimos teniendo
i=0 clasificación de letras. Para el primero, usamos las siguientes
entradas:
Cada imagen es de 7 £ 9 = 63 píxels, un píxel negro corresponde a un +1 y uno blanco a un -1, se usó ´ = 1. Las sinapsis
se inicializaron con 0. Para construir el vector xi de entradas, simplemente ponemos una fila de la imagen después de la otra.
Después del entrenamiento, algunos patrones que fueron clasificados correctamente fueron los siguientes:
10 F. IZAUTIRETA Y C. SAAVEDRA
A C D E K
-4
X O I
Figura 24: Otras Sinapsis para X, O e I.
Figura 21: Patrones de entrenamiento, 2 Ahora, pasaremos a otra tarea que realizan muy bien las
neuroredes: predecir.
Se necesitaron sólo tres épocas. Algunos patrones que
fueron clasificados correctamente, son: 4.3.2. Regla Delta, o corrección de error.
Esta es una regla muy popular, en ella se usa una red de una
sola capa, igual que la perceptrónica, pero la neurona de salida
tiene una función de activación derivable, generalmente la
función identidad o la tangente hiperbólica. Para esta regla,
usamos un algoritmo más sencillo, simplemente calculamos el
X O I error ej (n) = dj (n) ¡ yj (n) correspondiente a cada entrada,
y luego corregimos las sinapsis de la red mediante la regla:
Nuevamente observamos la plasticidad. Pero, ¿cómo se
distribuyen las sinapsis?. Para verlo de un modo gráfico,
(in)
simplemente reordenamos en la misma forma de la imagen ¢wji (n) = ´ej (n)'0j (yj (n))xi (n) (10)
original a las sinapsis, obteniéndose 3 gráficas: Una para las
sinapsis que se conectan con la neurona de la X, otra con la de Si las neuronas de salida tienen a la identidad como
(in)
la O y otra con la de la I. función de activación, '0j (yj (n)) = 1, y entonces,
REDES NEURONALES ARTIFICIALES 11
x( [n+1]T )
x( nT )
wn +
Sistema ˆx( [n+1]T )
x( iT ) wi x̂ -
Σ
Dinámico
w1
e(n)
x( T ) w0
1 ∆wi(n)
figura 25: Predictor Lineal
0.8
Retropropagador de Error.
0.6 Neurored
0.4
x 0.2
4.4.1. Estructura y Notación general
0
-0.2
-0.8
salida es la capa L-ésima, y tiene mL neuronas. La de entrada
-1 es la capa 0, y tiene m0 neuronas. Decimos que nuestra red
50 100 150 200 250 tiene L capas, a L se le llama a veces la profundidad de la
Tiem po [T] red.
Figura 26: Experimento de Predicción.
12 F. IZAUTIRETA Y C. SAAVEDRA
Entrada
Salida
m0 m1 m2 ... mL-2 mL-1 mL
Figura 27: Red Multicapa.
Señal de Función
2 Etapas:
Señal de Error
4.4.2. Definiciones.
Muchos físicos han trabajado en este campo, y han
Error: Supongamos que la capa de salida está constituida empleado términos de la Física.
por las neuronas zk . Entonces, el error cometido al
presentarse el n-ésimo par de entrenamiento es: Energía promedio de error. Es el promedio de la energía
de error durante una época completa de presentación de
ek (n) = dk (n) ¡ zk (n): (11) patrones.
N
“Energía” de error: La “energía” de error al presentarse el 1 X
"pro = "(n) (13)
n-ésimo par de entrenamiento es: N n=1
El gradiente de "av señala su dirección de crecimiento. Se puede intentar evitar esto tratando de minimizar las " (n)
Evidentemente, viene dado por: en vez de "pro , pero de un modo bien especial, como se explica
en la siguiente sección.
@"pro
@ji "pro (wji ) = : (14)
@wji
Si queremos minimizar "pro , deberíamos dirigirnos en contra
del gradiente, como vemos en la siguiente relación: 4.4.3. Idea del Algoritmo.
wji
? hace muy difícil quedar atrapado en un mínimo local. Una
buena imagen mental sería estar esquiando en una montaña,
¡que está temblando alocadamente!. Evidentemente, tarde o
temprano llegaremos al valle más profundo que exista. Este
Figura 29: Peligro de caer en mínimo local. poceso se ilustra en la figura 30.
ε(n+1)
ε(n)
wji wji
Figura 30: Esquivando Minímos Locales.
@"(n)
¢wkj (n) = ´ = ´± k (n)yj (n), k = 1; :::; mL ; j = 0; :::; mL¡1 (18)
@wkj
@"(n)
¢vji (n) = ´ = ´± j (n)xi (n), j = 1; :::; mL¡1 ; i = 0; :::; mL¡2
@vji
Salida
vji wkj
xi yj zk
mL-2 mL-1 mL
Figura 31: Red Multicapas.