Está en la página 1de 183

FUNDACION UNIVERSITARIA KONRAD LORENZ

FACULTAD DE INGENIERIA DE SISTEMAS

APLICACIN DE REDES NEURONALES MLP


A LA PREDICCION DE UN PASO EN SERIES DE TIEMPO

DIEGO FERNANDO SOCHA GARZON


GILBERTO ANTONIO ORTIZ HERRADA
BOGOTA D.C., MAYO DE 2.005

Director
Ing. PERVYS RENGIFO RENGIFO

TABLA DE CONTENIDO

1. SERIES DE TIEMPO ________________________________ _______________ 9


1.1. INTRODUCCIN ______________________________________________ 9
1.2. DEFINICIN________________________________ __________________ 10
1.3. OBJETIVO DEL ANLISIS DE UNA SERIE DE TIEMPO _____________ 11
1.4. TERMINOS RELACIONADOS AL ANLISIS DE UNA SERIE DE TIEMPO12
1.4.1. VARIABLE ALEATORIA ______________________________________12
1.4.2. PROCESOS ESTOCSTICOS ________________________________13
1.4.3. OPERADORES_____________________________________________14
1.4.4. MEDIA____________________________________________________15
1.4.5. VARIANZA ________________________________________________15
1.4.6. COVARIANZA______________________________________________16
1.4.7. FUNCIN DE CORRELACIN ________________________________16
1.4.8. FUNCIONES DE AUTOCOVARIANZA __________________________17
1.4.9. FUNCIN DE AUTOCORRELACIN ___________________________17
1.4.10. FUNCIN DE AUTOCORRELACIN PARCIAL __________________19
1.4.11. ESTACIONARIEDAD ________________________________ _______20
1.4.12. ERGODICIDAD____________________________________________21
1.4.13. CORRELOGRAMA _________________________________________21
1.4.14. RUIDO BLANCO________________________________ ___________23
1.5. COMPONENTES DE UNA SERIE DE TIEMPO______________________ 25
1.6. ANLISIS DESCRIPTIVO DE UNA SERIE DE TIEMPO ______________ 25
1.7. MTODOS DE PRONSTICO ________________________________ __ 28
1.7.1. CONSIDERACIONES PRELIMINARES _________________________28
1.7.2. MTODOS CUALITATIVOS O SUBJETIVOS ____________________29
1.7.3. MTODOS CUANTITATIVOS_________________________________30
1.7.4. MTODOS DE DESCOMPOSICIN ___________________________31
1.7.5. MTODOS DE SUAVIZAMIENTO _____________________________31
1.8. MODELOS AUTORREGRESIVOS________________________________ 32
1.8.1. AR(1) ____________________________________________________32
1.8.2. AR(P) ____________________________________________________33
1.9. MODELOS DE PROMEDIO MVIL _______________________________ 34
1.9.1. MA(Q)____________________________________________________34
1.10. MODELO AUTORREGRESIVO CON PROMEDIO MVIL____________ 35
1.11. MODELO ARMA (P,Q) ________________________________________ 36
1.11. CRITERIOS DE EVALUACIN DE PREDICCIONES ________________ 36
1.12. OTROS MTODOS NO CONVENCIONALES ______________________ 38
1.13. APLICACIONES DE LAS SERIES DE TIEMPO ____________________ 40
2. REDES NEURONALES ____________________________________________ 42

2. 1. INTRODUCCION _____________________________________________ 42
2.2. HISTORIA ___________________________________________________ 43
2.3. NEURONA BIOLGICA ________________________________________ 46
2.4. MODELO DE NEURONA ARTIFICIAL _____________________________ 49
2.4.1. MODELO GENERAL ________________________________________50
2.4.2. MODELO ESTANDAR ________________________________ _______54
2.5. REDES NEURONALES Y ARQUITECTURAS ______________________ 55
2.5.1. TIPOS DE ARQUITECTURA __________________________________56
2.6. APRENDIZAJE DE UNA RED NEURONAL ________________________ 58
2.6.1. FASE DE APRENDIZAJE. CONVERGENCIA_____________________59
2.6.2. FASE DE RECUERDO O EJECUCIN. ESTABILIDAD _____________61
2.7.

CLASIFICACION DE LOS MODELOS NEURONALES _____________ 63

2.8. COMPUTABILIDAD NEURONAL _________________________________ 64


2.9. REALIZACIN Y APLICACIONES DE LAS REDES NEURONALES____ 65
2.10. REDES NEURONALES SUPERVISADAS ________________________ 67
2.10.1. ASOCIADOR LINEAL ________________________________ _______67
2.10.2. PERCEPTRON SIMPLE_____________________________________71
2.10.3. ADALINE _________________________________________________77
2.10.4. EL PERCEPTRON MULTICAPA (MLP)_________________________79
2.11. CAPACIDAD DE GENERALIZACIN DE LA RED__________________ 86
2.11.1. VALIDACIN CRUZADA (CROSS-VALIDATION) ________________87
2.11.2. NMERO DE EJEMPLOS DE ENTRENAMIENTO________________89
2.11.3. REDUCCIN DEL TAMAO DE LA ARQUITECTURA DE UNA RED 90
3.

MATLAB TOOLBOX ____________________________________________ 92


3.1. INTRODUCCIN ________________________________ ______________ 92
3.2. BACKPROPAGATION _________________________________________ 92
3.3. RED FEEDFORWARD _________________________________________ 95
3.4. CREANDO UNA RED (newff) ___________________________________ 96
3.5. SIMULACIN (sim) ____________________________________________ 97
3.6. ENTRENAMIENTO ____________________________________________ 98
3.6.1. ENTRENAMIENTO POR LOTE (train)___________________________98
3.6.2. ENTRENAMIENTO POR INCREMENTAL (traingd)________________99
3.7. ENTRENAMIENTO RPIDO ___________________________________ 102
3.7.1. TAZA DE APRENDIZAJE (traingda, traingdx) ____________________ 102
3.7.2. REZAGO (TRAINRP) _______________________________________ 104
3.8. ALGORITMOS DE GRADIENTE CONJUGADO ____________________ 105
3.8.1. ACTUALIZACIN DE FLETCHER-REEVES (traincgf) _____________ 105
3.8.2. ACTUALIZACIN DE POLAK-RIBIRE (traincgp)________________ 107
3.8.3. RESTABLECIMIENTO DE POWELL-BEALE (traincgb) ____________ 108
3.8.4. GRADIENTE CONJUGADO ESCALADO (TRAINSCG) ____________ 108

3.9. RUTINAS DE BSQUEDA LINEAL ______________________________ 109


3.9.1. BSQUEDA DE SECCIN DORADA (srchgol) __________________ 110
3.9.2. BSQUEDA DE BRENT (srchbre)_____________________________ 110
3.9.3. BSQUEDA BISECCIN-CBICA HBRIDA (srchhyb) ____________ 111
3.9.4. BSQUEDA DE CARAMBOLA (srchcha)_______________________ 111
3.9.5. BACKTRACKING (srchbac) ________________________________ __ 111
3.10. ALGORITMOS CUASI-NEWTON_______________________________ 112
3.10.1. ALGORITMO DE BFGS (trainbgf) ____________________________ 112
3.10.2. ALGORITMO SECANTE DE UN PASO (trainoss)_______________ 113
3.10.3. LEVENBERG-MARQUARDT (trainlm)_________________________ 114
3.10.4. LEVENBERG-MARQUARDT DE MEMORIA REDUCIDA (trainlm) __ 115
3.11. REGULARIZACIN ________________________________ _________ 116
3.11.1. FUNCIN DE DESEMPEO MODIFICADA ____________________ 116
3.11.2. REGULARIZACIN AUTOMATIZADA (trainbr) _________________ 117
3.12. DETENCIN TEMPRANA ____________________________________ 119
3.13. PREPROCESO Y POSTPROCESO_____________________________ 121
4. REDES NEURONALES Y SERIES DE TIEMPO _______________________ 124
4.1. REDES NEURONALES EN LA PREDICCION _____________________ 124
4.1.1. ALGUNOS TRABAJOS DE PREDICCIN CON REDES NEURONALES
________________________________ ______________________________ 125
4.2. DESARROLLO DE LA INVESTIGACION _________________________ 126
4.3. ANALISIS DE LAS SERIE ________________________________ _____ 127
ANEXOS ________________________________ _________________________ 167
CONCLUSIONES__________________________________________________ 179

INTRODUCCIN
La neces idad de explorar parte de las aplicaciones y posibilidades que brindan las
redes neuronales artificiales son mltiples y en diferentes campos, esto debido a
que pueden ser entrenadas mediante algoritmos para hacer una funcin
determinada. La posibilidad de hacer hbridos con otras tcnicas como los
algoritmos genticos hace que las redes neuronales artificiales multipliquen sus
posibilidades de aplicacin y se extiendan a diversos campos. Dentro de este orden
de ideas surge la necesidad de hacer predicciones de datos futuros basados en
datos pasados y presentes,
este fenmeno es importante para saber el
comportamiento aproximado de una variable y sus aplicaciones son infinitas desde
el comportamiento econmico de un producto en el mercado hasta la obtenc in de
la temperatura para un da o una hora precisa.
Estas ltimas son el motivo de esta investigacin el cual pretende ver la aplicacin
de las redes neuronales en este campo de la prediccin.
A lo largo de este documento se observaran algunas de las tcnicas mas utilizadas
para la prediccin de datos tales como las series de tiempo y los mtodos que
permiten hacer prediccin con ellas, las redes neuronales su historia, estructura,
mtodos, arquitecturas y en especial Backpropagation feedforward, una breve
introduccin a la utilizacin del toolbox de matlab para el manejo de redes
neuronales backpropagation y una serie de pruebas que pretende demostrar la
utilidad de las redes neuronales backpropagation tipo feedforward y el potencial de
la herramienta toolbox de matlab para el desarrollo de estas.

MARCO DE REFERENCIA

Una breve introspeccin al contenido temtico de este documento ser presentada


a continuacin, estos temas sern abordados y complementados dentro del
desarrollo de este.

Series de Tiempo
Gran cantidad de informacin econmica (de los individuos, las empresas, las
economas de los pases, etc.) es recopilada con fines de anlisis. Qu son las
series de tiempo?: Registro metdico a intervalos de tiempo fijos de las
caractersticas de una variable, o su observacin numrica.
Herramientas estadsticas: Se usan para describir y analizar series de tiempo.

Describir: Resumir en forma concisa,


informacin.

mediante grficas y parmetros, la

Analizar: inferir de la informacin


caractersticas de (toda) la poblacin.

(utilizndola

como

una

muestra),

Para inferir, muchas veces es til descomponer la serie de tiempo por sus
principales componentes:

Tendencia y ciclo: representa el movimiento de largo plazo de la serie.

Estacionalidad: representa efectos de fenmenos que ocurren o se reproducen


peridicamente (fin de semana, diciembres, los viernes, etc.).

Irregularidad: movimientos impredecibles o aleatorios.

Tendencia y ciclo y estacionalidad, conforman la parte determinstica de la serie,


mientras que la irregularidad representa la parte no-determinstica o estocstica de
la serie.
Muchos usuarios de la informacin se limitan a desestacionalizar las series
estocsticas (en parte por la generalizacin de mtodos de desestacionalizacin),
sin intentar un anlisis estadstico mas completo.
-Ventajas de aplicar procesos estocsticos a series de tiempo:

Flexibilidad para representar un amplio nmero de fenmenos mediante una


sola clase general de modelos.
Facilidad y precisin en pronsticos.

Generalizar mtodos de anlisis de variables individuales a grupos de variables.

Neurona Natural
La neurona es la clula fundamental y bsica del sistema nervioso.
Es una clula alargada, especializada en conducir impulsos nerviosos.
En las neuronas se pueden distinguir tres partes fundamentales, que son:

Soma o cuerpo celular: corresponde a la parte ms voluminosa de la


neurona. Aqu se puede observar una estructura esfrica llamada ncleo.
ste contiene la informacin que dirige la actividad de la neurona. Adems,
el soma se encuentra el citoplasma. En l se ubican otras estructuras que
son importantes para el funcionamiento de la neurona.
Dendritas: son prolongaciones cortas que se originan del soma neural. Su
funcin es recibir impulsos de otras neuronas y enviarlas hasta el soma de la
neurona.
Axn: es una prolongacin nica y larga. En algunas ocasiones, puede medir
hasta un metro de longitud. Su funcin es sacar el impulso desde el soma
neuronal y conducirlo hasta otro lugar del sistema.

Las neuronas son muy variadas en morfologa y tamao. Pueden ser estrelladas,
fusiformes, piriformes. Pueden medir no ms de cuatro micras o alcanzar las 130
micras. Tambin son muy variadas en cuanto a las prolongaciones: las dendritas y
el cilindroeje o axon. Las dendritas, de conduccin centrpeta, pueden ser nicas o
mltiples. El axn es siempre nico y de conduccin centrfuga.
Conociendo la neurona, se explica la estructura bsica que permite la actividad
refleja: el arco reflejo.
Todo arco reflejo est formado por varias estructuras. stas son: receptor, va
aferente o va sensitiva, centro elaborador, va eferente o va motora, y efector.
Receptor: es la estructura encargada de captar el estmulo del medio ambiente y
transformarlo en impulso nervioso. En los receptores existen neuronas que estn
especializadas segn los distintos estmulos.
Se encuentran por ejemplo receptores especializados en:
Ojo
----------------->
Visin
Odo
----------------->
Audicin
Nariz
----------------->
Olfato
Lengua
----------------->
Gusto
Piel
----------------->
Tacto, dolor, presin, etc.
El receptor entrega el impulso nervioso a la va aferente.

Va aferente o va sensitiva: esta va tiene como funcin conducir los


impulsos nerviosos desde el receptor hasta el centro elaborador.

Centro elaborador: es la estructura encargada de elaborar una respuesta


adecuada al impulso nervioso que lleg a travs de la va aferente. La
mdula espinal y el cerebro son ejemplos de algunos centros elaboradores.
Va eferente o motora: esta va tiene como funcin conducir el impulso
nervioso que implica una respuesta -accin- hasta el efector.
Efector: estructura encargada de ejecutar la accin frente al estmulo. Los
efectores son generalmente msculos y glndulas. Los msculos efectan
un movimiento, y las glndulas producen una secrecin -sustancias
especiales-. Los efectores estn capacitados para hacer efectiva la orden
que proviene del centro elaborador.

Redes Neuronales en la Prediccin


La prediccin de errores en una red de computadoras, basada en el trfico que
produce, es una tarea muy difcil. Un buen analista debe contar con muchos
elementos que le permitan conocer la red, adems del conocimiento de trfico
producido por redes semejantes a sta. Es muy importante que el anlisis sea
realizado por un experto en el rea.
Las redes neuronales artificiales cuentan con el potencial para realizar este tipo de
anlisis, ya que en la mayora de los casos son muy buenas en el reconocimiento de
patrones complejos, que es bsicamente el caso que ocurre con el trfico producido
por una red de computadoras.
Tipos de Redes Neuronales Artificiales usados para la prediccin
El trfico producido en una red de computadoras no es mas que una serie de
tiempo, es decir un conjunto de valores de un mismo atributo censados en perodos
regulares. Para predecir series de tiempo se han utilizado las redes neuronales
alimentadas hacia adelante (feed-forward) y las redes recurrentes (recurrent).
Dentro de las redes alimentadas hacia adelante existen diferentes algoritmos, como
son: Linear Associator, Backpropagation, Cascade Correlation, Cascade 2, RAN
(resource Allocating Network). En la redes recurrentes tenemos entre otros:
Recurrent Cascade Correlation, Simple Recurrent Networks, Real-Time Recurrent
Learning, Sequential Cascaded Network.
Algunos trabajos de prediccin con redes neuronales
En los ltimos aos se cuenta con muchos trabajos en la prediccin de series de
tiempo utilizando redes neuronales artificiales, de los cuales podemos mencionar
los siguientes:
Prediccin de acciones. Consiste en el desarrollo de una red neuronal capaz de
realizar la prediccin del precio de las acciones para un nmero dado de
compaas. Esta prediccin se realiza mediante redes alimentadas hacia adelante,
y el objetivo en este particular caso es predecir el siguiente valor en la serie de
tiempo: el prximo precio de la accin.

Prediccin de trfico vehicular. Se han utilizado redes neuronales recurrentes


para la prediccin a corto plazo del trfico en una carretera, a fin de prevenir
congestiones y tener un control del acceso a la autopista. Para esto se utilizan
datos estimados de otros das con propiedades similares; los mejores resultados e
obtuvieron con una red multi-recurrente, y se pudo comprobar que las redes
neuronales resolvieron este tipo de prediccin y obtuvieron mejores resultados que
los mtodos estadsticos convencionales (Ulbricht ).
Prediccin del trfico en una autopista. Dierdre predice el volumen y el nivel de
ocupacin de una autopista, los resultados obtenidos fueron mejores que los
obtenidos por tcnicas usadas anteriormente. Se demostr que las redes
neuronales con exactitud pueden predecir el volumen y la ocupacin 1 minuto por
adelantado, se utiliza una red neuronal multicapa entrenndose mediante
retropropagacin, este trabajo se auxilia de una rampa de medicin de lgica
Prediccin de la transicin mensual del ndice de precios de acciones. Usando
recurrencia y retropropagacin, la red neuronal es entrenada para aprender
conocimiento experimental y para predecir la transicin de precios de acciones,
tomando como entrada principal algunos indicadores econmicos y obteniendo la
transicin relativa de la composicin del ndice de precios de acciones, usando
ocho aos de datos econmicos, la prediccin del crecimiento mensual o la cada
del ndice del precio de acciones. Los resultados indican que las redes neuronales
son herramientas eficientes para la prediccin del precio de las acciones.

1. SERIES DE TIEMPO

1.1.

INTRODUCCIN

Toda institucin, ya sea la familia, la empresa o el gobierno, tiene que hacer planes
para el futuro si ha de sobrevivir y progresar. Hoy en da diversas instituciones
requieren conocer el comportamiento futuro de ciertos fenmenos con el fin de
planificar, prever o prevenir.
La planificacin racional exige prever los sucesos del futuro que probablemente
vayan a ocurrir. La previsin, a su vez, se suele basar en lo que ha ocurrido en el
pasado. Se tiene pues un nuevo tipo de inferencia estadstica que se hace acerca
del futuro de alguna variable o compuesto de variables basndose en sucesos
pasados. La tcnica ms importante para hacer inferencias sobre el futuro con base
en lo ocurrido en el pasado, es el anlisis de Series de Tiempo.
Son innumerables las aplicaciones que se pueden citar, en distintas reas del
conocimiento, tales como, en economa, fsica, geofsica, qumica, electricidad, en
demografa, en marketing, en telecomunicaciones, en transporte, etc.

Series de Tiempo

1. Series econmicas:

2. Series Fsicas:

3. Geofsica:

Ejemplos
- Precios de un artculo
- Tasas de desempleo
- Tasa de inflacin
- ndice de precios, etc.
- Meteorologa
- Cantidad de agua cada
- Temperatura mxima diaria
- Velocidad del viento (energa elica)
- Energa solar, etc.

- Series sismologas

4. Series demogrficas:

- Tasas de crecimiento de la poblacin


- Tasa de natalidad, mortalidad
- Resultados de censos poblacionales

5. Series de marketing:

- Series de demanda, gastos, ofertas

6. Series de
telecomunicacin:

- Anlisis de seales

7. Series de transporte:

- Series de trfico

Uno de los problemas que intenta resolver las Series de Tiempo es el de prediccin.
Esto es dado una serie {x(t1),...,x(tn)} nuestros objetivos de inters son describir el
comportamiento de la serie, investigar el mecanismo generador de la serie temporal,
buscar posibles patrones temporales que permitan sobrepasar la incertidumbre del
futuro.
En adelante se estudiar como construir un modelo para explicar la estructura y
prever la evolucin de una variable que observamos a lo largo del tiempo. La
variables de inters puede ser macroeconmica (ndice de precios al consumo,
demanda de electricidad, series de exportaciones o importaciones, etc.),
microeconmica (ventas de una empresa, existencias en un almacn, gastos en
publicidad de un sector), fsica (velocidad del viento en una central elica,
temperatura en un proceso, caudal de un ro, concentracin en la atmsfera de un
agente contaminante), o social (nmero de nacimientos, matrimonios, defunciones,
o votos a un partido poltico). [1]
1.2. DEFINICIN

En muchas reas del conocimiento las observaciones de inters son obtenidas en


instantes sucesivos del tiempo, por ejemplo, a cada hora, durante 24 horas,

mensuales, trimestrales, semestrales o bien registradas por algn equipo en forma


continua.
Se llama Serie de Tiempo a un conjunto de mediciones de cierto fenmeno o
experimento registradas secuencialmente en el tiempo. Estas observaciones sern
denotadas por {x(t1), x(t 2), ..., x(tn)} = {x(t) : t T R} con x(ti) el valor de la variable
x en el instante ti. Si T = Z se dice que la serie de tiempo es discreta y si T = R se
dice que la serie de tiempo es continua. Cuando ti+1 - ti = k para todo i = 1,...,n-1, se
dice que la serie es equiespaciada, en caso contrario ser no equiespaciada.

En adelante se trabajar con Series de Tiempo discretas, equiespaciadas en cuyo


caso se asumir sin perdida de generalidad que: {x(t1), x(t2), ..., x(tn)}= {x(1), x(2),
..., x(n)}. [2]

1.3. OBJETIVO DEL ANLISIS DE UNA SERIE DE TIEMPO


Los principales conceptos y caractersticas que se tienen en cuenta para el anlisis
de una serie de tiempo son:
1. Obtener modelos estadsticos que describen la estructura pasada de las
observaciones que generan la serie; y/o estudiar modelos que explican la
variacin de una serie en trminos de series (explicativas) conocidas.
2. Suponer que la estructura pasada de la serie de inters o de las series
explicativas se conserva y bajo este supuesto, pronosticar valores futuros de
la serie bajo estudio.
3. Analizar la significancia de los efectos que polticas o intervenciones
pasadas causaron en la estructura de la serie.

4. Simular valores futuros de la serie,

bajo condiciones o restricciones

definidas por polticas o criterios nuevos, para as supervisar y controlar los


cambios que se producen en la serie. [4]

Para una mayor comprensin de la estructura, el comportamiento y el anlisis de


una serie de tiempo se debe tener en cuenta como primera medida conocer y
entender algunos trminos que se describirn a continuacin.

1.4. TERMINOS RELACIONADOS AL ANLISIS DE UNA SERIE DE TIEMPO


1.4.1. VARIABLE ALEATORIA
En estadstica y teora de probabilidad una variable aleatoria se define como el
resultado numrico de un experimento aleatorio. Matemticamente, es una
aplicacin

que da un valor numrico a cada suceso en el espacio O de los

resultados posibles del experimento.


Se distinguen entre

variables aleatorias discretas

variables aleatorias continuas.

Dado una variable aleatoria X se pueden calcular estimadores estadsticos diferentes


como la media (Media aritmtica, Media geomtrica, Media ponderada) y valor
esperado y varianza de la distribucin de probabilidad de X.

Para las variables aleatorias continuas

El valor esperado E[X] se calcula as


E[X] = integral {xf(x)dx}

La varianza V x (X) es

V x [X] = E[X2] - (E[X])2


Donde
E(X2) = integral {x2f(x)dx}
[6] [7]

1.4.2. PROCESOS ESTOCSTICOS

Un proceso estocstico es una sucesin de variables aleatorias Zt / t T .


El subndice que indica como varia t es el ndice (puede variar en un subconjunto de
los reales, generando as procesos continuos. Aqu solo se consideran procesos
estocsticos discretos, cuando el ndice vara en los enteros.

La relacin de un proceso estocstico con una serie de tiempo radica en que una
Serie de Tiempo es una sucesin zt ,

generada

al obtener una y solo una

observacin de cada una de las variables aleatorias que definen un proceso


estocstico. Las observaciones son tomadas a intervalos de tiempo o distancia
iguales, segn lo indica el ndice t que genera la sucesin. En este sentido, la
serie es una realizacin de un proceso estocstico.
Luego entonces un

pronostico es la prediccin de un valor o una variable

aleatoria, Z n + l , en un proceso estocstico. n es el origen del pronostico y l la


posicin relativa de la variable a pronosticar con respecto a n.
Cuando se habla de la actualizacin de un pronstico se refiere a re-estimar los
parmetros del modelo de prediccin, incluyendo las nuevas observaciones, y con
ellas pronosticar los valores futuros estipulados en el horizonte del pronstico. [3]

1.4.3. OPERADORES

1.4.3.1. OPERADOR DE REZAGO

En el anlisis de series de tiempo es una herramienta til el operador de rezago,


denotado L . Que sirve para expresar ecuaciones en diferencia, que es la forma
tpica de las series de tiempo y para encontrar su solucin particular (estado
estable). Se define como:

L x1 = xt
Donde es el rezago (positivo o negativo) que se desea introducir en la variable

x t por ejemplo:
L3 x t = xt 3
L2 x t = xt + 2

Lc = c
Donde c es una constante. La propiedad ms til del operador de rezago es:

1
2
3
= 1 + L + (L) + (L) + .......
1L

para < 1

[3]

1.4.3.1. OPERADOR DE DIFERENCIA

Otro operador conveniente y adems muy til para expresar series de tiempo es el
operador de diferencia xt definido como:

xt = xt x t 1 = (1 L ) x t

El cual consiste en tomar una observacin y restarle la observacin inmediatamente


anterior. Tambin puede aplicarse de manera repetitiva. Por ejemplo

2 x t = xt = ( xt xt 1 ) = x t xt 1 ( xt 1 x t 2 )

= x t x t1 x t1 + x t 2 = x t 2 x t1 + x t 2 [3]
1.4.4. MEDIA
La media aritmtica o promedio de una cantidad finita de nmeros es igual a la
suma de todos ellos dividida entre el nmero de sumandos.
As, dados los nmeros a1,a2, ... , an, la media aritmtica ser igual a:

Por ejemplo, la media aritmtica de 8, 5 y -1 es igual a (8 + 5 + (-1)) / 3 = 4.


El smbolo (mu) es usado para la media aritmtica de una poblacin. Se usa X,
con una barra horizontal sobre el smbolo para medias de una muestra:

[6]

1.4.5. VARIANZA
En teora de probabilidad y estadstica la varianza es un estimador de la divergencia
de una variable aleatoria X de su valor esperado1 E[X]. Tambin se utilizan la
desviacin estndar, la raz de la varianza.
La varianza V[X] de una variable aleatoria X para el caso discreto se define como

El valor esperado o esperanza matemtica de una variable aleatoria es la suma de la probabilidad de


cada suceso multiplicado por su valor.

Tambin se expresa como la diferencia entre el momento de orden 2 y el cuadrado


del valor esperado:

[ ]

V ( x) = E x 2 E [x ] [6]

1.4.6. COVARIANZA
En teora de probabilidad y estadstica la covarianza es un estimador de la
dependencia lineal de dos variables aleatorias.
La covarianza C(X,Y) de dos variable aleatorias X y Y se define como

Para dos variables aleatorias independientes 2 la covarianza es cero. La covarianza


de una variable aleatoria consigo misma es su varianza. [6]

1.4.7. FUNCIN DE CORRELACIN

La c orrelacin entre dos variables aleatorias Y y Z mide el grado al cual tienden a


moverse conjuntamente, es una medicin sobre el co-movimiento que manifiestan.

y y
Yk = E
y

Z z
,

[9]

Dos variables aleatorias son independientes si su probabilidad conjunta es igual al producto de las
marginales

1.4.8. FUNCIONES DE AUTOCOVARIANZA


Sea {Zt / t }proceso estacionario en covarianza. Como la covarianza entre
dos variables de un proceso estacionario(explicado con detalle ms adelante en la
seccin de estacionariedad)

solo depende de la distancia que los separa, la

siguiente expresin define la funcin de autocovarianza.

Y k = C xy (Zt , Zt + k ,) = E [( Zt + k )], k = 0,1, 2,L .


Si C xy (Zt , Zt

+k

) representa

la covarianza entre la variable Zt y la variable futura

Zt + k . En cambio, C xy (Z t + k , Z t )representa la covarianza entre la variable Zt + k y la


variable pasada Zt . Estas dos covarianzas son iguales por propiedades de la
covarianza y porque la distancia entre las variables que las definen es k. Luego si
se considera en t un sentido de desplazamiento, la definicin puede generalizarse
para k en los enteros, as, cuando k es positivo, Yk mide la covarianza de Zt con
una variable futura, y cuando k es negativo mide la covarianza con respecto a una
variable pasada. Esta generalizacin queda consignada en la siguiente expresin.

Yk : k k = cov[Zt, Zt + k ] = E [(Zt )(Zt + k )] Z: los enteros R: los reales [10]

1.4.9. FUNCIN DE AUTOCORRELACIN


La correlacin es la covarianza con los datos centrados y ajustados por la
dispersin. Por lo que ambos conceptos miden el grado de enlace lineal entre Y y Z.
Interesa aplicar esta medida para una variable con su pasado, se estudia el
comportamiento de las observaciones con su historia, esto mide la tendencia de la
serie a comportarse como antes lo hizo, para llevarlo a cabo se toma el par Z t , Z t k
y se fija en su enlace lineal a k periodos de distancia. Como el valor de k es variable
llegamos a una correspondencia; a cada k le asocia el enlace que presenta el par
( Z t , Z t k ).

La funcin de autocorrelacin es definida como:


n k

Yk
Pk = =
Yo

(Z Z )(Z
t

t+ k

t =1

Z)

(Z Z )
n

, k = 0,1,2, K

t =1

Para procesos estacionarios de segundo orden la media es constante y por lo tanto

E[ Z t ] = E[ Z t +k ] = Y y

la

varianza

tambin

es

constante,

esto

es:

2 = V x ( Z t ) = V x ( Z t +k ) para todo valor de k.


El smbolo Y(k) denota a la funcin de autocorrelacin, ya que su labor es medir la
correlacin de la serie consigo misma a distancia k, esta funcin no depende del
punto en el tiempo de referencia solo depende de la distancia que separa a las
observaciones, (no afecta t pero si influye k) ya que si se cambia de t a s queda que:

z z s k
(k ) = ( Z t , Z t + k ) = E s
,


La autocorrelacin tiene tres propiedades importantes:
A) (k ) = 1
La autocorrelacin de una variable a tiempo presente es igual a uno ya que el grado
de asociacin es perfecto.
B) 1 (k ) 1
Indica el grado de tendencia a comportarse similarmente ( Z t , Z t + k ) en el caso de
que sea una autocorrelacin positiva, 0 (k ) 1 , O a moverse en la direccin
opuesta, bajo autocorrelacin negativa 1 (k ) 0 .
C) (k ) = ( k )

