Sei sulla pagina 1di 18

Algoritmos de Aprendizaje en Retropropagacin para

Perceptron Multicapa
Manuel Currea Urcua, Estudiante
Fundacin Universitaria Konrad Lorenz
macur82@hotmail.com
Leonardo Jimenez Moscovitz, Docente
Fundacin Universitaria Konrad Lorenz
leonardo.jimenezm@konradlorenz.edu.co
Abstract
Based on the BackPropagation algorithm and the Generalized Delta Rule develop
the mathematical concepts of learning algorithms for multilayer perceptrons, showing its
functioning from a very small structure, the articial neuron.
Partiendo del algoritmo de RetroPropagacin y la Regla Delta Generalizada se de-
sarrollan los conceptos matemticos de los algoritmos de aprendizaje para perceptrones
multicapa, mostrando su funcionamiento desde su mas pequea estructura, la neurona
articial
1 Introduccin
Este documento muestra los conceptos bsicos de las Redes Neuronales de Aprendizaje
(RNA) en particular la conguracin en perceptron multicapa y el algoritmo de aprendizaje
llamado RetroPropagacin (BackPropagation) destacando su funcionamiento matemtico.
En la primera seccin se encuentran los fundamentos biolgicos de la neurona y su
equivalente neurona articial, explicando las partes que componen cada uno. Seguido a
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 2
esto se encuentra la conguracin en perceptron multicapa de RNA, exponiendo cada una
de sus partes y las matemticas involucradas.
La siguiente seccin es donde se desarrollan los algoritmos de aprendizaje mas utilizados
y en donde se exponen todo su contenido matemtico, siendo el ncleo del trabajo.
Este documento se realiz como trabajo de investigacin paralelo al trabajo de grado
1
titulado "Aplicacin de Herramientas Matemticas en la Determinacin de Indicadores de
gestin Empresarial:Solucin Mediante Minera de Datos", el cul utiliza un perceptron
multicapa con algoritmo de aprendizaje Resilient BackPropagation (RPROP ), para una
mejor comprensin se recomienda su lectura.
2
2 La Neurona Articial
Uno de los retos ms importantes a los que se enfrenta el ser humano de nuestra generacin
es el de la construccin de sistemas inteligentes, en su afn de conseguir este propsito
aparecen las redes neuronales articiales. Desde el punto de vista biolgico las RNA son
un modelo matemtico acerca del funcionamiento del cerebro. "Los sencillos elementos
de clculo aritmtico equivalen a las neuronas -clulas que procesan la informacin en el
cerebro- y la red en general equivale a un conjunto de neuronas conectadas entre s" [1].
Para la raza humana sigue siendo un misterio el funcionamiento del cerebro humano y
como se genera el pensamiento, sin embargo aos y aos de investigacin han dado ideas
sobre el accionar del mismo. Si se quieren reproducir las acciones del cerebro humano, se
debe tener la idea de como funciona. Una explicacin sencilla y clara se encuentra en [1]:
"Sabemos que la neurona, o clula nerviosa, es la unidad funcional bsica
de los tejidos del sistema nervioso, incluido el cerebro. Las neuronas estn for-
madas por el cuerpo de la clula, o soma, en donde se aloja el ncleo de la clula.
Del cuerpo de la clula salen ramicaciones de diversas bras conocidas como
dendritas y sale tambin una bra ms larga denominada axn. Las dendritas
se ramican tejiendo una tupida red alrededor de la clula, mientras el axn se
extiende un buen tramo: por lo general, un centmetro (100 veces el dimetro del
cuerpo de la clula) y, en casos extremos, hasta un metro. nalmente, el axn
1
Trabajo de Grado realizado por el autor para optar por el ttulo de matemtico en la Fundacin Uni-
versitaria Konrad Lorenz.
2
Disponible en: http://es.scribd.com/doc/98230558/Trabajo-Degr-a-Do
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 3
Figure 1: Neurona biolgica simplicada (Tomado de [4])
tambin se ramica en lamentos y sublamentos mediante los que establece
conexin con las dendritas y los cuerpos de las clulas de otras neuronas. A la
unin o conexin se le conoce como sinapsis. Cada neurona establece sinapsis
desde con una docena de otras neuronas hasta con cientos de miles de otras de
ellas"
3
.
En la gura 1 se muestran las partes de una neurona biolgica.
La neurona articial se ha diseado como una abstraccin de la neurona biolgica y se
muestra en la gura 2. La gura representa la neurona i que recibe entradas Sus partes
principales son:
1. Las entradas r
i
, que son puntos por los que se reciben los datos provenientes del
entorno o bien de otras neuronas. En una neurona biolgica corresponden a las den-
dritas. En el modelo se considera el vector de : entradas
x = (r
1
, r
2
, ...r
n
)
2. La salida j
i
. En una neurona biolgica corresponde al axn.
3. Al igual que en una neurona biolgica, la neurona articial debe permitir establecer
conexiones (sinpsis) entre las entradas (dendritas) de una neurona y la salida (axn)
de otra. Esta conexin se representa con una lnea que tiene asociado un valor llamado
3
Isasi, P.; Galvn, I. M. Redes de Neuronas Articiales. Pearson Educacin, 2004.
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 4
Figure 2: Neurona Articial tpica.
peso sinpticos n
ij
. Ntese que el primer subndice indica la neurona a la que llega
la conexin, mientras que el segundo subndice indica de donde viene la conexin. El
peso representa el factor de importancia de la conexin en la determinacin del valor
de salida. El valor n
ij
, que es un nmero real, se modica durante el entrenamiento
de la red neuronal y es la variable que almacenar la infomacin que indicar que la
red ha aprendido algo y por tanto que sirva para un propsito u otro.
4. En la gura 2 tambin se observa una entrada especial, llamada umbral, con un valor
jo que puede ser 1 o 1, y con un peso asociado llamado n
0
o 0
i
dependiendo del
autor. El valor del umbral se ajusta igual que cualquier otro peso durante el proceso
de entrenamiento.
5. Una regla de propagacin. Para un cierto valor de las entradas r
i
y los pesos
sinpticos asociados n
ij
, se raliza algun tipo de operacin para obtener el valor del
potencial post-sinptico. Este valor es funcin de las entradas y los pesos. Una de
las operaciones mas comunes es realizar la suma ponderada, que no es otra cosa que
la sumatoria de las entradas, pero teniendo en cuenta la importancia de cada una (el
peso sinptico asociado). Luego:
/
i
=

