p=1
| b
p
b
p
|
2
. (1)
2. La raz cuadrada del error cuadr atico medio
(Root Mean Square Error, RMSE) denida como
p=1
| b
p
b
p
|
2
/r. (2)
3. El error m aximo,
max| b
p
b
p
|, p = 1, . . . , r, (3)
donde
b
p
es la salida de la red para el vector de en-
trada a
p
. N otese que en el caso de una unica sal-
ida, la funci on norma | . | se reduce a la funci on
valor absoluto [ . [ usual.
17
Introduccin a las Redes Neuronales
Universidad
de Cantabria
0 2 4 6 8 10
0
1
2
3
4
5
6
(c)
0 2 4 6 8 10
0
1
2
3
4
5
6
(d)
0 2 4 6 8 10
0
1
2
3
4
5
6
(a)
0 2 4 6 8 10
0
1
2
3
4
5
6
(b)
SOBREAJUSTE (OVERFITTING)
En estadstica es bien conocido que cuando se uti-
liza un modelo con muchos parametros para ajus-
tar un conjunto de datos procedente de proceso con
pocos grados de libertad, el modelo obtenido puede
no descubrir las tendencias reales del proceso origi-
nal, aunque pueda presentar un error peque no.
La curva (a) pasa exactamente por los puntos de
entrenamiento. La curva (b) muestra el compor-
tamiento sobre un conjunto alternativo. La curva
(c) es un polinomio de tercer grado. La diferencia
entre ambos modelos puede verse en (d).
18
Introduccin a las Redes Neuronales
Universidad
de Cantabria
w
i1
w
i2
w
in
i
x
1
x
2
x
n
j=1
n
w
ij
x
j
f( )
j=1
n
w
ij
x
j
-1
NEURONAS
UNIDADES DE PROCESO
Neuronas: X = (x
1
, . . . , x
i
, . . . , x
n
), donde x
i
es
el nivel de actividad de la i-esima neurona.
Pesos: los pesos de la neurona i-esima forman
un vector W
i
= (w
i1
, . . . , w
ij
, . . . , w
i,n
), donde w
ij
es el peso de la conexion de x
j
a x
i
.
La actividad lineal de x
i
esta dada por la funci on,
F(x
i
, W
i
) =
n
j=1
w
ij
x
j
,
que depende de los pesos W
i
.
Para incluir un valor umbral
i
para la neurona x
i
,
se considera una neurona auxiliar de valor x
0
= 1
y se conecta a x
i
con un peso
i
.
u(w, x
i
) =
n
j=1
w
ij
x
j
w
i0
i
or u(w, x
i
) = W
i
X
19
Introduccin a las Redes Neuronales
Universidad
de Cantabria
FUNCIONES DE ACTIVACION
Funciones lineales: f(x) = x.
Funciones paso:Dan una salida binaria depen-
diente de si el valor de entrada esta por encima o
por debajo del valor umbral.
sgn(x) =
1, si x < 0,
1, sino,
, (x) =
0, si x < 0,
1, sino.
Funciones sigmoidales: Funciones mon otonas
acotadas que dan una salida gradual no lineal.
1. La funci on logstica de 0 a 1:
f
c
(x) =
1
1 + e
c x
.
2. La funci on tangente hiperb olica de 1 a 1
f
c
(x) = tanh(c x).
20
Introduccin a las Redes Neuronales
Universidad
de Cantabria
(a)
(c)
(b)
ARQUITECTURAS DE RED
1. Conexiones hacia delante.
2. Conexiones laterales.
3. Conexiones hacia atr as (o recurrentes).
21
Introduccin a las Redes Neuronales
Universidad
de Cantabria
LA RED DE HOPFIELD
La red neuronal de Hopeld es una arquitec-
tura formada por una s ola capa principal-
mente que se utiliza principalmente como
memoria autoasociativa, para almacenar y
recuperar informaci on.
La informaci on se almacena usando un
metodo simple de aprendizaje no super-
visado que obtiene la matriz de pesos que
hace que dado cada uno de los patrones de
entrenamiento (almacenamiento) la red de-
vuelva el mismo patron (recuperaci on).
Posteriormente, cuando se tenga una con-
guraci on arbitraria de las neuronas como
entradas, la red devolver a aquel patr on al-
macenado que este mas cerca de la congu-
raci on de partida en terminos de la distancia
de Hamming
22
Introduccin a las Redes Neuronales
Universidad
de Cantabria
LA RED DE HOPFIELD
MEMORIZANDO DATOS
Se considera una red neuronal de una s ola capa sobre
un conjunto de neuronas binarias x
1
, . . . , x
n
(con
valores en 1, 1) donde cada neurona x
i
posee un
vector de pesos w
i
= (w
i1
, . . . , w
in
), con w
ii
= 0 indi-
cando que no existe conexio consigo misma.
Se considera tambien la siguiente denici on binaria
de la neurona:
x
i
= sgn(
n
j=1
w
ij
x
j
). (4)
Ahora, sup ongase que se quieren obtener los pe-
sos apropiados para memorizar un patr on a =
(a
1
, . . . , a
n
). Entonces, los pesos tienen que satis-
facer las siguientes condiciones de estabilidad:
a
i
= sgn(
n
j=1
w
ij
a
j
), i = 1 . . . , n, (5)
p or tanto la red devuelve el mismo patron dado
como entrada. Como se estan usando los valores
neuronales 1, 1, entonces a
2
j
= 1 y las condi-
ciones anteriores de estabilidad se pueden alcanzar
considerando los pesos
w
ij
=
1
n
a
i
a
j
. (6)
23
Introduccin a las Redes Neuronales
Universidad
de Cantabria
LA RED DE HOPFIELD
MEMORIZANDO DATOS
El mismo algoritmo puede extenderse a varios pa-
trones, (a
p1
, . . . , a
pn
), p = 1, . . . , r:
w
ij
=
1
n
r
p=1
a
pi
a
pj
. (7)
En este caso, cuando se da como entrada un patr on
a
p
se obtiene
x
i
= sgn(
1
n
j
r
k=1
a
ki
a
kj
a
pj
)
= sgn(
1
n
j
a
pi
a
pj
a
pj
+
j
k=p
a
ki
a
kj
a
pj
)
= sgn(a
pi
+
1
n
k=p
a
ki
a
kj
a
pj
). (8)
El problema de estabilidad se determina por los
terminos de correlaci on cruzada en el segundo
termino de la suma en (8). Si es m as peque no que n,
entonces se puede concluir que el patron es estable.
Un an alisis estadstico de estos terminos cruzados
demostro que cuando el n umero de patrones a ser
almacenado, p, y el n umero de neuronas, n, satisface
la relaci on: p < 0.138 n, entonces menos del 1% de
los bits es inestable
24
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EJEMPLO: RECONOCIMIENTO
DE CARACTERES
Para este ejemplo se utiliza una red de
Hopeld con 25 neuronas consistente en
una cuadrcula 5 5 que recibe una ima-
gen de puntos de una letra. Se consideran
unicamente las tres representaciones habit-
uales de las vocales A, E, e I.
Los dgitos A, E, e I se representan como
-1-11-1-1. . . , 1111-1. . . , y -1111-1. . . , re-
spectivamente donde los valores negativos
se representan en gris y los positivos en ne-
gro.
25
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EJEMPLO: RECONOCIMIENTO
DE CARACTERES
La matriz de pesos 2525 se obtiene f acilmente. Por
ejemplo,
w
12
=
1
25
3
k=1
a
1k
a
2k
=
1
25
(11+1111) =
1
25
1.
El valor resultante, ignorando la constante de nor-
malizacion, se representa por un cuadrado negro de
peque no tama no en la esquina superior izquierda
(peso w
12
). En esta gura, los colores negro y gris
estan asociados a los pesos positivos y negativos, re-
spectivamente, donde el tama no de la caja repre-
senta la magnitud del valor.
26
Introduccin a las Redes Neuronales
Universidad
de Cantabria
INFORMACION CORRUPTA
Una vez construda la red de Hopeld, esta
reconoce las tres vocales a un cuando se uti-
liza como entrada cualquier otra cuadrcula
(digitalizaci on) 5 5 correspondiente a una
version particular no est andar de la vocal.
27
Introduccin a las Redes Neuronales
Universidad
de Cantabria
ESTADOS ESPUREOS
Si se intenta utilizar la misma arquitec-
tura de red para reconocer las cinco vocales
como en este caso el n umero de patrones
es mayor de 0.138 n = 0.138 25 = 3.45,
pueden aparecer algunos estados de falsa es-
tabilidad en el modelo.
28
Introduccin a las Redes Neuronales
Universidad
de Cantabria
REDES MULTI-CAPA
Entre las arquitecturas de red m as populares desta-
can las llamadas redes multi-capa o de retro-
propagaci on.
Denition 3 (Capa de Entrada de una Red Neu-
ronal) Una unidad se dice que est a en la capa de
entrada de una red neuronal (X, U), si es la entrada
de al menos un unidad funcional de U y no es la
salida de ninguna unidad procesadora de U.
Denition 4 (Capa de Salida de una Red Neuronal)
Una unidad se dice que est a en la capa de salida de
una red funcional (X, U), si es la salida de al menos
una unidad funcional de U y no es la entrada de
ninguna unidad procesadora de U.
Denition 5 (Capas Intermedias u Ocultas de una
Red Neuronal) Una unidad se dice que esta en la
capa intermedia de una red neuronal (X, U), si es la
entrada de al menos una unidad funcional de U y, al
mismo tiempo, es la salida de al menos una unidad
procesadora de U.
29
Introduccin a las Redes Neuronales
Universidad
de Cantabria
y
1
y
2
y
3
x
1
x
2
x
3
x
4
Inputs
Outputs
w
ji
y
1
y
2
y
3
x
1
x
2
x
3
x
4
a
1
p
a
2
p
a
3
p
a
4
p
b
1
p
b
2
p
b
3
p
b
1
p
b
2
p
b
3
p
EL PERCEPTRON
El perceptr on es un red neuronal de dos capas (una
de entrada y una de salida) con conexiones hacia
delante.
y
i
= f(Y
i
) = f(
j
w
ij
x
j
)
Como se pueden obtener los pesos adecuados para
aprender un conjunto de patrones?.
30
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EL PERCEPTRON
(APRENDIZAJE)
Aprendizaje Hebbiano: Inicialmente se eli-
gen valores aleatorios para los pesos. La idea
del aprendizaje Hebiano era modicar los pesos
acorde a la correlaci on entre las unidades. Se
eligen los patrones de uno en uno; por ejemplo
(a
p
, b
p
). Si b
p
i
=
b
p
i
, entonces se modica el peso:
w
ij
= (b
p
i
b
p
i
)a
p
j
Descenso de Gradiente: Inicialmente se eli-
gen valores aleatorios para los pesos. La idea de
este metodo es utilizar un proceso iterativa que
minimice la funci on de error
E(w) =
1
2
i,p
(b
p
i
b
p
i
)
2
.
En el caso lineal (f(x) = x) se tiene
w
ij
=
E
w
ij
=
p
(b
p
i
b
p
i
)a
p
j
.
En general, se tiene
w
ij
=
E
w
ij
=
p
(b
p
i
b
p
i
)f
/
(B
p
i
)a
p
j
.
El par ametro se llama tasa de aprendizaje.
31
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EL PERCEPTRON
(APRENDIZAJE)
En el caso de funciones sigmoidales, las f ormulas an-
teriores no involucran derivadas simb olicas, pues
f(x) =
1
1 + e
c x
f
/
(x) = c f(x) (1 f(x))
f(x) = tanh(c x) f
/
(x) = c (1 f(x)
2
)
Se han propuesto distintas mejoras de este metodo
para incrementar su eciencia.
Se puede incluir un par ametro de inercia para
acelerar la convergencia al mnimo:
w
ij
(t + 1) =
E
w
ij
+ w
ij
(t 1)
Otros metodos incluyen terminos la funci on de
error que penalizan grandes pesos:
E(w) =
r
p=1
(y
p
y
p
)
2
+
i,j
w
2
ij
, (9)
donde es un par ametro de regularizacion, que
controla el equilibrio entre el modelo ajustado y
la penalizaci on. El efecto de esta regularizacion
de los pesos es suavizar la funcion de error, ya
que los pesos grandes est an usualmente asociados
a valores de salida altos.
32
Introduccin a las Redes Neuronales
Universidad
de Cantabria
0 0.2 0.4 0.6 0.8 1
0
0.2
0.4
0.6
0.8
1
CLASIFICACION LINEAL
PLANTEAMIENTO
Los problemas de clasicacion consisten en asignar
patrones dados a sus respectivas clases, o categoras,
basandose en patrones representativos de cada clase.
x y c x y c x y c
0.272 0.987 0 0.524 0.196 1 0.629 0.232 1
0.506 0.371 1 0.750 0.594 1 0.818 0.295 1
0.526 0.900 0 0.005 0.972 0 0.112 0.318 0
0.932 0.968 1 0.641 0.926 0 0.351 0.813 0
0.369 0.938 0 0.827 0.617 1 0.739 0.706 1
Se puede construir un perceptr on con estos puntos
para obtener autom aticamente el criterio de clasi-
cacion. Por ejemplo, si se considera un perceptr on
con dos entradas, x
i
y y
i
, y una salida c
i
con funci on
de activacion lineal
c
i
= w
1
x
i
+ w
2
y
i
+ q, (10)
33
Introduccin a las Redes Neuronales
Universidad
de Cantabria
0 5 10 15 20 25
0.2
0.3
0.4
0.5
0.6
0.7
0.8
e
n
0 5 10 15 20 25
-0.5
0
0.5
1
w2
w1
q
0 0.2 0.4 0.6 0.8 1
x
0.2
0.4
0.6
0.8
1
y
0
1
c
0 0 2 0 4 0 6 0 8 1
2
.4
0.6
0.8
1
y
0 0.2 0.4 0.6 0.8 1
0
0.2
0.4
0.6
0.8
1
0
1
CLASIFICACION LINEAL
APRENDIZAJE
Descenso de gradiente con = 0.2.
c
i
= 1.28x
i
0.815y
i
+ 0.384. (11)
34
Introduccin a las Redes Neuronales
Universidad
de Cantabria
0 0.2 0.4 0.6 0.8 1
x
0.2
0.4
0.6
0.8
1
y
0
1
c
0 0 2 0 4 0 6 0 8 1
2
0.4
0.6
0.8
1
y
0 0.2 0.4 0.6 0.8 1
0
0.2
0.4
0.6
0.8
1
0
1
0 0.2 0.4 0.6 0.8 1
x
0.2
0.4
0.6
0.8
1
y
0
1
c
0 0 2 0 4 0 6 0 8 1
2
0.4
0.6
0.8
1
y
0 0.2 0.4 0.6 0.8 1
0
0.2
0.4
0.6
0.8
1
0
1
CLASIFICACION LINEAL
APRENDIZAJE
Si se considera una funci on de activaci on sigmoidal
f(x) = (1 + e
x
)
1
o de paso (x) en (10).
35
Introduccin a las Redes Neuronales
Universidad
de Cantabria
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
CLASIFICACION NO LINEAL
Sup ongase que se tiene un conjunto de
100 puntos aleatorios en el intervalo (1, 1)
clasicados en dos categoras: los que estan
dentro del crculo (puntos rellenos), y los
que estan fuera (puntos huecos).
Como estas dos categoras no son lineal-
mente separables, entonces un perceptron
no puede obtener un criterio de clasicaci on
apropiado.
36
Introduccin a las Redes Neuronales
Universidad
de Cantabria
h
1
h
2
h
3
y
1
y
2
x
1
x
2
x
3
x
4
Inputs
Outputs
Hidden
Units
W
kj
w
ji
EL PERCEPTRON MULTI-CAPA
En este caso los patrones de aprendizaje son
un conjunto de inputs a
p
i
, i = 1, . . . , n y sus
correspondientes outputs b
p
k
, k = 1, . . . , m.
El metodo m as popular de aprendizaje se
denomina retro-propagaci on y est a basado
en minimizar la funci on de error mediante
un metodo de descenso de gradiente.
Inicialmente se eligen valores aleatorios
para los pesos.
37
Introduccin a las Redes Neuronales
Universidad
de Cantabria
h
1
h
2
h
3
y
1
y
2
RETRO-PROPAGACION
LA CAPA DE SALIDA
Los pesos de correspondientes a las neuronas de
la capa de salida y
i
= f(Y
i
) son modicados con-
siderando los valores de las neuronas ocultas h
i
=
f(H
i
). En este caso, la funcion de error es
E(w) =
1
2
p,k
(b
p
k
b
p
k
)
2
=
1
2
p,k
(b
p
k
f(
j
W
kj
f(
i
w
ji
x
p
i
)))
2
.
Entonces
W
kj
=
E
W
kj
=
E
b
p
k
b
p
k
B
p
k
B
p
k
W
kj
W
kj
= h
p
j
p
k
, where
p
k
= (b
p
k
b
p
k
)f
/
(B
p
k
)
38
Introduccin a las Redes Neuronales
Universidad
de Cantabria
h
1
h
2
h
3
x
1
x
2
x
3
x
4
w
ji
RETRO-PROPAGACION
LA CAPA OCULTA
Los pesos de correspondientes a las neuronas de
la capa oculta h
i
= f(H
i
) son modicados con-
siderando los valores de las neuronas de entrada
x
i
= f(X
i
) y los de las neuronas de salida y
i
= f(Y
i
).
w
ji
=
E
w
ji
=
E
b
p
k
b
p
k
B
p
k
B
p
k
h
p
j
h
p
j
H
p
j
h
p
j
w
ji
,
w
kj
= a
p
i
p
k
p
j
where
p
j
=
k
p
k
W
kj
f
/
(H
p
j
).
39
Introduccin a las Redes Neuronales
Universidad
de Cantabria
RETRO-PROPAGACION
ALGORITMO
1. Inicializar los pesos con valores arbitrarios.
2. Elegir un patr on p y propagarlo hacia delante.
Con ello obtenemos h
p
j
y b
p
k
(outputs de las capas
oculta y de salida).
3. Calcular los errores de salida:
p
k
= (b
p
k
b
p
k
)f
/
(B
p
k
) = (b
p
k
b
p
k
)
b
p
k
(1
b
p
k
)
4. Calcular los errores de la capa oculta:
p
j
=
k
p
k
W
kj
f
/
(H
p
j
) =
k
p
k
W
kj
h
p
j
(1 h
p
j
)
5. Calcular:
W
kj
= h
p
j
p
k
,
y
w
kj
= a
p
i
p
k
p
j
y actualizar los pesos.
6. Repetir los pasos anteriores para cada patron.
40
Introduccin a las Redes Neuronales
Universidad
de Cantabria
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
0 100 200 300 400
0
0.1
0.2
0.3
0.4
0.5
e
n
CLASIFICACION NO LINEAL
Perceptr on multicapa 2 : 5 : 1
41
Introduccin a las Redes Neuronales
Universidad
de Cantabria
MAPAS CAOTICOS:
EL MAPA DE HENON
El mapa de Henon es uno de los ejemplos mas ilus-
trativos de sistemas simples con dinamica compleja
(caos determinista).
x
n+1
= 1.0 1.4 x
2
n
+ 0.3 x
n1
Para aproximar este mapa se utiliza una red neu-
ronal 2:3:1 (la salida es x
n
y las entradas x
n1
y x
n2
).
42
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EL MAPA DE HENON
RED NEURONAL
En algunos casos el proceso de optimizacion no con-
verge al mnimo global, sino a uno local. Esto es
debido al gran n umero de par ametros involucrado
en la red y a las caractersticas de los modelos de
aprendizaje.
43
Introduccin a las Redes Neuronales
Universidad
de Cantabria
y
1
y
2
y
k
x
1
x
2
x
3
x
i
a
1j
a
2j
a
3j
a
ij
w
ki
REDES COMPETITIVAS
Las redes competitivas son muy utilizadas
para detectar autom aticamente grupos, o
categoras, dentro de los datos disponibles.
Cada patr on de entrada representa un
punto en el espacio de conguraci on (el es-
pacio de entradas) donde se quieren obtener
clases. Para ello, la capa de salida contiene
tantas neuronas como clases, o categoras,
como se quieran obtener.
44
Introduccin a las Redes Neuronales
Universidad
de Cantabria
REDES COMPETITIVAS
APRENDIZAJE
Este tipo de arquitectura se entrena normalmente
con un algoritmo consistente en seleccionar la
ganadora (winner takes all), por lo que s olo son ac-
tualizados los pesos asociados a la neurona de mayor
salida (la ganadora) para un patr on dado.
Considerense los datos de entrenamiento consis-
tentes en un conjunto de patrones de entrada
(a
1j
, . . . , a
nj
), j = 1, . . . , m.
Se empieza con peque nos valores aleatorios para
los pesos. A continuaci on, se aplica el patr on
(a
1j
, . . . , a
nj
), y se selecciona la unidad salida
ganadora, sea y
k
. Los pesos asociados con esta neu-
rona son modicados de acuerdo con
w
ki
= (a
ij
w
ki
). (12)
El efecto es mover el vector peso (w
k1
, . . . , w
kn
) di-
rectamente hacia (a
1j
, . . . , a
nj
).
N otese que en el caso de clasicacion supervisada,
usando perceptrones multi-capa, el usuario propor-
ciona ejemplos de las diferentes categoras.
45
Introduccin a las Redes Neuronales
Universidad
de Cantabria
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
0
0
x
y
(b) (a)
x
y
x
y
w
11
z
1
z
2
w
12
w
22
w
21
z
1
z
2
z
3
w
11
w
12
w
13
w
21
w
22
w
23
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
0
0
0.2 0.4 0.6 0.8 1
0.2
0.4
0.6
0.8
1
0
0
(a)
(b)
x
1
y
2
x
1
REDES COMPETITIVAS
EJEMPLO
46
Introduccin a las Redes Neuronales
Universidad
de Cantabria
EJERCICIOS
1. Utilizar un perceptr on con dos unidades de en-
trada y una de salida para modelizar las funciones
l ogicas AND y OR. Se puede modelizar tambien
una puerta XOR?
2. Considerar el chero de datos sincos.dat que
contiene
tres colomnas de datos (x, sin(x), cos(x)) e in-
tentar aproximarlo con un perceptr on multicapa
2:?:1. Probar varios valores de los par ametros
de aprendizaje, , y momento, y comparar la
convergencia en los distintos casos. Que valores
recomiendas para este problema?
3. Considerar la funci on no lineal
y(x) = 20e
8.5 x
(Ln(0.9 x + 0.2) + 1.5).
Generar un chero con 50 pares (x, y(x)) en el in-
tervalo (0, 1) para entrenar un perceptr on multi-
capa 1:8:1. Generar tambien un chero con otros
50 puntos distintos para comprobar la validez de
la aproximaci on.
47