Indica que con tabular los valores positivos de k se obtiene toda la informacin que
es requerida.
Esta ltima relacin se obtiene de observar las igualdades:

(k ) = ( Z t , Z t + k ) = ( Z t k , Z t ) = ( k )
Su grfica se obtiene poniendo en el eje horizontal los valores de k, mientras que en
el eje vertical la autocorrelacin. [4]

1.4.10. FUNCIN DE AUTOCORRELACIN PARCIAL

Se puede decir que el ltimo parmetro de la autoregresin (la variable contra su


pasado) nos da el valor de la autocorrelacin parcial de orden k.
La autocorrelacin parcial de orden k denotada por k , mide la correlacin que
existe entre Z t y Z t + k despus de que ha sido removida la dependencia lineal de las
componentes

intermedias,

Z t +1 , Z t + 2 , Z t +3 ,....., Z t + k 2 , Z t +k 1

sea,

mide

la

contribucin que se logra al agregar Z t para explicar Z t + k .

Se define como la correlacin condicional:

Pk = [ Zt , Z t+ k | Z t +1, Z t + 2 , Z t +3 ,...., Z t+ k 2 , Z t +k 1 ]
Donde Z t es una serie de media cero E[ Z t ] = 0. Un resultado interesante de la
teora es hacer ver que es posible obtener la autocorrelacin parcial por medio de
una regresin como sigue:

Z t + k = k1 Z t + k 1 + k 2 Z t +k 2 + k 3 Z t +k 3 + ..... + kk 1 Z t 1 + kk Z t + t + k

Ya que Pk = kk es la autocorrelacin parcial.


El trmino Pk se obtienen de la ltima coordenada de la regresin con k trminos sin
constante, (los datos ya han sido centrados). Esta ser la ruta a seguir en adelante
para estimar la autocorrelacin parcial siempre se tomara el ltimo coeficiente en
una autoregresin. [4]

1.4.11. ESTACIONARIEDAD
Un proceso estocstico (Zt / t ) es estacionario en covarianza o dbilmente
estacionario de orden 2 si:

i. Para

todo

t , la media y varianza existen y son constantes

E [Z t ] = y ,Var [Zt ] = z 2 ;

ii. Si para cualquier i, j , Cov(Z 1, Zj ) depende nicamente del nmero de


perodos que separa las variables, es decir, de j i , que se denotar k:
nmero de rezagos.
Sea {Z 1, Z 2, Z 3, L Zn}una serie de tiempo estacionaria. Las siguientes expresiones
definen

estimadores

de

la

funcin

de

autocovarianza

autocorrelacin

respectivamente:

1 n k
Yk = (Zt Z )(Z t + k Z ), k = 0,1,2, K
n t =1
n k

Yk
P k =
=
Yo

(Z Z )(Z
t

t+ k

t =1

(Z Z )
n

Z)

, k = 0,1,2, K

[3]

t =1

Un proceso es estacionario de forma estricta cuando los distintos valores


estadsticos no dependen del instante en que se calculan:

E = [ x(t1 )] = E [ x( t2 )]
f Z t ( Z t ) = f Zt + k ( Z t + k )

1.4.12. ERGODICIDAD
Sea Zt un proceso estocstico estacionario en covarianza.
i. Se dice que el proceso Zt es ergdico con respecto a la media si satisface la
siguiente condicin:

lim 1 n k
Zt =
n n t =1
ii. Se dice que el proceso Zt es ergdico con respecto a la autocovarianza si
satisface que:

lim
lim 1 n k
Yk =
(Zt Z )(Zt + k Z ) = Yk
n
n n t =1

k=0,1,2,

Note que si el proceso es ergdico con respecto a la autocovarianza, lo es con


respecto a la varianza y a la autocorrelacin pues Y 0 y P k estn definidos.
El proceso es ergdico si estos valores coinciden con los de cualquier registro:

E = [ x(ti )] = m( x j ) [3]
1.4.13. CORRELOGRAMA
Como la varianza de la media muestral tiende a cero, para muestras grandes puede
ser ignorado este termino, con lo cual se ve que el primer estimador tiene un mayor
sesgo que el segundo, note que si desea mantener acotado este sesgo se debe
tomar k< T/4

En resumen para la prctica se utiliza la funcin de autocorrelacin muestral a partir


de una muestra de tamao T, con esta se calculan las covarianzas mustrales.

La suma va desde 1 hasta T-k, Y se pasa a la funcin de autocorrelacin muestral:

Se debe recordar que se buscan "picos" en la funcin de autocorrelacin muestral,


ya que estos exhiben una alta correlacin entre observaciones k periodos aparte; se
define como pico un valor de la autocorrelacin que esta afuera de esta banda.
La grfica de la funcin de autocorrelacin muestral se le llama el correlograma, en
esta a cada valor de k le asocia la correlacin revelada en la muestra entre la
variable y su pasado a distancia k. En otras palabras los picos revelan un comovimiento significativo.

Interesa mirar los picos, donde la autocorrelacin muestral se sale de la banda,


cuando uno mira el correlograma.
En el dibujo se tienen picos o sea valores elevados para k = 1, 2, 3 y 5, 6 esto
significa

que

las

correlaciones

( Z t yZt 1 ), ( Z t yZt 2 ), ( Z t yZ t 3 ), ( Z t yZ t 4 ), ( Z t yZ t 5 ), ( Z t yZ t 6 )

entre
muestran

significativas, mientras que el valor de k = 4, 7, 8, 9, tienen una correlacin baja.


Para localizar los picos en la funcin de autocorrelacin uno puede tomar las
primeras 20 autocorrelaciones.
Note que la funcin de autocorrelacin muestral es tambin una funcin simtrica
alrededor del origen:

Ya que la autocovarianza muestral es simtrica:

Tiene una consecuencia prctica importante en lugar de perder las ultimas k


observaciones, tomar los datos desde t = 1, hasta T - k. Es mejor se gastan las
primeras k observaciones en los retrasos y se toman los datos desde t = k + 1, hasta
T. [8]

1.4.14. RUIDO BLANCO


Un proceso estocstico

{Zt / t = 1,2, K},

es un Ruido Blanco si la sucesin de

variables aleatorias que lo forman provienen de una misma distribucin,


generalmente normal, y cumple:

i.

E [Zt ] = 0

ii.

Var[Zt ] = 2

iii.

Yk = [Zt , Z t + k ] = E [Z tZ t + k ] = 0 para todo k 0

Conclusin: Los errores de un modelo de regresin deben ser ruido blanco. En


series de tiempo los errores se llaman ruido blanco.

Sea Zt un proceso de ruido blanco. Luego reemplazando teniendo en cuenta la


definicin de ruido blanco se obtiene: [4]

Yk = E [(Zt )] = E [Zt Zt + k ] luego;


k = 0 Yo = E [Zt Zt ] = Var[Zt ] = 2

definicin, ii

k 0 Yk = E [ZtZt + k ] = 0

definicin, iii

Funcin de autocovarianza terica

Grfica G1- 1a

Ruido Blanco

= 0
k
0

0,75
Ruido Blanco

FAO

2 si k

Yk =
0 si k

Funcin de autocovarianzas terica


1

0,5
0,25
0
0

10

12

k (rezago)

FAC terica

Grfica G1-1b

Ruido blanco

= 0
k

k 0

3
FOV

1 si

Pk =
0 si

Funcin de autocovarianzas terica


4

Ruido Blanco de
varianza 4

2
1
0
0

6
k (rezago)

10

12

1.5. COMPONENTES DE UNA SERIE DE TIEMPO

Una Serie de Tiempo puede tener las siguientes componentes:

1. Tendencia: Esta componente representa la trayectoria suavizada que define la


serie en el rango de variacin del ndice y se halla observando la forma funcional
de la grafica de la serie ( zt vs t ) a lo largo del tiempo. La tendencia puede ser:
constante, lnea, cuadrtica, exponencial, etc.
2. Componente Estacional: Esta componente se presenta cuando la serie tiene
patrones estacinales que se repiten con una frecuencia constante, produciendo
en su grafica un efecto peridico.
Los patrones estacinales se presentan por fenmenos climticos, recurrencia
en los pagos, costumbres y/o agrupamiento, afectan las observaciones que
generan la serie.
3. Componente Aleatoria: Esta componente se representa los cambios que sufre la
serie ocasionados por fenmenos externos no controlables.
4. Componente Cclica: Esta componente se presenta en series que son afectadas
por fenmenos fsicos o econmicos que ocurren con una periodicidad variable.
[1]

1.6. ANLISIS DESCRIPTIVO DE UNA SERIE DE TIEMPO

El anlisis descriptivo de una serie comprende: la estimacin de los estadsticos


bsicos de la serie y el anlisis en el grafico de zt Vs t (o el ndice) de los
siguientes aspectos:

a) Detectar Outlier: se refiere a puntos de la serie que se escapan de lo normal.


Un outliers es una observacin de la serie que corresponde a un comportamiento
anormal del fenmeno (sin incidencias futuras) o a un error de medicin.

Se debe determinar desde fuera si un punto dado es outlier o no. Si se concluye


que lo es, se debe omitir o reemplazar por otro valor antes de analizar la serie.
Por ejemplo, en un estudio de la produccin diaria en una fabrica se present la
siguiente situacin:

Figura 1.1
Los dos puntos enmarcados en un crculo parecen corresponder a un
comportamiento anormal de la serie. Al investigar estos dos puntos se vio que
correspondan a dos das de paro, lo que naturalmente afect la produccin en esos
das. El problema fue solucionado eliminando las observaciones e interpolando.
b) Permite detectar tendencia: la tendencia representa el comportamiento
predominante de la serie. Esta puede ser definida vagamente como el cambio de la
media a lo largo de un periodo.

Figura 1.2
c) Variacin estacional: la variacin estacional representa un movimiento peridico
de la serie de tiempo. La duracin de la unidad del periodo es generalmente menor
que un ao. Puede ser un trimestre, un mes o un da, etc.
Matemticamente, podemos decir que la serie representa variacin estacional si
existe un nmero s tal que x(t) = x(t + k s).
Las principales fuerzas que causan una variacin estacional son las condiciones del
tiempo, como por ejemplo:
1) en invierno las ventas de helado
2) en verano la venta de lana
3) exportacin de fruta en marzo.

Todos estos fenmenos presentan un comportamiento estacional (anual, semanal,


etc.)

Figura 1.3

d) Variaciones irregulares (componente aleatoria): los movimientos irregulares


(al azar) representan todos los tipos de movimientos de una serie de tiempo que no
sea tendencia, variaciones estacionales y fluctuaciones cclicas. [1]

1.7. MTODOS DE PRONSTICO

En un pronstico siempre est latente la incertidumbre causada por el futuro, que


se refleja en un incremento en el error de prediccin. Por este motivo, otro de los
objetivos del estudio de las Series de Tiempo es buscar mtodos que reduzcan al
mximo el error de prediccin.

Se concluye, entonces que un sistema de pronsticos adems de predecir un valor


futuro de una variable aleatoria debe estimar su error e idealmente su distribucin,
lo cual permitir cuantificar el riesgo en la toma de las decisiones.
1.7.1. CONSIDERACIONES PRELIMINARES
La siguiente informacin debe estar claramente definida antes de empezar a
estudiar las diferentes alternativas que brindan los mtodos utilizados para
pronosticar una Serie de Tiempo.
1.

Las variables aleatorias a pronosticar, completamente definidas. En este


punto es bueno notar que hay casos en los cuales es ms til pronosticar
los cambios que sufre una variable en su diferencia, que su valor, como
ocurre en procesos de control, donde se predice cuando el sistemas esta
funcionando mal.

2.

Los siguientes tiempos deben especificarse y confrontarse con la


informacin disponible.

a) Periodo de la serie (o de pronstico). Es la unidad de tiempo (de


espacio, o del ndice)

que indica la frecuencia de lectura de las

observaciones que generan la serie.

Por ejemplo si se desea

pronosticar la demanda semanal de un artculo, el periodo de la serie


es una semana y para estimar las ventas futuras se requiere conocer
las ventas semanales del artculo en algunas semanas anteriores.
b) Horizonte del pronostico (H). Es el nmero de periodos que debe
cubrir el sistema de pronsticos cada vez que se utiliza, e indica
cuanto se penetra en el futuro; su valor depende de la naturaleza de
lo que se planea.
c) Intervalo de pronostico (IP). Es la frecuencia con la cual se calculan
o actualizan los pronsticos existentes.

3.

Datos histricos adems de las observaciones pasadas del proceso o de la


variable de inters, deben precisarse, cuando es posible, los puntos y/o
los intervalos de tiempo o del ndice en los cuales la evolucin de la variable
fue afectada por factores externos o internos, que se cree modificaron
algunas observaciones o la estructura de correlacin de la serie,

para

cuantificar sus efectos o simplemente para eliminar perturbaciones en los


pronsticos.
4.

La precisin requerida de los pronsticos.

5.

Recursos disponibles para implementar el sistema de pronsticos.

Los mtodos de pronstico pueden clasificarse en dos grande bloques:

Mtodos cualitativos o subjetivos

Mtodos cuantitativos

1.7.2. MTODOS CUALITATIVOS O SUBJETIVOS

Los mtodos cualitativos

son procedimientos que estiman los pronsticos

basndose en juicios de expertos, se utilizan la experiencia, intuicin, habilidad y


sentido comn de personas entrenadas para enfrentar este tipo de problemas. Por
ende, las tcnicas estadsticas no juegan papel importante en su implementacin.

Los Exploratorios se caracterizan porque partiendo del pasado y del presente se


desplazan hacia el futuro heursticamente, buscando y analizando las alternativas
factibles.
Los Normativos, en cambio, parten del futuro establecindolos objetivos que se
pretenden alcanzar y luego se devuelven hacia el presente para determinar si con
los recursos y tecnologa existente pueden alcanzarse los fines inicialmente
planteados.
Estos mtodos se utilizan para pronosticar productos nuevos del mercado o
procesos de los cuales se tiene poca informacin pasad,

por que su

implementacin no requiere conocer datos pasados de la serie.


1.7.3. MTODOS CUANTITATIVOS
Los mtodos cuantitativos son basados en modelos estadsticos o matemticos y se
caracterizan por que una vez elegido un modelo o una tcnica de pronstico, es
posible obtener nuevos pronsticos automticamente. Se clasifican en modelos un
variados y causales.
Los modelos un variados se basan nicamente en las observaciones pasadas de la
serie para predecir valores futuros.

Los mtodos de descomposicin,

los de

suavizamiento y los modelos (ARIMA) en el dominio del tiempo o el dominio de la


frecuencia, son considerados mtodos un variados.
Los modelos causales estiman las predicciones futuras de un proceso determinando
la relacin existente entre la variable que define la serie y otras variables (otras
series explicativas) que explican su variacin. En algunos de estos modelos, para
pronosticar valores futuros de la serie es necesario pronosticar

primero las

variables o series explicativa.

Los modelos de regresin,

de funciones de

transferencia (regresin dinmica) y otros modelos economtricos,

son

considerados modelos causales.


1.7.4. MTODOS DE DESCOMPOSICIN
Estos mtodos para pronosticar valores futuros de una Serie de Tiempo, primero
estiman los componentes d la serie (los parmetros que definen la tendencia y cada
uno de los trminos que caracterizan una estacin completa) con las observaciones
conocidas, y luego extrapolan o proyectan estas componentes a tiempos futuros.
Adems estiman la varianza de la componente aleatoria para calcular los intervalos
de prediccin. Su implementacin requiere de un buen nmero de observaciones.
Algunos de estos mtodos evalan la componente cclica de la serie. Entre estos
mtodos de descomposicin se encuentran x-11 y el x-11 ARIMA, construidos y
utilizados por la oficina de censos de USA.
1.7.5. MTODOS DE SUAVIZAMIENTO
Estos mtodos

estiman valores futuros de una serie basndose en la forma

funcional, que el modelador supone, describen las observaciones conocidas de la


serie, y la eliminacin de la componente aleatoria mediante ponderaciones que
actuando sobre la las observaciones suavizan la trayectoria (forma funcional) de la
serie,

alterada por la accin de la componente aleatoria.

Las ponderaciones

pueden ser iguales para todas las observaciones o pueden depender de la distancia
de la observacin al origen del pronstico, segn el mtodo de suavizamiento
empleado.
En cada actualizacin de los pronsticos se estiman los paramentos requeridos por
la forma funcional (tendencia y estacionalidad) y con ellos se evala la funcin para
los valores futuros de t que indica el horizonte del pronstico.
algunos autores los denominan mtodos localmente constantes.
Entre los mtodos de suavizamiento se encuentran:

Por esta razn

a. Promedios mviles o medias mviles simples: Utilizado con Series de


Tiempo cuya forma funcional es constante, la grafica de la serie oscila
alrededor de un valor medio.
b. Promedios mviles o medias mviles dobles: Empleado con Series de
Tiempo que se supone presentan una tendencia lineal.
c. Suavizamiento exponencial simple (SES): Para modelar series que
presentan tendencia constante y componente aleatoria.
d. Suavizamiento exponencial doble (SED): Para modelar series que
presentan tendencia lineal y componente aleatoria.
e. Suavizamiento exponencial triple (SET): Para modelar series que
presentan tendencia cuadrtica y componente aleatoria.
f.

Winter aditivo y Winter multiplicativo: Para modelar series que presentan


tendencia, componente estacional aditiva o multiplicativa segn el caso y
componente aleatoria.

g. Mnimos cuadrados descontados: para modelar series que presentan


tendencia, componente estacional aditiva o multiplicativa y componente
aleatoria. [1]

1.8. MODELOS AUTORREGRESIVOS

1.8.1. AR(1)
Veamos primero el ms sencillo de los modelos autorregresivos, el AR(1), que tiene
un solo rezago y se escribe,

xt = axt 1 + t
O tambin, empleado el operador de rezago, como (1 aL)xt = t
Este modelo podra representar, por ejemplo, los desempleados en el mes como
una proporcin fija a de aquellos desempleados en el mes t i habiendo la otra
proporcin 1 a conseguido empleo, ms un nuevo grupo que busca trabajo,
donde estas adiciones 1 > 0 son ruido blanco.

dx(t )
= (a 1)x (t ) + (1)
dt

En sentido estricto, no puede existir un proceso puramente aleatorio en tiempo


continuo, (t ) , ya que los cambios abruptos en perodos infinitesimales de este
proceso requeriran cero inercia o energa infinita.

1.8.2. AR(P)
Este es quizs el modelo ms popular para series de tiempo univariadas. Expresa
el valor actual de una serie estacionaria xt en funcin de su propio pasado, o sea
de sus rezagos x t 1,K , xt

p,

Un autorregresivo tiene la siguiente expresin

algebrica.

x1 + a1 xt

+ a 2 xt

+ K + ap xt p = t + c

Donde, si se quiere, se puede despejar xt , y donde c es una constante, p es el


nmero de rezagos, y t es ruido blanco con media cero y varianza constante t 2 .
En la literatura de series de tiempo, la secuencia

{t}se conoce indistintamente

como ruido, error, residuos, innovaciones o shocks.


La expresin del autorregresivo de orden p, omitiendo al constante sin prdida de
generalidad, se puede escribir en trminos del operador de rezago como

(1 + a1L + a 2L 2 + K + apLp )xt


= a( L)xt = t
xt = a1( xt 1 ) + a 2( xt 2 ) + K + ap (xt p ) + t
xt = ( a1 a 2 K ap ) + a1xt 1 + a 2 xt 2 + K + apxt p + t
xt = (1 a1 a2 K ap) + a1xt 1 + a 2 xt 2 + K + apxt p + t
xt = c + a1xt 1 + a2 xt 2 + K + apxt p + t
Al estimar el modelo se puede incluir una constante si la serie no est en
desviaciones, o se puede restar la media a todas las observaciones y no incluir la
constante. Algunos programas reportan estimativos para la media y la constante
c por separado con base en la expresin anterior. [3] [4]

1.9. MODELOS DE PROMEDIO MVIL

1.9.1. MA(Q)
El segundo modelo dentro de la metodologa Box-Jenkis es el de promedio mvil.
Este expresa la serie x, en funcin del presente y el pasado de una serie de ruido
blanco {t } con media cero.
q

xt = c + 0t + 1t 1 + 2t 2 + K + qt q = st s
0

Donde los coeficientes no tienen restricciones en cuanto a la estabilidad de la


serie porque una suma finita de trminos con varianza finita, como lo son los t , no
puede ser explosiva. Se ve fcilmente que xt = 0 porque t = 0 .
Como se mencion antes, en el contexto de series de tiempo, y especialmente en el
caso de los modelos de promedio mvil, la secuencia {t} tambin se conoce como
innovaciones, en el sentido de ser informacin nueve que llega al sistema.

1.9.2. MA(1)
El modelo MA(q) ms sencillo es el que tiene un solo rezago de t . Este se denota
MA(l) y su expresin es

xt = 0 t + 1t 1
Es evidente que xt = 0 . La funcin de

para un MA(l) se encuentra

multiplicando la ecuacin anterior por la misma ecuacin rezagada, y tomando


expectativas.
De manera que r(l) mximo ser

r (l ) max =

1
1
1
=
=
1 + 12 1 + 1
2

Positivo o negativo dependiendo del signo de 1 . [3][4]

1.10. MODELO AUTORREGRESIVO CON PROMEDIO MVIL

Modelos ARIMA

Estos mtodos modelan las Series de Tiempo estudiando la

estructura de la correlacin que el tiempo, el ndice, o la distancia induce en las


variables aleatorias que originan la serie.
El plan de trabajo de estos modelos es:
I. Por medio de transformaciones y/o diferencias se estabiliza la varianza, y se
eliminan la tendencia y la estacionalidad de la serie; obtenindose as, una serie
estacionaria.
II. Para la serie estacionaria

obtenida se identifica y se estima un modelo que

explica la estructura de correlacin de la serie con el tiempo.


III. Al modelo hallado en II.

Se aplican transformaciones inversas que permitan

reestablecer la variabilidad, la tendencia y la estacionalidad de la serie original.


Este modelo integrado se usa para pronosticar.
Para explicar la estructura de correlacin entre las observaciones de una serie
estacionaria se consideran bsicamente dos modelos:

Zt = j Zt j + at Modelo auto-regresivo (AR).


j 01

Zt = + j at j Modelo de media mvil (MA).


j 01

Un hecho comn a muchos fenmenos es que el comportamiento pasado provee


informacin sobre el comportamiento futuro; esto es especialmente cierto en series
de tiempo. El pasado de una serie suele incorporar, y de esa manera reemplazar, la
informacin de otras variables que pudieran intervenir en el proceso.

La

especificacin relativamente sencilla, pero efectiva, que resulta de expresar una


variable de funcin de su propio pasado es conocida como autorregresiva o, en
general, como modelaje Box-Jenkins. Las dos especificaciones principales de esta

metodologa son los modelos autorregresivos AR(p) y los modelos de promedio


mvil MA(q), que describiremos a continuacin.

1.11. MODELO ARMA (P,Q)

La combinacin de los dos modelos anteriores, el AR(p) y el MA(q), junto con el


hecho de que uno se puede convertir en el otro y viceversa, da origen al modelo
ARMA(p,q). Su ventaja es que, al combinar elementos de ambos, puede ofrecer
mayor parsimonia, esto es, usar menos trminos. Su expresin ser

xt = a1 xt

+ a 2 xt

+ K + a p xt

+ 0 t + 1t

+ 2 t

+ K + qt

o tambin
p

j =1

j =0

xt = ajxt j + jt
zt = a 2 z t 2 + kt

[3]

1.11. CRITERIOS DE EVALUACIN DE PREDICCIONES

Las medidas de precisin del pronstico se usan para determinar que tan eficaz es
un pronstico a travs del clculo de su precisin con respecto a los valores reales,
es decir, buscan obtener una medida de que tan lejos se encuentran los valores
pronosticados de los obtenidos en la realidad. En las siguientes medidas del error,
Xt es el valor de la serie de tiempo en el momento t y Pt es el pronstico para ese
mismo momento. [11]
Estos son algunos de los indicadores comnmente utilizados para evaluar
predicciones.
Error

Error Medio

Error Medio Absoluto

Suma de Cuadrados del Error

Suma de Cuadrados del Error Media o Error Cuadrtico Medio

Desviacin Estndar del Error

Ntese que Pt no es la media de las estimaciones o valores pronosticados como se


