fpe n+p+l)s p n-p-l p · las redes neuronales usan paralelisrno 16gico, procesan inforrnaci6n en...
Post on 10-May-2020
10 Views
Preview:
TRANSCRIPT
Para escoger el orden del modelo se usa el criterio de informaci6n de Akaike (1969),
asf para cad a P la varianza de los residuos Sp se calcula con la expresi6n:
2. 16
Generalmente Sp decrece cuando P crece. Para tener en cuenta la importancia asociada
del ajuste de los datos con el numero de parametros, Akaike (1969) introdujo el FPE,
el cual para una serie de tiempo centrada de longitud Nesta dado por:
FPE = ( N+P+l)S 2 . 17 P N - P- l P
El criterio de selecci6n del orden P del modelo sera aquel para el cual el FPE sea
mlnimo. El AES puede ser usado para retener las CP significativos estadfsticamente
de una serie de tiempo. Esto permite obtener modelos AR de bajo orden, sin la
presencia de picos falsos.
La predicci6n linea l (PL) usando los coeficientes AR dados por el MME es
especialmente exitoso en extrapolaci6n de senates suaves y oscilatorias, no
necesariamente perfodicas.
1 2
3. REDES NEURONALES
EI siguiente texto es recopilado de Eberhart y Dobbins, 1990 y de Maren et aI, 1990.
Las redes neuron ales asemejan su funcionamiento al cerebro humano, una red
neuronal esta conforrnada por neuronas y enlaces entre estas, cada neurona de entrada
recibe una serial que es la informaci6n, transforma la serial en Ia neurona y transmite
la serial de respuesta a otra neurona, mediante un enlace ya predeterminado y
ponderado por un peso dentro del proceso de transformaci6n de Ia serial, hasta que
se obtiene una respuesta de una neurona de salida.
Una descripci6n formal de una red neuronal serfa: "Redes neuronales son sistemas
computacionales, ya sea hardware 0 software, los cuales imitan las habilidades de
calculo de sistemas biol6gicos usando gran cantidad de informaci6n y neuron as
artificiales interconectadas. Las neuronas artificiales son emulaciones simples de
neuronas bio16gicas, ellas toman informaci6n de sensores u otras neuronas artificiales,
realizan operaciones muy simples con los datos y pasan los resultados a otras
neuronas artificiales, haciendo posible la operaci6n de las redes cllando se realizan
gran cantidad de estos procesos. Las redes neuronales usan paralelisrno 16gico,
procesan inforrnaci6n en todas las neuron as de una misrna capa, combinada con
operaciones en serie, la informaci6n de una capa es transferida a las neuronas en otra
capa. Las caracterfsticas principales de lIna red neuronal son: estructura, dinarnica y
aprendizaje" (Maren, 1990).
1 3
3.1 Resena Hist6rica
En el siglo XIX, William James (1890) defini6 un proceso neuronal: " cuando dos
procesos en el cerebro son activados juntos 0 en sucesi6n inmediata, uno de ellos, por
persistencia tiende a propagar su excitamiento en el o tro " , planteando un proceso de
aprehensi6n y de conexi6n.
Soiamente se iniciaron las simulaciones con redes a partir de 1943 por McCulloch y
Pitts, cuyos resultados fueron simples funciones 16gicas como "a 0 boo y "a y bOO.
En 1958 Rosenblatt, present6 las timitaciones de los modelos y los defini6 como
dispositivos l6gicos. Las primeras simulaciones en computador fueron hechas por
Farley y Clarck, 1954; Rochester, Holland, Haibt y Duda, 1956.
Rosenblatt en i958 desarroll6 el Perceptron un modelo con tres capas, la del medio
conocida como la capa de asociaci6n. Habfa entre las unidades de salida procesos
competitivos que resuitan de conexiones inhibitorias entre las unidades de salida que
ayudaron a Ja clasificaci6n de patrones. Este sistema de tres capas pudo aprender a
conectar 0 asociar una entrada a una unidad de salida aleatoria. El Perceptron fue
computacionalmente preciso y rue una maquina de aprendizaje verdadera. El sistema
por su comportamiento adaptivo complejo tiene limitaciones.
Luego apareci6 el ADA LINE (Adaptive Linear Element, Widrow y Hoff, 1960) y el
MADALINE (muchos ADALINES), los cuales son aparatos electr6nicos analogos que
emplean la regia Delta de aprendizaje, la cual minimiza la diferencia entre la salida
observada y la deseada.
14
Postel;ormente aparecieron una serie de investigadores que enriquecieron el campo
de las redes neuron ales, en 1972 Shun-Ichi Amari present6 la red auto-organizativa,
como un model0 de memoria asociativa. James Anderson (1977) comenz6 a
desarrolHar en los 70 el modelo Hamado cerebro-estado-en-una- caja, de tipo memoria
asociativa, en esta categoria Teuvo Kohonen, desarro1l6 en 1972 las redes
Quantizaci6n del vector adaptivo auto-organizado y la Quantizaci6n del vector de
aprendizaje.
Werbos en 1974 present6 la red de retropropagaci6n, la cual es un Perceptron con
multiples capas, una funci6n umbral diferente y una regia de aprendizaje robusta y
aplicada.
Gail Carpenter y Steve Grossberg (1988) desarrollaron redes de teorfa de resonancia
adaptiva basad os en modelos plausibles biol6gicamente.
En 1975 Kunihiko Fukushima present6 el modelo Cognitron, sistema neuronal
multicapa que interpreta caracteres de escritura. En los anos 80 se present6 el modelo
mejorado Neocognitron.
En la decada de los 80 las redes mas populares son: la red de retropropagaci6n
(Lecun, 1986; Parker, 1985; Rumelhart y McClelland, 1986), la red Hopfield
(Hopfield, 1982, 1986; Hopfield y Tank, 1986; Tank y Hopfield, 1987) dentro del tipo
de redes autoasocialivas es ampliamente conocida.
Bart Kosko (1986, 1987a, 1987b, 1987c), ha desarrollado redes que utilizan la
15
memoria asociativa bidireccional, denlro de una dinamica llamada resonancia , en la
que los patrones cn la primera y segunda capa estimulan la una a la otra hasta que el
patr6n en cada capa presenta un estado estable.
3.2 Estructura de las redes neuronales
Una red neuronal se com pone de tres tipos de estructuras:
- Micro-estructura: es la neurona.
- Meso-estructura: es la forma de organizaci6n y funcionamiento de una red neuronal.
De acuerdo al tipo de meso-estructura se pueden distinguir seis categorfas de redes
neuronales:
- Red mUlticapa, alimentaci6n hacia adelante.
- Red de capa singular, conectada lateralmente.
- Red de capa singular, ordenada topol6gicamente.
- Red bicapa, alimentaci6n hacia adelante y hacia atras.
- Red multicapa, cooperativa/competitiva.
- Redes hfbridas.
- Macro-estructura: cuando se consideran varias redes neuronales en un sistema para
solucionar un problema complejo.
Se presentara en mas detalle la red neuronal multicapa con alimentaci6n hacia
adelante, en particular la red de retropropagaci6n, utilizada para distinguir y aprender
acerca de caracterfslicas de los palrones de entrada.
16
3.3 Red Neuronal, Modelo de retropropagaci6n
Para implementar una red neuronal de retropropagaci6n la configuraci6n representada
en la figura 3.1 es la mas comlin.
conexi ones (pesos) conexiones (pesos)
x 1 - .0 =--\-----=>.c-- -< 1
x- o I n I capa enc.-ada capa escondida
Figura 3.1 Estructura general red de retropropagaci6n
Los subindices de las variables representan:
i: se refiere a la entrada de la red.
j: se refiere a las capas escondidas.
I: se refiere a la salida de la red.
Las variables representan :
Xi: dato de entrada a la red
YI: valor de salida de la red
1 7
n : nodo de una capa, ya sea de entrada i, escondida h 0 de salida l.
b: neuronas sesgadas
wij : peso de la conexi6n del nodo i al nodo j.
3.3.1 Entrada a la red
La entrada a la red puede ser un conjunto de datos, de parametros 0 un patr6n
singular de algun tipo.
EI numero de neuronas depende del tipo de problema a resolver y de los datos que
se tenga.
Para la red de retropropagaci6n cada entrada puede ser tomada como un valor entre
cero y uno. Cuando se puede usar entradas continuas, es to Ie da f lexibiJidad a la red
neuronal.
Normalizar los patrones de entrada puede ser una herramienta para el procesamiento
de datos en diferentes formas. Se puede normalizar las n entradas juntas, normalizar
cada canal ( f1ujo de informaci6n a cada neuron a de entrada) separadamente 0 grupos
de canales.
Si la entrada consiste en datos puntuales, probablemente se normaliza todos los
canales juntos, si la entrada consiste de parametros, se puede normalizar cada canal
o grupos de canales que representen panimetros similares.
En hidrologfa probablemente la mejor normalizaci6n consiste en estandarizar el dato
de acuerdo a la media y la desviaci6n estandar (anomaI1a) y aplicarle luego la
transformaci6n sigmoidal, igualmente se hace can los valores de la sa lida.
18
3.3.2 Oilculos de alimentaci6n hacia adelante
Una vez transformados los datos, las neuronas de entrada distribuyen 1a seoal en
multiples caminos a las capas escondidas. La salida de una neurona de entrada
tambien esul en el rango de cero a uno. Un peso esta asociado con cada conexi6n a
una neurona escondida y cad a neurona escondida eSl<t conectada a una neurona de
salida. La informaci6n siempre va de izquierda a derec ha, como se ve en \a figura 3.1,
de ahf la carcaterfstica de que la alimentaci6n de la informaci6n sea hacia adelante.
El procesamiento de la seoal que entra a las neuronas depende de la funci6n de
transferencia usada, general mente en este lipo de algoritmo se usa la funci6n
sigmoidea (ver figura 3.2). En los nodos de la capa de entrada no hay transformaci6n
de la seoal de la informaci6n.
1~'~----------~-------------
~.,~----~--~-+--------~----4.0 -J,..Q -2.0 -f.O 0..0 1.0 ' ,0 10 '.0
""'" do O'1!,oda, x
Figura 3.2 Funci6n de transferencia sigmoidea usada en el mode10 de retropropagaci6n
La entrada a una neurona escondida es la suma ponderada por los pesos de las
conexiones de las seoates que Ilegan de las neuron as de la capa anterior, ya sea otra
1 9
capa escondida 0 la capa de entrada.
entrada neta 3 .1J
La salida de una neurona es el resu Itado de una funci6n sigmoidea que transforma la
senal de entrada y da un valor en un rango de cero a uno.
s alida . = y = 1 3. 2 .7 ] l+exp( - x .)
.7
Para valores grandes positivos de entrada grandes el resulLado de la neUl·ona se
aproxima a uno y para valores pequenos negativos de entrada el valor de salida se
aproxima a cero.
Un punto clave en el diseno de una red neuronal es la selecci6n de los hj (nodos de
la capa escondida), el cual varia de acuerdo a la aplicaci6n y conservaci6n de la
relaci6n del numero de factores significativos estadfsticamente que existen en la
entrada de datos, empiricamente se ha encontrado que iniciar con la raiz cuadrada de
la suma de las neuronas de entrada mas las de salida y adicionando unas cuantas, da
buenos resultados. Cuando tiene pocas neuronas la red no se entrena bien, si tiene
escasamente las suficientes la red puede entrenarse pero no es robusta en la
identificaci6n de datos con rufdo. Un numero grande de neuronas hace que la red se
demore mucho para entrenar, tiende a crear una red "abuela" que memoriza todas las
cosas y que no reconoce nuevos patrones mUY bien .
EI numero de neuronas escondidas y el valor de a (coeficente de aprendizaje) y
ll(factor de momentum) que se tratan mas adelante son los parametros a calibrar en
el entrenamiemo de la red. EI cacuJo de la entrada y salida para una neurona en la
2 0
1
capa de salida es igual al de una neurona en la capa escondida, 0 sea:
entrada neta 1 = Xl = L w. }Y j 3 .3 j
3 .4
Cuando se tienen neuronas sesgadas el calcul0 es igual, pero su valor de salida
siempre sera uno. Generalmente el numero de neuronas de salida es diferente al
numero de neuronas de entrada. EI ca1culo de la entrada y salida para cada neurona,
para la fase de entrenamiento como para la fase de ensayo/corrida de la red son
iguales.
3.3.3 Entrenamiento por retropropagaci6n del error
El proceso de aprendizaje involucra el concepto de error de la red que permite
cuantificar su aprendizaje. La ecuaci6n 3.5 define el error como:
n,
3 .5E, = 0,5 L (t p1-Yp] ) 2 j =l
El error depende del valor de salida calculado Ypl Y del valor que supuestamente se
debe obtener ~I al cuadrado, promediado sobre todas las neuronas de la capa de
salida. EI subfnidce p denota que el valor es para un patr6n dado. EI valor 0,5 se
puede despreciar en los calculos, esta ecuaci6n fue presentada por Rumelhart y
McClelland (1986). La meta del entrenamiento es minimizar Ep sobre todos los
21
patrones de entrenamiento.
De la ecuaci6n 3.2 la salida de una neurona en la capa de salida es una funci6n de
su entrada, Y 1 = f (X l ) . La primera derivada de la funci6n ['(x,) es importante
en el error de retropropagaci6n. Una cantidad Ilamada la senal del error 8, para las
neuronas de la capa de salida es definida como:
3.6
Considerando la funci6n sigmoidea su derivada es:
3. 6
EI error quedaria expresado:
3.8
Se quiere propagar este error atras y hacer un ajuste de pesos, para hacer esto hay dos
0pclOnes:
-Ajustar los pesos despues de que cad a patr6n de entrenamiento es presentado a la
red, esta opci6n es Hamada en linea 0 patr6n singular.
-La otra opci6n es acumular los 8s de cada neurona para el entrenamiento completo,
adicionandolas, y propagando atras el error basado en el 8 total, llamado
agru pamiento.
EI proceso de actualizaci6n de los pesos es el siguiente:
Generalmente sc inicializan los pesos aleatoriamente en un rango de -0,3 a 0,3, el
porque de esta rango 10 ha dado la experiencia de las personas que han trabajado al
22
respecto, a veces este rango no funciona y hay que escoger un rango mas amplio 0
mas pequeno, dependiendo de la aplicaci6n.
Para actualizar los pesos que alimentan la capa de salida, w 1j ' se utiliza la ecuaci6n
3.9, donde 11 es el coeficiente de aprendizaje, el cual puede variar entre cero y uno.
3.9
Este tipo de actualizaci6n algunas veces Ileva a valores que son minimo locales
(energfa minima local), esto hace que a la ecuaci6n 3.9 se Ie pueda adicionar un
termino a, lIamado factor de momentum que ayuda al algoritmo a llegar al mfnimo
global (soluci6n 6ptima global).
W i) (nuevo) I) (ant e rior) + 118 jYJW
3 . 10 + a[t-wi ; (ant eri or) 1
EI cambio de peso involucra el tem1ino de la sefial del eITor 8 y el termino factor del
momentum a. EI cambio del peso W por intermedio del factor de momentum a hace
muy probable alcanzar la soluci6n 6ptima global.
Los pesos de las neuronas sesgadas son actualizados en igual forma, como en la
ecuaci6n 3.10, ellas sirven como unidades umbrales para las capas a las cuales ellas
estan conectadas.
Pasando a la actualizaci6n de los pesos de las conexi ones de las neuronas escondidas,
se utiliza el mismo concepto de error empleado en las neuronas de la capa de salida.
Rumelhart y McClelland (1986), mostraron que el error para una neurona escondida
es:
23
1l )
3 .11f' (x) l L W , ,OJ 1= 0
La salida de una neurona de una capa escondida es funci6n de su entrada, Yj=f(x).
j'(x) es la derivada de la funci6n sigmoidea, esta derivada es Yj = (1-y), asi el error
se define como:
n ,
o} = Yj(1-YJ ) LW1j Oz 3.1 2 1= 0
El ajuste de pesos de las conexiones de la capa de entrada a la capa escondida es de
forma amlloga a la ecuaci6n 3.10.
WJ
, (n uev o) = W }l (ant eri or) + 11 0j Y1
3 .13 + a[.6.w]l (ant eri o r) 1
En el proceso de ajuste de pesos, primero se calcula el error para cad a neurona de
salida usando la ecuaci6n 3.8 y para cada neurona escondida usando la ecuaci6n 3.12,
para cada patr6n en el entrenamiento. Se suman los errores y despues que los patrones
han sido presentados una vez, se ajustan los pesos con las ecuaciones 3.10 y 3.13.
En el proceso de entrenamiento hay ciertos aspectos que hay que considerar:
1. Los valores de 11 y a se pueden asignar capa por capa 0 neurona por neurona,
generalmente un solo valor es seleccionado para cada parametro en una aplicaci6n .
Estos valores son ajustados en el proceso de entrenamiento pero una vez escogidos,
no se varian.
2. Para calcular los os con la ecuaci6n 3.8 y 3.12 se usan los pesos anteriores de la
capa escondida a la capa de salida y de la capa de entrada a la escondida. Los pesos
2 4
no son actulizados hasta que todos los patrones han sido presentados.
La se1ecci6n de los valores de Tl y a depcnden de la aplicaci6n, Rumelhart y
McClelland (1986) recomiendan 0,5 y 0,9 respectivamente, para empezar. Estos
valores pueden Ilevar a la red a oscilaciones 0 a saturar las neuron as, la saturaci6n
causa que la salida de las neuronas durante el enlrenamiento y ensayo van a estar
cerca a1 mismo valor, generalmente cerca a cero 0 uno. La saturaci6n ocurre cuando
la entrada neta a una neurona es grande (positiva 0 negativa) y las variaciones en la
entrada tienen poco efecto en la salida.
Otro parametro a tener en cuenta es el numero de iteraciones en el entrenamiento para
dar un buen error medio cuadrado. Para empezar se puede tomar un valor de Ep=0,04
6 0,05 para 1000 6 2000 iteraciones.
La red de retropropagaci6n ha sido aplicada en una gran variedad de tareas de
reconocimiento de patrones, incluyendo identificaci6n de fen6menos, lectura de textos,
reconocimiento de caracteres de letras, compresi6n de imagenes, diagn6stico medico
y selecci6n de tecnicas de combate. Es util tambien para filtrar una senal y detectar
discontinuidades en sefiales de tiempo variable.
3.3.4 Predicci6n
Las redes neurona1es han demostrado ciena habilidad para predecir sistemas no
lineales, dependiendo su precisi6n del tipo de sistema a estudiar.
La prediccion se hace con base en una serie de datos de longitud N, preferiblemente
de considerable extension, se entrena la red con los datos disponibles y se hace la
prediccion en la ventana de period os deseada, esto se hace en forma recursiva, 0 sea,
una predicci6n en t es ulilizada para hacer la predicci6n en t+ 1. Se entra un numero
25
nj de datos y 1a salida arro.jam un numero no de predicciones (longitud de la ventana),
no debe ser pequeno ya que cuando no aumenta la precisi6n de la predicci6n
disminuye.
26
top related