Professional Documents
Culture Documents
La regla propuesta por Widrow en 1960 ha sido extendida a redes con capas intermedias con
conexiones hacia delante (feedforward) y cuyas clulas tienen funciones de activacin continuas
(lineales o sigmoidales), dando lugar a la retropopagacin. Estas funciones continuas son no
decrecientes y derivables.
Este algoritmo utiliza una funcin de error asociada a la red, buscando el estado estable de mnima
energa o de mnimo error a travs del camino descendente de la superficie del error. Por ello
realimenta el error del sistema para realizar la modificacin de los pesos en un valor proporcional al
gradiente decreciente de dicha funcin de error.
Funcionamiento del algoritmo
El mtodo que sigue la regla delta generalizada para ajustar los pesos es exactamente el mismo
que el de la regla utilizada en ADALINE; los pesos se actualizan de forma proporcional a la delta, o
diferencia entre la salida deseada y la obtenida (
Ui
Dada una neurona (unidad
yi
) y la salida que produce,
U j ( w ji )
de la conexin que una salida de dicha neurona con la unidad
aprendizaje p determinado es:
para un patrn de
w ji (t 1) pj y pi
Uj
salida deseada de las neuronas de salida. Segn esto, si consideramos la unidad
entonces definimos:
de salida,
pi (d pj y pj ). f (net j )
d pj
net j
donde
es la salida deseada de la neurona j para el patrn p y
es la entrada neta que
recibe la neurona j.
Esta frmula es como la de la regla delta, excepto a los se refiere a la derivada de la funcin de
transferencia. Este trmino representa la modificacin que hay que realizar en la entrada que
recibe la neurona j. En caso de que dicha neurona no sea de salida, el error que se produce estar
en funcin del error que se cometa en las neuronas que reciban como entrada la salida de dicha
neurona. Esto es lo que se denomina como procedimiento de propagacin de error hacia atrs.
Uj
Segn esto, en el caso de que
Uj
funcin del error que se comete en las neuronas que reciben como entrada la salida de
pj ( pk wkj ). f (net j )
Uj
donde el rango de k cubre a todas las neuronas a las que est conectada la salida de
. De esta
forma el error que se produce en una neurona oculta es la suma de los errores que se producen en
las neuronas a las que est conectada la salida de sta, multiplicado cada uno de ellos por el peso
de la conexin.
Adicin de un momento en la regla delta generalizada
El mtodo de retropopagacin del error requiere un importante nmero de clculos para lograr el
ajuste de los pesos de la red. En la implementacin del algoritmo, se toma una amplitud de paso
que viene dada por la tasa de aprendizaje. A mayor tasa de aprendizaje, mayor es la modificacin
de los pesos en cada iteracin, con lo que el aprendizaje ser ms rpido, pero por otro lado,
puede dar lugar a oscilaciones. Rumelhart, Hinton y Williams sugirieron que para filtrar estas
, de
w ji (t 1) w ji (t ) pj y pi ( w ji (t ) w ji (t 1))
w ji (t 1) pj y pi w ji (t )
donde
es una constante que determina el efecto t+1 del cambio de los pesos en el instante t.
Con este momento se consigue la convergencia de la red en menor nmero de iteraciones, ya que
si en t el incremento de un peso era positivo y en t+1 tambin, entonces el descenso por la
superficie de error en t+1 es mayor. Sin embargo, si en t era positivo y en t+1 es negativo, el paso
que se da en t+1 es ms pequeo, lo cual es adecuado, ya que significa que se ha pasado por un
mnimo y que los pesos deben ser menores para poder alcanzarlo.
Resumiendo, el algoritmo Backpropagation queda finalmente:
w ji (t 1) w ji (t ) [w ji (t 1)]
w ji (t 1) w ji (t ) [ pj y pi w ji (t )]
donde:
pj (d pj y pj ) f (net j )
pj (k pk w kj ) f (net j )
Uj
si
Uj
si
Calcular la salida actual de la red. Para ello presentamos las entradas a la red y vamos calculando
la salida que presenta cada capa hasta llegar a la capa de salida, sta ser la salida de la red. Los
pasos son los siguientes:
Se calculan las entradas netas para las neuronas ocultas procedentes de las neuronas de entrada.
Para una neurona j oculta:
N
y pj f jh (net hpj )
Se calculan las salidas de las neuronas ocultas:
.
Se realizan los mismos clculos para obtener las salidas de las neuronas de salida:
L
y pk f k0 (net opk )
Paso 4
Calcular los trminos de error para todas las neuronas.
Si la neurona k es una neurona de la capa de salida, el valor de la delta es:
0
pk
(d pk y pk ) f ko (net opk )
La funcin f debe ser derivable. En general disponemos de dos formas de funcin de salida:
f k (net jk ) net jk
La funcin lineal :
f k (net jk )
1
1 e
net jk
La funcin sigmoidal :
La seleccin de la funcin depende de la forma que se decida representar la salida: si se desea
que las neuronas de salida sean binarias, se utiliza la funcin sigmoidal, en otros casos, la lineal.
f ko 1
Para una funcin lineal, tenemos:
f f (1 f ) y pk (1 y pk )
o
k
o
k
o
k
o
pk
(d pk y pk ) y pk (1 y pk )
para la salida sigmoidal.
Si la neurona j no es de salida, entonces la derivada parcial del error no puede ser evaluada
directamente, por tanto se obtiene el desarrollo a partir de valores que son conocidos y otros que
pueden ser evaluados.
0
pjh f jh (net hpj ) pk
wkj0
k
Ep
El proceso se repite hasta que el trmino de error
para cada uno de los patrones aprendidos.
1 M 2
pk
2 k 1