podra pensar. Esto significa que la desviacin no se mide respecto de la media,
sino que se promedian las desviaciones de las estimaciones respecto a los valores
reales.

Error Porcentual

Error Porcentual Medio

Error Porcentual Medio Absoluto

Error Porcentual Medio Cuadrtico

1.12. OTROS MTODOS NO CONVENCIONALES


En el afn del hombre por disminuir la inc ertidumbre y aumentar el conocimiento
sobre el comportamiento de las cosas que parecen aleatorias ha desarrollado otros
mtodos no convencionales para la prediccin y la disminucin de esta
incertidumbre. Dichos mtodos presentan un nivel mucho ms alto de complejidad,
en su mayora surgieron de la imitacin de procesos de la naturaleza. Algunos de
estos mtodos no convencionales de prediccin son: Redes neuronales Artificiales,
Support vector machine, La Programacin gentica y filtro kalman.

Redes neuronales Artificiales (RNA) que son dispositivos o software programado de


manera tal que funcionen como las neuronas biolgicas de los seres vivos. (Estas
sus caractersticas,

usos y funcionamiento sern profundizados en el siguiente

capitulo).
Maquina de soporte vectorial del ingles Support vector machine La SVM fue ideada
originalmente para la resolucin de problemas de clasificacin binarios en los que
las clases eran linealmente separables (Vapnik y Lerner, 1965). Por este motivo se
conoca tambin como hiperplano3 ptimo de decisin ya que la solucin
proporcionada es aquella en la que se clasifican correctamente todas las muestras
disponibles, colocando el hiperplano de separacin lo ms lejos posible de todas
ellas. Las muestras ms prximas al hiperplano ptimo de separacin son
conocidas como muestras crticas o vectores soporte, que es lo que da nombre a
la SVM.

[10]

La Programacin gentica en cuyos algoritmos hace evolucionar una poblacin


sometindola a acciones aleatorias semejantes a las que actan en la evolucin
biolgica (mutaciones y recombinacin gentica), as como tambin a una seleccin
de acuerdo con algn criterio, en funcin del cual se decide cules son los
individuos ms adaptados, que sobreviven, y cules los menos aptos, que son
descartados.

ha tenido gran parte de su utilizacin para resolver este tipo de

problemas de prediccin de eventos.


Filtro kalman (kalman filter) Algoritmo recursivo que se utiliza en ARIMA para
generar valores ajustados y residuos para una serie.

Las variedades afines de dimensin 0 en son los subconjuntos de


reducidos a un punto. Las de dimensin 1 se llaman
RECTAS. Las de dimensin 2 se llaman PLANOS. Una variedad afn se llama HIPERPLANO si su direccin
es un
subespacio maximal en

, es decir,

y el nico subespacio de

que contiene a

propiamente es

entero .

1.13. APLICACIONES DE LAS SERIES DE TIEMPO

El estudio de las Series de Tiempo tiene como objetivo central desarrollar modelos
estadsticos que expliquen el comportamiento de una variable aleatoria que varia
con el tiempo, o con la distancia, o segn un ndice; y que permitan estimar
pronsticos futuros de dicha variable aleatoria.
Por ello,

el manejo de las Series de Tiempo es de vital importancia en una

planeacin y en mareas del conocimiento donde evaluar el efecto de una poltica


pasada sobre una variable,

y/o conocer predicciones de sus valores futuros,

aportan criterios que disminuyen el riesgo en la toma de decisiones o en la


implementacin de polticas futuras.
En el contexto de las Series de Tiempo,

pronosticar significa predecir valores

futuros de una variable aleatoria basndose en el estudio de la estructura definida


por las observaciones pasadas de la variable, o en el anlisis de observaciones
pasadas de variables que explican su variacin, suponiendo que la estructura del
pasado se conserva en el futuro.

La existencia del intervalo de tiempo comprendido entre presente y el momento en


el cual ocurrir el suceso o evento de inters, llamado tiempote previsin oleading
time, origina la necesidad de conocer un pronostico del evento; para as, poder
planear y ejecutar acciones que contrarresten o controlen los efectos que dicho
suceso producir. La longitud de este intervalo de tiempo da origen a la planeacin;
si no existiera o fuera muy pequeo, se estara enfrentando a situaciones concretas
que deben resolverse mediante acciones inmediatas, ms no planearse.
En consecuencia, cuando el tiempo de previsin es apropiado y el resultado final
del evento de inters esta condicionado por factores identificables, la planeacin
adquiere sentido y el conocimiento del pronostico del evento permite tomar
decisiones sobre acciones a ejecutar o a controlar para que los resultados finales
estn acordes con la poltica general de la empresa.

Es importante anotar que existen factores o eventos que influyen en la calidad de un


pronstico.

Estos factores pueden ser internos o controlables y externos o

incontables. [4]

2. REDES NEURONALES

En este capitulo se abordara el tema de redes neuronales basados en la estructura


del libro Redes Neuronales y Sistemas Difusos de los profesores Martn del Bro y
Sanz Molina [12], debido a su gran nfasis en aplicaciones practicas, su abundancia
de ejemplos y la rigurosidad terica con que tratan la materia.

2. 1. INTRODUCCION

En el transcurso del capitulo se pretende introducir los conceptos y herramientas


bsicas necesarias para el desarrollo de los temas abordados en el capitulo 4,
principal objetivo de este trabajo.
Este capitulo se trabajo basado en referencias e investigaciones sobre los
principales detalles acerca del tema, tal que una persona que no conozca sobre el
tema se relacione con los conceptos de la materia. En primera medida se har un
recuento cronolgico breve de la historia de las redes y su evolucin a travs de los
aos, luego se har un desarrollo comparativo entre la principal fuente de ideas para
las redes neuronales artificiales, la neurona natural.
Con los conceptos bsicos ya desarrollados se entrara en la descripcin de la teora
que fundamenta el desarrollo de las redes neuronales, como son las principales
topologas y el proceso de entrenamiento.
Finalizando el capitulo se definirn topologas especificas que sern usadas
posteriormente en este trabajo
algoritmo del backpropagation.

como el modelo del perceptron multicapa y el

2.2. HISTORIA

Conseguir disear y construir mquinas capaces de realizar procesos con cierta


inteligencia ha sido uno de los principales objetivos de los cientficos a lo largo de la
historia.
1936 - Alan Turing. Fue el primero en estudiar el cerebro como una forma de ver el
mundo de la computacin. Sin embargo, los primeros tericos que concibieron los
fundamentos de la computacin neuronal fueron Warren McCulloch, un
neurofisilogo, y Walter Pitts, un matemtico, quienes, en 1943, lanzaron una teora
acerca de la forma de trabajar de las neuronas (Un Clculo Lgico de la Inminente
Idea de la Actividad Nerviosa - Boletn de Matemtica Biofsica 5: 115-133). Ellos
modelaron una red neuronal simple mediante circuitos elctricos. [13]

1943 - Teora de las Redes Neuronales Artificiales. Walter Pitts junto a Bertran
Russell y Warren McCulloch intentaron explicar el funcionamiento del cerebro
humano, por medio de una red de clulas conectadas entre s, para experimentar
ejecutando operaciones lgicas. Partiendo del menor suceso psquico (estimado por
ellos): el impulso todo/nada, generado por una clula nerviosa.
El bucle "sentidos - cerebro - msculos", mediante la retroalimentacin produciran
una reaccin positiva si los msculos reducen la diferencia entre una condicin
percibida por los sentidos y un estado fsico impuesto por el cerebro. Tambin
definieron la memoria como un conjunto de ondas que reverberan en un circuito
cerrado de neuronas. [13]
1949 - Donald Hebb. Escribi un importante libro: La organizacin del
comportamiento, en el que se establece una conexin entre psicologa y fisiologa.
Fue el primero en explicar los procesos del aprendizaje (que es el elemento bsico
de la inteligencia humana) desde un punto de vista psicolgico, desarrollando una
regla de como el aprendizaje ocurra. Aun hoy, este es el fundamento de la mayora
de las funciones de aprendizaje que pueden hallarse en una red neuronal. Su idea
fue que el aprendizaje ocurra cuando ciertos cambios en una neurona eran
activados. Tambin intent encontrar semejanzas entre el aprendizaje y la actividad

nerviosa. Los trabajos de Hebb formaron las bases de la Teora de las Redes
Neuronales. [14]
1950 - Karl Lashley. En sus series de ensayos, encontr que la informacin no era
almacenada en forma centralizada en el cerebro sino que era distribuida encima de
l. [13]
1956 - Congreso de Dartmouth. Este Congreso frecuentemente se menciona para
indicar el nacimiento de la inteligencia artificial. Durante el congreso se forj el
trmino "inteligencia artificial". Asistieron, entre otros, Minsky, Simon y Newell. [13]
1957 - Frank Rosenblatt. Comenz el desarrollo del Perceptron. Esta es la red
neuronal ms antigua; utilizndose hoy en da para aplicacin como identificador de
patrones. Este modelo era capaz de generalizar, es decir, despus de haber
aprendido una serie de patrones poda reconocer otros similares, aunque no se le
hubiesen presentado en el entrenamiento. Sin embargo, tena una serie de
limitaciones, por ejemplo, su incapacidad para resolver el problema de la funcin
OR-exclusiva y, en general, era incapaz de clasificar clases no separables
linealmente, este tema acerca del perceptrn se describe con detalle en la seccin
2.10.2. Perceptron Simple. [13]
1959 - Frank Rosenblatt: Principios de Neurodinmica. En este libro confirm que,
bajo ciertas condiciones, el aprendizaje del Perceptron converga hacia un estado
finito (Teorema de Convergencia del Perceptron).[14]
1960 - Bernard Widroff/Marcian Hoff. Desarrollaron el modelo Adaline (ADAptative
LINear Elements). Esta fue la primera red neuronal aplicada a un problema real
(filtros adaptativos para eliminar ecos en las lneas telefnicas) que se ha utilizado
comercialmente durante varias dcadas. [13]
1961 - Karl Steinbeck: Die Lernmatrix. Red neuronal para simples realizaciones
tcnicas (memoria asociativa). [14]

1969 - En este ao surgieron crticas que frenaron, hasta 1982, el crecimiento que
estaban experimentando las investigaciones sobre redes neuronales. Minsky y
Papera, del Instituto Tecnolgico de Massachussets (MIT), publicaron un libro
Perceptrons. Probaron (matemticamente) que el Perceptrn no era capaz de
resolver problemas relativamente fciles, tales como el aprendizaje de una funcin
linealmente no separable. Esto demostr que el Perceptrn era muy dbil, dado que
las funciones linealmente no separable son extensamente empleadas en
computacin y en los problemas del mundo real. A pesar del libro, algunos
investigadores continuaron su trabajo. Tal fue el caso de James Anderson, que
desarroll un modelo lineal, llamado Asociador Lineal, que consista en unos
elementos integradores lineales (neuronas) que sumaban sus entradas. Este
modelo se basa en el principio de que las conexiones entre neuronas son
reforzadas cada vez que son activadas. Anderson dise una potente extensin del
Asociador Lineal, llamada Brain State in a Box (BSB). [14]
1974 - Paul Werbos. Desarroll la idea bsica del algoritmo de aprendizaje de
propagacin hacia atrs (backpropagation); cuyo significado qued definitivamente
aclarado en 1985. [13]

1977 - Stephen Grossberg: Teora de Resonancia adaptativa (TRA). La Teora de


Resonancia adaptativa es una arquitectura de red que se diferencia de todas las
dems previamente inventadas. La misma simula otras habilidades del cerebro:
memoria a largo y corto plazo. [14]

1985 - John Hopfield. Provoc el renacimiento de las redes neuronales con su libro:
Computacin neuronal de decisiones en problemas de optimizacin. [14]
1986 - David Rumelhart/G. Hinton. Redescubrieron el algoritmo de aprendizaje de
propagacin hacia atrs (backpropagation). A partir de 1986, el panorama fue
alentador con respecto a las investigaciones y el desarrollo de las redes neuronales.
En la actualidad, son numerosos los trabajos que se realizan y publican cada ao,
las aplicaciones nuevas que surgen (sobretodo en el rea de control) y las

empresas que lanzan al mercado productos nuevos, tanto hardware como software
(sobre todo para simulacin). [13]
2.3. NEURONA BIOLGICA

Se estima que el cerebro humano contiene ms de cien mil millones de neuronas y


sinpsis en el sistema nervioso humano. Estudios sobre la anatoma del cerebro
humano concluyen que hay ms de 1000 sinpsis a la entrada y a la salida de cada
neurona. Es importante notar que aunque el tiempo de conmutacin de la neurona
(unos pocos milisegundos) es casi un milln de veces menor que en las actuales
elementos de las computadoras, ellas tienen una conectividad miles de veces
superior que las actuales supercomputadoras. [13]
El objetivo principal de de las redes neuronales de tipo biolgico es desarrollar un
elemento sinttico para verificar las hiptesis que conciernen a los sistemas
biolgicos. Las neuronas y las conexiones entre ellas (sinpsis) constituyen la clave
para el procesado de la informacin.

Desde un punto de vista funcional, las neuronas


constituyen procesadores de informacin sencillos.
Como todo sistema de este tipo, poseen un canal
de entrada de informacin, las dendritas, un
rgano de cmputo, el soma, y un canal de salida,
el axn. [12]
La neurona es la clula fundamental y bsica del
sistema

nervioso.

Es

una

clula

alargada,

especializada en conducir impulsos nerviosos. En


las neuronas se pueden distinguir tres partes
fundamentales, que son:

Figura 2.1: Neurona Biolgica

Soma o cuerpo celular: corresponde a la parte ms voluminosa de la neurona.


Aqu se puede observar una estructura esfrica llamada ncleo. ste contiene la

informacin que dirige la actividad de la neurona. Adems, el soma se encuentra


el citoplasma. En l se ubican otras estructuras que son importantes para el
funcionamiento de la neurona.

Dendritas: son prolongaciones cortas que se originan del soma neural. Su


funcin es recibir impulsos de otras neuronas y enviarlas hasta el soma de la
neurona.

Axn: es una prolongacin nica y larga. En algunas ocasiones, puede medir


hasta un metro de longitud. Su funcin es sacar el impulso desde el soma
neuronal y conducirlo hasta otro lugar del sistema.

Las neuronas son muy variadas en morfologa y tamao. Pueden ser estrelladas,
fusiformes, piriformes. Pueden medir no ms de cuatro micras o alcanzar las 130
micras. Tambin son muy variadas en cuanto a las prolongaciones: las dendritas y
el cilindroeje o axn. Las dendritas, de conduccin centrpeta, pueden ser nicas o
mltiples.

La unin entre dos neuronas se denomina sinapsis. En el tipo de sinapsis ms


comn no existe un contacto fsico entre las neuronas, sino que stas permanecen
separadas por un pequeo vaco de unas 0.2 micras.
En relacin a la sinapsis, se habla de neuronas presinpticas (la que enva las
seales) y postsinpticas (la que las recibe). Las sinapsis son direccionales, es
decir, la informacin fluye siempre en un nico sentido.
Las seales nerviosas se pueden transmitir elctrica o qumicamente. La
transmisin qumica prevalece fuera de la neurona, mientras que la elctrica lo hace
el interior. La transmisin qumica se basa en el intercambio de neurotransmisores
mientras que la elctrica hace uso de descargas que se producen en el cuerpo
celular y que se propagan por el axn.

La forma de comunicacin ms habitual entre dos neuronas es de tipo qumico La


neurona presinptica libera unas sustancias qumicas complejas denominadas
neurotransmisores (como el glutamato o la adrenalina), que atraviesan el vaci
sinptico. Si la neurona postsinptica posee en las dendritas o en el soma canal
sensibles a los neurotransmisores liberados, los fijarn, y como consecuencia de el
permitirn el paso de determinados iones a travs de la membrana.
Las corrientes inicas que de esta manera se crean provocan pequeos potenciales
postsinpticos excitadores (positivos) o inhibidores (negativos), que se integrarn en
el soma, tanto espacial como temporalmente; ste es el origen de la existencia de
sinapsis excitatoria y de sinapsis inhibitorias.
Si se ha producido un suficiente nmero de excitaciones, Suma de los potenciales
positivos generados puede elevar el potencial de la neuronas por encima de los -45
mV (umbral de disparo): en ese momento se abren bruscamente los Canales de
sodio, de modo que los iones Na cuya concentracin en el exterior es alta, entran
masivamente al interior, provocando la despolarizacin brusca de neurona, que
pasa de un potencial de reposo de -60 mV a unos +50 mV.

A continuacin la neurona vuelve a la situacin original de reposo de -6OmV; este


proceso constituye la generacin de un potencial de accin (Figura 1.3), que
propagarse a lo largo del axn da lugar a la transmisin elctrica de la seal
nerviosa. Tras haber sido provocado un potencial de accin, la neurona sufre un
periodo refractario durante el cual no puede generarse uno nuevo.
Un hecho importante es que el pulso as generado es digital en el sentido que
existe o no existe pulso, y todos ellos s on de la misma magnitud.

Por otra parte ante una estimulacin ms intensa disminuye el intervalo entre
pulsos, por lo que la neurona se disparar a mayor frecuencia cuanto mayor sea el
nivel de excitacin. Es decir ante un estmulo mayor la frecuencia de respuesta
aumenta hasta que se alcanza una saturacin conforme se acerca a la frecuencia
mxima

La frecuencia de disparo oscila habitualmente entre 1 y 100 pulsos por segundo,


aunque algunas neuronas pueden llegar a los 500 durante pequeos perodos de
tiempo. Por otra parte, no todas las neuronas se disparan generando un tren de
pulsos de una frecuencia aproximadamente constante, pues la presencia de otras
especies inicas hace que diferentes tipos de neuronas posean patrones de disparo
distintos, en forma de trenes puros, paquetes de pulsos, o presentando patrones
ms complejos.

El mecanismo aqu descrito constituye la forma ms comn de transmisin de la


seal nerviosa, pero no el nico. Cuando la distancia que debe recorrer la seal es
menor de 1 mm la neurona puede no codificarla en frecuencia, sino enviar una seal
puramente analgica. Es decir, la evolucin biolgica encontr que a distancias
cortas la seal no se degradaba sustancialmente, por lo que poda enviarse tal cual,
mientras que a distancias largas era preciso codificarla para evitar su degradacin la
consiguiente prdida de informacin. La naturaleza descubri que la codificacin en
forma de frecuencia de pulsos digitales proporcionaba calidad, simplicidad en la
transmisin.1 [12]

2.4. MODELO DE NEURONA ARTIFICIAL

En esta seccin se expone el modelo de neurona de los ANS. En primer lugar se


describe la estructura de una neurona artificial muy genrica, para a continuacin
mostrar una versin simplificada, de amplio uso en los modelos orientados
aplicaciones prcticas, que posee una estructura ms prxima a la neurona tipo
McCulloch-Pitts [1949].

Ms informacin sobre el cerebro, las neuronas y la neurotransmision en una pagina denominada el


abc de las neuronas, impulsada por el Instituto de Investigaciones Biolgicas Clemente Estable.
http://iibce.edu.uy/uas/neuronas/abc.htm

2.4.1. MODELO GENERAL

Se denomina procesador elemental o neurona a un dispositivo simple de clculo


que, a partir de un vector de entrada proc edente del exterior o de otras neuronas
proporciona una nica respuesta o salida. [12]
Los elementos que constituyen la neurona de etiqueta i son los siguientes (vase la
Figura 2.2):

Figura 2.2: Modelo Genrico Neurona Artificial

Conjunto de entradas, xJ (t)

Pesos sinpticos de la neurona i, w IJ que representan la intensidad de


interaccin entre cada neurona presinptica j y la neurona postsinptica i.

Regla de propagacin x que proporciona el valor del potencial postsinptico hJ (t)


= s(wIJ , xJ (t)) de la neurona i en funcin de sus pesos y entradas.

Funcin de desempeo fi(aI (t-1), hI (t)) que proporciona el estado de activacin


actual aI (t) = fi(aI (t-1), hI(t)) de la neurona i, en funcin de su estado anterior aI (t1) y de su potencial postsinptico actual.