j
n
ij
r
j
+ n
0
(1)
donde t indica que es la salida de la regla de propagacin en un instante determinado
t.
6. Una funcin de activacin o: Luego de realizar la suma ponderada, se aplica al
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 5
resultado la funcin de activacin, que se escoge de tal manera que permita obtener
la forma deseada para el valor de salida.
A partir de la gura 2 se observa que
j
i
= o(/
i
)
= o
_
_

j
n
ij
r
j
+ n
0
_
_
(2)
= o (w x) (3)
= o
_
w
T
x
_
(4)
donde las ltimas dos ecuaciones estn en notacin vectorial.
Es necesario especicar la funcin de activacin o. Las funciones ms usuales se ob-
servan en la gura 3.
Con estas especicaciones, se puede ahora explicar cmo funciona la neurona. Se supone
en el modelo de neurona ms simple, que corresponde a la funcin de activacin escaln,
tambin llamada limitador duro. En este caso, la salida puede tomar solo dos valores 1 y
+1 donde la salida viene determinada por
o(/
i
) =
_
1
+1
si /
i
< n
0
si /
i
n
0
con n
0
= 0 (5)
Entonces, para la funcin sigmoidea, se tiene que
j
i
=
_
1
1 + c
h
i
_
con (6)
/
i
=

j
n
ij
r
j
+ n
0
y para el segundo caso de la funcin sigmoidea
j
i
= tanh(/
i
) =
_
c
h
i
c
h
i
c
h
i
+ c
h
i
_
con (7)
/
i
=

