Download 01RP1

Document related concepts

Perceptrón multicapa wikipedia , lookup

Propagación hacia atrás wikipedia , lookup

Redes neuronales probabilísticas wikipedia , lookup

Red neuronal prealimentada wikipedia , lookup

Perceptrón wikipedia , lookup

Transcript
Algoritmo de Retropropagación
Notación

i, j, k son índices de las neuronas en las
distintas capas
Notación




En el paso n se presenta el n-ésimo patrón de
entrada a la red
 (n) se refiere a la suma instantánea de los
cuadrados de los errores en la iteración n.
El promedio de  (n) sobre todas las n es el error
promedio de la energía  AV (n)
e j (n) es la señal de error de la neurona j en la
muestra n
Notación




d j (n) es la salida deseada en la neurona j para la
muestra n
y j (n) es la salida observada en la neurona j para
la muestra n
w ji (n) denota el peso conectando las neuronas i y
j en la muestra n
La corrección se denota con w ji (n)
Notación

El campo local inducido (
v j (n)
O w
i
i
ji
) se denota por
Notación
La función de activación asociada a v j se denota
por  j ()
 El sesgo de umbral aplicado a la neurona j es
.b j  w j 0 con entrada +1
 El i-ésimo elemento del vector de entrada es X i (n)
 El k-ésimo elemento del vector de salida global es
Ok (n)
 La tasa de aprendizaje es 

Notación





ml denota el número de neuronas en la l-ésima
capa
l = 0, 1, ..., L
m0 = tamaño de la capa de entrada
m1 ,..., mL 1 = tamaño de las capas escondidas
mL = tamaño de la capa de salida
Retropropagación



Señal de error:
e j (n)  d j (n)  y j (n)
(7.0)
Valor instantáneo de la energía del error para la
neurona j: (1 / 2)e 2j ( n)
Valor instantáneo de la energía del error:
 (n)  (1 / 2)

e 2j (n)
jC

C incluye todas las neuronas en L.
(7.1)
Retropropagación
 AV (n)  (1 / N )
N
  ( n)
n 1

N es el númerode muestras
Retropropagación
Retropropagación
m
v j (n) 
w
ji (n) yi (n)
(7.1a)
i 0
y j (n)   (v j (n))
(7.2)
La corrección w ji (n) a w ji (n) es
 (n)
 proporcional a

w ji (n)
Retropropagación

Podemos escribir
 (n)
 (n) e j (n) y j (n) v j (n)

w ji (n) e j (n) y j (n) v j (n) w ji (n)
 (n)  (1 / 2)
 diferenciando ambos lados de (7.1)
 (n)
 e j ( n)
e j (n)
(8.1)

jC
e 2j (n)
Retropropagación


diferenciando ambos lados de (7.0) e j (n)  d j (n)  y j (n)
e j (n)
 1
(8.2)
y j (n)
diferenciando ambos lados de (7.2) y j (n)   (v j (n))
y j (n)
v j (n)
  ' (v j (n)) 
 (v j (n))
v j (n)
(8.3)
Retropropagación
m


diferenciando (7.1a)
v j (n)
 yi (n)
(8.4)
w ji (n)
De 8.1,2,3,4 tenemos
 j (n)
w ji (n)
v j (n) 
 e j (n) ' j (v j (n)) yi (n)
w
ji (n) yi (n)
i 0
(8.5)
Retropropagación


La corrección w ji (n) aplicada a w ji (n) está
definida por la regla delta:
 (n)
w(n)  
(9.1)
w ji (n)
Poniendo (8.5) en (9.1):
w ji (n)   j (n) yi (n)
Retropropagación

En donde el gradiente local  j (n) está definido
por
 (n)
 j ( n) 
v j (n)
 (n) e j (n) yi (n)

(9.1.1)
e j (n) yi (n) v j (n)
 j (n)  e j (n) ' j (v j (n))
(9.2)
Retropropagación


Consideremos el caso en donde j es un nodo de
salida.
e j (n) se calcula de
e j (n)  d j (n)  y j (n)

y
 j (n)  (d j (n)  y j (n))   ' j (v j (n))
Retropropagación
Retropropagación
Consideremos el caso en donde j es un nodo de
escondido.
 De (9.1.1):
 (n) y j (n)
 (n)
 j (n)  

 ' j (v j (n)) (9.3)
y j (n) v j (n)
y j (n)
 De la figura anterior:

 (n)  (1 / 2)

kC
ek2 (n)
Retropropagación

rescribimos
 (n)

y j (n)
 (n)

y j (n)

k

ek (n)
ek
y j (n)
ek (n) vk (n)
ek
vk (n) y j (n)

pero

cuando k es una salida y m+1 es el número de
entradas (incluyendo el sesgo)
ek ( n )  d k ( n )  y k ( n )
 d k (n)   k (vk (n))
Retropropagación

Por tanto:
ek (n)
  ' k (vk (n))
vk (n)

(10 .1)
para la neurona k el campo local inducido es
m
v k ( n) 
w
kj ( n) y j ( n)
j 0

y
vk (n)
 wkj (n)
y j (n)
(10 .2)
Retropropagación


De (10.1) y (10.2) tenemos:
 (n)
  ek (n) ' k (vk (n)) wkj (n)
y j (n)
k
   k (n) wkj (n)


k
Poniendo (10.3) en (9.3):
 j (n)   ' (v j (n))

k

cuando j es escondida
k (n) wkj (n)
(10 .3)
Retropropagación
Retropropagación

1. Si la neurona j es un nodo de salida  j (n)
es igual al producto de la derivada  ' j (v j (n))
y la señal de error e j (n) . Ambas están
asociadas a la neurona j.
Retropropagación
2. Si la neurona j es un nodo escondido,  j (n)
 es igual al producto de la derivada asociada
  ' j (v j (n)) y la suma pesada de las s
 calculada para las neuronas de la siguiente
capa escondida o de salida que se conectan
a la neurona j.