Funcin de salida FI (aI (t-1), que proporciona la salida actual yI (t) = FI(aI (t-1) de la
neurona i en funcin de su estado de activacin.

Este modelo de neurona formal se inspira en la operacin de la biolgica, en el


sentido de integrar una serie de entradas y proporcionar cierta respuesta, que se
propaga por el axn. A continuacin se describen cada uno de los elementos. [12]

2.4.1.1. ENTRADAS Y SALIDAS.

Las variables de entrada y salida pueden ser binarias (digitales) o continuas


(analgicas), dependiendo del modelo y aplicacin. Por ejemplo, un perceptron
multicapa o MLP (Multilayer Perceptron) admite ambos tipos de seales. As, para
tareas de clasificacin poseera salidas digitales {O, +1}, mientras que para un
problema de ajuste funcional de una aplicacin multivariable continua, se utilizaran
salidas continuas pertenecientes a un cierto intervalo.
Dependiendo del tipo de salida, las neuronas suelen recibir nombres especficos.
As, las neuronas estndar cuya salida slo puede tomar los valores 0 o 1 se suelen
denominar genricamente neuronas de tipo McCullochPitts, mientras que aquellas que nicamente pueden tener por salidas -1 o + 1 se
suelen denominar neuronas tipo Ising (debido al paralelismo con los modelos fsicos
de partculas con espn que pueden adoptar nicamente dos estados, hacia arriba y
hacia abajo). Si puede adoptar diversos valores discretos en la salida (por ejemplo, 2, + 1, +2), se dice que se trata de una neurona de tipo Potts. En ocasiones, el
rango de los valores que una neurona de salida continua se suele limitar un intervalo
definido, por ejemplo, [ +1] o [ +1]. [12]

2.4.1.2. REGLA DE PROPAGACION

La regla de propagacin permite obtener, a partir de las entradas y los pesos el


valor del potencial postsinptico h I de la neurona. La funcin ms habitual es de tipo
lineal, y se basa en la suma ponderada las entradas con los pesos sinpticos

que formalmente tambin puede interpretarse como producto escalar de los


vectores de entrada y los pesos. [12]

2.4.1.3. FUNCIN DE ACTIVACION

La funcin de desempeo o de transferencia proporciona el estado de actual aI (t) a


partir del potencial postsinptico hI (t) y del propio estado de anterior aI (t-1). Sin
embargo, en muchos modelos se considera que el estado actual de neurona no
depende de su es estado anterior, sino nicamente del actual.
La funcin de desempeo se suele considerar determinista, y en la mayor parte de
los modelos es montona creciente y continua, como se observa habitualmente en
las neuronas. Las funciones de activacin ms empleadas en muestra en la figura
2.3.

En ocasiones los algoritmos de aprendizaje requieren que la funcin de desempeo


cumpla la Condicin de ser derivable. Las ms empleadas en este sentido son las
funciones de tipo sigmoideo. [12]

Para explicar porque se utilizan estas funciones de activacin se suele emplear la


analoga a la aceleracin de un automvil. Cuando un auto inicia su movimiento
necesita una potencia elevada para comenzar a acelerar. Pero al ir tomando
velocidad, este demanda un menor incremento de dicha potencia para mantener la

aceleracin. Al llegar a altas velocidades, nuevamente un amplio incremento en la


potencia es necesario para obtener una pequea ganancia de velocidad. En
resumen, en ambos extremos del rango de aceleracin de un automvil se demanda
una mayor potencia para la aceleracin que en la mitad de dicho rango. [15]

Figura 2.3: Funciones de activacin ms usuales


2.4.1.4. FUNCIN DE SALIDA

Esta funcin proporciona la salida global de la neurona y en funcin de su estado de


activacin actual aI (t). Muy frecuentemente la funcin de salida es simplemente la
identidad f(x) = x de modo que el estado de activacin de la neurona se considera
como la propia salida. [12]

2.4.2. MODELO ESTANDAR

Figura 2.4: Modelo de Neurona Estndar


El modelo de neurona expuesto en la seccin anterior resulta muy general la
prctica suele utilizarse uno ms simple, que se denomina neurona estndar, la
neurona estndar consiste en

Un conjunto de entradas xI (t) y pesos sinpticos w IJ

Una regla de propagacin

Una funcin de desempeo que representa simultneamente la salida de la

es la ms comn.

neurona y su estado de activacin.


Con frecuencia se aade al conjunto de pesos de la neurona un parmetro adicional
? que se denomina umbral, que se resta del potencial postsinptico. En conclusin,
el modelo de neurona estndar queda:

2.5. REDES NEURONALES Y ARQUITECTURAS

Las redes neuronales artificiales (ANN) son sistemas paralelos para el


procesamiento de la informacin, inspirados en el modo en el que las redes de
neuronas biolgicas del cerebro procesan informacin. [15]
Debido a la inspiracin de las ANN en el cerebro, sus aplicaciones principales
estarn centradas en campos donde la inteligencia humana no pueda ser emulada
de forma satisfactoria por algoritmos aritmticos que pueden ser implementados en
ordenadores. Adems es de prever que dichas ANN tengan caractersticas similares
a las del cerebro:

Sern robustas i tolerantes a fallos. En el cerebro mueren todos los das gran
cantidad de neuronas sin afectar sensiblemente a su funcionamiento.

Sern flexibles. El cerebro se adapta a nuevas circunstancias mediante el


aprendizaje

Podrn trabajar con informacin borrosa, incompleta, probabilstica, con ruido o


inconsistente.

Sern altamente paralelas. El cerebro esta formado por muchas neuronas


interconectadas entre si y es precisamente el comportamiento colectivo de todas
ellas lo que caracteriza su forma de procesar la informacin.

El punto clave de las ANN es la nueva estructura de estos sistemas para el


procesamiento de la informacin. Estos estn compuestos, al igual que el cerebro,
por un nmero muy elevado de elementos bsicos (las neuronas), altamente
interconectados entre ellos y con modelo de respuesta para cada elemento en
funcin de su entorno muy parecido al comportamiento de las neuronas biolgicas.
Estos modelos son simulados en ordenadores convencionales y es el
comportamiento colectivo de todos los elementos lo que le confiere esas

caractersticas tan peculiares para la resolucin de problemas complejos. Las ANNs,


como las personas, aprenden a partir de ejemplos. Aprender en sistemas biolgicos
involucra la modificacin de la nter conectividad entre las neuronas y esto es
tambin cierto para las ANNs. [13]
Las ANNs han sido aplicadas a un creciente nmero de problemas reales de
considerable complejidad, por ejemplo reconocimiento de patrones, clasificacin de
datos, predicciones, etc. Su ventaja ms importante esta en solucionar problemas
que son demasiado complejos para las tcnicas convencionales: problemas que no
tienen un algoritmo especfico para su solucin, o cuyo algoritmo es demasiado
complejo para ser encontrado.
A continuacin se puede ver, en la Figura 2.5, un esquema de una red neuronal:

Figura 2.5: Ejemplo de una red neuronal totalmente conectada


La misma est constituida por neuronas interconectadas y arregladas en tres capas
(esto ltimo puede variar). Los datos ingresan por medio de la capa de entrada,
pasan a travs de la capa oculta y salen por la capa de salida. Cabe mencionar
que la capa oculta puede estar constituida por varias capas.

2.5.1. TIPOS DE ARQUITECTURA

Se denomina arquitectura a la topologa, estructura o patrn de conexionado de una


red neuronal. [12]
Atendiendo a distintos conceptos, pueden establecerse diferentes tipos de
arquitecturas neuronales.

Figura 2.6: Ejemplos de arquitecturas neuronales


As, en relacin a su estructura en capas, se puede hablar de redes monocapa y de
redes multicapa. Las redes monocapa son aquellas compuestas por una nica capa
de neuronas. Las redes multicapa (layered networks) son aquellas cuyas neuronas
se organizan en varias capas.
Asimismo, atendiendo al flujo de datos en la red neuronal, se puede hablar de redes
unidireccionales (feedforward) y redes recurrentes (feedback). En las redes
unidireccionales la informacin circula en un nico sentido, desde las neuronas de
entrada hacia las de salida. En las redes recurrentes o realimentadas la informacin
puede circular entre las capas en cualquier sentido, incluido el de salida-entrada.

Por ltimo, tambin se habla de redes autoasociativas y heteroasociativas. Con


frecuencia se interpreta la operacin de una red neuronal como la de una memoria

asociativa que ante un determinado patrn de entradas responde con un cierto


patrn
Si una red se entrena para que ante la presentacin de un patrn A responda otra
diferente B, se dice que la red es heteroasociativa. Si una red es entrenada para
que asocie un patrn A consigo mismo, se dice que es autoasociativa.

2.6. APRENDIZAJE DE UNA RED NEURONAL


El aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en
respuesta a una informacin de entrada. Los cambios que se producen durante el
mismo se reducen a la destruccin, modificacin y creacin de conexiones entre las
neuronas. Una red neuronal debe aprender a calcular la salida correcta para cada
constelacin (arreglo o vector) de entrada en el conjunto de ejemplos. [15]
Este proceso de aprendizaje se denomina: Proceso de Entrenamiento o
Acondicionamiento. El conjunto de datos (o conjunto de ejemplos) sobre el cual este
proceso se basa es, por ende, llamado: Conjunto de datos de Entrenamiento.
Durante el proceso de aprendizaje, los pesos de las conexiones de la red sufren
modificaciones, por lo tanto, se puede afirmar que este proceso ha terminado (la red
ha aprendido) cuando los valores de los pesos permanecen estables, si los pesos
cambian y sus valores son iguales a 0, se dice que la conexin de la red se ha
destruido. De esta manera, se dice que los pesos se han adaptado, ya que sus
valores son distintos de 0 y su derivada es igual a 0.
En otras palabras el aprendizaje es el proceso por el cual una red neuronal modifica
sus pesos en respuesta a una informacin de entrada. Los cambios que se
producen durante el mismo se reducen a la destruccin, modificacin y creacin de
conexiones entre las neuronas.

Un aspecto importante respecto al aprendizaje de las redes neuronales es el


conocer cmo se modifican los valores de los pesos, es decir, cules son los
criterios que se siguen para cambiar el valor asignado a las conexiones cuando se
pretende que la red aprenda una nueva informacin. [13]
Clsicamente se distinguen dos modos de operacin en los sistemas neuronales el
modo recuerdo o ejecucin, y el modo aprendizaje o entrenamiento.

2.6.1. FASE DE APRENDIZAJE. CONVERGENCIA


Hay dos mtodos de aprendizaje importantes que pueden distinguirse:

Aprendizaje supervisado.

Aprendizaje no supervisado.

2.6.1.1. APRENDIZAJE SUPERVISADO

El aprendizaje supervisado se caracteriza porque el proceso de aprendizaje se


realiza mediante un entrenamiento controlado por un agente externo (supervisor,
maestro) que determina la respuesta que debera generar la red a partir de una
entrada determinada. El supervisor controla la salida de la red y en caso de que sta
no coincida con la deseada, se proceder a modificar los pesos de las conexiones,
con el fin de conseguir que la salida obtenida se aproxime a la deseada. En este tipo
de aprendizaje se suelen considerar, a su vez, tres formas de llevarlo a cabo, que
dan lugar a los siguientes aprendizajes supervisados:

Aprendizaje por correccin de error: Consiste en ajustar los pesos de las


conexiones de la red en funcin de la diferencia entre los valores deseados y los
obtenidos a la salida de la red, es decir, en funcin del error cometido en la
salida.

Aprendizaje por refuerzo: Se trata de un aprendizaje supervisado, ms lento que


el anterior, que se basa en la idea de no disponer de un ejemplo completo del
comportamiento deseado, es decir, de no indicar durante el entrenamiento
exactamente la salida que se desea que proporcione la red ante una
determinada entrada. En el aprendizaje por refuerzo la funcin del supervisor se
reduce a indicar mediante una seal de refuerzo si la salida obtenida en la red
se ajusta a la deseada (xito = +1 o fracaso = -1), y en funcin de ello se ajustan
los pesos basndose en un mecanismo de probabilidades. Se podra decir que
en este tipo de aprendizaje la funcin del supervisor se asemeja ms a la de un
crtico (que opina sobre la respuesta de la red) que a la de un maestro (que
indica a la red la respuesta concreta que debe generar), como ocurra en el caso
de supervisin por correccin del error.

Aprendizaje estocstico: Consiste bsicamente en realizar cambios aleatorios en


los valores de los pesos de las conexiones de la red y evaluar su efecto a partir
del objetivo deseado y de distribuciones de probabilidad. En pocas palabras el
aprendizaje consistira en realizar un cambio aleatorio de los valores de los
pesos y determinar la energa de la red. Si la energa es menor despus del
cambio, es decir, si el comportamiento de la red se acerca al deseado, se acepta
el cambio; si, por el contrario, la energa no es menor, se aceptara el cambio en
funcin de una determinada y preestablecida distribucin de probabilidades.

2.6.1.2. APRENDIZAJE NO SUPERVISADO

Las

redes

con

aprendizaje

no

supervisado

(tambin

conocido

como

autosupervisado) no requieren influencia externa para ajustar los pesos de las


conexiones entre sus neuronas. La red no recibe ninguna informacin por parte del
entorno que le indique si la salida generada en respuesta a una determinada
entrada es o no correcta. Estas redes deben encontrar las caractersticas,
regularidades, correlaciones o categoras que se puedan establecer entre los datos
que se presenten en su entrada.

Existen varias posibilidades en cuanto a la interpretacin de la salida de estas


redes, que dependen de su estructura y del algoritmo de aprendizaje empleado. En
cuanto a los algoritmos de aprendizaje no supervisado, en general se suelen
considerar dos tipos, que dan lugar a los siguientes aprendizajes:

Aprendizaje hebbiano: Esta regla de aprendizaje es la base de muchas otras, la


cual pretende medir la familiaridad o extraer caractersticas de los datos de
entrada. El fundamento es una suposicin bastante simple: si dos neuronas Ni y
Nj toman el mismo estado simultneamente (ambas activas o ambas inactivas),
el peso de la conexin entre ambas se incrementa. Las entradas y salidas
permitidas a la neurona son: {-1, 1} o {0, 1} (neuronas binarias). Esto puede
explicarse porque la regla de aprendizaje de Hebb se origin a partir de la
neurona biolgica clsica, que solamente puede tener dos estados: activa o
inactiva.

Aprendizaje competitivo y comparativo: Se orienta a la clusterizacin o


clasificacin de los datos de entrada. Como caracterstica principal del
aprendizaje competitivo se puede decir que, si un patrn nuevo se determina
que pertenece a una clase reconocida previamente, entonces la inclusin de
este nuevo patrn a esta clase matizar la representacin de la misma. Si el
patrn de entrada se determin que no pertenece a ninguna de las clases
reconocidas anteriormente, entonces la estructura y los pesos de la red neuronal
sern ajustados para reconocer la nueva clase.

2.6.2. FASE DE RECUERDO O EJECUCIN. ESTABILIDAD


Generalmente (aunque no en todos los modelos), una vez que el sistema ha sido
entrenado, el aprendizaje se desconecta por lo que los pesos y la estructura quedan
fijos, estando la red neuronal ya dispuesta para procesar datos. Este modo de
operacin se denomina modo recuerdo (recall) o de ejecucin. [12]

En las redes unidireccionales, ante un patrn de entrada, las neuronas responden


proporcionando directamente la salida del sistema. Al no existir bucles de
realimentacin no existe ningn problema en relacin con su estabilidad. Por el
contrario, las redes con realimentacin son sistemas dinmicos no lineales, que
requieren ciertas condiciones para que su respuesta acabe convergiendo a un
estado estable o punto fijo. Una serie de teoremas generales como el Teorema de
Cohen Grossberg Kosko2, indican las condiciones que aseguran la estabilidad
de la respuesta en una amplia gama de redes neuronales, bajo determinadas
condiciones.
Para demostrar la estabilidad del sistema, estos teoremas se basan en el mtodo de
Lyapunov 3, como alternativa al mucho ms tedioso mtodo directo.
El mtodo de Lyapunov constituye una manera asequible de estudiar la estabilidad
de un sistema dinmico. Es interesante observar que con la formulacin matemtica
planteada en este mtodo simplemente se est expresando que si se es capaz de
encontrar una cierta funcin energa del sistema, que disminuya siempre en su
operacin, entonces el sistema es estable. [12]

Una tcnica similar emple Hopfield para demostrar que su modelo de red
completamente interconectada era estable en de que la matriz de pesos sinpticos
fuese simtrica y de diagonal nula.
Esta tcnica es tambin la que Cohen, Grossberg y Kosko han aplicado en los
teoremas citados para demostrar la estabilidad de una amplia clase de redes
neuronales realimentadas, autoasociativas y heteroasociativas. As, el teorema de
Cohen-Grossber

determina

las

condiciones

de

estabilidad

para

redes

autoasociativas no adaptativas, el de Cohen-Grossberg-Kosko, establece las

El enunciado completo de los teorema as como el desarrollo y la explicacin de ellos se pueden ver
en
http://www.nsi.edu/users/izhikevich/publications/arbib.pdf
3
Para mas informacin sobre el mtodo de Lyapunov, ver el articulo Sobre el Mtodo de Lyapunov
en http://www.red -mat.unam.mx/foro/volumenes/vol010/volten_2.html

condiciones de estabilidad para redes autoasociativas adaptativas; y, por ltimo, el


teorema ABAM de Kosko lo hace pata redes adaptativas heteroasociativas.

2.7.

CLASIFICACION DE LOS MODELOS NEURONALES

Dependiendo del modelo concreto de neurona que se utilice, de la arquitectura o


topologa de la conexin, y del algoritmo de aprendizaje, surgirn distintos modelos
de redes neuronales.
De la multitud de modelos y variantes que de hecho existen, unos cincuenta son
medianamente conocidos, aunque tan slo aproximadamente una quincena son
utilizados con asiduidad en las aplicaciones prcticas. Por lo tanto, para llevar a
cabo el estudio sistemtico de los modelos se precisa algn tipo de clasificacin.
Los dos conceptos que ms caracterizan un modelo neuronal son el aprendizaje y la
arquitectura de la red, por ello, se considera que la clasificacin debe atender
ambos aspectos.

Figura 2.7 Clasificacin de los ANS por el tipo de aprendizaje y arquitectura

De esta manera, en primer lugar, se realiza una distincin en cuanto al tipo de


aprendizaje, por lo que aparece una primera clasificacin en modelos supervisados,
no supervisados, de aprendizaje hbrido y modelos de aprendizaje reforzado. A su
vez, y dentro de cada uno de los grandes grupos, tendremos en cuenta el tipo de
topologa de la red, por lo que se distinguir adems entre redes realimentadas y
redes unidireccionales (no realimentadas). La clasificacin que surge se muestra en
la Figura 2.7. [12]

Se puede apreciar que el conjunto de modelos de redes no realimentadas y de


aprendizaje supervisado es el ms numeroso. Esta clase de modelos resulta
especialmente importante por varias razones: por su inters histrico, generalidad,
por ilustrar una amplia clase de aspectos que aparecen con frecuencia en todo el
campo de las redes neuronales (memoria asociativa, clasificacin, aproximacin
funcional, etc.), y adems por ser los sistemas neuronales ms empleados en las
aplicaciones prcticas.

2.8. COMPUTABILIDAD NEURONAL

Establecidos los. ANS como un estilo de procesamiento alternativo complementario


al clsico basado en computadores digitales serie (tipo von Neumann), se hace
necesario profundizar en sus caractersticas computacionales. Es bien sabido que
un ordenador digital constituye una mquina universal de Turing, por lo que puede
realizar cualquier cmputo. Adems, al estar construido en base a funciones lgicas,
se deduce que cualquier problema computacional puede ser resuelto con funciones
booleanas.
Se ha discutido extensamente sobre las caractersticas computacionales de los
ANS, demostrndose en particular que, al igual que los computadores digitales
convencionales, las redes neuronales son formalmente capaces de resolver
cualquier problema computacional.[12].

Por lo tanto, los ANS, como los ordenadores convencionales, son mquinas
universales, por lo que para resolver un determinado problema, cualquiera de las
dos aproximaciones sera perfectamente vlida, en principio.

La cuestin que entonces surge es, dado un problema, cul de las dos alternativas,
procesamiento neuronal o convencional, resulta ms eficiente en su resolucin.
Estudiando en el campo de las redes neuronales los aspectos relacionados con la
complejidad computacional, en varios estudios se deduce que los problemas que
requieren un extenso algoritmo o que precisan almacenar un gran nmero de datos,
aprovechan mejor la estructura de una red neuronal que aquellos otros que
requieren algoritmos cortos. As, un ordenador digital resulta ms eficiente en la
ejecucin de tareas aritmticas y lgicas, mientras que un ANS resolver mejor
problemas que deban tratar con grandes bases de datos que almacenen ingentes
cantidades de informacin, y en los que existan muchos casos particulares, como
sucede en los problemas de reconocimiento de patrones en ambiente natural.
De esta manera podemos concluir que un estilo de computacin no es mejor que el
otro, simplemente para cada problema particular se deber elegir el mtodo ms
adecuado, y en el caso de problemas muy complejos, stos deberan ser separados
en partes, para resolver cada una mediante el mtodo ms idneo.[12]

2.9. REALIZACIN Y APLICACIONES DE LAS REDES NEURONALES

El modo ms habitual de realizar una red neuronal consiste en simularla en un


ordenador convencional, como un PC o una estacin de trabajo, haciendo uso de
programas escritos en lenguajes de alto nivel, como C o Pascal. Aunque de esta
manera se pierde su capacidad de clculo en paralelo, las prestaciones que ofrecen
los ordenadores actuales resultan suficientes para resolver numerosos problemas
prcticos, perm itiendo la simulacin de redes de tamao considerable a una
velocidad razonable. Esta constituye la manera ms barata y directa de realizar una
red neuronal. Adems, no es necesario que cada diseador confeccione sus propios

simuladores, pues hay disponible comercialmente software de simulacin que


permite el trabajo con multitud de modelos neuronales.
En el resto de las maneras de realizar un ANS se trata de aprovechar, en mayo o
menor medida, su estructura de clculo paralelo. Un paso adelante en este sentido
consiste en simular la red sobre computadores con capacidad de clculo paralelo
(sistemas multiprocesador, mquinas vectoriales, masivamente paralelas...). Una
orientacin diferente consiste en llevar a cabo la emulacin hardware de la red
neuronal, mediante el empleo de sistemas de clculo expresamente diseados para
realizar ANS basados, o en microprocesadores de altas prestaciones (RISC DSP...),
o en procesadores especialmente diseados para el trabajo con redes neuronales.
Estas estructuras se suelen denominar placas aceleradoras neuroemuladores o
neurocomputadores de propsito general. Algunos sistemas de desarrollo de redes
neuronales, adems de un software de simulacin, incluyen dispositivos de este
tipo, en forma de tarjetas conectables al bus de un PC.
La realizacin electrnica de redes neuronales es un campo muy activo, abordado
tanto por grupos de investigacin universitarios como por empresas de los sectores
de la electrnica e informtica. Compaas como Siemens, Philips, Hitachi, AT&T,
IBM o Intel han puesto en marcha desde mediados de los aos ochenta programas
de investigacin y desarrollo en este campo. Asimismo, se han creado diversas
empresas que tratan de explotar comercialmente (con mejor o peor fortuna) estos
nuevos desarrollos. [12]

Las aplicaciones ms habituales de las redes neuronales son las relacionadas con
clasificacin, estimacin funcional y optimizacin; en general, el del reconocimiento
de patrones suele considerarse como un denominador comn. Se pueden sealar,
entre otras, las siguientes reas de aplicacin de los sistemas neuronales:
reconocimiento del habla, reconocimiento de caracteres, visin, robtica, control,
procesamiento de seal, prediccin, economa, defensa, bioingeniera, etc.
Asimismo, se estn aplicando ANS para incorporar aprendizaje en los sistemas
borrosos y a la confeccin de sistemas expertos conexionistas. Un rea de intenso

trabajo es el del tratamiento de la informacin econmica, siendo uno de los grupos


punteros el de A.N. Refenes, de la London Businnes School.
Otra de las reas importantes es la industria. Fujitsu, Kawasaki y Nippon Steel
emplean ANS en el control de procesos industriales, como por ejemplo en plantas
de produccin de acero. Siemens aplica redes neuronales y sistemas borrosos en la
fabricacin de celulosa en laminadoras y en galvanizadoras. Citren emplea redes
neuronales en la determinacin de la calidad del material utilizado en la confeccin
de los asientos de los vehculos, Ford en reduccin de contaminantes y Renault
para detectar averas en el encendido de los automviles.4

2.10. REDES NEURONALES SUPERVISADAS

En esta parte del capitulo se trataran los modelos de redes mas populares, as como
sus principales algoritmos, se inicia con los modelos mas sencillos, esto con el fin de
ir introduciendo los conceptos necesarios para describir el perceptron y el algoritmo
denominado backpropagation que servirn de base terica para la experimentacin
hecha en el capitulo 4. No se desarrollaran las redes neuronales no supervisadas
debido a que no son redes diseadas para la forma en que se predicen series de
tiempo, principal objetivo de este trabajo.

2.10.1. ASOCIADOR LINEAL

Este modelo, mediante una transformacin lineal, asocia un conjunto de patrones de


entrada a otros de salida. El asociador lineal consta nicamente de una capa de
neuronas lineales, cuyas entradas las denotamos por x y sus salidas por y, vector
que constituye adems la respuesta de la red neuronal.

Un ndice muy completo de aplicaciones de las RNA se pude encontrar en http://www.ipatlas.com/pub/nap/

Asimismo, denotaremos por W = {w ij} a la matriz de pesos, cada fila de W contiene


los pesos de una neurona wi.

La operacin del asociador lineal es simplemente


O bien

Por lo tanto, cada neurona i del asociador lineal lleva a cabo la suma ponderada de
las entradas con sus pesos sinpticos. Es decir esta neurona calcula el potencial
postsinptico por medio de la convencional suma ponderada, cantidad a la que
aplica finalmente una funcin activacin de tipo identidad.

El problema se centra en encontrar la matriz de pesos W ptima en el sentido


descrito anteriormente en este capitulo. Para ello, en el campo de las redes
neuronales normalmente se hace uso de una regla de aprendizaje, que a partir de
las entradas y de las salidas deseadas (en el caso del aprendizaje supervisado),
proporcione el conjunto ptimo de pesos W.5 [12]

Algo mas sobre el asociador lineal puede ser consultado en


http://www.comp.nus.edu.sg/~pris/AssociativeMemory/LinearAssociator.html

2.10.1.1. REGLA DE APRENDIZAJE DE HEBB

Uno de los modelos clsicos de aprendizaje de redes neuronales es el propuesto


por Hebb (1949), el cual postulo un mecanismo de aprendizaje para una neurona
biolgica, cuya idea bsica consiste en que cuando un axn presinaptico causa la
activacin de cierta neurona pos-sinptica, la eficacia de la sinapsis que las
relaciona se refuerza.[12]

Si bien este tipo de aprendizaje es simple y local, su importancia radica en que fue
pionero tanto en neurociencias como en neurocomputacin, de ah que otros
algoritmos mas complejos lo tomen como punto de partida.

De manera general se denomina aprendizaje Hebbiano a un aprendizaje que


involucra una modificacin en los pesos,

?w ij proporcional al producto de una

entrada xj y de una salida yi de la neurona. Es decir, ?wij = ey ixj, donde a 0<e<1 se


le denomina ritmo de aprendizaje. [12]
Consideremos el caso del asociador lineal. La regla de Hebb se expresa en este
caso particular as

Por lo tanto, el algoritmo de entrenamiento regla de Hebb para el asociador lineal


es:

Si los pesos de partida son nulos, el valor final de W para las p asociaciones ser:

2.10.1.2. REGLA DE LA PSEUDOINVERSA

La regla de aprendizaje de Hebb ha sido introducida debido a su plausibilidad


biolgica. Sin embargo, en general se tratar de deducir los algoritmos de
aprendizaje a partir de un cierto criterio a optimizar; el aprendizaje usualmente se
plantear como un procedimiento para alcanzar el conjunto de pesos ptimo que
resuelva un problema dado. Para ello se hace necesario definir el significado de
ptimo en cada caso concreto, es decir, hay que proponer un criterio que mida el
rendimiento de la red neuronal para encontrar una regla de actualizacin de pesos
que lo optimice. Una forma habitual de definir el rendimiento es el error cuadrtico
medio de las salidas actuales de la red respecto de las deseadas. Para el asociador
lineal se tendra

De este modo, un algoritmo de aprendizaje para el asociador lineal debera obtener


un conjunto de pesos que minimicen esta expresin del error. Si denominamos X a
una matriz nxp que tiene por columnas los vectores de entrada xU, X = (x1, x2,,x p)
y si llamamos Y a la matriz mxp cuyas columnas son los vectores de salida yU , Y =
(y1, y2,,yp), la ecuacin anterior se transforma en

Con esta nomenclatura, la regla de Hebb se expresa de la forma siguiente:

Una regla de aprendizaje basada en la utilizacin de la matriz pseudoinversa puede


escribirse como:

Donde X+ denota la pseudoinversa de X. Debido a que ambas reglas son ptimas


segn el mismo criterio, la regla de Hebb y la de la pseudoinversa deben estar muy
relacionadas. Esta circunstancia es fcil de apreciar, pues si consideramos un
conjunto de vectores de entrada ortonormales, la regla de la pseudoinversa se
convierte en la de Hebb. Por otra parte, si se realiza la expansin en serie de la
ecuacin de la pseudoinversa, el primer trmino de la serie es Precisamente la
ecuacin de la regla de Hebb. Es decir, la regla de Hebb representa en el fondo un
caso particular de la ms general regla de la pseudoinversa. [12]

2.10.2. PERCEPTRON SIMPLE

La red tipo Perceptrn fue inventada por el psiclogo Frank Rosenblatt en el ao


1957. Su intencin era ilustrar algunas propiedades fundamentales de los sistemas
inteligentes en general, sin entrar en mayores detalles con respecto a condiciones
especficas y desconocidas para organismos biolgicos concretos. Rosenblatt crea
que la conectividad existente en las redes biolgicas tiene un elevado porcentaje de
aleatoriedad, por lo que se opona al anlisis de McCulloch Pitts en el cual se
empleaba lgica simblica para analizar estructuras bastante idealizadas.
Rosenblatt opinaba que la herramienta de anlisis ms apropiada era la teora de
probabilidades, y esto lo llev a una teora de separabilidad estadstica que utilizaba
para caracterizar las propiedades ms visibles de estas redes de interconexin
ligeramente aleatorias.
El primer modelo de Perceptrn fue desarrollado en un ambiente biolgico imitando
el funcionamiento del ojo humano, el fotoperceptrn como se le llamo era un
dispositivo que responda a seales pticas; como se muestra en el figura 2.9 la luz
incide en los puntos sensibles (S) de la estructura de la retina, cada punto S
responde en forma todo-nada a la luz entrante, los impulsos generados por los
puntos S se transmiten a las unidades de asociacin (A) de la capa de asociacin;
cada unidad A est conectada a un conjunto aleatorio de puntos S, denominados

conjunto fuente de la unidad A, y las conexiones pueden ser tanto excitatorias como
inhibitorias. [13]

Figura 2.9: Modelo del Fotoperceptrn de Rosenblatt


De forma similar, las unidades A estn conectadas a unidades de respuesta (R)
dentro de la capa de respuesta y la conectividad vuelve a ser aleatorio entre capas,
pero se aaden conexiones inhibitorias de realimentacin procedentes de la capa de
respuesta y que llegan a la capa de asociacin, tambin hay conexiones inhibitorias
entre las unidades R.

Figura 2.10 : Arquitectura (izquierda) y funcin de transferencia (derecha) de un perceptrn simple


El perceptrn simple es un modelo unidireccional, compuesto por dos capas de
neuronas, una sensorial o de entradas, y otra de salida (Figura 2.10). La operacin

de una red de este tipo, con n neuronas de entrada y m de salida, se puede


expresar como [12]

Las neuronas de entrada no realizan ningn cmputo, nicamente envan la


informacin (en principio consideraremos seales discretas {O, +1)) a las neuronas
de salida (en el modelo original estas neuronas de entrada representaban
informacin ya procesada, no datos directamente procedentes del exterior).

La funcin de desempeo las neuronas de la capa de salida es de tipo escaln. As,


la operacin de un perceptrn simple puede escribirse

con H(.) la funcin de Heaviside o escaln. El perceptrn puede utilizarse tanto


como clasificador, como para la representacin de funciones booleanas, pues su
neurona es esencialmente de tipo MacCulloch-Pitts, de salida binaria. La
importancia terica del perceptrn radica en su carcter de dispositivo entrenable,
pues el algoritmo de aprendizaje del modelo introducido por Rosenblatt, y que se
describir mas adelante, permite determinar automticamente los pesos sinpticos
que clasifican conjunto de patrones a partir de un conjunto de ejemplos etiquetados.
[12]
Se mostrara a continuacin que un perceptrn permite realizar tareas de
clasificacin. Cada neurona del perceptrn representa una determinada clase, de
modo que dado un vector de entrada, una cierta neurona responde con 0 si no
pertenece a la se que representa, y con un 1 si s pertenece. Es fcil ver que una
neurona tipo perceptrn solamente permite discriminar entre dos clases linealmente

separables (es decir, cuyas regiones de decisin pueden ser separadas mediante
una nica condicin lineal o hiperplano Sea una neurona tipo perceptrn de dos
entradas, x1 y x2 con salida y, cuya operacin se define por lo tanto

o bien

Si consideramos x y x situadas sobre los ejes de abscisas y ordenadas en el plano,


la condicin

representa una recta (hiperplano, si trabajamos con n entradas) que divide el plano
(espacio) en dos regiones, aquellas para las que la neurona proporciona una salida
0 o 1, respectivamente (Figura 2.11). Luego, efectivamente, una neurona tipo
perceptrn representa un discriminador lineal, al implementar una condicin lineal
que separa dos regiones en el espacio, que representan dos diferentes clases de
patrones.

Figura 2.11: Regin de decisin correspondiente a un perceptrn simple con dos neuronas
de entrada

Consideremos la funcin lgica NAND, (AND negada de dos entradas), que


representamos sobre el plano (Figura 2.12a). En este caso pueden encontrarse
unos parmetros w 1 y w2 y ? que determinen una recta que separa perfectamente
las regiones correspondientes a los valores lgicos 0 y 1. Por ello, la funcin lgica
NAND se dice separable linealmente, puesto que hemos podido encontrar una nica
condicin lineal que divida ambas regiones Por ejemplo, un perceptrn con los
siguientes parmetros implementa la funcin NAND: w 1 = w 2 = -2 y ? = -3

Figura 2.12: Funciones lgicas NAND (a) y XOR (b)


Sin embargo consideremos la funcin lgica or - exclusivo o XOR (su salida es el 0
lgico si las variables de entrada son iguales y 1 si son diferentes), se representa en
el plano (Figura 2.12b).
En este caso podemos apreciar que no se puede encontrar una nica condicin
lineal que separe las regiones a los valores de salida O y 1, por lo que se dice que la
XOR no es linealmente separable. Como la neurona del perceptron representa en el
fondo un discriminador lineal, esta neurona por s sola no puede implementar la
funcin XOR.
Por lo tanto, concluimos con que la clase de funciones no separables linealmente no
puede ser representada por un perceptrn simple. [12]
Minsky (uno de los padres de la IA) y Papert estudiaron en profundidad el
perceptrn, y en 1969 publicaron un exhaustivo trabajo en el que se subrayaba sus

limitaciones, lo que result decisivo para que muchos de los recursos que se
estaban invirtiendo en redes neuronales se desviasen hacia otros campos ms
prometedores entonces, como era en la poca el de la inteligencia artificial. A finales
de los sesenta ya se apuntaba como solucin a las limitaciones del perceptrn
introducir capas ocultas, pero el problema resida en que si bien se dispona de un
algoritmo de aprendizaje para el perceptrn simple, el denominado algoritmo del
perceptrn (se explicara el algoritmo en la siguiente seccin), no se dispona de
ningn procedimiento que permitiese obtener automticamente los pesos en uno
multicapa, con neuronas ocultas.
Este problema denominado de asignacin de crdito a las neuronas sin conexin
directa con el exterior (consistente en cmo medir la contribucin al error en la
salida de la red neuronal de cada uno de los nodos ocultos que precisamente no
tienen una conexin directa con ella) fue resuelto no mucho ms tarde por Paul
Werbos, pero fue preciso esperar hasta mediados de los aos ochenta para que el
grupo PDP junto con otros grupos de forma independiente) redescubriera un
algoritmo similar que denominaron back-propagation o BP, y diera a conocer a la
comunidad internacional su gran potencial para la resolucin de problemas
prcticos.[12]

2.10.2.1. ALGORITMO DE APRENDIZAJE DEL PERCEPTRON

La importancia del perceptrn radica en su carcter de dispositivo entrenable pues


el algoritmo de aprendizaje introducido por Rosenblatt permite que el perceptrn
determine automticamente los pesos sinpticos que clasifican un determinado
conjunto de patrones etiquetados. El del perceptrn es un algoritmo de aprendizaje
de los denominados por correccin de errores. Los algoritmos de este tipo (en el
que se incluyen posteriormente tambin el de la adaline y el BP) ajustan los pesos
en proporcin a la diferencia existente entre la salida actual de la red y la salida
deseada, con el objetivo de minimizar el error actual de la red.

Sea un conjunto de p patrones xU , u.=1,,p, con sus salidas deseadas tU . Tanto las
entradas como las salidas solamente pueden tomar los valores -1 o 1 (o bien, 0 o 1,
segn se definan los niveles lgicos). Se tiene una arquitectura de perceptrn
simple, con pesos iniciales aleatorios, y se requiere que clasifique correctamente
todos los patrones del conjunto de aprendizaje (lo cual es posible solamente si son
linealmente separables).
Se decidir del siguiente modo, ante la presentacin del patrn u-simo, si la
respuesta que proporciona el perceptrn es correcta, no se actualizaran los pesos;
si es incorrecta, segn la regla de Hebb de la seccin 2.9.1.1. Se tiene

que se puede reescribir del siguiente modo

que es la forma habitual de expresar la regla del perceptrn. En su utilizacin


prctica, se debe llegar a un compromiso para el valor del ritmo de aprendizaje ? ,
puesto que un valor pequeo implica un aprendizaje lento, mientras que uno
excesivamente grande puede conducir a oscilaciones en el entrenamiento, al
introducir variaciones en los pesos excesivamente amplias. Al ser las entradas y las
salidas discretas {-1, 1}, tambin lo ser la actualizacin de los pesos, que
nicamente podr tomar los valores 0 o 2? .

2.10.3. ADALINE

Al mismo tiempo que Frank Rosenblatt trabajaba en el modelo del Perceptrn


Bernard Widrow y su estudiante Marcian

do introdujeron el modelo de la red

Adaline y su regla de aprendizaje llamada algoritmo LMS (Least Mean Square). El

trmino Adaline es una sigla, sin embargo su significado cambi ligeramente a


finales de los aos sesenta cuando decay el estudio de las redes neuronales,
inicialmente se llamaba Adaptive Linear Neuron (Neurona Lineal Adaptiva), para
pasar despus a ser Adaptive Linear Element (Elemento Lineal

doptivo), este

cambio se debi a que la Adaline es un dispositivo que consta de un nico elemento


de procesamiento, como tal no es tcnicamente una red neuronal. La estructura
general de la red tipo Adaline puede visualizarse en la figura 2.13. [17]

A diferencia del asociador lineal, la adaline incorpora un parmetro adicional


denominado bias, el cual no debe de ser considerado como un umbral de disparo,
sino como un parmetro que proporciona un grado de libertad adicional al modelo.

Teniendo en cuenta lo anterior, la ecuacin de la adaline resulta ser:

con i = 1, ,m.

Otra diferencia fundamental de la adaline con respecto del asociador lineal y el


perceptrn simple radica en la regla de aprendizaje. En la adaline se utiliza la regla
de Widrow Holf, tambin conocida como LMS (Least Mean Square) o regla de
mnimos cuadrados. Esta regla permite actualizaciones de los pesos proporcionales
al error cometido por la neurona.
El adaline se viene utilizando desde comienzos de los aos sesenta como filtro
adaptativo, por ejemplo en aplicaciones relacionadas con la reduccin del ruido en
la transmisin de seales. De este modo, y desde hace aos, millones de mdems
de todo el mundo incluyen una adaline.

2.10.4. EL PERCEPTRON MULTICAPA (MLP)6

En la seccin 2.10.2 se ha visto las limitaciones del perceptrn simple, ya que con l
tan solo se puede discriminar patrones que pueden ser separados por un hiperplano
(una recta en el caso de dos neuronas de entrada). Una manera de solventar estas
limitaciones del perceptrn simple es por medio de la inclusin de capas ocultas,
obteniendo de esta forma una red neuronal que se denomina perceptrn multicapa.
La Figura 2.14 muestra las regiones de decisin que se obtienen para distintas
arquitecturas de redes neuronales considerando dos neuronas en la capa inicial. As
por ejemplo para una arquitectura de perceptrn simple la regin de decisin es una
recta, mientras que el perceptrn multicapa con una nica capa de neuronas ocultas
puede discriminar regiones convexas.
Por otra parte el perceptrn multicapa con dos capas de neuronas ocultas es capaz
de discriminar regiones de forma arbitraria.

Esta red ser el tipo de red central en este trabajo

Figura 2.14: Regiones de decisin obtenida s para el perceptrn simple (arriba), el perceptrn
multicapa con una capa oculta (en medio) y el perceptrn multicapa con dos capas ocultas (abajo)

La estructura del MLP con una nica capa oculta se muestra en las Figuras 2.15 y
2.16.

Figura 2.15: Arquitectura (izquierda) y funcin de desempeo(derecha) para el perceptrn multicapa

Denominaremos xi a las entradas de la red, yj a las salidas de la capa oculta y Zk a


las de la capa final (y globales de la red); tk sern las salidas objetivo (target). Por
otro lado, wij son los pesos de la capa oculta y ?j sus umbrales, wkj los pesos de la
capa de salida y ?k sus umbrales. La operacin de un MLP con una capa oculta y
neuronas de salida lineal (estructura que constituye, como se vera ms adelante, un

aproximador universal de funciones) se expresa matemticamente de la siguiente


manera:

sta es la arquitectura ms comn de MLP, aunque existen numerosas variantes,


como incluir neuronas no lineales en la capa de salida (solucin que se adopta
especialmente en problemas de clasificacin), introducir ms capas ocultas, emplear
otras funciones de activacin, limitar el nmero de conexiones entre una neurona y
las de la capa siguiente, introducir dependencias temporales o arquitecturas
recurrentes, etc.

Figura 2.16: Arquitectura del perceptrn multicapa

2.10.4.1. EL MLP COMO APROXIMADOR UNIVERSAL DE FUNCIONES

El desarrollo del MLP durante los ltimos treinta aos ha resultado curioso.
Partiendo

de

un

perceptrn

monocapa

observando

sus

limitaciones

computacionales, se lleg a la arquitectura perceptrn multicapa, y aplicndolo a

numerosos problemas, se comprob experimentalmente que ste era capaz de


representar complejos, mappings y de abordar problemas de clasificacin de gran
envergadura, de una manera eficaz y relativamente simple. Sin embargo, faltaba
una demostracin terica que permitiese explicar sus aparentemente enormes
capacidades computacionales.
Este proceso histrico comienza con McCulloch y Pitts, quienes mostraron que
mediante su modelo de neurona (esencialmente un dispositivo de umbral) podra
representarse cualquier funcin booleana; mucho ms tarde, Denker y otros,
demostraron que toda funcin booleana poda ser representada por una red
unidireccional multicapa de una sola capa oculta. Por las mismas fechas, Lippmann
mostr que un perceptrn con dos capas ocultas bastaba para representar regiones
de decisin arbitrariamente complejas. Por otra parte, Lapedes y Farber
demostraron que un perceptrn de dos capas ocultas es suficiente para representar
cualquier funcin arbitraria (no necesariamente booleana).
Ms tarde, Hecht-Nielsen aplicando el teorema de Kolmogorov demostr que una
arquitectura de caractersticas similares al MLP, con una nica capa oculta,
resultaba ser un aproximador universal de funciones. Por fin, a finales de la dcada,
diversos grupos propusieron casi a la par teoremas muy similares que demostraban
matemticamente que un MLP convencional, de una nica capa oculta, constitua,
en efecto, un aproximador universal de funciones.
Los teoremas citados resultan de vital importancia, puesto que proporcionan una
slida base terica al campo de las redes neuronales, al incidir sobre un aspecto (la
aproximacin funcional y un modelo (el MLP) centrales en la teora de las redes
neuronales artificiales. No obstante, todava quedan muchos asuntos abiertos. Por
ejemplo estos teoremas no informan sobre el nmero de nodos ocultos necesarios
para aproximar una funcin determinada, simplemente se afirma que hay que
colocar los necesarios para lograr el nivel de aproximacin requerido.

2.10.4.2. APRENDIZAJE POR RETROPROPAGACIN DE ERRORES

Una solucin al problema de entrenar los nodos de las capas ocultas pertenecientes
a arquitecturas multicapa la proporciona el algoritmo de retropropagacin de errores
o BP (backpropagation).
Sea un MLP de tres capas, cuya arquitectura se presenta en la Figura 2.16, con
[entradas, salidas, pesos y umbrales de las neuronas definidas en la introduccin de
la seccin 2.9.4. Dado un patrn de entrada xu, (u=1,,p), se recuerda que la
operacin global de esta arquitectura se expresa del siguiente modo:

Las funciones de activacin de las neuronas ocultas f (h) son de tipo sigmoideo, con
h el potencial postsinptico o local. La funcin de costo de la que se parte es el error
cuadrtico medio

La minimizacin se lleva a cabo mediante descenso por el gradiente, pero en esta


ocasin habr un gradiente respecto de los pesos de la capa de salida y otro
respecto de los de la oculta:

Las expresiones de actualizacin de los pesos se obtienen slo con derivar,


teniendo en cuenta las dependencias funcionales y aplicando adecuadamente la
regla de la cadena

La actualizacin de los umbrales (bias) se realiza haciendo uso de estas mismas


expresiones, considerando que el umbral es un caso particular de peso sinptico,
cuya entrada es una constante igual a -1.
En estas expresiones est implcito el concepto de propagacin hacia atrs de los
errores que da nombre al algoritmo. En primer lugar se calcula la expresin
.

que denominaremos seal de error, por s0er proporcional al error de la salida

actual de la red, con el que calculamos la actualizacin

de los pesos de la capa

de salida. A continuacin se propagan hacia atrs los errores


a travs de las sinapsis, proporcionando as las seales de error , correspondientes
a las sinapsis de la capa oculta; con stas se calcula la actualizacin de las sinapsis
ocultas. El algoritmo puede extenderse fcilmente a arquitecturas con ms de una
capa oculta siguiendo el mismo esquema.
En resumen, el procedimiento a seguir para entrenar mediante BP una arquitectura
MLP dada es el siguiente:

Se debe comenzar siempre con pesos iniciales aleatorios (normalmente nmeros


pequeos, positivos y negativos), ya que si se parte de pesos y umbrales iniciales
son nulos el aprendizaje no progresar (puesto que las salidas de las neuronas y el
incremento en los pesos sern siempre sern nulos).

En el esquema presentado, que surge de forma natural del proceso de descenso


por el gradiente, se lleva a cabo una fase de ejecucin para todos y cada uno de los
patrones del conjunto de entrenamiento, se calcula la variacin en los pesos debida
a cada patrn, se acumulan, y solamente entonces se procede a la actualizacin de
los pesos. Este esquema se suele denominar aprendizaje por lotes (batch).
Una variacin comn al algoritmo consiste en actualizar los pesos sinpticos tras la
presentacin de cada patrn (en vez de presentarlos todos y luego actualizar),
esquema denominado aprendizaje en serie (on - line). Aunque el verdadero BP es el
que se ejecuta por lotes, el aprendizaje en serie es habitualmente empleado en
aquellos problemas en los que se dispone de un muy numeroso conjunto de
patrones de entrenamiento (compuesto por cientos o miles de patrones), en el que
habr mucha redundancia en los datos. Si se emplease en este caso el modo por
lotes, el tener que procesar todos los patrones antes de actualizar los pesos
demorara

considerablemente

el

entrenamiento

(adems

de

precisar

el

almacenamiento de numerosos resultados parciales). Por ejemplo, podemos


imaginar un conjunto de entrenamiento compuesto por 10.000 patrones, en el que
cada patrn aparece repetido cien veces, entrenando por lotes el aprendizaje
durara cien veces ms que en modo serie.
En el aprendizaje en serie se debe tener presente que el orden en la presentacin
de los patrones debe ser aleatorio, puesto que si siempre se siguiese un mismo
orden el entrenamiento estara viciado en favor del ltimo patrn del conjunto de
entrenamiento, cuya actualizacin, por ser la ltima, siempre predominara sobre las
anteriores. Adems, esta aleatoriedad presenta una importante ventaja, puesto que
puede permitir escapar de mnimos locales en determinadas ocasiones, por lo que
al final del proceso puede alcanzarse un mnimo ms profundo.

EL BP tiene como ventaja principal es que se puede aplicar a multitud de problemas


diferentes, proporcionando con frecuencia buenas soluciones con no demasiado
tiempo de desarrollo. No obstante, si se requiere una solucin realmente excelente,
habr que dedicar ms tiempo al desarrollo del sistema neuronal, teniendo en
cuenta diferentes cuestiones adicionales.
Como desventaja se encuentra, entre otras, su lentitud de convergencia, uno los
precios que hay que pagar por disponer de un mtodo general de ajuste funcional
que no requiere (en principio) informacin apriorstica.
Sin embargo, se debe tener cuenta que el BP no requiere tanto esfuerzo
computacional como el que sera necesario si se tratasen de obtener los pesos de la
red mediante la evaluacin directa de las derivadas; en ese sentido se ha
comparado el BP con la transformada rpida Fourier, que permite calcular la
transformada de Fourier con un muy inferior esfuerzo computac ional. Otro problema
del BP es que puede incurrir en el denominado sobreaprendizaje (o sobreajuste),
fenmeno directamente relacionado con la capacidad de generalizacin de la red a
partir de los ejemplos presentados. Por otra parte, debe tenerse en cuenta que el
algoritmo BP no garantiza alcanzar el mnimo global de la funcin error, slo un
mnimo local, por lo que el proceso de aprendizaje puede quedarse estancado en
uno de estos mnimos locales. 7 [12]

2.11. CAPACIDAD DE GENERALIZACIN DE LA RED

Uno de los aspectos fundamentales de los ANS es su capacidad de generalizar a


partir de ejemplos, lo que constituye el problema de la memorizacin frente a
generalizacin. Por generalizacin se entiende la capacidad de la red de dar una
respuesta correcta ante patrones que no han sido empleados en su entrenamiento.
Una red neuronal correctamente entrenada generalizar, lo que significa que ha
7

Mas informacin sobre pequeas variaciones al algoritmo de backpropagation en la direccin


http://www.iti.upv.es/~fcn/students/rna/Index.html

aprendido adecuadamente el mapping no slo los ejemplos concretos presentados,


por lo que responder correctamente ante patrones nunca vistos con anterioridad.
[12]
2.11.1. VALIDACIN CRUZADA (CROSS-VALIDATION)
En un proceso de entrenamiento se debe considerar, por una parte, un error de
aprendizaje, que se suele calcular como el error cuadrtico medio de los resultados
proporcionados por la red para el conjunto de patrones de aprendizaje. Con una red
suficientemente grande, puede reducirse tanto como se quiera slo con llevar a
cabo ms iteraciones. Por otra parte, existe un error de generalizacin, que se
puede medir empleando un conjunto representativo de patrones diferentes a los
utilizados en el entrenamiento. De esta manera, podemos entrenar una red neuronal
haciendo uso de un conjunto de aprendizaje, y comprobar su eficiencia real, o error
de generalizacin, mediante un conjunto de test.
Un hecho experimental, fcilmente observable con cualquier simulador, es que si se
entrena una red hasta alcanzar un muy pequeo error en aprendizaje (por ejemplo,
inferior a un 1%), la eficacia real del sistema o generalizacin (medido como error en
test) se degrada.
Si representamos a la vez el error en aprendizaje y el error en test durante el
transcurso del aprendizaje, se obtiene una grfica como la representada en la
Figura 2.17 (izquierda): tras una fase inicial, en la que pueden aparecer oscilaciones
en el valor del error, el de aprendizaje tiende a disminuir montonamente, mientras
que el error de generalizacin a partir de cierto punto comienza a incrementarse, lo
que indica una degradacin progresiva del aprendizaje.

Figura 2.17: Evolucin del error de aprendizaje y del error de generalizacin. A la


izquierda, situacin idealizada, a la derecha situacin real
La explicacin de este fenmeno es la siguiente. Al principio la red se adapta
progresivamente al conjunto de aprendizaje, acomodndose al problema y
mejorando la generalizacin. Sin embargo, en un momento dado el sistema se
ajusta demasiado a las particularidades de los patrones empleados en el
entrenamiento, aprendiendo incluso el ruido en ellos presente, por lo que crece el
error que comete ante patrones diferentes a los empleados en el entrenamiento
(error de generalizacin). En este momento la red no ajusta correctamente el
mapping, sino que simplemente est memorizando los patrones del conjunto de
aprendizaje, lo que tcnicamente se denomina sobreaprendizaje o sobreajuste
(overtraning o overfitting), pues la red est aprendiendo demasiado (incluso el ruido
presente en los patrones-ejemplo). Idealmente, dada una arquitectura de red
neuronal, sta debera entrenarse hasta un Punto ptimo (Figura 2.17, izquierda) en
el que el error de generalizacin es mnimo. El procedimiento consistente en
entrenar y validar a la vez para detenerse en el punto optimo se denomina
validacin cruzada (cross validation), y es ampliamente utilizado en la fase de
desarrollo de una red neurona! supervisada (como el MLP).
No obstante, la situacin descrita ha sido en cierta medida idealizada; una situacin
ms realista sera la de la parte derecha de la Figura 2.17: en realidad pueden
presentarse varios mnimos para el conjunto de test, debiendo detener el
aprendizaje en el punto ptimo de mnimo error de generalizacin, y no quedarnos
en el primer mnimo en test que aparezca.

Muchas veces basta con dejar que el aprendizaje discurra hasta una cota razonable
de error (0.5%, 0.1%, 0.01%..., depende el problema), guardando peridicamente
las distintas configuraciones intermedias de pesos para luego quedarnos con la que
proporcion un error en test mnimo.
La clave de este asunto est en que las redes neuronales son estimadores no
lineales poderosos, capaces de modelar situaciones muy complejas. En las
herramientas lineales (por ejemplo, en ajuste mediante polinomios) la complejidad
del modelo viene dada simplemente por el nmero de parmetros libres a ajustar
(coeficientes), mientras que en los sistemas no lineales (como son las redes
neuronales), la complejidad del modelo depende tanto del nmero de parmetros
como de su valor actual. Los modelos que implementan las redes neuronales son de
elevada complejidad, por lo que pueden aprender (memorizar) casi cualquier cosa,
motivo por el cual incurren fcilmente en sobreaprendizaje.
Cuando se entrena una red unidireccional supervisada debe tenerse muy en cuenta
el tema del sobreaprendizaje, y la tcnica de validacin cruzada suele ser un buen
remedio (aunque, como se vera a continuacin, no es el nico disponible);
usualmente, de todo el conjunto de entrenamiento se emplea aproximadamente un
80% de los patrones para entrenar, reservndose un 20% como conjunto de test.
[12]

2.11.2. NMERO DE EJEMPLOS DE ENTRENAMIENTO


En definitiva, la capacidad de generalizacin de la red la determinan en buena
medida las siguientes tres circunstancias: 1) la arquitectura de la red, 2) el nmero
de ejemplos de entrenamiento y 3) la complejidad del problema. Los tres puntos
estn muy relacionados; en trminos generales, cuanto ms complejo sea el
problema a modelar ms grande deber ser la red (con ms parmetros a ajustar) y,
por lo tanto, ms ejemplos se necesitarn para entrenarla (ejemplos que debern
cubrir todo el espacio de entrada, contemplando todas las situaciones posibles).

A menudo el nmero de patrones -ejemplo disponibles es limitado (y reducido), y en


proporcin el nmero de parmetros efectivos de la red elegida (grados de libertad)
suele ser muy grande. As, si se quiere que la red alcance un error de
generalizacin de, por ejemplo,

? = 0.1 (un 10%), el nmero de patrones de

aprendizaje necesarios p ser del orden de p = 10w, expresin que se suele dar
como indicativa del nmero aproximado de patrones que sern necesarios para
entrenar adecuadamente una red neurona! de w pesos.

Por ejemplo para una red 10-5-1 (10 neuronas de entrada, 5 ocultas y 1 de salida.),
que dispone de 61 parmetros, entre pesos y umbrales, el nmero de patrones
necesarios para alcanzar un error de! 10% ser de unos 610, lo que representa una
cifra de patrones muy alta, no disponible en muchas aplicaciones prcticas. Ello
ilustra de nuevo la facilidad de incurrir en sobreaprendizaje al entrenar una red
neuronal.

2.11.3. REDUCCIN DEL TAMAO DE LA ARQUITECTURA DE UNA RED

Adems, hay que tener presente la llamada maldicin de la dimensionalidad (curse


of dimensionality) que consiste en que el nmero de datos necesarios para
especificar un mapping, en general crece exponencialmente con la dimensin del
espacio de entrada, lo que agrava en los problemas de dimensin de entrada
elevada es el de disponer de un nmero de patrones para el aprendizaje escaso.
Disminuyendo el nmero de parmetros de la red (tamao) se tendr una relacin p
= w/? ms favorable. Una forma de reducirlo consiste en limitar el nmero de las
entradas de la red, pues ello implica la disminucin drstica del nmero de pesos.
Por ejemplo, una red con 200 entradas, 100 neuronas ocultas y 3 salidas, contendr
del orden de 20.000 pesos, con lo que se necesitaran unos 200.000 patrones para
entrenarla adecuadamente. Si reducimos el nmero de entradas a 10 (por ejemplo,
realizando un anlisis de componentes principales a las variables de entrada,

empleando ratios, etc.), el nmero de pesos se reduce a 143, con lo que se


precisaran nicamente unos 1400 patrones de aprendizaje.
Otras tcnicas empleadas en la reduccin del nmero de parmetros de la red se
relacionan con eliminar algunos de sus pesos; algunas bien conocidas son las de
compartir pesos (weight sharing), podado de la red (pruning) o decaimiento de
pesos (weight decay).

En la primera de las citadas, diversas neuronas comparten sus pesos, de modo que
el nmero total disminuye. En el proceso de podado la red es entrenada hasta un
cierto nivel, para luego eliminar aquellos pesos que no aportan prcticamente nada
a su operacin. El decaimiento es un caso especial del podado; durante el
aprendizaje se deja a los pesos tender poco a poco a cero, para que aquellos que
no sean actualizados peridicamente, se anulen y desaparezcan. [12]

3. MATLAB TOOLBOX

3.1. INTRODUCCIN
El objetivo de este captulo es explicar el uso del toolbox de matlab para entrenar
redes neuronales con el algoritmo backpropagation de tipo feedforward, para
resolver problemas especficos. Generalmente se tienen cuatro pasos en el proceso
de dicho entrenamiento:
1.
2.
3.
4.

Configurar los datos de entrenamiento


Crear la red
Entrenar la red
Simular la respuesta de la red con nuevas entradas

Este captulo se muestran varias de las funciones de entrenamiento, y para cada


funcin se deben seguir estos cuatro pasos.

3.2. BACKPROPAGATION

La arquitectura de la red que normalmente es la ms usada con el algoritmo del


backpropagation es feedforward de mltiples capas (multilayer).
Una neurona elemental con R entradas se muestra en el grafico 3.1. Cada entrada
es pesada con su w correspondiente. La suma de las entradas y sus pesos forman
la entrada de a la funcin de transferencia f. las Neuronas pueden usar diferentes
funciones de transferencia f para generar una salida.

Figura 3.1
En una red de mltiples capas (multilayer) a menudo se usa el log-sigmoid o funcin
de transferencia logartmica (Figura 3.2).

Figura 3.2
La funcin logartmica genera salidas entre 0 y 1 y la entrada de la neurona puede
ir desde infinitamente negativo a infinitamente positivo.
Alternativamente, las redes multicapa pueden usar el tan-sigmoid o funcin de
transferencia tangencial. (Figura 3.3)

Figura 3.3
De vez en cuando, el purelin o funcin de traslado lineal se usa en redes
backpropagation. (Figura 3.4)

Figura 3.4
Si la ltima capa de una red multicapa tiene neuronas sigmoideas

(-sigmoid),

entonces se escalan las salidas de la red en un rango pequeo. Si se usan


neuronas de salida lineal, las salidas de la red pueden tomar cualquier valor.
En backpropagation es importante poder calcular el derivado de cualquier funcin de
transferencia utilizada. Cada una de las funciones anteriores, tangencial,
logartmica, y purelin, tienen una funcin derivativa que les corresponde: dtansig,
dlogsig, y dpurelin. Para obtener el nombre de la funcin derivativa asociada a cada
funcin de transferencia se debe llamar la funcin de transferencia y la funcin de
matlab 'deriv'.
Ejemplo:

tansig('deriv')

ans = dtansig

Las tres funciones de transferencia descritas anteriormente son las usadas


normalmente para backpropagation, pero pueden crearse otras funciones diferentes
y usarse con backpropagation si as se desea.

3.3. RED FEEDFORWARD

Una red neuronal de una capa con S neuronas logsig y con R entradas se muestra
en la figura 3.5, se encuentra de forma general en el lado izquierdo y en el lado
derecho un diagrama especifico de la capa.

Figura 3.5

Una red Feedforward a menudo tiene una o ms capas ocultas de neuronas de tipo
sigmoideas, seguidas por una capa de salida lineal. Las capas mltiples de
neuronas con funciones de transferencia no lineal permiten a la red aprender
relaciones lineales y no lineales entre la entrada y la salida. La capa del de salida
lineal permite a la red producir el umbral fuera del rango entre -1 y +1.

Por otro lado, si se quiere reprimir las salidas de una red (entre 0 y 1), entonces la
capa de salida debe usar una funcin de transferencia sigmoidea (como logsig).
Para las redes de mltiples capas se acostumbra que el nmero de las capas
determine el exponente en la matriz de pesos.

Figura 3.6
Esta red puede usarse como un aproximador de una funcin en general. Puede
aproximar

cualquier

funcin

con

un

nmero

finito

de

discontinuidades

arbitrariamente bien, con la cantidad adecuada de neuronas en la capa oculta.

3.4. CREANDO UNA RED (newff)

El primer paso de entrenamiento de una red feedforward es crear la red. La funcin


newff

crea una red feedforward. Esta funcin requiere cuatro parmetros de

entrada. La primera es un R que consta de una matriz del mnimo y mximo valor
para cada uno de los elementos de R en el vector de entrada. La segunda entrada
es un arreglo que contiene los tamaos de cada capa (la cantidad de neuronas por
capa). La tercera entrada es un arreglo que contiene los nombres de las funciones
de entrenamiento que sern usadas en cada capa. La ltima contiene el nombre de
la funcin de entrenamiento que se usara.
Por ejemplo, lo siguiente crea una red de la dos capas. Hay un vector de la entrada
con dos elementos. Los valores para el primer elemento del vector de entrada son 1 y 2, los valores del segundo elemento del vector de entrada son 0 y 5. Hay tres
neuronas en la primera capa y una neurona en la segunda capa (capa de salida).
La funcin de transferencia en la primera capa es tan-sigmoid, y en la capa de

salida la funcin de transferencia es lineal. La funcin de entrenamiento es traingd


(qu se describir mas adelante).

net=newff([-1 2; 0 5],[3,1],{'tansig','purelin'},'traingd');

Esta orden crea la red y tambin inicializa los pesos y el umbral de la red; por
consiguiente la red est lista para ser entrenada.

Inicializando pesos (init). Antes de entrenar una red feedforward, los pesos y el
umbral debe inicializarse. El mtodo newff inicializar los pesos automticamente,
pero si se quieren reinicializar, esto puede hacerse con init. Esta funcin toma una
red como entrada y reestablece

todos los pesos y el umbral e la red. As es

inicializa una red (o reinicializada):

net = init(net);

3.5. SIMULACIN (sim)

La funcin sim simula una red. sim toma la entrada de la red p, y la red como tal, y
esta retorna las salidas de la red. As se puede simular la red que se creo
anteriormente para un solo vector de la entrada:

p = [1;2];

a = sim(net,p)

a = -0.1011

(Si prueba estos datos, su resultado puede ser diferente, dependiendo del estado
del generador de nmeros aleatorios que tenga cuando la red fue inicializada.).

3.6. ENTRENAMIENTO

Una vez se han inicializado los pesos de la red y los el umbral, la red est lista para
ser entrenada. La red puede entrenarse para: la aproximacin de una funcin
(regresin no lineal), la asociacin del modelo, o la clasificacin del modelo. El
proceso de entrenamiento requiere de los patrones de conducta apropiados para la
red, las entradas de la red p y las salidas en blanco t. Durante el entrenamiento los
pesos y el umbral de la red son iterativamente ajustados para minimizar la funcin
de desempeo de la red net.performFcn. La funcin de desempeo predefinida
para las redes feedforward es mse,

el promedio cuadrado del error entre los

rendimientos de la red y los rendimientos designados t.

Todos los algoritmos usan la funcin de desempeo para determinar cmo ajustar
los pesos y minimizar performance.
Hay dos maneras diferentes en las que este algoritmo de descenso de gradiente
puede llevarse a cabo: modo incremental y modo del lote. En el modo de
incremental, el gradiente se computa y los pesos se actualizan despus de cada
entrada que se aplica a la red. En el modo del lote todas las entradas se aplican a la
red antes que los pesos se actualicen. A continuacin se describe el modo de
entrenamiento por lote.
3.6.1. ENTRENAMIENTO POR LOTE (train)
En modo por lote se actualizan slo los pesos y el umbral de la red despus que el
juego de entrenamiento entero se ha aplicado a la red. Se suman los gradientes
calculados en cada ejemplo de entrenamiento para determinar el cambio en los
pesos y el umbral.

3.6.2. ENTRENAMIENTO POR INCREMENTAL (traingd)


El entrenamiento de disminucin de gradiente o por pasos se ejecuta con la funcin
traingd. En la que se actualizan los pesos y el umbral en direccin negativa del
gradiente de la funcin de desempeo . Si se quiere entrenar una red que use
incremental por pasos de lote, se debe anteponer trainFcn al traingd, y entonces
llama al entrenamiento de la funcin.
Hay siete parmetros de entrenamiento asociados con traingd: epochs, show , goal,
time, min_grad, max_fail, y lr. El lr da la proporcin de aprendizaje se obtiene
multiplicando tiempos por negativo de el gradiente para determinar los cambios a
los pesos y el umbral. Si la proporcin de aprendizaje se hace demasiado grande, el
algoritmo se vuelve inestable. Si la proporcin de aprendizaje se fija demasiado
pequea, el algoritmo toma un largo tiempo para converger.
El estado de entrenamiento se muestra para cada iteracin. (Si show se inicializa
NaN, entonces el estado de entrenamiento nunca se muestra.) Los otros parmetros
determinan cuando para el entrenamiento. El entrenamiento se detiene si el nmero
de iteraciones excede epochs, si los decrementos de la funcin de desempeo
estn por debajo de goal, si la magnitud de el gradiente est en menos del mingrad,
o si el tiempo de entrenamiento es ms largo que time. Y max_fail que es asociado
con la tcnica de detencin temprana.
El siguiente cdigo crea un entrenamiento de entradas p y objetivos t. se entrenara
por lotes, todos los vectores de la entrada se ponen en una matriz.

p = [-1 -1 2 2;0 5 0 5];

t = [-1 -1 1 1];

Luego, se crea la red feedforward.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'traingd');