j
n
ij
r
j
+ n
0
La expresin de la ecuacin que almacena la neurona en virtud del vector de pesos w es
el modelo que representa en mayor o menor grado el comportamiento del vector de salida
y con respecto al vector de entradas x.
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 6
Figure 3: Funciones de activacin ms importantes.
Entonces, una neurona articial es un procesador elemental. Se encarga de procesar un
vector de : entradas para producir un nico valor de salida j. El nivel de activacin depende
de las entradas recibidas y de los valores sinpticos. Para calcular el estado de activacin
se ha de calcular en primer lugar la entrada total a la clula. Este valor se clcula como la
suma de todas las entradas ponderadas por ciertos valores dados a la entrada.
2.1 Redes Neuronales Articiales (RNA)
La capacidad de modelar funciones ms complejas aumenta grandemente cuando la neu-
rona no trabaja sola, sino interconectada con otras neuronas, formando Redes Neuronales
Articiales (RNA), tal como se observa de manera simplicada en la gura 4.
La red ms simple se llama perceptron multicapa. Esta red dene una relacin
entre las variables de entrada y las variables de salida. Esta relacin se obtiene propagando
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 7
Figure 4: Esquema simplicado de una RNA (Tomado de [5])
hacia adelante los valores de las variables de entrada. Cada neurona procesa la informacin
recibida por sus entradas y produce una respuesta o activacin que se propaga, a travs de
las conexiones correspondientes, hacia las neuronas de la siguiente capa.
Sea un perceptron multicapa con C capas, de las cuales una es la capa de entrada, una la
capa de salida y C2 capas ocultas. Se tienen :
c
neuronas en la capa c, con c = 1, 2, 3, ..., C.
Sea \
c
= (n
c
ij
) la matriz de pesos asociada a las conexiones de la capa c a la capa c + 1
para c = 1, 2, 3, ..., C 1, donde n
c
ij
representa el peso de la conexin de la neurona i de la
capa c a la neurona , de la capa c +1. Sea l
c
= (n
c
i
) el vector de umbrales de las neuronas
de la capa c para c = 2, 3, ..., C. Se denota a
c
i
a la activacin de la neurona i de la capa c;
estas activaciones se calculan del siguiente modo:
1. Entrada (a
1
i
). Estas neuronas transmiten hacia la red las seales recibidas del exterior
a
1
i
= r
i
jara i = 1, 2, 3, ..:
1
(8)
Donde A = (r
1
, r
2
, ..., r
n
) representa el vector de enntrada a la red.
2. Activacin de las neuronas de la capa oculta c (a
c
i
) : Las neuronas ocultas procesan la
informacin recibida aplicando la funcin de activacin o a la suma de los producto
de las activaciones que recibe por sus correspondientes pesos:
a
c
i
= o
_
_
n
c1

j=1
n
c1
ji
a
c1
j
+ n
c
i
_
_
(9)
Para i = 1, 2, 3, ..., :
c
y c = 2, 3, ..., C 1
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 8
3. Salida (a
C
i
) : Al igual que en las capas ocultas, la activacin de estas neuronas viene
dada por la funcin de activacin )
j
i
= a
C
i
= o
_
_
n
C1

