Upload
mayte-galano
View
112
Download
2
Embed Size (px)
Citation preview
El Perceptrón
1958 - El psicólogo Frank Ronsenblant desarrolló un modelo simple de neurona basado en el modelo de McCulloch y Pitts que utilizaba una regla de aprendizaje basada en la corrección del error: Perceptrón
x1
x2
x3
y
w1
w2
w3
... si 1
... si 1 ),...,,(
221
221
21
1
1
nn
nn
n xwxwxw
xwxwxwxxxfy
Función paso o De Heaviside Función signo 2211 xwxw
2211 xwxw
2211 xwxw
¿Qué se pretende con el Perceptrón?
Se dispone de la siguiente información:
Conjunto de patrones {xk}, k = 1,2,…,p1 , de la clase C1 (zk = 1)
Conjunto de patrones {xr}, k = p1+1,...,p , de la clase C2 (zr = -1)
Se pretende que el perceptrón asigne a cada entrada (patrón xk) la salida deseada zk siguiendo un proceso de corrección de error (aprendizaje) para determinar los pesos sinápticos apropiados
Regla de aprendizaje del Perceptrón: kxkykzkkw jj )(
1)(y 1)( si )(2)(
)()( si )(
,1)(y 1)( si )(2)(
)1(
kzkykxkw
kzkykw
kzkykxkw
kw
jj
j
jj
j
error
tasa de
aprendizaje
¿Cómo se modifica el sesgo ?
nn xwxwxw ...2211 0... 112211 nnnn xwxwxwxw
1x1
x2
x3
y
1
w1
w2
w3
0)1(...2211 nn xwxwxw
kykzkk )(
Algoritmo del Perceptrón
Paso 0: InicializaciónInicializar los pesos sinápticos con números aleatorios del intervalo [-1,1]. Ir al paso 1 con k=1Paso 1: (k-ésima iteración)Calcular
Paso 2: Corrección de los pesos sinápticos Si z(k) y(k) modificar los pesos sinápticos según la expresión:
Paso 3: ParadaSi no se han modificado los pesos en las últimas p iteraciones, es decir,
parar. La red se ha estabilizado.
En otro caso, ir al Paso 1 con k=k+1.
1
1
)(sgn)(n
jjj kxwky
1,...,2,1 , 1 njkxkykzkwkw jiijj
pkkrnjkwrw jj ,...,1 ,1,...,2,1 ),()(
Ejemplo
Diseña un perceptrón que implemente la función lógica AND
AND Entradas Salidas
(1, 1) 1 (1, 1)
1 (1, 1)
1 (1,1)
1
w1
w2
x1
x2
1
y
Paso 0: Inicialización aleatoria w1 = 0.4, w2 = 0.2, = 0.6,
Diseña un perceptrón que implemente la función lógica AND
0.3
0.2
1
1
1
y
0.6
Paso 1:Patrón de entrada (1,1): 1.1)1(6.0)1(2.0)1(3.0 h
Paso 2: Corrección de los pesos sinápticos
7.013.012)0()1( 11 ww
8.012.0)1(2)0()1( 22 ww
4.016.0)1(2)0()1(
Elegimos =0.5
y = 1
Diseña un perceptrón que implemente la función lógica AND
0.7
0.8
1
1
1
y
0.4
Paso 1:Patrón de entrada (1,1): 5.0)1(4.0)1(8.0)1(7.0 h
Como y = 1 y z = 1 la clasificación es correcta
y = 1
Diseña un perceptrón que implemente la función lógica AND
0.7
0.8
1
1
1
y
0.4
Paso 1:Patrón de entrada (1,1): 3.0)1(4.0)1(8.0)1(7.0 h
3.017.0)1(2)1()2( 11 ww
8.118.0)1(2)1()2( 22 ww
6.014.0)1(2)1()2(
Elegimos = 0.5
Paso 2: Corrección de los pesos sinápticos y = 1
Diseña un perceptrón que implemente la función lógica AND
0.3
1.8
1
1
1
y
0.6
Paso 1:Patrón de entrada (1,1): 1.2)1(6.0)1(8.1)1(3.0 h
3.113.0)1(2)2()3( 11 ww
8.018.1)1(2)2()3( 22 ww
4.016.0)1(2)2()3( Elegimos = 0.5
Paso 2: Corrección de los pesos sinápticosy = 1
Diseña un perceptrón que implemente la función lógica AND
1.3
0.8
-1
1
1
y
0.4
7.2)1(4.0)1(8.0)1(3.1 h04.08.03.1 21 xx
Patrón (1,1):
Patrón (1,1):
Patrón (1,1):
Patrón (1,1):
1.0)1(4.0)1(8.0)1(3.1 h
5.2)1(4.0)1(8.0)1(3.1 h
9.0)1(4.0)1(8.0)1(3.1 h
Diseña un perceptrón que implemente la función lógica AND
1.3
0.8
1
1
1
y
0.4
Paso 1:Patrón de entrada (1,1): 1.0)1(4.0)1(8.0)1(3.1 h
7.013.1)1(2)2()3( 11 ww
8.118.0)1(2)2()3( 22 ww
4.114.0)1(2)2()3( Elegimos = 0.5
Paso 2: Corrección de los pesos sinápticosy = 1
Diseña un perceptrón que implemente la función lógica AND
0.7
1.8
1
1
1
y
1.4
Paso 1:Patrón de entrada (1,1): 1.0)1(4.0)1(8.0)1(3.1 h
7.013.1)1(2)2()3( 11 ww
8.118.0)1(2)2()3( 22 ww
4.114.0)1(2)2()3( Elegimos = 0.5
Paso 2: Corrección de los pesos sinápticosy = 1
El Perceptrón
¿Dado un conjunto cualquiera de patrones de entrenamiento, puede el Perceptrón aprender a clasificarlos correctamente?
Problema XOR Entradas Salidas
(1, 1) 1
(1, 1) 1
(1, 1)
1
(1,1)1
(a) (b)
Conjuntos separables linealmente
Teorema de convergencia del Perceptrón
Si el conjunto de patrones de entrenamiento con sus salidas deseadas,{x1 ,z1}, {x2 ,z2},…,{ xp ,zp},
es linealmente separable entonces el Perceptrón simple encuentra una solución en un número finito de iteraciones
Demostración
*1
*2
*1 ,...,, nwww
n
jnjj wxw
11
*
n
jnjj wxw
11
*
Como es linealmente separable entonces existen
si son de la clase C1
si son de la clase C2
Demostración
1
1
1
1
2*2* )()()()(1n
j
n
jjjjjj wkxkykzkwwkw
1
1
1
1
2222*n
j
n
jjjj kxkykzwkw
1
1
*2n
jjjj kxwkwkykz
1
1
*1
1
2))((2n
jjj
n
jjj kxwkykzkxkwkykz
1
1
1
1
1
1
*222* 404n
j
n
j
n
jjjjjj kxwkxwkw
1
1
*2n
jjj kxw
1
1
2n
jjj kxkw
Demostración
max1
1
2
1
n
jj
pkkxL
min1
1
*
1
n
jjj
pkkxwT
1
1
1
1
1
1
1
1
*222*2* 441n
j
n
j
n
j
n
jjjjjjjj kxwkxwkwwkw
1
1
1
1
22*2* 441n
j
n
jjjjj TLwkwwkw
1
1
1
1
2*2* )(41n
j
n
jjjjj TLwkwwkw
0 TLSi
L
T
1
1
1
1
2*2*1n
j
n
jjjjj wkwwkw
Tasa de aprendizaje óptima
Se trata de elegir de la tasa de aprendizaje manera que se produzca un mayor decrecimiento del error en cada iteración
1
1
*1
1
1
1
22 444)()1()(n
jjj
n
j
n
jjjj kxwkxkwkxkDkDE
Error cuadrático en la iteración k+1
1
1
2*11n
jjj wkwkD
1
1
1
1
*1
1
2 0448n
j
n
jjj
n
jjjj kxwkxkwkx
E
1
1
2
1
1
*1
1
2n
jj
n
jjj
n
jjj
opt
kx
kxwkxkw
Tasa de aprendizaje óptima
1
1
2
1
1
*1
1
2n
jj
n
jjj
n
jjj
opt
kx
kxwkxkw
1
1
2
1
1~n
jj
n
jjj
opt
kx
kxkw
1
1
1
1
)()(2n
jjj
n
jjj kxkwkykzkxkw
1
1
2
1
1
2
)()(~
n
jj
n
jjj
opt
kx
kxkwkykz
Regla de aprendizaje normalizada
kxkykz
kx
kxkwkykz
kwkw jn
jj
n
jjj
jj
1
1
2
1
1
2)1(
kx
kx
kxkw
kwkw jn
jj
n
jjj
jj
1
1
2
1
12)1(
Regla de aprendizaje normalizada
1
1
22)1()1(
n
jj kwkw
1
11
1
2
1
1
2
1
11
1
2
1
11
1
22 )()()(
)()(
4)(
)()(
2)()(n
ijjn
jj
n
jjjn
jn
jj
n
jjjn
jjj kxkw
kx
kxkw
kx
kxkw
kxkw
1)(1
1
2
n
jj kw
Interpretación de la regla de aprendizaje del Perceptrón
1
1
0n
jjj
T xwxw
1
1
0n
jjj
T xwxw
x C1
x C2
21 ,)sgn( CCzy xxwT
caso otroen )(
0)())(( si )()()1(
k
kkkkk
T
w
waaww
1)( si )(
1)( si )(
kzk
kzk(k)
x
xa
0)())(( kk Twa
Se realizan las correcciones siempre y cuando se producen clasificaciones incorrectas, es decir,
Interpretación de la regla de aprendizaje del Perceptrón
0)())(( kk Twa
Se realizan las correcciones siempre y cuando se producen clasificaciones incorrectas, es decir,
a(k) w(k+1)
w(k)
a(k)
+
0)())(( kk Twa
Deducción de la regla de aprendizaje
0)( wa Tk
La regla de aprendizaje del Perceptrón intenta encontrar una solución w* para el siguiente sistema de desigualdades:
k =1,2,…,p
)(
)()(w
wawIk
TkJ
I(w) es el conjunto de patrones clasificados incorrectamente utilizando el vector de pesos sinápticos w (es decir, (a(k))T w 0). Así, J nunca es negativo y si dicho conjunto es vacío entonces J alcanza su valor mínimo, J = 0.
Función criterio:
)(
))((w
aIk
kJ
Método del descenso del gradienteJkkk )()()1( ww
)(
)()()(w
awIk
kkk
Algoritmo de aprendizaje por lotes del Perceptrón
Paso 0: Inicialización Inicializar los pesos sinápticos con números aleatorios del intervalo [-1,1]. Fijar un valor de parada s. Ir al paso 1 con k=1
Paso 1: (k-ésima iteración) Corrección de los pesos sinápticos
Paso 2: Parada
Si parar.
En otro caso, ir al Paso 1 con k=k+1.
)(
)()()()1(w
awwIk
kkkk
skkIk
)(
)()(w
a
)()()()1( kkkk aww Paso 1
Una modificación: La Regla del Bolsillo
Consiste en tener en cuenta el número de iteraciones consecutivas del algoritmo de perceptrón en las cuales no se ha modificado el vector de pesos sinápticos (para cada uno de los vectores que va generando), es decir, tener en cuenta el número de patrones que se han clasificado correctamente con dicho vector hasta que se ha encontrado el primer patrón que clasifica incorrectamente. Se tiene “guardado en el bolsillo” la mejor solución explorada, es decir, el vector de pesos sinápticos generado que ha conseguido, hasta el momento, el mayor número de iteraciones sin ser modificado. Cuando se encuentra un nuevo vector de pesos sinápticos que consigue un mayor número de clasificaciones correctas consecutivas que el que hay en el bolsillo entonces el vector del bolsillo se reemplaza por este. La solución final viene dada por el vector de pesos sinápticos guardado en el bolsillo.
La ADALINA
La ADALINA (también llamada ADALINE), pues corresponde al acrónimo de ADAptive Linear NEuron) o neurona con adaptación lineal que fue introducida por Widrow en 1959. Esta neurona es similar al Perceptrón simple pero utiliza como función de transferencia la función identidad en lugar de la función signo. La salida de la ADALINA es simplemente una función lineal de las entradas (ponderadas con los pesos sinápticos):
N
jjj xwy
1
1
1
N
jjj xwy
p21 xxx ,...,,
p21 zzz ,...,,
p
k
N
j
kjj
kp
k
k xkwzkyzE1
21
11
2)(
2
1
2
1
La ADALINA
p
k
N
j
kjj
kp
k
k xkwzkyzE1
21
11
2)(
2
1
2
1
)()()1( kwkwkw rrr
)()(
kw
Ekw
rr
k
rk xkyz )(
Aprendizaje individualizado:
La ADALINA
)()()1( kwkwkw rrr
)()(
kw
Ekw
rr
p
k
N
j
kjj
kp
k
k xwzp
kyzp
E1
21
11
2
2
1
2
1
p
k
kj
k xkyzp 1
)(1
Aprendizaje por lotes:
Neuronas con salida continua:
Regla de aprendizaje de Widrow-Hoff
N
jjj xwgy
1
xxg
2exp1
1
xx
xx
e
eexxg
etanh
x1
x2
x3
y
w1
w2
w3
Neuronas con salida continua:
Regla de aprendizaje de Widrow-Hoff
p
k
N
j
kjj
kp
k
k xkwgzkyzE1
21
11
2))((
2
1
2
1
)()(
kw
Ekw
jj
k
jk xhgkyz ')(
Neuronas con salida continua:
Regla de aprendizaje de Widrow-Hoff
p
k
N
j
kjj
kp
k
k xwgzp
kyzp
E1
21
11
2)(
2
1
2
1
jj w
Ew
p
k
kj
k xhgkyzp 1
)(')(1