Si se quiere modificar algunos de los parmetros de entrenamiento predefinidos se


hace as.

net.trainParam.show = 50;

net.trainParam.lr = 0.05;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

Si se quiere usar los parmetros de entrenamiento predefinidos,

las rdenes

anteriores no son necesarias.


Ahora entrenar la red.

[net,tr]=train(net,p,t);

traingd, Performance goal met.

Los entrenamientos graban el tr que contiene la informacin sobre el progreso de


entrenamiento

Ahora la red especializada puede simularse para obtener su respuesta a las


entradas en el entrenamiento.

a = sim(net,p)

3.6.3. DESCENSO DE GRADIENTE POR LOTES CON MOMENTUMN (traingdm).

Adems del traingd, hay otro algoritmo de descenso de gradiente de lotes para
redes feedforward que proporciona una convergencia ms rpida, el traingdm, que
incluye un descenso con velocidad adquirida. el momentumn permite que la red no
slo responda a el gradiente local sino tambin a las tendencias del error. Actuando
como un filtro del bajo-paso, el momentumn permite a la red ignorar rasgos

pequeos en el error. Sin el momentumn una red puede estancarse en un mnimo


local poco profundo.
El momentumn puede agregarse al aprendizaje del backpropagation haciendo
cambios de peso iguales a la suma de un fragmento del ltimo cambio de peso y el
nuevo cambio sugerido por la regla del backpropagation. La magnitud del efecto
que el ltimo cambio de peso se permite tener es mediada por una constante de
velocidad adquirida, mc que puede ser cualquier nmero entre 0 y 1. Cuando la
constante de momentumn es 0, un el cambio de peso es solamente basado en el
gradiente. Cuando la constante de momentumn es 1, el nuevo cambio de peso se
pone para igualar el ltimo cambio de peso y el gradiente simplemente se ignora. El
gradiente es computada sumando los gradientes calculadas a cada dato de
entrenamiento y slo se actualizan los pesos y el umbral despus de todos los datos
del entrenamiento que se ha presentado.
Si la nueva funcin de desempeo en una iteracin dada excede la funcin de
desempeo en una iteracin anterior por ms de un max_perf_inc de proporcin de
predefinida (tpicamente 1.04), se desechan los nuevos pesos, el umbral, y el mc
coeficiente de momentumn se pone en cero.
La forma de entrenamiento de descenso de gradiente con momentumn se invoca
con la funcin traingdm. Esta funcin usa los mismos pasos mostrados que el
traingd slo que el mc, lr y max_perf_inc aprenden todos parmetros.