j=1
n
C1
ji
a
C1
j
+ n
C
i
_
_
(10)
para i = 1, 2, 3, ..., :
c
donde 1 = (j
1
, j
2
, j
3
, ..., j
n
C
) es el vector salida de la red.
Para el perceptron multicapa las funciones de activacin mas usadas son la funcin
sigmoidal:
o(/) =
1
1 + c
h
(11)
y la funcin tangente hiperblica:
o
1
(/) =
1 c
h
1 + c
h
(12)
Estas funciones tienen una forma similar pero se diferencian en que la sigmoidal tiene un
rango continuo de valores dentro de los intervalos [0, 1] mientras que la tangente hiperblica
tiene un rango contnuo en el intervalo [1, 1].
3 Algoritmos de Aprendizaje
Existen diferentes algoritmos de aprendizaje que optimizan las conexiones entre las neuronas
segn el error que est cometiendo la red, entendiendo por error la diferencia que existe entre
la salida ofrecida por la red y la salida deseada.Los ms utilizados son los algoritmos por
descenso de gradiente ya que maximizan o minimizan determinada funcin, generalmente
el valor absoluto del error o el error cuadrtico medio.
En el mometo de la implementacin se deben tener en cuenta las caractersticas del
problema a resolver, para escoger el algoritmo mas adecuado, sin embargo para optimizar
el funcionamiento, el algoritmo debe cumplir con las siguientes particularidades [8]:
Ecacia
Robustez, para adaptarse a diferentes problemas.
Independencia respecto a las condiciones iniciales.
Alta capacidad de generalizacin.
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 9
Coste computacional bajo.
Sencillez en los razonamientos empleados.
Algunos de los algoritmos de aprendizaje existentes para perceptrones multicapa son;
RetroPropagacin (Back Propagation)
Momento
Silva-Almeida
DELTA-BAR-DELTA
Resilient BackPropagation (RPROP)
Algoritmos de segundo orden
Alopex
Algoritmos genticos
En este documento se encontrarn los algoritmos: RetroPropagacin (Back Propaga-
tion), Momento, Silva-Almeida, DELTA-BAR-DELTA y Resilient BackPropagation (RPROP),
por ser estos variaciones de la utilizacin de la regla delta generalizada. Adems de ser los
mas utilizados y en particular el algoritmo RPROP que se utiliz en el trabajo de grado
4
que da origen a este documento.
Es claro que tambien existen otras arquitecturas de red como; redes de neuronas de base
radial, red de Hopeld, regla de Hebb, Adaline, entre otras. El objetivo de este documento
se limira a conguraciones en perceptron multicapa.
3.1 RetroPropagacin
Como el objetivo es que la salida de la red sea lo ms prximo posible a la salida deseada,
el aprendizaje de la red se formula como un problema de minimizacin, segn[7]:
'i:
w
1 (13)
4
Trabajo de grado desarrollado por el autor de este documento para optar por el ttulo de Matemtico
en la Fundacin Universitaria Konrad Lorenz "Aplicacin de Herramientas Matemticas en la Deter-
minacin de Indicadores de gestin Empresarial:Solucin Mediante Minera de Datos"
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 10
Siendo \ el conjunto de parmetros de la red (pesos y umbrales)
1 =
1

n=1
c(:) (14)
c(:) =
1
2
nc

i=1
(:
i
(:) j
i
(:))
2
(15)
Donde 1 es la funcin de error que evala las salidas de la red y las detectadas, \ es el
conjunto de parametros de la red, es el nmero de patrones o muestras y c(:) es el error
cometido por la red para el patron :. Adems
1 (:) = (j
1
(:), j
2
(:), j
3
(:), ..., j
n
C
(:)) (16)
es el vector de salida obtenida mediante la red y
o(:) = (:
1
(:), :
2
(:), :
3
(:), ..., :
n
C
(:)) (17)
es el vector de salida deseada, segn los dato originales. Entonces si \ es un mnimo
de la funcin error 1, en este punto el error es lo ms prximo a cero, alcanzado la meta
de aprendizaje.
Se sabe que la red debe entrenarse para minimizar el error total, segn la ecuacion 14.
Para esto el procedimiento mas usado se basa en mtodos del gradiente estocstico, los
cuales se basan en una sucesiva minimizacin de los errores para cada patrn c(:), en lugar
de minimizar el error total
n(:) = n(: 1) c
0c(:)
0n
(18)
donde c como la razn o tasa de aprendizaje, y determina qu tan grande es la variacin
en cada paso de entrenamiento.
Como las neuronas de la red estan agrupadas en capas, se puede aplicar el mtodo del
gradiente, resultando el algoritmo de RETROPROPAGACIN [3] o regla delta. El trmino
retropropagacin debido a la forma en que se implementa en el perceptron multicapa, ya
que el error cometido en la salida de la red es propagado hacia atrs y se transforma en un
error para cada una de las neuronas ocultas.
3.1.1 Regla Delta Generalizada:
Sea n
C1
ji
el peso de la conexin de la neurona , de la capa C 1 a la neurona i de la capa
de salida. Utilizando el mtodo de descenso [9] del gradiente de la ecuacin 18, el parmetro
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 11
se modica en direccin negativa del gradiente:
n
C1
ji
(:) = n
C1
ji
(: 1) c
0c(:)
0n
C1
ji
(19)
Entonces para la actualizacin del parmetro se necesita evaluar la derivada del error
c(:) en dicho punto. Tomemos entonces la ecuacin 15, como las salidas de la red son
constantes y no dependen del peso y ademas el peso n
C1
ji
solo afecta a la neurona i,
ecuacin 10, tenemos que:
0c(:)
0n
C1
ji
= (:
i
(:) j
i
(:))
0j
i
(:)
0n
C1
ji
(20)
Se debe calcular la derivada de la neurona de salida j
i
(:) respecto al peso n
C1
ji
. La
salida de la red es la funcion o aplicada a la suma de las entradas por sus pesos, por lo
tanto la derivada que se busca es:
0j
i
(:)
0n
C1
ji
= o
0
_
_
n
C1

