SEPTIEMBRE DE 2002
ESCOM IPN 1
Algoritmo de Retropropagación
“Backpropagation”( BP )
SEPTIEMBRE DE 2002
ESCOM IPN 2
Introducción
SEPTIEMBRE DE 2002
ESCOM IPN 3
Fue primeramente propuesto por Paul Werbos en los 1970´s en una Tesis doctoral.
Sin embargo, este algoritmo no fue conocido sino hasta 1980 año en que fue re-descubierto por David Rumelhart, Geoffrey Hinton y Ronald William, también David Parker y Yan Le Cun.
SEPTIEMBRE DE 2002
ESCOM IPN 4
Fue publicado “Procesos Distribuidos en Paralelo” por David Rumelhart y Mc Clelland, y ampliamente publicitado y usado el algoritmo “backpropagation”.
El perceptrón multicapa entrenado por el algoritmo de retropropagación es la red mas ampliamente usada.
SEPTIEMBRE DE 2002
ESCOM IPN 5
Características
SEPTIEMBRE DE 2002
ESCOM IPN 6
SEPTIEMBRE DE 2002
ESCOM IPN 7
Introducción
En muchas situaciones del mundo real, nos enfrentamos con información incompleta o con ruido, y también es importante ser capaz de realizar predicciones razonables sobre casos nuevos de información disponible.
SEPTIEMBRE DE 2002
ESCOM IPN 8
La red de retropropagación adapta sus pesos, para adquirir un entrenamiento a partir de un conjunto de pares de patrones entrada/salida
Después que la red ha aprendido ha esta se le puede aplicar un conjunto de patrones de prueba, para ver como esta generaliza a patrones no proporcionados
SEPTIEMBRE DE 2002
ESCOM IPN 9
Red feedforward, completamente conectada.
El flujo de información fluye de la capa de entrada a la de salida a través de la capa oculta
Cada unidad de procesamiento en la capa se conecta a todas las de la siguiente capa.
El nivel de activación en la capa de salida determina la salida de la red.
Las unidades producen valores reales basados en una función sigmoide.
SEPTIEMBRE DE 2002
ESCOM IPN 10
Si n=0 a=0.5, conforme n se incrementa la salida se aproxima a 1, conforme n disminuye, a se aproxima a 0
Funciones de transferencia (diferenciables)– Sigmoidales,– Lineales
nea
1
1
SEPTIEMBRE DE 2002
ESCOM IPN 11
Propiedades de Backpropagation
La función de error define una superficie en el espacio de pesos, y estos son modificados sobre el gradiente de la superficie
Un mínimo local puede existir en la superficie de decisión: esto significa que no hay teorema de convergencia para la retropropagación (el espacio de pesos es lo suficientemente grande que esto rara ves sucede)
SEPTIEMBRE DE 2002
ESCOM IPN 12
Las redes toman un periodo grande de entrenamiento y muchos ejemplos.
Además mientras la red generaliza, el sobre entrenamiento puede generar un problema.
SEPTIEMBRE DE 2002
ESCOM IPN 13
Arquitectura
SEPTIEMBRE DE 2002
ESCOM IPN 14
Perceptrón Multicapa
R – S1 – S2 – S3 Network
SEPTIEMBRE DE 2002
ESCOM IPN 15
Algoritmo de
Aprendizaje
SEPTIEMBRE DE 2002
ESCOM IPN 16
Algoritmo de BP
Los pesos se ajustan después de ver los pares entrada/salida del conjunto de entrenamiento.
En el sentido directo la red permite un flujo de activación en las capas.
En la retropropagación, la salida actual es comparada con la salida deseada, entonces se calcula el error para las unidades de salida
SEPTIEMBRE DE 2002
ESCOM IPN 17
Entonces los pesos en la salida son ajustados para reducir el error, esto da un error estimado para las neuronas ocultas y así sucesivamente.
Una época se define como el ajuste de los pesos para todos los pares de entrenamientos, usualmente la red requiere muchas épocas para su entrenamiento.
SEPTIEMBRE DE 2002
ESCOM IPN 18
Algoritmo
Inicialice los pesos de la red con valores pequeños aleatorios.
Presentar un patrón de entrada y especificar la salida deseada.
Calcule los valores de ajuste de las unidades de salida en base al error observado.
SEPTIEMBRE DE 2002
ESCOM IPN 19
Algoritmo Empezando por el nivel de salida, repita lo
siguiente por cada nivel de la red, hasta llegar al primero de los niveles ocultos:– Propague los valores de ajuste de
regreso al nivel anterior.– Actualice los pesos que hay entre los
dos niveles. El proceso se repite hasta que el error
resulta aceptablemente pequeño para cada uno de los patrones aprendidos.
SEPTIEMBRE DE 2002
ESCOM IPN 20
Gradiente Descendente
Después que se calcula el error, cada peso se ajusta en proporción al gradiente del error, retropropagado de la salidas a las entradas.
El cambio en los pesos reduce el error total
Wji
Error
SEPTIEMBRE DE 2002
ESCOM IPN 21
Mínimo Local
Entre mas unidades ocultas se tengan en red, menor es la probabilidad de encontrar un mínimo local
SEPTIEMBRE DE 2002
ESCOM IPN 22
SEPTIEMBRE DE 2002
ESCOM IPN 23
Superficie de error en 2D
SEPTIEMBRE DE 2002
ESCOM IPN 24
Superficie de Error en 3D
SEPTIEMBRE DE 2002
ESCOM IPN 25
Selección de los Wij iniciales
El error retropropagado a través de la red es proporcional al valor de los pesos.
Si todos los pesos son iguales, entonces el error retropropagado será igual, y todos los pesos serán actualizados en la misma cantidad
SEPTIEMBRE DE 2002
ESCOM IPN 26
Selección de los Wij iniciales
Si la solución al problema requiere que la red aprenda con pesos diferentes, entonces el tener pesos iguales al inicio previene a la red de aprender.
Es también recomendable tener valores pequeños de activación (umbral) en las unidades de procesamiento.
SEPTIEMBRE DE 2002
ESCOM IPN 27
Razón de Aprendizaje
Entre mas grande es la razón de aprendizaje () mayor es el cambio en los valores de los pesos cada época, y mas rápido aprende la red.
Si la es demasiado grande, entonces el cambio en los pesos no se aproxima al gradiente descendente, dando como resultado una oscilación en los pesos.
Se desea usar una lo mas grande posible sin llegar a la oscilación.
SEPTIEMBRE DE 2002
ESCOM IPN 28
Control de la convergencia
La velocidad de aprendizaje se controla mediante . Normalmente, debe ser un número entre 0.05 y 0.25.
Velocidad de convergencia El valor de se aumenta a medida que
disminuye el error. Añadir un momento (sumar una fracción
del ajuste de peso anterior al ajuste actual).
SEPTIEMBRE DE 2002
ESCOM IPN 29
Si una red neuronal deja de aprender:
Realizar un cambio en el número de neuronas ocultas.
Volver a empezar con un conjunto distinto de pesos.
SEPTIEMBRE DE 2002
ESCOM IPN 30
Formulario
SEPTIEMBRE DE 2002
ESCOM IPN 31
Propagación Hacia Adelante
p1 t1{ , } p2 t2{ , } pQ tQ{ , }
am 1+
fm 1+
Wm 1+
amb
m 1++ =
m 0 2 M 1– =
a0
p=
a aM=
SEPTIEMBRE DE 2002
ESCOM IPN 32
Retropropagación
sM
2FÝMn
M( ) t a– –=
sm
FÝmn
m( ) W
m 1+
Ts
m 1+=
m M 1– 2 1 =
SEPTIEMBRE DE 2002
ESCOM IPN 33
Actualización de pesos
Wm
k 1+ Wm
k sma
m 1–
T–=
bm
k 1+ bm
k sm
–=
SEPTIEMBRE DE 2002
ESCOM IPN 34
FÝmn
m
fÝm
n1
m 0 0
0 fÝm
n2
m 0
0 0 fÝm
nS
m
m
=s
m F̂
nm
----------
F̂
n 1m
---------
F̂
n 2m
---------
F̂
nS
m
m-----------
=
SEPTIEMBRE DE 2002
ESCOM IPN 35
Aplicaciones
SEPTIEMBRE DE 2002
ESCOM IPN 36
Ejemplos Prácticos
Determina si un hongo es venenoso Considera 8124 variedades de hongo Cada hongo es descrito usando 21
características.
SEPTIEMBRE DE 2002
ESCOM IPN 37
SEPTIEMBRE DE 2002
ESCOM IPN 38
SEPTIEMBRE DE 2002
ESCOM IPN 39
Diagnostico Medico
Basado en Visión por computadora
los síntomas son las entradas Los síntomas son trasladadas a un
punto en el espacio de los patrones
SEPTIEMBRE DE 2002
ESCOM IPN 40
SEPTIEMBRE DE 2002
ESCOM IPN 41
SEPTIEMBRE DE 2002
ESCOM IPN 42
Ejercicios
SEPTIEMBRE DE 2002
ESCOM IPN 43
Ejemplo 1: Aproximación de de una función senoidal
1-2-1Network
ap
SEPTIEMBRE DE 2002
ESCOM IPN 44
Condiciones Iniciales
W10 0.27–
0.41–=
b10 0.48–
0.13–=
W20 0.09 0.17–=
b20 0.48=
Network ResponseSine Wave
-2 -1 0 1 2-1
0
1
2
3
SEPTIEMBRE DE 2002
ESCOM IPN 45
Propagación hacia delante
a0
p 1= =
a1 f1 W1a0 b1+ l ogsig 0.27–
0.41–1
0.48–
0.13–+
logsig 0.75–
0.54–
= = =
a1
1
1 e0.75+--------------------
1
1 e0.54+--------------------
0.321
0.368= =
a2
f2 W2a1 b2
+ purelin 0.09 0.17–0.321
0.3680.48+( ) 0.446= = =
e t a– 14---p
sin+
a2
– 14---1
sin+
0.446– 1.261= = = =
SEPTIEMBRE DE 2002
ESCOM IPN 46
Derivadas de la función de transferencia
fÝ1
n nd
d 1
1 en–
+-----------------
en–
1 en–
+ 2
------------------------ 11
1 en–
+-----------------–
1
1 en–
+-----------------
1 a1
– a1 = = = =
fÝ2
n nd
dn 1= =
SEPTIEMBRE DE 2002
ESCOM IPN 47
Retropropagación
s2
2FÝ2n
2( ) t a– – 2 fÝ
2n
2 1.261 – 2 1 1.261 – 2.522–= = = =
s 1 FÝ1n1
( ) W2 Ts 2 1 a1
1– a1
1 0
0 1 a21
– a21
0.09
0.17–2.522–= =
s1 1 0.321– 0.321 0
0 1 0.368– 0.368 0.090.17–
2.522–=
s 1 0.218 0
0 0.233
0.227–
0.429
0.0495–
0.0997= =
SEPTIEMBRE DE 2002
ESCOM IPN 48
Actualización de W y B
W21 W2
0 s2 a1 T
– 0.09 0.17– 0.1 2.522– 0.321 0.368–= =
0.1=
W21 0.171 0.0772–=
b21 b2
0 s2– 0.48 0.1 2.522–– 0.732= = =
SEPTIEMBRE DE 2002
ESCOM IPN 49
Actualización de W y B
W1 1 W1 0 s 1 a0 T
– 0.27–
0.41–0.1 0.0495–
0.09971– 0.265–
0.420–= = =
b11 b1
0 s1– 0.48–
0.13–0.1 0.0495–
0.0997– 0.475–
0.140–= = =
SEPTIEMBRE DE 2002
ESCOM IPN 50
Elección de Arquitecturag p 1
6 4
------ p sin+=
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
1-5-1
1-2-1 1-3-1
1-4-1
SEPTIEMBRE DE 2002
ESCOM IPN 51
Elección de Arquitectura
g p 1i 4----- p
sin+=
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
-2 -1 0 1 2-1
0
1
2
3
1-3-1 Network
i = 1 i = 2
i = 4 i = 8
SEPTIEMBRE DE 2002
ESCOM IPN 52
Ejemplo 2: Clasificación de la compuerta OR-Exclusiva
011
14
110
13
111
02
010
01
TP
TP
TP
TPDiseñe una red de retropropagación que solucione el problema de la OR-exclusiva usando el algoritmo de retropropación (regla delta generalizada)
SEPTIEMBRE DE 2002
ESCOM IPN 53
Ejemplo 2: Clasificación de la compuerta OR-Exclusiva
27.102.188.0
66.1
19.0
12.287.0
12.292.0
22
11
bw
bw
01.0
Parámetros iniciales
SEPTIEMBRE DE 2002
ESCOM IPN 54
Simulación en
Matlab / NNT
SEPTIEMBRE DE 2002
ESCOM IPN 55
Red Multicapa
am 1+
fm 1+
Wm 1+
amb
m 1++ = m 0 2 M 1– =
a0
p= a aM=
SEPTIEMBRE DE 2002
ESCOM IPN 56
Initff: crea un conjunto de pesos y umbrales
para una red feed forward. Toma una matriz de de vectores de
entrada P, y el tamaño S, y las funciones de transferencia para cada capa, regresando los valores de W y b correspondientes a las dimensiones de la red.
SEPTIEMBRE DE 2002
ESCOM IPN 57
Ejemplos: Iniciar una red con 8 neuronas ocultas sigmoidales y cuatro de salida lineales.
[W1,b1,W2,b2]=initff(P,8,’tansig’,4,’purelin’)
También initff puede ajustar el numero de neuronas en la capa de salida igual al numero de filas en la matriz T.
[W1,b1,W2,b2]=initff(P,8,’tansig’,T,’purelin’)
SEPTIEMBRE DE 2002
ESCOM IPN 58
trainbp
Se usa para entrenar redes multicapa, con una, dos, o tres capas.
Ejemplo, para entrenar una red de dos capas la función seria:
[W1,b1,W2,b2,epochs,tr] = trainbp (W1,b1,’tansig’, W2,b2,’purelin’,p,t,tp)
tp= [disp-freq max-epoch err-goal lr]
SEPTIEMBRE DE 2002
ESCOM IPN 59
simuff Simula una red feed forward. Toma la
entrada P, los pesos W, los umbrales b, y la funcion de transferencia de cada capa y entrega las salidas de la capa a.
Ejemplo, para simular una red de dos capas
[a1,a2] = simuff (P,W1,b1,’tansig’, W2,b2,’purelin’)
SEPTIEMBRE DE 2002
ESCOM IPN 60
trainbpx Entrena redes multicapa con
retropropagación rápida. Se puede usar para redes de una,dos o tres capas.
Ejemplo use la funcion trainbpx para una red de dos capas.
[W1,b1,W2,b2,epochs,tr] = trainbpx (W1,b1,’tansig’, W2,b2,’purelin’,p,t,tp)
SEPTIEMBRE DE 2002
ESCOM IPN 61
Valores por omisión para tpValores por omisión para tp tp= [disp-freq = 25 max-epoch= 100 err-goal= 0.02 lr= 0.01 momentum= 0.9 lr-inc= 1.05 lr-dec= 0.7 err-ratio= 1.04 ]
SEPTIEMBRE DE 2002
ESCOM IPN 62
learnbp La regla de aprendizaje de
retropropagacion ajusta los pesos y umbrales de la red, de tal forma que minimise el error cuadrático de la red.
Esto se logra ajustando continuamente los parametros libres de la red en la direccion del gradiente descendente, respecto a la suma del error cuadratico.
SEPTIEMBRE DE 2002
ESCOM IPN 63
learnbp(P,D,lr) Regresa el cambio en la matriz de pesos
para una capa determinada, para los vectores de entrada P a la capa, los vectores delta D, y la razón de aprendizaje lr.
[dW,db]=learnbp(P,D,lr) Regresa tanto el cambio en la matriz de
pesos W por capa como el cambio en en el vector de umbrales b
SEPTIEMBRE DE 2002
ESCOM IPN 64
Ejemplo: Codigo para solucionar el problema de la OR-EXCLUSIVA.
P=[0 0 1 1; 0 1 0 1]
T=[0 1 1 0]
[W1,b1,W2,b2]=initff(P,8,´tansig´,T,´purelin´)
tp=[25 100 0.02 0.01]
[W1,b1,W2,b2,epochs,tr] = trainbp (W1,b1,’tansig’, W2,b2,’purelin’,p,t,tp)
[a1,a2] = simuff (P,W1,b1,’tansig’, W2,b2,’purelin’)
SEPTIEMBRE DE 2002
ESCOM IPN 65
SEPTIEMBRE DE 2002
ESCOM IPN 66
Dudas ???
SEPTIEMBRE DE 2002
ESCOM IPN 67
Hasta la próxima !!!
Top Related