En el cdigo siguiente se utilizara la red creada anteriormente pero ser entrenada


con la funcin traingd. Los parmetros sern iguales con la inclusin del mc factor
de momentumn y el mximo perfonmance aumento max_perf_inc. (Los parmetros
de entrenamiento se restablecen a los valores predefinidos siempre que net.trainFcn
se ponga al traingdm.).

net=newff(minmax(p),[3,1],{'tansig','purelin'},'traingdm');

net.trainParam.show = 50;

net.trainParam.lr = 0.05;

net.trainParam.mc = 0.9;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

a=

-1.0026 -1.0044

0.9969

0.9992

3.7. ENTRENAMIENTO RPIDO

Los dos algoritmos de entrenamiento backpropagation: descenso de gradiente, y


descenso de gradiente con velocidad adquirida. Son mtodos son lentos y para
resolver problemas prcticos. Existen algoritmos que pueden converger de diez a
cien veces ms rpidamente que estos.
Estos algoritmos ms rpidos entran en dos categoras principales. La primera
categora usa tcnicas heursticas que se desarrollaron de un anlisis para la
optimizacin del algoritmo de descenso de gradiente normal. Una de estas
modificaciones heursticas es la tcnica de velocidad adquirida. Dos de estas
tcnicas heursticas son: el de variable de taza de aprendizaje traingda; y el de
rezago trainrp.

3.7.1. TAZA DE APRENDIZAJE (traingda, traingdx)


Con el algoritmo de descenso normal, la proporcin de aprendizaje se mantiene
constante a lo largo del entrenamiento. La activacin del algoritmo es muy sensible
a la taza de aprendizaje. Si la esta se fija demasiado alta, el algoritmo puede oscilar
y volverse inestable. Si la taza de aprendizaje es demasiado pequea, el algoritmo
tardara en converger. No es prctico determinar el valor ptimo para la taza de
aprendizaje antes de entrenar. El rendimiento del algoritmo de descenso puede

mejorarse si se permite que la taza de aprendizaje pueda cambiar durante el


proceso de entrenamiento.
Adems requiere algunos cambios en el procedimiento de entrenamiento usado por
traingd. Primero, se calculan el rendimiento de la red inicial y el error. A cada epochs
se le calculan nuevos pesos, el umbral usando y la taza aprendizaje actual. Se
calculan las nuevas salidas y los errores.

Como con velocidad adquirida, si el nuevo error excede el error viejo por ms de un
max_perf_inc predefinido (tpicamente 1.04), se desechan los nuevos pesos y el
umbral. Adems, la proporcin de aprendizaje se disminuye (tpicamente
multiplicando por lr_dec = 0.7). Por otra parte, se guardan los nuevos pesos, etc. Si
el nuevo error es menor del error anterior, la taza de aprendizaje se aumenta
(tpicamente multiplicando por lr_inc = 1.05).
Este procedimiento aumenta la taza de aprendizaje, pero slo a la magnitud que la
red puede aprender sin aumentos grandes de error. As, se obtiene una taza de
aprendizaje aproximada a la ptima. Cuando la taza de aprendizaje es muy alta el
aprendizaje es estable, la taza de aprendizaje se aumenta. Para garantizar una
disminucin en el error.
El entrenamiento con taza de aprendizaje adaptable se ejecuta con la funcin
traingda, se invoca como el traingd, salvo el max_perf_inc, lr_dec, y lr_inc se deben
incluir en los parmetros as.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'traingda');

net.trainParam.show = 50;

net.trainParam.lr = 0.05;

net.trainParam.lr_inc = 1.05;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

La funcin traingdx combina taza de aprendizaje adaptable con el entrenamiento de


velocidad adquirida. Se invoca de la misma manera como traingda, slo que tiene el
mc de coeficiente de momentumn como un parmetro de entrenamiento adicional.
3.7.2. REZAGO (TRAINRP)
En las redes multicapa se usan funciones de transferencia sigmoideas en la capa
oculta. Estas funciones comprimen un rango de la entrada infinito en uno finito. Las
funciones sigmoideas son caracterizadas por que tienden a acercarse a ceros
cuando la entrada es ms grande. Esto es un problema cuando se usan algoritmos
de descenso para entrenar una red multicapa con funciones sigmoideas, por que el
gradiente puede tener una magnitud muy pequea y por consiguiente, causar
cambios pequeos en los pesos y el umbral, aunque los pesos y el umbral estn
lejos de sus valores ptimos.
El propsito del algoritmo de entrenamiento de rezago (Rprop) es eliminar los
efectos de las magnitudes de los derivados parciales. La seal del derivado se usa
para determinar la direccin de la actualizacin del peso; la magnitud del derivado
no tiene efecto en la actualizacin del peso. El tamao del cambio de peso es
determinado por un valor de actualizacin aparte. El valor de actualizacin para
cada peso y el umbral es aumentado por un factor delt_inc siempre que el derivado
de la funcin de desempeo con respecto a ese peso tenga la misma seal para
dos iteraciones sucesivas. El valor de actualizacin es disminuido por un factor
delt_dec siempre que el derivado con respeto que el peso cambie la seal de la
iteracin anterior.

Si el derivado es cero, entonces los restos de valor de

actualizacin son los

mismos.

Siempre que los pesos estn oscilando que el

cambio de peso se reducir. Si el peso contina cambiando en la misma direccin


para varias iteraciones, entonces la magnitud del cambio de peso se aumentar.
Los parmetros de entrenamiento para el trainrp son epochs, show, goal, time,
min_grad, max_fail, delt_inc, delt_dec, delta0, deltamax. Los ltimos dos son el

tamao del paso inicial y el mximo tamao, respectivamente. El algoritmo Rprop


generalmente converge ms rpido que los algoritmos anteriores.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainrp');

Rprop generalmente es ms rpido que el algoritmo de descenso normal. Tambin


requiere slo un espacio modesto en memoria.

3.8. ALGORITMOS DE GRADIENTE CONJUGADO

El algoritmo del backpropagation bsico ajusta los pesos en la direccin de


descenso (negativo del gradiente). sta es la direccin en la que la funcin de
desempeo disminuye rpidamente. Aunque la funcin disminuya rpidamente a lo
largo del negativo del gradiente, esto necesariamente no produce una convergencia
ms rpida. En los algoritmos de gradiente conjugado una bsqueda se realiza a lo
largo de direcciones conjugadas que producen generalmente una convergencia ms
rpida que las direcciones de descenso.
En la mayora de los algoritmos de gradiente conjugado, el tamao del paso se
ajusta en cada iteracin. Una bsqueda se hace a lo largo de la direccin de
gradiente conjugado para determinar el tamao del paso que minimiza la funcin de
desempeo. Hay cinco funciones de la bsqueda diferentes incluidas en el toolbox y
cuatro variaciones diferentes de algoritmos de este tipo.

3.8.1. ACTUALIZACIN DE FLETCHER-REEVES (traincgf)


Todos los algoritmos de gradiente conjugado empiezan investigando en la direccin
de descenso (negativo de gradiente) en la primera iteracin.

Se realiza una bsqueda de la lnea para determinar la distancia ptima para


determinar la direccin de la bsqueda actual entonces:

Entonces la prxima direccin de bsqueda es determinada para que sea conjugada


a las direcciones de la bsqueda anteriores. El procedimiento determina la nueva
direccin de la bsqueda al combinar la nueva direccin de descenso con la
direccin de la bsqueda anterior:

Las diferentes versiones de gradiente conjugado son distinguidas por la manera en


la que la constante

se computa. Para el Fletcher-Reeves el procedimiento es:

En el siguiente cdigo se incluyen los parmetros de entrenamiento para el traincgf


son epochs, epochs, show, goal, time, min_grad, max_fail, srchFcn, scal_tol, alfa,
beta, delta, gama, low_lim, up_lim, maxstep, minstep, bmax.. El parmetro srchFcn
es el nombre de la funcin de bsqueda lineal. Puede ser cualquiera de las
funciones que existen (o una funcin usuario). Los parmetros restantes son
asociados con rutinas de bsqueda lineal especficas. La bsqueda lineal
predefinida el srchcha se usa en este ejemplo. El traincgf generalmente converge en
menos iteraciones que el trainrp (aunque hay ms cmputo requerido en cada
iteracin).

net=newff(minm ax(p),[3,1],{'tansig','purelin'},'traincgf');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

3.8.2. ACTUALIZACIN DE POLAK-RIBIRE (traincgp)


Otra versin del algoritmo de pendiente conjugado fue propuesta por Polak y
Ribire. Como con el algoritmo de Fletcher-Reeves, la direccin de la bsqueda a
cada iteracin es determinada por:

Para Polak-Ribire la constante

se calcula con:

En el siguiente cdigo, se tomara el mismo ejemplo anterior y se entrenara con


versin del algoritmo de Polak-Ribire. Los parmetros de entrenamiento para el
traincgp son iguales que para el traincgf. La bsqueda lineal predefinida el srchcha
se usa en este ejemplo. Los parmetros show y epochs tienen a los mismos valores.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'traincgp');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

3.8.3. RESTABLECIMIENTO DE POWELL-BEALE (traincgb)


Para todos los algoritmos de gradiente conjugado, la direccin de la bsqueda se
restablecer peridicamente al negativo del gradiente. La norma de restablecer
ocurre cuando el nmero de iteraciones es igual al nmero de parmetros de la red
(pesos y el umbral), pero hay otros mtodos de restablecimiento que pueden
mejorar la eficacia de entrenamiento. Esto se prueba con la siguiente desigualdad:

Si esta condicin est satisfecha, la direccin de la bsqueda se restablece al


negativo de la pendiente.
En el siguiente cdigo, se crea nuevamente la red anterior y se entrena con la
versin del algoritmo de Powell-Beal. Los parmetros de entrenamiento para el
traincgb son los mismos que para el traincgf. La bsqueda lineal predefinida el
srchcha se usa en este ejemplo. Los parmetros show y epochs tienen los mismos
valores.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'traincgb');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);.

a = sim(net,p)

3.8.4. GRADIENTE CONJUGADO ESCALADO (TRAINSCG)


Hasta ahora cada uno de los algoritmos de gradiente conjugado requiere una
bsqueda lineal en cada iteracin.

Esta bsqueda lineal requiere un alto nivel

computacional, ya que requiere que la respuesta de la red a todas las entradas de

entrenamiento sea computada en varios tiempos por cada bsqueda. El algoritmo


de gradiente conjugado escalado (SCG) fue diseado para evitar la bsqueda lineal.
Este algoritmo es demasiado complejo para explicar en unas lneas, pero la idea
bsica es combinar el la aproximacin de regin de modelo-confianza con el
gradiente conjugado.
En el siguiente cdigo, se crea nuevamente la red anterior pero ahora utilizando el
algoritmo de entrenamiento de gradiente escalado.

Los parmetros de

entrenamiento para el trainscg son epochs, epochs, show, goal, time, min_grad,
max_fail, sigma, lambda. El parmetro sigma determina el cambio en el peso para la
segunda aproximacin derivativa. El parmetro lambda regula la indecisin. Los
parmetros show y epchs son 10 y 300, respectivamente.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainscg');

net.trainParam.show = 10;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);.

a = sim(net,p)

3.9. RUTINAS DE BSQUEDA LINEAL

Algunos de los algoritmos de entrenamiento de gradiente conjugado y cuasi-Newton


requieren una bsqueda lineal. Toolbox ofrece cinco bsquedas lineales diferentes
que se puede usar con el parmetro srchFcn de la funcin entrenamiento y dando a
este el valor de la funcin de bsqueda deseada.

3.9.1. BSQUEDA DE SECCIN DORADA (srchgol)


La bsqueda de seccin dorada srchgol, es una bsqueda lineal que no requiere el
clculo de la pendiente. Esta rutina empieza localizando un intervalo en el que el
mnimo de la activacin ocurre. Esto se hace evaluando la activacin a una sucesin
de puntos, empezando a una distancia de delta y doblando en esta distancia cada
paso, a lo largo de la direccin de la bsqueda. Cuando la activacin aumenta entre
dos iteraciones sucesivas, un mnimo se une. El prximo paso es reducir el tamao
del intervalo que contiene el mnimo. Se localizan dos nuevos puntos dentro del
intervalo inicial. Los valores de la activacin a estos dos puntos determinan una
seccin del intervalo que puede desecharse y un nuevo punto interior se pone
dentro del nuevo intervalo. Este procedimiento es seguido hasta que el intervalo de
incertidumbre se reduzca al tamao que es igual al delta/scale_tol.

3.9.2. BSQUEDA DE BRENT (srchbre)

La bsqueda de Brent es una bsqueda lineal y una combinacin hbrida de la


bsqueda de la seccin dorada y una interpolacin cuadrtica. Los mtodos de
comparacin de funcin, como la bsqueda de la seccin dorada, tienen una
proporcin del primer orden de convergencia, mientras los mtodos como el de
interpolacin polinmica tienen una proporcin que es ms rpida que la sper
lineal.

Por otro lado, la proporcin de convergencia para las salidas de bsqueda

de seccin doradas cuando el algoritmo se inicializa es considerando que la


conducta proporcional para los mtodos de la interpolacin polinmica puede tomar
muchas iteraciones para soluc ionarse. La bsqueda de Brent intenta combinar los
mejores atributos de ambos acercamientos.
Para la bsqueda de Brent se empieza con el mismo intervalo de incertidumbre que
se uso con la bsqueda de la seccin dorada, pero algunos puntos adicionales se
computan. Una funcin cuadrtica se ajusta entonces a estos puntos y el mnimo
de la funcin cuadrtica se computa.

Si este mnimo est dentro del intervalo

apropiado de incertidumbre, se usa en la prxima fase de la bsqueda y una nueva


aproximacin cuadrtica se realiza. Si las cadas mnimas estn fuera del intervalo
conocido de incertidumbre, entonces un paso de la bsqueda de la seccin dorada
se realizara.

3.9.3. BSQUEDA BISECCIN-CBICA HBRIDA (srchhyb)

La bsqueda de Brent, srchhyb son un algoritmo hbrido. Es una combinacin de


biseccin y la interpolacin cbica. Para el algoritmo de la biseccin, un punto se
localiza en el intervalo de incertidumbre, la activacin y su derivado se computan.
Basados en esta informacin, la mitad del intervalo de incertidumbre se desecha. En
el algoritmo hbrido, una interpolacin cbica de la funcin es obtenida usando el
valor de la activacin y su derivado a los dos puntos del extremo. Si el mnimo de la
interpolacin cbica cae dentro del intervalo conocido de incertidumbre, entonces se
usa para reducir el intervalo de incertidumbre. De lo contrario un paso del algoritmo
de biseccin se usa.

3.9.4. BSQUEDA DE CARAMBOLA (srchcha)

El mtodo de Carambola srchcha fue diseado para ser usado en combinacin con
un algoritmo de gradiente conjugado para el entrenamiento de red neuronal. Como
los dos mtodos anteriores, es una bsqueda hbrida. Usa una interpolacin cbica,
junto con un tipo de seccionamiento.

3.9.5. BACKTRACKING (srchbac)

La bsqueda backtracking srchbac se satisface mejor para usar con los algoritmos
de optimizacin cuasi-Newton.

Empieza con un multiplicador del paso de 1 y

entonces se reduce hasta un valor aceptable en la activacin. En el primer paso


usa el valor de activacin al punto actual y a un multiplicador del paso de 1.

Tambin usa el valor del derivado de activacin al punto actual, obtener una
aproximacin cuadrtica a la funcin de la activacin a lo largo de la direccin de la
bsqueda. El mnimo de la aproximacin cuadrtica se vuelve un punto ptimo
provisional (bajo ciertas condiciones) y la activacin se prueba. Si la activacin no
se reduce suficientemente, una interpolacin cbica se obtiene y el mnimo de la
interpolacin cbica se vuelve el nuevo punto ptimo provisional. Este proceso es
continuado hasta lograr reduccin suficiente en la activacin.

3.10. ALGORITMOS CUASI-NEWTON


3.10.1. ALGORITMO DE BFGS (trainbgf)
El mtodo de Newton es una alternativa a los mtodos de gradiente conjugado para
la optimizacin rpida. El paso bsico del mtodo de Newton es:

Donde

es la matriz de Hesianos de la segunda derivada del ndice de la

activacin, los valores actuales de los pesos y el umbral. El mtodo de Newton


converge a menudo ms rpidamente que los mtodos de gradiente conjugado.
Desgraciadamente, es complejo y requiere alta computabilidad. Hay una clase de
algoritmos que son basados en el mtodo de Newton, pero que no requiere el
clculo de la segunda derivada. stos se llaman cuasi-Newton (o secantes). Ellos
actualizan una matriz de Hesianos aproximada a cada iteracin del algoritmo. La
actualizacin se computa como una funcin de gradiente. El mtodo cuasi-Newton
ms exitoso en estudios publicados es el Broyden, Fletcher, Goldfarb, y Shanno
(BFGS) la actualizacin. Este algoritmo se logra con la funcin trainbfg.
Ahora en el ejemplo se reiniciara la red pero ahora entrenndola con el algoritmo
BFGS cuasi-Newton. Los parmetros de entrenamiento para el trainbfg sern igual
que aqullos para el traincgf. La bsqueda lineal predefinida es el srchbac. Los
parmetros show y epochs corresponden a 5 y 300, respectivamente.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainbfg');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

3.10.2. ALGORITMO SECANTE DE UN PASO (trainoss)


Desde que el algoritmo BFGS requiere ms almacenamiento y cmputo en cada
iteracin que los algoritmos de gradiente conjugado, surge la necesidad de una
aproximacin secante con almacenamiento ms pequeo y menos requisitos del
cmputo. El mtodo secante de un paso (OSS) es un esfuerzo cubrir el espacio
entre los algoritmos de gradiente conjugado y

los algoritmos cuasi-Newton

(secante). Este algoritmo no guarda la matriz de Hesianos completa; asume en


cada iteracin que el Hesiano anterior era la matriz de identidad. Esto tiene la
ventaja adicional que la nueva direccin de la bsqueda puede calcularse sin
computar el inverso de la matriz.
Nuevamente es creado nuestro habitual ejemplo reemplazando la red y
entrenndola mediante el algoritmo de secante de un paso. Los parmetros de
entrenamiento para el trainoss son iguales que para el traincgf. La bsqueda de la
lnea predefinida es srchbac. Los parmetros show y epochs son ajustados a 5 y
300, respectivamente.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainoss');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

3.10.3. LEVENBERG-MARQUARDT (trainlm)


Como los mtodos cuasi-Newton, el algoritmo de Levenberg-Marquardt fue
diseado para acercarse en segundo orden que entrena a gran velocidad sin tener
que computar la matriz de Hesianos. Cuando la funcin de la activacin tiene la
forma de una suma de cuadrados (como es tpico entrenando feedforward),
entonces la matriz de Hesianos puede aproximarse como:

Y el gradiente puede computarse como:

Donde

es la matriz de Jacobianos que contiene la derivada de los errores de la

red primero con respecto a los pesos y el umbral y


red.

es el vector de errores de la

La matriz de Jacobianos puede computarse a travs de backpropagation

normal que es mucho menos complejo de computar que la matriz de Hesianos.

El algoritmo de Levenberg-Marquardt hace esta aproximacin de la matriz de


Hesianos como la siguiente actualizacin Newton:

Cuando el escalar es cero, se comporta como el mtodo de Newton usando la