j=1
n
C1
ji
a
C1
j
+ n
C
i
_
_
a
C1
j
(:) (21)
Sea c
C
i
(:) denido de la siguiente manera:
c
C
i
(:) = (:
i
(:) j
i
(:))o
0
_
_
n
C1

j=1
n
C1
ji
a
C1
j
+ n
C
i
_
_
(22)
Reemplazando en 20 la ecuacin 21, usando c
C
i
(:) como se denio en 22, se obtiene:
0c(:)
0n
C1
ji
= c
C
i
(:)a
C1
j
(:) (23)
Por ultimo, reemplazando 23 en 19, se obtiene la ley para modicar el peso:
n
C1
ji
(:) = n
C1
ji
(: 1) cc
C
i
(:)a
C1
j
(:) (24)
, = 1, 2, ..., :
C1
i = 1, 2, ..., :
C
De la misma forma se deduce que los umbrales de las neuronas de la capa de salida se
modican de acuerdo a la siguiente expresin:
n
C
i
(:) = n
C
i
(: 1) + cc
C
i
(:) jara i = 1, 2, ..., :
C
(25)
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 12
En las ecuaciones 24 y 25 se tienen los pesos de la capa oculta C 1 a la capa de salida
y los umbrales de la capa de salida.
Ahora se van a calcular los pesos de la capa c a la capa c + 1 y los umbrales de las
neuronas de la capa c +1 para c = 1, 2, .., C 2. Para esto se elige un peso de la capa C 2
a la capa C 1. Sea n
C2
kj
el peso de la conexin de la neurona / de la capa C 2 a la
neurona , de la capa C 1. utilizando el mtodo del descenso del gradiente, se tiene que:
n
C2
kj
(:) = n
C1
kj
(: 1) + c
0c(:)
0n
C2
kj
(26)
Ntese que el peso n
C2
kj
inuye en todas las salidas de la red, entonces la derivada del
error c(:) en la ecuacin 15 respecto al peso viene dada por la suma de las derivadas de
cada una de las salidas:
0c(:)
0n
C2
kj
=
n
C

i=1
(:
i
(:) j
i
(:))
0j
i
(:)
0n
C2
kj
(27)
De acuerdo a la ecuacin 10 la derivada de la salida esta dada por:
0j
i
(:)
0n
C2
kj
= o
0
_
_
n
C1

j=1
n
C1
ji
a
C1
j
+ n
C
i
_
_
n
C1
ji
0a
C1
j
0n
C2
kj
(28)
Sustituyendo este valor en la ecuacin 27 y de acuerdo con la denicin de c en 22, se
obtiene:
0c(:)
0n
C2
kj
=
n
C

i=1
c
C
i
(:)n
C1
ji
0a
C1
j
0n
C2
kj
(29)
Al derivar la activacin de la neurona , de la capa oculta C 1, a
C1
j
, respecto a dicho
peso en la ecuacin 9:
0a
C1
j
0n
C2
kj
= o
0
_
n
C2