matriz de Hesianos aproximada. Cuando es alto, se comporta de descenso de
gradiente pero con un paso pequeo. El mtodo de Newton es ms rpido y ms
exacto cerca de un mnimo del error, as que el objetivo es cambiar hacia el mtodo
de Newton tan rpidamente como sea posible. As, se disminuye despus de cada
paso exitoso (reduccin en funcin de la activacin) y slo se aumenta en un paso

provisional. De esta manera, la funcin de desempeo se reducir siempre a cada


iteracin del algoritmo.
En el ejemplo se reinicia la red y se entrena usando el algoritmo de LevenbergMarquardt. Los parmetros de entrenamiento para trainlm son epochs, show, goal,
time, min_grad, max_fail, mu, mu_dec, mu_inc, mu_max, mem_reduc,. El parmetro
mu es el valor inicial de . Este valor es multiplicado por mu_dec siempre que la
funcin de desempeo se reduzca un paso. Es multiplicado por mu_inc siempre que
aumentara la funcin de desempeo en un paso. Si mu se vuelve mayor que el
mu_max, el algoritmo se detiene. El parmetro mem_reduc se usa para controlar la
cantidad de memoria usada por el algoritmo. Los parmetros show y epochs se
inicializan en 5 y 300, respectivamente.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainlm');

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

a = sim(net,p)

3.10.4. LEVENBERG-MARQUARDT DE MEMORIA REDUCIDA (trainlm)


El inconveniente principal del algoritmo de Levenberg-Marquardt es que requiere
hacer el almacenamiento de las matrices que con toda seguridad es bastante
grande. El tamao de la matriz de Jacobianos es

, donde Q es que el nmero

de juegos de entrenamiento y n es el nmero de pesos y el umbral en la red.


Resulta que esta matriz no tiene que ser computada y guarda en conjunto. Por
ejemplo, si se quiere dividir el Jacobiano en dos submatrices iguales que se pueden
computar como la matriz aproximada de Hesianos as:

El Hesiano aproximado puede ser computado sumando una serie de subterminos.


Una vez un subtermino se ha computado pueden aclararse las submatrices
correspondientes del Jacobiano.
Cuando se usa la funcin de entrenamiento trainlm, el parmetro mem_reduc se usa
para determinar cuntas filas del Jacobiano sern computadas en cada submatriz.
Si el mem_reduc toma el valor 1, entonces el Jacobiano lleno se computa y ninguna
reduccin de memoria se logra. Si el mem_reduc se pone a 2, entonces slo la
mitad del Jacobiano se computar. Esto ahorra es la mitad de la memoria usada por
el clculo del Jacobiano lleno.

3.11. REGULARIZACIN

El primer mtodo para mejorar la generalizacin se llama regularizacin. Donde se


va modificando la funcin de desempeo que normalmente se es la suma de
cuadrados de los errores de la red en entrenamiento.

3.11.1. FUNCIN DE DESEMPEO MODIFICADA


La funcin de desempeo tpica que se usa para entrenar las redes feedforward es
la suma de cuadrados de los errores de la red.

Es posible mejorar generalizacin si se modifica la funcin de desempeo


agregando un trmino que consiste en la suma de cuadrados de los pesos de la red
y el umbral.

Donde

es la proporcin de activacin, y

Usando esta funcin de desempeo causarn la red tenga pesos y umbrales ms


pequeos y esto obligar a que las salidas la red sea ms plana.
En el siguiente ejemplo se reinicializara la red y se volver a entrenar usando el
algoritmo de BFGS con la funcin de desempeo regularizada. La proporcin de
actuacin ser 0.5 y el peso igual a los errores cuadrados de los pesos. pesos
cuadrados malos.

net=newff(minmax(p),[3,1],{'tansig','purelin'},'trainbfg');

net.performFcn = 'msereg';

net.performParam.ratio = 0.5;

net.trainParam.show = 5;

net.trainParam.epochs = 300;

net.trainParam.goal = 1e-5;

[net,tr]=train(net,p,t);

El problema con regularizacin es que es difcil de determinar el valor ptimo por el


parmetro de proporcin de activacin. Si se hace este parmetro demasiado
grande, nosotros podemos conseguir ms aproximado. Si la proporcin es
demasiado pequea,

la red no encajar los datos de entrenamiento de forma

adecuada.

3.11.2. REGULARIZACIN AUTOMATIZADA (trainbr)

Es deseable determinar los parmetros de regularizacin ptimos en una moda


automatizada. Un acercamiento a este proceso Bayesiano de David MacKay. En

este armazn, los pesos y el umbral de la red se asumen como variables al azar con
distribuciones especifica. Los parmetros de regularizacin se relacionan a las
variaciones desconocidas y asociadas con estas distribuciones.

La regularizacin Bayesiana se hace con la funcin trainbr. El siguiente cdigo


muestra cmo se puede entrenar una 1-20-1 red que usa esta funcin para
aproximar.

p = [-1:.05:1];

t = sin(2*pi*p)+0.1*randn(size(p));

net=newff(minmax(p),[20,1],{'tansig','purelin'},'trainbr');

net.trainParam.show = 10;

net.trainParam.epochs = 50;

randn('seed',192736547);

net = init(net);

[net,tr]=train(net,p,t);

Un rasgo de este algoritmo proporciona una medida de cuntos parmetros de la


red (pesos y umbral) es usando eficazmente por esta. En este caso, la red
especializada final usa aproximadamente 12 parmetros (indicado por #Par) fuera
del total de 61 pesos y umbral en la red 1-20-1. Este nmero eficaz de parmetros
debe permanecer aproximadamente igual, no importa que tan grande sea el nmero
total de parmetros en la red. (Esto asume que la red ha estado especializada para
un nmero suficiente de iteraciones y asegura su convergencia.)
El algoritmo del trainbr generalmente trabaja mejor cuando se descascaran las
entradas de la red y objetivos para que ellos se escalen aproximadamente [-1,1].
se es el caso para el problema de la prueba que se ha usado. Si sus entradas y
objetivos no se escalan en este rango, se puede usar la funcin premnmx, o prestd.
La figura siguiente muestra la salida de la red especializada. Se ve que la respuesta
de la red esta muy cerca de la funcin seno subyacente (lnea punteada), y por
consiguiente, la red generalizar bien a las nuevas entradas.

Al usar trainbr, es importante dejar correr el algoritmo hasta el nmero justo de


parmetros que han convergido. Los entrenamientos se detienen con el mensaje
"Maximum MU reached.". Esto indica que el algoritmo ha convergido de verdad.
Tambin puede decirse que el algoritmo ha convergido si la suma cuadrada del
error (SSE) y la suma cuadrada de los pesos (SSW) son relativamente constantes
en varias iteraciones.

Figura 3.7

3.12. DETENCIN TEMPRANA

Otro mtodo para mejorar la generalizacin es el de detencin temprana. En esta


tcnica los datos disponibles

son divididos tres subconjuntos.

El primer

subconjunto es el entrenamiento puesto que se usa para computar el gradiente y


actualizar los pesos de la red y el umbral. El segundo subconjunto es el juego de
aprobacin. El error en el juego de aprobacin se supervisa durante el proceso de
entrenamiento. El error de aprobacin normalmente disminuir durante la fase inicial
de entrenamiento. Sin embargo, cuando la red empieza validar los datos, el error en
el juego de aprobacin empezar a subir tpicamente. Cuando el error de

aprobacin aumenta para un nmero especificado de iteraciones, el entrenamiento


se detiene y se vuelven los pesos y el umbral al mnimo del error de aprobacin.
Primero se crea un problema de una prueba simple. Para este entrenamiento
generando una ola de la funcin seno que oscila entre -1 a 1 con pasos de 0.05.

p = [-1:0.05:1];

t = sin(2*pi*p)+0.1*randn(size(p));

Luego se genera el juego de aprobacin. Las entradas van de -1 a 1, como en la


prueba puesta. Para hacer el problema ms realista, se agrega tambin una
sucesin del ruido diferente a la funcin seno subyacente.

val.P = [-0.975:.05:0.975];

val.T = sin(2*pi*v.P)+0.1*randn(size(v.P));

Para este ejemplo se usa la funcin de entrenamiento traingdx.

net=newff([-1 1],[20,1],{'tansig','purelin'},'traingdx');

net.trainParam.show = 25;

net.trainParam.epochs = 300;

net = init(net);

[net,tr]=train(net,p,t,[],[],val); 6

TRAINGDX, Validation stop.

La figura siguiente muestra un grfico de la respuesta de la red.

Figura 3.8

3.13. PREPROCESO Y POSTPROCESO

Puede hacerse una red neuronal ms eficaz si se realizan ciertos pasos en el


preprocesando las entradas y los objetivos de la red.

Min y Max (premnmx, postmnmx, tramnmx)

Antes de entrenar, es til escalar las entradas y objetivos para que siempre caigan
dentro de un rango especfico. La funcin premnmx puede usarse para escalar las
entradas y objetivos para que queden en el rango [-1,1]. El cdigo siguiente ilustra el
uso de esta funcin.

[pn,minp,maxp,tn,mint,maxt] = premnmx(p,t);
net=train(net,pn,tn);

Se dan las entradas y objetivos originales de la red en matrices p y t. pn y tn que


devuelven todos a caer en el intervalo [-1,1]. El minp de los vectores y maxp que

contienen el mnimo y el mximo valor de las entradas originales y los vectores, los
maxt que contienen el mnimo y el mximo valor de los objetivos originales.
Despus que la red ha estado especializada, estos vectores deben usarse para
transformar cualquier entrada futura que se aplica a la red. Ellos se vuelven una
parte de la red.
Si el premnmx se usa para escalar las entradas y objetivos, entonces la salida de la
red se entrenar para produc ir respuestas en el rango [-1,1]. Si se quiere convertir
estos resultados en las mismas unidades que se usaron para los objetivos
originales, entonces se debe usar el postmnmx. En el cdigo siguiente, simula la
red, y convierte las salidas de la red a las unidades originales.

an = sim(net,pn);

a = postmnmx(an,mint,maxt);

El rendimiento de la red corresponde al tn de los objetivos normalizados. El


rendimiento de la red in-normalizado est en las mismas unidades como los
objetivos originales t.

Siempre que la red especializada se use con nuevas entradas estas deben ser
preprocesadas con el mnimo y mximo que se computaron para el juego de
entrenamiento. Esto puede lograrse con el tramnmxo. En el cdigo siguiente, se
aplica un nuevo juego de entradas a la red que ya se ha entrenado.

pnewn = tramnmx(pnew,minp,maxp);

anewn = sim(net,pnewn);

anew = postmnmx(anewn,mint,maxt);

Normalizacin Estndar Dev.(prestd, poststd, trastd)

Otro procedimiento para las entradas y los objetivos de la red es la normalizacin,


la desviacin estndar y normal del juego de entrenamiento. Este procedimiento se

lleva a cabo con la funcin prestd. Normaliza las entradas y objetivos. El cdigo
siguiente ilustra el uso de prestd.

[pn,meanp,stdp,tn,meant,stdt] = prestd(p,t);

Se dan las entradas y objetivos de la red originales en matrices p y t. Las entradas


normalizadas y objetivos, pn y tn que tendrn ceros intermedios y la unidad de
desviacin normal. El meanp de los vectores y stdp que contienen las desviaciones
estndar y normales de las entradas originales, y los vectores significativos y los
stdt contienen los medios y las desviaciones normales de los objetivos originales.
Despus que la red ha estado especializada, estos vectores deben usarse para
transformar cualquier entrada futura que se aplica a la red.
En el siguiente cdigo se simula la red especializada en el cdigo anterior

convierte las salidas de la red atrs en las unidades originales.

an = sim(net,pn);

a = poststd(an,meant,stdt);

Las salidas de la red corresponden al tn de los objetivos normalizados. La salida de


la red in-normalizada est en las mismas unidades como los objetivos originales t.
Esto puede lograrse con el trastd. En el siguiente cdigo, se aplica un nuevo juego
de entradas a la red ya hemos entrenado.

pnewn = trastd(pnew,meanp,stdp);

anewn = sim(net,pnewn);

anew = poststd(anewn,meant,stdt);

4. REDES NEURONALES Y SERIES DE TIEMPO


4.1. REDES NEURONALES EN LA PREDICCION

En la actualidad, las Redes Neuronales Artificiales, se reconocen como una de las


herramientas matemticas de uso computacional que mejores resultados presenta a
la hora de modelar un problema, ya sea de aproximacin de funciones: como el
diagnostico y control de maquinaria, en el control del piloto automtico de un avin,
o en el control de un robot. En problemas de clasificacin: como el diagnostico
medico, reconocimiento de caracteres, deteccin de fraude o clasificacin de riesgo
crediticio. En el procesamiento de datos: como en el filtrado de ruido o en el
encriptamiento de informacin,
La prediccin de series de tiempo, es algo que ha ocupado mucho a investigadores
de distintas disciplinas debido al inters que producen, en parte debido a la alta nolinealidad de su comportamiento fluctuante y a veces caprichoso. Varios modelos
matemticos han sido diseados para el tratamiento de la prediccin en las series
de tiempo, el ms conocido es el Proceso Autorregresivo Integrado de Media Mvil
(ARIMA), comnmente conocido como la metodologa de Box-Jenkins (1976). Este
mtodo de prediccin, que se utiliza muy frecuentemente se fundamenta en el su
puesto implcito de la linealidad del sistema que generan la trayectoria de las
variables, mas informacin sobre este y otros modelos de prediccin pude ser
encontrada en el capitulo 1.

Sin embargo, las RNA han tenido aqu un xito que otras tcnicas no han logrado.
Diferentes modelos de redes neuronales han sido desarrollados para la prediccin
de mercados, algunos se enfocan en la prediccin del precio futuro de un valor o en
modelar la rentabilidad de una accin, otros son aplicados para reconocer ciertos
patrones de precios del mercado.

4.1.1. ALGUNOS TRABAJOS DE PREDICCIN CON REDES NEURONALES

En los ltimos aos se cuenta con muchos trabajos en la prediccin de series de


tiempo utilizando redes neuronales artificiales, de los cuales podemos mencionar los
siguientes:

Prediccin de acciones. Consiste en el desarrollo de una red neuronal capaz de


realizar la prediccin del precio de las acciones para un nmero dado de
compaas. Esta prediccin se realiza mediante redes alimentadas hacia
adelante, y el objetivo en este particular caso es predecir el siguiente valor en la
serie de tiempo: el prximo precio de la accin. 11

Prediccin de trfico vehicular. Se han utilizado redes neuronales recurrentes


para la prediccin a corto plazo del trfico en una carretera, a fin de prevenir
congestiones y tener un control del acceso a la autopista. Para esto se utilizan
datos estimados de otros das con propiedades similares; los mejores resultados
se obtuvieron con una red multi - recurrente, y se pudo comprobar que las redes
neuronales resolvieron este tipo de prediccin y obtuvieron mejores resultados
que los mtodos estadsticos convencionales. 12

Prediccin de Tornado. Basada en atributos obtenidos de un radar Doppler, el


cual observa diferentes fenmenos que a la larga llegan a producir tornados. Las
tormentas elctricas algunas veces llegan a producirlos, pero no siempre son
antecedente de ello. Una red neuronal alimentada hacia adelante es usada para
diagnosticar cuales fenmenos detectados por el radar llegarn a producir un
tornado. La red neuronal es diseada para la identificacin de tornados, con ese
fin, se desarrollaron procedimientos para determinar el tamao del conjunto de

11

Se puede encontrar ms informacin en un trabajo enfocado a la prediccin financiera.


UNIVERSIDAD DE VIGO. Negative Feedback Network For Financial Prediction (pdf), Marzo de
2004, http://ann7.ei.uvigo.es/~fdiaz/doc/1999sci-isas.pdf.
12
Un interesante modelo para la prediccin del trfico. TAO, Yang, A Neural Network Model for
Traffic Prediction in the Presence of Incidents via Data Fusion, Universidad de Wisconsin, Julio de
2004, http://homepages.cae.wisc.edu/~yang/incident%20impact_final.pdf.

entrenamiento y el nmero de nodos ocultos necesarios para el funcionamiento


ptimo. Se mostr que la red neuronal encontrada de este modo supera un
algoritmo basado en reglas.13

4.2. DESARROLLO DE LA INVESTIGACION


Utilizando un mtodo de pronstico no tradicional, como las redes neuronales, se
intentara establecer mediante resultados comparativos la efectividad de la
prediccin para una serie de tiempo de tipo comn.
La serie elegida es el consumo mensual de ACPM, los datos de esta serie fueron
tomados desde el mes de enero de 1998 hasta el mes diciembre de 2003. 72 datos
en total. Estos datos fueron actualizados en marzo 19 de 2004 por personal del
departamento de planeacin nacional. El consumo de ACPM presenta variaciones
importantes mes a mes debido a factores como el precio de la gasolina, importacin
de petrleo y al observar la serie se podra pensar a priori que las pocas del ao
afectan el consumo.

La metodologa propuesta para realizar esta investigacin es:


1. Presentacin de la serie.
2. Preprocesamiento de los datos: Es decir una preparacin de los datos, una
transformacin de los datos si es necesario (escalamiento, logaritmizacin,
normalizacin, etc.)
3. Analizar mediante mtodos estadsticos bsicos el estado de la serie y basados
en ellos hacer una seleccin de los parmetros ptimos iniciales.
4. Analizar la serie con la ayuda del Neural Network Toolbox de Matlab.
13

MARZABAN, C. and Stumpf, G.J. (1996), A Neural Network for Tornado Prediction Based on
Doppler Radar-Derived Attributes, Journal of Applied Meteorology Ed 35, 1996. Pag. 617-626.

5. Comparar los datos obtenidos con los datos reales mediante graficas.
6. Concluir con base en los resultados y comparaciones en el posible modelo para
predecir.

4.3. ANALISIS DE LAS SERIE

Los datos de la serie se muestran en el anexo 1, el grafico del consumo de gasolina


ACPM por mes y ao se muestra en la figura 4.1.

Figura 4.1: Consumo de Gasolina ACPM (1998 2003)

Se toma para el desarrollo del presenta anlisis, se toman topologas de 3 capas, en


el capitulo 2 (El MLP como aproximador universal de funciones) se asocia este
hecho a algunos teoremas como los de Kolmogorov y Funahashi, los cuales
demuestran que con solo 3 capas se puede aproximar cualquier funcin.

Para el desarrollo del anlisis de la serie se deben escalan los datos, esto se debe a
las funciones de transferencia que se pretenden usar en el entrenamiento de las
redes, las funciones utilizadas requieren entradas en el rango [-1, 1]. Para este fin
se utilizan las herramientas de Preprocesamiento de datos que ofrece matlab en el
toolbox, ms precisamente la funcin premnmx14.
Se organizan los datos en 2 columnas (Anexo 2), 3 columnas (Anexo 3)

y 4

columnas (Anexo 4). Esta organizacin se realiza con el fin de manejar topologas
con 1, 2 y 3 neuronas en la capa de entrada y variar de 2 a 3 en la capa oculta y
hasta 2 capas ocultas, esto ultimo tomando en cuenta el numero de ejemplos de
entrenamiento que se tiene disponible de la forma que se escalo y el numero optimo
definido en el capitulo 2 (Nmero de ejemplos de entrenamiento).
En los anexos se define como Xi las entradas a la red y como D la salida deseada.
Si se observa con un poco ms detalle se observa que para predecir la salida
deseada se estn usando los datos inmediatamente anteriores.
Se realiza una regresin de los datos de los anexos (2 al 4) y arrogan los siguientes
resultados:
Para 3 entradas y una salida deseada (anexo 4) se tiene un coeficiente de
correlacin mltiple del 0,67217, es decir que las 3 entradas explican en un 65% la
salida deseada. Segn la prueba f el modelo tiene poder explicativo,

pero

solamente una de las variables explica la serie.


Para 2 entradas y una salida deseada (anexo 3) se tiene un coeficiente de
correlacin mltiple del 0,66385, es decir que las 2 entradas explican en un 66% la
salida deseada. Segn la prueba f el modelo tiene poder explicativo,
explicado por cada una de las variables.

14

Mas informacin sobre la funcin premnmx en la direccin


http://www.mathworks.com/access/helpdesk/help/toolbox/nnet/premnmx.html

se ve

Para 1 entradas y una salida deseada (anexo 2) se tiene un coeficiente de


correlacin mltiple del 0,66385, es decir que las 2 entradas explican en un 52% la
salida deseada. Segn la prueba f el modelo tiene poder explicativo, pero no es
explicado por la variable dependiente.

Analizando en forma rpida estos resultados vemos que el modelo de 2 entradas y


una salida deseada servir un poco ms que los otros, debido a que sus variables
inciden en el modelo. Por lo tanto, se realiza una divisin en 2 grupos de los datos
del anexo 2. Basando en ejemplos encontrados en las referencias bibliograficas del
capitulo 2 [1, 6, 7], se formara el primer conjunto con el 75% de los datos, este
conjunto ser el conjunto de entrenamiento de la red, los datos restantes se dejaran
como datos de verificacin.
Se toman 4 topologas para desarrollar las pruebas a travs de matlab, la primera
ser 2-2-1 (3 neuronas en la capa de entrada, 2 en la capa oculta y 1 en la capa de
salida), 2-3-1 (3 neuronas en la capa de entrada, 3 en la capa oculta y 1 en la capa
de salida) y 2-2-2-1 (3 neuronas en la capa de entrada, 4 en dos capas ocultas y 1
en la capa de salida). Los resultados arrojados a travs del toolbox de matlab
fueron:

TOPOLOGA 2-2-1
Traingd

Numero de capas: 3
Neuronas por capa 2 - 2 - 1
Error de entrenamiento 0.101245 de 0.05
Gradiente final 0.000180352 de 1e-010
Numero de iteraciones 60000
Funciones por capa: Purelin Tansig Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingd

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traingd
1,0000

0,5000
0,0000

traingd
1

11

13

-0,5000
-1,0000

Traingdm

Numero de capas: 3
Neuronas por capa: 2 - 2 - 1
Error de entrenamiento: 0.101258 de 0.05
Gradiente final: 0.000306383 de 1e-010
Numero de iteraciones: 60000
Funciones por capa: Purelin Tansig - Tansig

15

17

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingd
m

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traingdm
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

17

traingdm

-0,4000
-0,6000
-0,8000
-1,0000

Traingda

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101299 de 0.05

Gradiente final: 0.0484528 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingda

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traingda
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

17

traingda

-0,4000
-0,6000
-0,8000
-1,0000

Traingdx

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101959 de 0.05

Gradiente final: 0.0747351 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingdx

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traingdx
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000

11

13

15

17

traingdx

-0,6000
-0,8000
-1,0000

Trainrp

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101182 de 0.05

Gradiente final: 2.88016e-005 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainrp

0,2000
0,0000
-0,2000

11

13

15

17

13

15

17

-0,4000

Grafica del error (datos de validacin)

trainrp
0,6000
0,4000
0,2000
0,0000
-0,2000

11

trainrp

-0,4000
-0,6000
-0,8000
-1,0000

Traincgf

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.100747 de 0.05

Gradiente final: 0.000142827 de 1e-010

Numero de iteraciones: 170

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traincgf

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traincgf
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

17

traincgf

-0,4000
-0,6000
-0,8000
-1,0000

Traincgb

Numero de capas : 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101014 de 0.05

Gradiente final: 0.000841213 de 1e-010

Numero de iteraciones: 144

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traincgb

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

traincgb
1,0000
0,5000
0,0000

traincgb
1

11

13

15

17

-0,5000
-1,0000

Trainscg

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.0956961 de 0.05

Gradiente final: 8.98431e-007 de 1e-010

Numero de iteraciones: 10655

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainscg

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

trainscg
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

17

trainscg

-0,4000
-0,6000
-0,8000
-1,0000

Trainbfg

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101227 de 0.05

Gradiente final: 5.83355e-007 de 1e-010

Numero de iteraciones: 240

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainbfg

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)

trainbfg
1,5000
1,0000
0,5000
trainbfg
0,0000
1

11

13

15

17

-0,5000
-1,0000

Trainoss

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.0956943 de 0.05

Gradiente final: 9.62612e-007 de 1e-010

Numero de iteraciones: 31991

Funciones por capa: Purelin Tansig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainoss

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)


trainoss
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

-0,4000
-0,6000
-0,8000
-1,0000

Trainml

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.0956813 de 0.05

Gradiente final: 6.93512e-006 de 1e-010

Numero de iteraciones: 12209

Funciones por capa: Purelin Tansig - Tansig

17

trainoss

Grafica de salida deseada & salida obtenida (datos de validacin)


1,2000
1,0000
0,8000
0,6000
d

0,4000

trainlm

0,2000
0,0000
-0,2000

11

13

15

17

-0,4000

Grafica del error (datos de validacin)


trainlm
0,6000
0,4000
0,2000
0,0000
-0,2000

11

13

15

17

trainlm

-0,4000
-0,6000
-0,8000
-1,0000

traingd

traingdm

traingda

traingdx

trainrp

traincgf

traincgb

trainscg

trainbfg

trainoss

trainlm

Respuestas obtenidas con la simulacin de la red:

-0,20

-0,29

-0,30

-0,31

-0,27

-0,30

-0,30

-0,30

-0,29

-0,29

-0,29

-0,29

0,25

-0,19

-0,19

-0,19

-0,17

-0,20

-0,18

-0,19

-0,16

-0,19

-0,16

-0,16

-0,14

-0,24

-0,25

-0,25

-0,22

-0,25

-0,24

-0,25

-0,22

-0,25

-0,22

-0,22

0,30

0,00

0,00

-0,02

0,04

0,01

0,00

0,00

-0,01

0,00

-0,01

-0,01

0,04

-0,22

-0,22

-0,22

-0,20

-0,23

-0,21

-0,22

-0,19

-0,22

-0,19

-0,19

-0,03

0,04

0,04

0,00

0,07

0,05

0,03

0,04

0,01

0,04

0,01

0,01

0,45

-0,13

-0,13

-0,12

-0,10

-0,13

-0,12

-0,13

-0,10

-0,13

-0,10

-0,10

0,15

-0,16

-0,16

-0,16

-0,14

-0,17

-0,15

-0,16

-0,13

-0,16

-0,13

-0,13

0,48

0,14

0,13

0,06

0,16

0,17

0,11

0,14

0,07

0,14

0,07

0,07

0,01

-0,06

-0,06

-0,07

-0,03

-0,06

-0,06

-0,06

-0,05

-0,06

-0,05

-0,05

0,60

0,17

0,14

0,07

0,18

0,19

0,13

0,16

0,08

0,16

0,08

0,08

0,58

-0,14

-0,14

-0,14

-0,11

-0,14

-0,13

-0,14

-0,11

-0,14

-0,11

-0,11

0,56

0,26

0,21

0,10

0,25

0,10

0,20

0,25

0,12

0,24

0,12

0,12

0,49

0,24

0,20

0,10

0,24

0,14

0,19

0,23

0,11

0,23

0,11

0,11

0,32

0,23

0,19

0,09

0,23

0,18

0,18

0,22

0,11

0,22

0,11

0,11

1,00

0,18

0,15

0,07

0,19

0,20

0,14

0,17

0,08

0,17

0,08

0,08

-0,10

0,05

0,05

0,01

0,08

0,07

0,04

0,05

0,02

0,05

0,02

0,02

-0,30

0,53

0,36

0,18

0,39

0,15

0,41

0,51

0,22

1,00

0,22

0,22