k=1
n
C2
kj
a
C2
k
+ n
C1
j
_
a
C2
k
(:) (30)
Para las neuronas de la capa C 1 :
c
C1
j
(:) = o
0
_
n
C2

k=1
n
C2
kj
a
C2
k
+ n
C1
j
_
n
C

i=1
c
C
j
(:)n
C1
ji
(31)
Sustituyendo 30 y 31 en 29:
0c(:)
0n
C2
kj
= c
C1
j
(:)a
C2
k
(:) (32)
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 13
Finalmente la ley de aprendizaje viene dada por:
n
C2
kj
(:) = n
C2
kj
(: 1) + cc
C1
j
(:)a
C2
k
(:) (33)
/ = 1, 2, ..., :
C2
j , = 1, 2, ..., :
C1
Se puede generalizar la ley:
n
C
kj
(:) = n
C
kj
(: 1) + cc
c+1
j
(:)a
c
k
(:) (34)
para / = 1, 2, ..., :
c
, , = 1, 2, ..., :
C+1
j c = 1, 2, ..., C 2 donde a
c
k
(:) es la activacin
de la neurona / de la capa c para el patrn : y c
c+1
j
esta dado por:
c
c+1
j
(:) = o
0
_
nc

k=1
n
c
kj
a
c
k
+ n
c
i
_
n
c+1

i=1
c
c+2
i
(:)n
c
ji
(35)
por ultimo la ley de prendizaje para los umbrales esta dada por:
n
c+1
j
(:) = n
c+1
j
(: 1) + cc
c+1
i
(:) (36)
para , = 1, 2, ..., :
C+1
j c = 1, 2, ..., C 2.
Como los valores de c en 22 y 35 necesitan el clculo de la derivada de la funcin de
activacin, a continuacin se van a obtener las derivadas para la funcin sigmoidal (ecuacin
11) y la tangente hiperblica (ecuacin 12) , que son las ms utilizadas en la estructura de
perceptron multicapa[1].
Derivada de la funcin sigmoidal
Derivando la ecuacin 11, se obtiene
o
0
(/) =
1
(1 + c
h
)
2
(c
h
) =
1
1 + c
h
c
h
1 + c
h
(37)
de donde
o
0
(/) = o(/)(1 o(/)) (38)
y los valores c en las ecuaciones 22 y 35 vienen dados respectivamente por
c
C
i
(:) = (:
i
(:) j
i
(:))j
i
(:)(1 j
i
(:)) jara i = 1, 2, ..., :
C
(39)
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 14
c
c+1
j
(:) = a
c
j
(c)(1a
c
j
(:))
n
c+1

i=1
c
c+2
i
(:)n
c
ji
jara , = 1, 2, ..., :
c+1
j c = 1, 2, ...C2
(40)
Derivada de la funcin tangente hiperblica
o
1
(/) =
1 c
h
1 + c
h
=
2 1 c
h
1 + c
h
(41)
=
2 (1 + c
h
)
1 + c
h
reemplazando la ecuacin 11 tenemos
o
1
(/) =
2
1 + c
h

1 + c
h
1 + c
h
= 2o(/) 1 (42)
entonces si se utiliza la funcin de activacin tangente hiperblica, las expresiones 39
y 40 se multiplican por 2.
El algoritmo de retropropagacin posee una serie de deciencias, por ejemplo el proceso
de adaptar los pesos naliza cuando
@E
@w
0, y esto no garantiza que el mnimo alcanzado
sea un mnimo global, puede ser simplemente un mnimo local, en este caso claramente es
indeseable que el proceso de aprendizaje de la red nalice. Otro posible problema el el
fenmeno denominado parlisis o saturacin, este ocurre cuando la entrada de una neurona
alcanza valores cercanos a los extremos, como ya se mostro, las funciones de activacin tienen
comportamiento asintotico, asi que para estos valores la suma de los errores permanece
constante.
3.2 Momento
Esta variante aade un trmino que controla la velocidad de acercamiento al mnimo
acelerandola,como lo dice [10], cuando se est lejos de ste y deteniendola cuando se esta
cerca, viene dado por la expresin:
n(:) = n(: 1) c
0c(:)
0n
+ jn(: 1) (43)
donde n(:1) = n(:1) n(:2) es el incremento que sufri el parmetro n en la
iteracin anterior y j es un nmero positivo que controla la importancia dada al incremento
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 15
anterior y se denomina momento, este regla fue propuesta por [3]. Aplicando la denicin
de n(: 1), se obtiene:
n(:) = n(: 1) c
n