Al hacer un anlisis se del error cuadrtico generado por matlab y de las graficas de
aproximacin, se ven en la figura 4.2 la salida deseada con las 2 funciones que mas
se acercaron al modelo.

1,20
1,00
0,80
0,60

0,40

traingd

0,20
traincgb

0,00
-0,20

11

13

15

17

-0,40

Figura 4.2: Grafica de respuestas obtenidas topologa 2 - 2 - 1

TOPOLOGA 2-3-1

Traingd

Numero de capas:3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.101723 de 0.05

Gradiente final: 0.00114838 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Logsig Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)


1,2000
1,0000
0,8000
0,6000
d

0,4000

traingd

0,2000
0,0000
-0,2000

11 13 15

17

-0,4000

Grafica del error (datos de validacin)


traingd
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000 1
-0,4000
-0,6000
-0,8000
-1,0000

Traingdm

11

13

15

17

traingd

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.101244 de 0.05

Gradiente final: 0.000149962 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingdm

0,2000
0,0000
-0,2000

11 13 15

17

-0,4000

Grafica del error (datos de validacin)

traingdm
1,0000
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000 1
-0,4000
-0,6000
-0,8000
-1,0000

Traingda

traingdm
3

11 13 15 17

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.101299 de 0.05

Gradiente final: 0.0484528 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
0,4000
d

0,2000

traingda

0,0000
-0,2000

11 13 15 17

-0,4000
-0,6000
-0,8000

Grafica del error (datos de validacin)

traingda
0,2000
0,0000
1

11

13 15

17

-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Traingdx

traingda

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.0985181 de 0.05

Gradiente final: 0.0912678 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traingdx

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

traingdx
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000
-1,2000

Trainrp

11

13

15

17
traingdx

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.0831358 de 0.05

Gradiente final: 9.93196e-007 de 1e-010

Numero de iteraciones: 28202

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainrp

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

trainrp
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Traincgf

11

13

15

17

trainrp

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.0879971 de 0.05

Gradiente final: 0.000294713 de 1e-010

Numero de iteraciones: 1038

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traincgf

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

traincgf
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Traincgb

11

13

15

17

traincgf

Numero de capas: 3

Neuronas por capa: 2 - 2 - 1

Error de entrenamiento: 0.101227 de 0.05

Gradiente final: 6.56347e-006 de 1e-010

Numero de iteraciones: 77

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

traincgb

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

traincgb
1,0000
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Trainscg

traincgb
1

11

13

15

17

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.0879377 de 0.05

Gradiente final: 9.64971e-007 de 1e-010

Numero de iteraciones: 4211

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainscg

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

trainscg
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Trainbfg

11

13

15

17

trainscg

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.101227 de 0.05

Gradiente final: 4.09674e-007 de 1e-010

Numero de iteraciones: 67

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainbgf

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

trainbfg
1,0000
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Trainoss

trainbfg
1

11

13

15

17

Numero de capas: 3

Neuronas por capa: 2 -3 - 1

Error de entrenamiento: 0.101227 de 0.05

Gradiente final: 8.12267e-007 de 1e-010

Numero de iteraciones: 546

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainoss

0,2000
0,0000
-0,2000

11 13 15 17

-0,4000

Grafica del error (datos de validacin)

trainoss
1,0000
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000
-0,4000
-0,6000
-0,8000
-1,0000

Trainml

trainoss
1

11

13

15

17

Numero de capas: 3

Neuronas por capa: 2 - 3 - 1

Error de entrenamiento: 0.0874688 de 0.05

Gradiente final: 0.000846157 de 1e-010

Numero de iteraciones: 3377

Funciones por capa: Purelin Logsig - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,2000
1,0000
0,8000
0,6000
d

0,4000

trainlm

0,2000
0,0000
-0,2000

11 13 15

17

-0,4000

Grafica del error (datos de validacin)

trainlm
0,6000
0,4000
0,2000
0,0000
-0,2000 1

11 13

15

17

-0,4000
-0,6000
-0,8000
-1,0000

Respuestas obtenidas con la simulacin de la red:

trainlm

trainlm
-0,2

-0,2

-0,2

-0,1

-0,2

-0,2

-0,3

-0,1

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

0,3

0,0

0,0

-0,1

0,0

0,1

0,1

0,0

0,1

0,0

0,0

0,1

0,0

-0,2

-0,2

-0,3

-0,1

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

0,0

0,0

0,0

0,0

0,0

0,1

0,1

0,0

0,1

0,0

0,0

0,1

0,4

-0,1

-0,1

-0,2

0,0

-0,2

-0,2

-0,1

-0,2

-0,1

-0,1

-0,2

0,1

-0,1

-0,2

-0,2

-0,1

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

-0,2

0,5

0,1

0,1

0,1

0,1

0,1

0,1

0,1

0,1

0,1

0,1

0,1

0,0

-0,1

-0,1

-0,1

0,0

-0,1

-0,1

-0,1

-0,1

-0,1

-0,1

0,1

0,6

0,1

0,2

0,1

0,1

0,1

0,1

0,2

0,1

0,2

0,2

0,1

0,6

-0,1

-0,1

-0,2

0,0

-0,2

-0,2

-0,1

-0,2

-0,1

-0,1

-0,2

0,6

0,2

0,2

0,1

0,1

0,1

0,1

0,2

0,1

0,2

0,2

0,1

0,5

0,2

0,2

0,1

0,1

0,1

0,1

0,2

0,1

0,2

0,2

0,1

0,3

0,1

0,2

0,1

0,1

0,1

0,1

0,2

0,1

0,2

0,2

0,1

1,0

0,1

0,2

0,1

0,1

0,1

0,1

0,2

0,1

0,2

0,2

0,1

-0,1

0,0

0,1

0,0

0,0

0,1

0,1

0,1

0,1

0,1

0,1

0,1

-0,3

0,4

0,5

-0,6

0,1

0,1

0,1

0,5

0,1

0,5

0,5

0,1

-0,3

-0,2

trainos

-0,3

-0,2

trainbg

-0,2

-0,2

-0,3

-0,2

trainsc

-0,2

-0,2

-0,2

-0,1

traincg

traincg

-0,2

-0,3

trainrp

-0,4

-0,2

-0,3

-0,2

traingd

traingd

traingd

traingd
-0,3

0,2

d
-0,2

Al hacer un anlisis se del error cuadrtico generado por matlab, se ven en la figura
4.3 la salida deseada con las 2 funciones que mas se acercaron al modelo.

1,2
1,0
0,8
0,6

0,4
0,2

traingda

0,0
-0,2

11

13

15

17

traingdx

-0,4
-0,6
-0,8

Figura 4.3: Grafica de valores resultantes de iterar la serie 2-3-1

TOPOLOGA 2 - 2 - 2 -1
Traingd

Numero de capas: 4

Neuronas por capa: 2 2 - 2 - 1

Error de entrenamiento: 0.083368 de 0.05

Gradiente final: 0.00075513 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traingd

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traingd
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

traingd

-0,4000
-0,6000
-0,8000
-1,0000

Traingdm

Numero de capas: 4

Neuronas por capa: 2 2 - 2 - 1

Error de entrenamiento: 0.0835231 de 0.05

Gradiente final: 0.000282096 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traingdm

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traingdm
0,6000
0,4000
0,2000
0,0000
-0,2000 1

7 9 11 13 15 17

traingdm

-0,4000
-0,6000
-0,8000
-1,0000

Traingda

Numero de capas: 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.0891906 de 0.05

Gradiente final: 0.173402 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traingda

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traingda
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

traingda

-0,4000
-0,6000
-0,8000
-1,0000

Traingdx

Numero de capas: 4

Neuronas por capa: 2 2 - 2 - 1

Error de entrenamiento: 0.0850742 de 0.05

Gradiente final: 0.127728 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig Purelin Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traingdx

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traingdx
0,6000
0,4000
0,2000
0,0000
-0,2000

7 9 11 13 15 17

traingdx

-0,4000
-0,6000
-0,8000
-1,0000

Trainrp

Numero de capas: 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.0789043 de 0.05

Gradiente final: 0.00281069 de 1e-010

Numero de iteraciones: 60000

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

trainrp

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

trainrp
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

trainrp

-0,4000
-0,6000
-0,8000
-1,0000

Traincgf

Numero de capas : 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.0847961 de 0.05

Gradiente final: 0.00064192 de 1e-010

Numero de iteraciones: 185

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traincgf

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traincgf
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

traincgf

-0,4000
-0,6000
-0,8000
-1,0000

Traincgb

Numero de capas: 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.083838 de 0.05

Gradiente final: 0.00119069 de 1e-010

Numero de iteraciones: 135

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

traincgb

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

traincgb
1,2000
1,0000
0,8000
0,6000
0,4000
0,2000
0,0000
-0,2000 1
-0,4000
-0,6000
-0,8000
-1,0000

traincgb
3

9 11 13 15 17

Trainscg
Numero de capas: 4
Neuronas por capa: 2 - 2 - 2 - 1
Error de entrenamiento: 0.0803516 de 0.05
Gradiente final: 8.18243e-007 de 1e-010
Numero de iteraciones: 1290
Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

trainscg
0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

trainscg
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

trainscg

-0,4000
-0,6000
-0,8000
-1,0000

Trainbfg

Numero de capas: 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.0803511 de 0.05

Gradiente final: 5.01321e-007 de 1e-010

Numero de iteraciones: 380

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

trainbgf

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

trainbfg
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

trainbfg

-0,4000
-0,6000
-0,8000
-1,0000

Trainoss
Numero de capas: 4
Neuronas por capa: 2 -2 - 2 - 1
Error de entrenamiento: 0.0835118 de 0.05
Gradiente final: 7.71694e-007 de 1e-010
Numero de iteraciones: 2355
Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

trainoss

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)

trainoss
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

trainoss

-0,4000
-0,6000
-0,8000
-1,0000

Trainml

Numero de capas: 4

Neuronas por capa: 2 - 2 - 2 - 1

Error de entrenamiento: 0.0788702 de 0.05

Gradiente final: 2.05572e-006 de 1e-010

Numero de iteraciones: 5503

Funciones por capa: Purelin Tansig Purelin - Tansig

Grafica de salida deseada & salida obtenida (datos de validacin)

1,20
1,00
0,80
0,60
d

0,40

trainlm

0,20
0,00
-0,20

11 13 15 17

-0,40

Grafica del error (datos de validacin)


trainlm
0,6000
0,4000
0,2000
0,0000
-0,2000 1

9 11 13 15 17

trainlm

-0,4000
-0,6000
-0,8000
-1,0000

traingd

traingdm

traingda

traingdx

trainrp

traincgf

traincgb

trainscg

trainbgf

trainoss

trainlm

Respuestas obtenidas con la simulacin de la red:

-0,20

-0,25

-0,25

-0,14

-0,31

-0,22

-0,25

-0,26

-0,23

-0,23

-0,25

-0,22

0,25

-0,16

-0,16

-0,06

-0,21

-0,14

-0,17

-0,18

-0,13

-0,13

-0,15

-0,14

-0,14

-0,06

-0,06

0,05

-0,11

-0,06

-0,10

-0,12

-0,07

-0,08

-0,06

-0,06

0,30

0,02

0,02

0,12

-0,14

0,01

0,00

-0,01

-0,06

-0,06

0,03

0,01

0,04

-0,02

-0,02

0,09

0,07

-0,03

-0,06

-0,07

0,15

0,15

-0,02

-0,03

-0,03

0,07

0,07

0,15

-0,14

0,07

0,08

0,06

-0,06

-0,06

0,07

0,07

0,45

-0,03

-0,03

0,07

-0,15

-0,04

-0,07

-0,08

-0,07

-0,07

-0,03

-0,04

0,15

0,06

0,06

0,15

0,07

0,05

0,04

0,11

0,15

0,15

0,06

0,05

0,48

0,11

0,11

0,18

0,07

0,13

0,18

0,17

0,16

0,16

0,11

0,13

0,01

0,10

0,10

0,17

0,07

0,10

0,14

0,27

0,16

0,16

0,09

0,11

0,60

0,10

0,11

0,17

-0,08

0,11

0,16

0,14

0,15

0,05

0,10

0,11

0,58

0,09

0,09

0,17

0,07

0,09

0,10

0,43

0,1 6

0,16

0,09

0,09

0,56

0,14

0,14

0,19

0,07

0,21

0,38

0,70

0,16

0,16

0,13

0,22

0,49

0,14

0,14

0,19

0,07

0,21

0,37

0,67

0,16

0,16

0,13

0,21

0,32

0,13

0,14

0,19

0,07

0,19

0,34

0,54

0,16

0,16

0,13

0,20

1,00

0,13

0,13

0,18

0,07

0,16

0,26

0,28

0,16

0,16

0,12

0,16

-0,1

0,14

0,14

0,19

0,07

0,21

0,37

0,85

0,16

0,16

0,13

0,22

-0,3

0,14

0,14

0,19

0,07

0,20

0,38

0,35

0,16

0,16

0,13

0,21

Al hacer un anlisis se del error cuadrtico generado por matlab y de las graficas de
aproximacin, se ven en la figura 4.2 la salida deseada con las 2 funciones que mas
se acercaron al modelo.

1,20
1,00
0,80
0,60

0,40

traincgf

0,20

traincgb

0,00
1
-0,20

11

13

15

17

-0,40

Figura 4.4: Grafica de valores resultantes de iterar la serie 2 - 2 - 2 - 1

Se pude observar que los modelos con mayor numero de capas parecen ajustar
mejor la curva del conjunto de validacin debido que no describe totalmente el
comportamiento de la serie pero si encuentra puntos en los cuales coincide la serie,
eso da a suponer que en un momento dado y con muchos mas datos de
entrenamiento se puede ajustar un modelo que sin estar sobrentrenado halle el
modelo que se ajuste con mucho menor error a la serie.

ANEXOS

ANEXO 1: CONSUMO DE GASOLINA ACPM (1998 2003)


ACPM
BPM*
98 E

1.801.100

1.716.876

1.835.944

1.908.060

1.851.072

1.749.090

JL

1.952.132

1.807.238

1.838.280

1.895.929

1.507.920

1.795.737

99 E

1.561.129

1.522.108

1.787.832

1.541.850

1.615.100

1.411.800

Jl

1.700.505

1.706.674

1.646.100

1.613.798

1.758.090

1.692.259

00 E

1.744.773

1.633.716

1.859.008

1.687.050

1.686.307

1.917.930

JL

1.816.042

1.949.931

1.945.260

1.937.314

1.942.890

1.962.362

01 E

1.950.861

1.768.200

2.087.385

1.928.220

1.869.021

1.897.830

Jl

1.534.810

1.721.244

1.619.910

1.964.346

1.733.430

1.793.784

02 E

1.563.196

1.544.717

1.568.947

1.654.625

1.600.368

1.548.217

Jl

1.705.590

1.808.208

1.759.327

1.953.194

1.783.266

1.975.678

03 E

1.861.458

1.833.307

2.039.511

1.910.577

2.052.503

1.851.952

Jl

2.104.383

2.097.689

2.089.104

2.059.732

1.984.912

2.280.121

04 E

ANEXO 2: SERIE ESCALADA EN EL RANGO [-1,1] CON UNA ENTRADA Y UNA


SALIDA.
x1

0,1033
0,2973
0,0231
0,1430

0,2973
0,0231

0,1430
0,0118
0,0118 0,2231
0,2231 0,2445
0,2445 0,0892
0,0892 0,0177
0,0177 0,1151
0,1151 0,7786
0,7786 0,1157
0,1157 0,6561
0,6561 0,7459
0,7459 0,1339
0,1339 0,7005
0,7005 0,5317
0,5317 1,0000
1,0000 0,3350
0,3350 0,3208
0,3208 0,4603
0,4603 0,5347
0,5347 0,2024
-

0,2024
0,3540
0,2331
0,4889

0,3540
0,2331
0,4889

0,0301
0,3660
0,0301
0,3660 0,3677
0,3677 0,1658
0,1658 0,0689
0,0689 0,2395
0,2395 0,2287
0,2287 0,2104
0,2104 0,2233
0,2233 0,2681
0,2681 0,2416
0,2416 0,1791
0,1791 0,5561
0,5561 0,1895
0,1895 0,0531
0,0531 0,1195
0,1195 0,7167
0,7167 0,2873
0,2873 0,5207
0,5207 0,2727
0,2727 0,2592
0,2592 0,1202
0,1202 0,6513
0,6513 0,6939
0,6939 0,6380

0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,2470
0,2470 0,1444
0,1444 0,2988
0,2988 0,0357
0,0357 0,0291
0,0291 0,4458
0,4458 0,1488
0,1488 0,4757
0,4757 0,0138
0,0138 0,5952
0,5952 0,5798
0,5798 0,5600
0,5600 0,4924
0,4924 0,3200
0,3200 1,0000
1,0000 0,1033

ANEXO 3: SERIE ESCALADA EN EL RANGO [-1,1] CON DOS ENTRADAS Y


UNA SALIDA.
x1
x2
d
0,1033 0,2973 0,0231
0,2973 0,0231 0,1430
0,0231 0,1430 0,0118
0,1430 0,0118 0,2231
0,0118 0,2231 0,2445
0,2231 0,2445 0,0892
0,2445 0,0892 0,0177
0,0892 0,0177 0,1151
0,0177 0,1151 0,7786
0,1151 0,7786 0,1157
0,7786 0,1157 0,6561
0,1157 0,6561 0,7459
0,6561 0,7459 0,1339
0,7459 0,1339 0,7005
0,1339 0,7005 0,5317
0,7005 0,5317 1,0000
0,5317 1,0000 0,3350
1,0000 0,3350 0,3208
0,3350 0,3208 0,4603
0,3208 0,4603 0,5347
0,4603 0,5347 0,2024
0,5347 0,2024 0,3540
-

0,2024
0,3540
0,2331
0,4889
0,0301
0,3660
0,3677
0,1658
0,0689
0,2395
0,2287
0,2104
0,2233

0,3540 0,2331
0,2331 0,4889
0,4889 0,0301
0,0301 0,3660
0,3660 0,3677
0,3677 0,1658
0,1658 0,0689
0,0689 0,2395
0,2395
0,2287
0,2104
0,2233
0,2681

0,2287
0,2104
0,2233
0,2681
0,2416
0,2681 0,2416 0,1791
0,2416 0,1791 0,5561
0,1791 0,5561 0,1895
0,5561 0,1895 0,0531
0,1895 0,0531 0,1195
0,0531 0,1195 0,7167
0,1195 0,7167 0,2873
0,7167 0,2873 0,5207
0,2873 0,5207 0,2727
0,5207 0,2727 0,2592
0,2727 0,2592 0,1202
0,2592 0,1202 0,6513
0,1202 0,6513 0,6939
0,6513 0,6939 0,6380
-

0,6939
0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,2470
0,2470 0,1444
0,2470 0,1444 0,2988
0,1444 0,2988 0,0357
0,2988 0,0357 0,0291
0,0357 0,0291 0,4458
0,0291 0,4458 0,1488
0,4458 0,1488 0,4757
0,1488 0,4757 0,0138
0,4757 0,0138 0,5952
0,0138 0,5952 0,5798
0,5952 0,5798 0,5600
0,5798 0,5600 0,4924
0,5600 0,4924 0,3200
0,4924 0,3200 1,0000
0,3200 1,0000 0,1033
1,0000 0,1033 0,2973

ANEXO 4: SERIE ESCALADA EN EL RANGO [-1,1] CON TRES ENTRADAS Y


UNA SALIDA.
x1

x2
x3
d
0,1033 0,2973 0,0231 0,1430
0,2973 0,0231 0,1430 0,0118
0,0231 0,1430 0,0118 0,2231
0,1430 0,0118 0,2231 0,2445
0,2231
0,0892
0,0118
0,2445
0,2231 0,2445 0,0892 0,0177
0,2445 0,0892 0,0177 0,1151
0,0892 0,0177 0,1151 0,7786
0,0177 0,1151 0,7786 0,1157
0,1151 0,7786 0,1157 0,6561
0,7786 0,1157 0,6561 0,7459
0,1157 0,6561 0,7459 0,1339
0,6561 0,7459 0,1339 0,7005
0,7459 0,1339 0,7005 0,5317
0,1339 0,7005 0,5317 1,0000
0,7005 0,5317 1,0000 0,3350
0,5317 1,0000 0,3350 0,3208
1,0000 0,3350 0,3208 0,4603
0,3350 0,3208 0,4603 0,5347
0,3208 0,4603 0,5347 0,2024
0,4603 0,5347 0,2024 0,3540
0,5347 0,2024 0,3540 0,2331

0,2024
0,3540
0,2331
0,4889
0,0301
0,3660
0,3677
0,1658
0,0689
0,2395
0,2287
0,2104

0,3540 0,2331 0,4889


0,2331 0,4889 0,0301
0,4889 0,0301 0,3660
0,0301 0,3660 0,3677
0,3660 0,3677 0,1658
0,3677 0,1658 0,0689
0,1658 0,0689 0,2395
0,0689 0,2395 0,2287
0,2395
0,2287
0,2104
0,2233

0,2287
0,2104
0,2233
0,2681

0,2104
0,2233
0,2681
0,2416
0,2233 0,2681 0,2416 0,1791
0,2681 0,2416 0,1791 0,5561
0,2416 0,1791 0,5561 0,1895
0,1791 0,5561 0,1895 0,0531
0,5561 0,1895 0,0531 0,1195
0,1895 0,0531 0,1195 0,7167
0,0531 0,1195 0,7167 0,2873
0,1195 0,7167 0,2873 0,5207
0,7167 0,2873 0,5207 0,2727
0,2873 0,5207 0,2727 0,2592
0,5207 0,2727 0,2592 0,1202
0,2727 0,2592 0,1202 0,6513
0,2592 0,1202 0,6513 0,6939
0,1202 0,6513 0,6939 0,6380

0,6513
0,6939
0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995
0,2470
0,1444
0,2988
0,0357
0,0291
0,4458
0,1488
0,4757
0,0138
0,5952
0,5798
0,5600

0,6939
0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,6380
0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,4407
0,5657
0,6858
0,3233
0,0870
0,1995

0,4458
0,1488
0,4757
0,0138
0,5952
0,5798
0,5600
0,4924

0,1488
0,4757
0,0138
0,5952
0,5798
0,5600
0,4924
0,3200

0,4757
0,0138
0,5952
0,5798
0,5600
0,4924
0,3200
1,0000
0,1033
0,2973
0,0231

0,2470
0,2470 0,1444
0,2470 0,1444 0,2988
0,1444 0,2988 0,0357
0,2988 0,0357 0,0291
0,0357 0,0291 0,4458
0,0291 0,4458 0,1488

0,4924 0,3200 1,0000


0,3200 1,0000 0,1033
1,0000 0,1033 0,2973

CONCLUSIONES

1. Gracias a las caractersticas de flexibilidad y adaptabilidad las Redes


Neuronales Artificiales nos presentan una alternativa, no lineal, para analizar y
predecir las series de tiempo.

2. El problema de la prediccin es un tema que ha abarcado muchos escenarios de


la vida diaria, como se vio, las redes neuronales son una herramienta poderosa
para el anlisis de estos fenmenos, la aparente fiabilidad que tiene debido a los
muchos ejemplos de prediccin en los cules se aplica, da seguridad suficiente
para creer en los resultados, en algunos casos se puede llegar a tener mas
fiabilidad en las RNA que en los mtodos clsicos de prediccin.
3. La prediccin travs de redes neuronales al parecer es un mtodo totalmente
paralelo a los mtodos estadsticos clsicos para la prediccin, pero ha sido
mediante la estadstica que las redes neuronales se han fortalecido como
mtodos estndar, en este trabajo se expone el modelo del aproximador general
de funciones, esto se demuestra a travs de mtodos y teoremas estadsticos.
4. El numero de datos de entrenamiento y de datos de validacin condiciona en
gran forma los resultados que se obtienen cuando se entrena una red neuronal,
si se tiene un gran nmero de datos se debe controlar que no haya sobre
entrenamiento, pero al tener pocos, no se sabe claramente lo que se pude llegar
a obtener, la reglas expuestas en el capitulo 2 sobre como escoger un optimo
nmero de datos de validacin intenta solucionar este problema, pero aun as
este problema es resuelto mas basado en la experiencia de xito de otros
modelos en problema similares, por lo tanto las redes neuronales siempre van a
tener una parte aleatoria que pude llegar a condicionar a la parte terica.

BIBLIOGRAFIA

[1] Chao, Lincoln L. (1975) Estadstica para ciencias sociales y administrativas.


Bogota: McGraw-Hill.

[2] George C. Canavos. (1988) Probabilidad y Estadstica Aplicaciones y Mtodos.


Mexico: Mc Graw Hill

[3] lvaro M. Garca. (2000) Series de Tiempo. Bogota: Pontificia Universidad


Javeriana, Facultades Economa y Administracin.

[4] Emilia Correa Moreno. (2000) Series de Tiempo Conceptos Bsicos. Medelln:
Universidad Nacional de Colombia Facultad Ciencias Departamento Matemticas

[5] Iglesias Z. Pilar. (1988). Elementos de series de tiempo.

[6] Enciclopedia Libre Wikipedia (Online). Espaa 2005.


http://es.wikipedia.org/wiki/Categor%C3%ADa:Estad%C3%ADstica

[7] Hospital Ramn y Cajal (Online). Estadistica. Madrid Espaa. 1996


http://www.hrc.es/bioest/M_docente.html#tema2

[8] Jorge Ludlow Wiechers. Desarrollo Latino. Instrumentos de trabajo, Procesos


Estacionarios.
http://www.desarrollolatino.org/index.htm

[9] Carlos E. Mendoza Durn. Cursos (Online). Probabilidad y Estadstica.


http://www.mor.itesm.mx/~cmendoza/ma835/ma83511.html

[10] Ral Snchez Vtores . Fac - Mac.

Revista (Online).

Sistemas de

Reconocimiento Facial. Julio, 2004.


http://www.faq-mac.com/mt/archives/009001.php

[11] Cursos (Online). Ingenieras. Pronsticos.


http://www.prodigyweb.net.mx/lmfs/ingenierias/pronsticos/pronsticos.html

[12] DEL BRIO, Martn. Redes Neuronales y Sistemas Difusos. Universidad de


Zaragoza. Espaa: Alfaomega 2002, 399p.

[13] GIARDINA, Daniel. Redes Neuronales: Conceptos Bsicos y Aplicaciones.


Rosario, Argentina, 2001, 55 p. Trabajo de Grado (Ingeniero Electrnico).
Universidad Nacional de Rosario. Facultad de Ciencias Exactas, Ingeniera y
Agrimensura.

[14] ANDINA, Diego. Tutorial de Redes Neuronales (Online). Universidad Politcnica


de Madrid. Espaa. Noviembre de 2001.
http://www.gc.ssr.upm.es/inves/neural/ann2/anntutorial.html

[15] KASABOV, Nikola. Foundations of Neural Networks, Fuzzy Systems, and


Knowledge Engineering. Massachusetts Institute of Technology, 1996. 570p.

[16] KROSE, Ben. An Introduction to Neural Networks. The University of Amsterdam.


1996.

[17] CAVUTO, David. An Exploration And Development Of Current Artificial Neural


Network Theory And Applications With Emphasis On Artificial Life. Albert Nerken
School Of Engineering, 1997. 126p.

[18] UNIVERSIDAD TECNOLOGICA DE PEREIRA. Tutorial de Redes Neuronales


(Online). Colombia. 2000. http://ohm.utp.edu.co/neuronales/

[19] Toolbox Matlab v. 6.5. Neural Network Toolbox. Backpropagation. Junio 2002