t=0
j
nt
0c(t)
0n
(44)
Este mtodo trata de ser mas estable ya que si la derivada parcial del error respecto al
peso tiene el mismo signo en iteraciones consecutivas, la utilizacin del momento procura un
cambio mayor en el peso, acelerando as la convergencia del algoritmo.Presenta problemas
en proximidades del mnimo.
3.3 Silva-Almeida
Este mtodo varia la tasa de aprendizaje, en funcin de la distancia al mnimo:
c(t) =
_
c(t 1)n $(r
w
i;j
(t)
1)(r
w
i;j
(t1)
1) 0
c(t 1)d $(r
w
i;j
(t)
1)(r
w
i;j
(t1)
1) < 0
(45)
con n 1 y d < 1.
Con este mtodo los saltos realizados en funcin del error son siempre en la misma
direccin y cuando se esta cerca del mnimo, se oscila alrededor de l [3].
3.4 DELTA-BAR-DELTA
Se evitan inestabilidades durante la variacin de la tasa de aprendizaje, mediante la siguiente
modicacin:
c(t) =
_
c(t 1) + n $(r
w
i;j
(t)
1)(c
ij
(t 1)) 0
c(t 1)d $(r
w
i;j
(t)
1)(c
ij
(t 1)) < 0
(46)
Siendo
c
ij
(t 1) = (1 0)r
w
i;j
(t)
1 + 0c
ij
(t 2) (47)
con 0 < 0 < 1.
Las inestabilidades se disminuyen aumentando el valor de la tasa de aprendizaje para
acelerar la convergencia y al comparar el gradiente y el promediado exponencial de los
anteriores c.[2]
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 16
3.5 RPROP
El algoritmo RPROP clcula el cambio de los pesos en forma separada, es guiado por la
primera derivada de ), en este caso; ) es una medida de la diferencia entre la salida arrojada
por la red neuronal y el valor esperado. RPROP utiliza parmetros independientes que
controlan la velocidad con que se recorre la funcin objetivo para cada uno de los pesos
de la red neuronal, al no verse afectado por la saturacin de la red neuronal converge mas
rpidamente que otros algoritmos, como lo dice [8].
Un perceptrn multicapa busca una funcin j
t
que se construye en funcin de sus valores
pasados, j
t1
, j
t2
, ..., j
tP
j
t
= ,

+
H

h=1
,
h
q
_
_
1
2o
1
y
_
_
c
;h
+
P

p=1
c
p;h
j
tp
_
_
_
_
+ -
t
(48)
Donde los parmetros = [,

, ,
h
, c
;h
, c
p;h
] , / = 1...H, j = 1...1 son estimados usando
el principio de mxima verosimilitud de los residuales, el cual equivale a la minimizacin
de una funcin de costo que es denida usualmente como error cuadrtico medio. Esta
ecuacin equivale a un modelo estadstico no paramtrico de regresin no lineal, -
t
sigue
una distribucin normal con media cero y varianza desconocida o
2
, H representa el nmero
de neuronas en la capa oculta, 1 es el nmero de rezagos de la variable dependiente y q es
la funcin de activacin de las neuronas de la capa oculta.
El algoritmo RPROP busca encontrar los valores del vector de parmetros , de forma
que se minimice la diferencia entre los valores reales j

t
y los valores j
t
.
La actualizacin de los pesos, viene dada por
n
ij
(t) = c(t):iq:o(r
w
i;j
(t)
1) (49)
La utilizacin del signo del gradiente en la actualizacin de los pesos supone un ahorro
en la carga computacional. Por otro lado, la constante de adaptacin viene dada por
c(t) =
_
min(c(t)n, c
max
) $(r
w
i;j
(t)
1)(r
w
i;j
(t1)
1) 0
max(c(t)d, c
min
) $(r
w
i;j
(t)
1)(r
w
i;j
(t1)
1) < 0
(50)
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 17
con n 1 y d < 1.
Se intenta tener un valor bajo en las proximidades del mnimo y mayor lejos de ste.
controlando de esta manera la velocidad de convergencia, pero se limitan los valores ya que
si son demasiado grandes se pueden tener inestabilidades y si son demasiado pequeos la
velocidad de convergencia puede ser muy lenta.
4 Conclusiones
Las multiples aplicaciones de las RNA ponen de maniesto la necesidad de realizar modelos
que conduzcan a resultados cada vez mas acertados.
La conguracin en perceptron multicapa exige la implementacin de una algoritmo
de aprendizaje y ademas exige la conguracin de un adecuado nmero de capas ocultas.
Respecto a esto no existe en la literatura una sistemtica va para determinar el nmero
exacto, adems no existen raznes empricas, metodolgicas o tericas para preferir un
algoritmo de entrenamiento especco entre varias alternativas.
En el desarrollo del trabajo de grado "Aplicacin de Herramientas Matemticas en la
Determinacin de Indicadores de gestin Empresarial:Solucin Mediante Minera de Datos"
se utiliz el algoritmo RPROP, las raznes de esto basicamente responden a que sin duda
es el ms utilizado actualmente, pero principalmente la herramienta computacional en la
que se trabajo fue KNIME y esto limita la libre eleccin e implementacin de l algoritmo de
aprendizaje, ya que KNIME
5
trabaja la arquitectura del perceptron multicapa solamente
con el algoritmo RPROP.
En cuanto al nmero de capas ocultas en el desarrollo del trabajo de grado, no se
encontro correlacin alguna entre los resultados y la arquitectura de red, corroborando lo
que dice en la literatura. Sin embargo, es importante dejar claro que el rendimiento del
modelo si tiene correlacin con la calidad y la cantidad de datos que se suministren, es decir
al tener muchos periodos de un mismo fenmeno la RNA ofrece resultados ptimos.
5
Herramienta computacional desarrollada sobre la plataforma Eclipse, mas informacin en
http://www.knime.org/
Algoritmos de Aprendizaje en Retropropagacin para Perceptron Multicapa 18
References
[1] Russell, S.J.; Norvig, P. Inteligencia Articial. Prentice Hall Hispanoamerica, 1996.
[2] Isasi, P.; Galvn, I. M. Redes de Neuronas Articiales. Pearson Educacin, 2004.
[3] Rumelhart, D.,Hinto, G., Williams,R., Parallel Distributed Processing, MIT
Press,1986.
[4] http://commons.wikimedia.org/wiki/File:Neurona.svg
[5] http://commons.wikimedia.org/wiki/File:RedNeuronalArticial.pn
[6] Sanz, A.; Del Bro, B. Redes Neuronales y Sistemas Difusos. Alfaomega Grupo Editor,
2002.
[7] Nilsson, N. Inteligencia Articial. Mc Graw Hill, 2001.
[8] Serrano, A.;Soria, E.;Martn, J. Redes Neuronales Articiales, en
http://ocw.uv.es/ingenieria-y-arquitectura/1-2/libro_ocw_libro_de_redes.pdf
[9] http://ingenieria.udea.edu.co/grupos/revista/revistas/nro050/Articulo%2017.pdf
[10] http://www2.unalmed.edu.co/~pruebasminas/index.php?option=com_docm
an&task=doc_view&gid=1743&tmpl=component&format=raw&Itemid=285
Manuel Currea Urcua Estudiante de ltimo semestre de Matemticas en la Fundacin
universitaria Konrad Lorenz. Sus reas de interes son la economia matemtica, actuara y
data minnig.
Leonardo Jimenez Moscovitz Docente investigador de la Fundacin universitaria
Konrad Lorenz. Sus reas de interes son la inteligencia articial, anlisis digital de imagenes
y data minnig. Sus trabajos han sido publicados en diferentes revista de circulacin nacional
e internacional.

Potrebbero piacerti anche