Neural Nets
Embed Size (px)
Transcript of Neural Nets
Curso de Redes NeuronalesAplicacin en las Finanzas
Pr. Dr. Pablo Garca Estvez
Desarrollo del curso
1. 2. 3. 4. 5. 6.
Qu son las Redes neuronales Redes Supervisadas Ejemplos de las Redes Supervisadas Otras Redes Supervisadas Redes Autoorganizadas Ejemplos de Redes Autoorganizadas
Pablo Garca Estvez.
2
Resea1939 Alan Turing. Mquina de Turing 1944 John Von Neuman. Arquitectura y concepto de programa.El ordenador se compone de:Entrada Procesador Memoria Salida
La arquitectura de Von Neuman: Mquina de Turing + arquitectura de Neuman. Se codifican las instrucciones paso a paso. 1945 Nace la Ciberntica. Pretende fusionar los conocimientos informticos con los biolgicos. 1960 Nace el trmino Inteligencia Artificial. 1969 Artculo de Minsky y Papert. Aos 90. Hopfield, Kohonen y Rumelhart impulsan de nuevo las Redes Neuronales.
Pablo Garca Estvez.
3
Comparacin cerebro - ordenador
Cerebro Velocidad de proceso Estilo de procesamiento Nmero de procesadores Conexiones Almacenamiento del conocimiento Tolerancia a fallos Tipo de control del proceso 100 Hz Paralelo 100.000.000.000 10.000 por procesador Distribuido Amplia Autoorganizado
Ordenador 2,5 GHz Secuencial Pocos Pocas Direcciones fijas Nula Centralizado
Pablo Garca Estvez.
4
Qu son las Redes Neuronales? Algoritmos matemticos no lineales. Sirven para predecir y clasificar Se basan en la interpretacin matemtica del funcionamiento del cerebro o de las neuronas Comienzan a desarrollarse a finales de los aos 60. El precario desarrollo de los ordenadores ralentiza su desarrollo hasta la aparicin del Intel 80486
Pablo Garca Estvez.
5
Qu son las Redes Neuronales?Su lento desarrollo favorece la arquitectura Von Neuman Turing en la informtica. Bsicamente hay dos grandes familias en las Redes Neuronales:1. 2.
Redes Neuronales Supervisadas Redes Neuronales Autoorganizadas
Las primeras, predictoras, se basan en el funcionamiento de las neuronas Las segundas, clasificadores, se basan en la capacidad topolgica de la zona somatosensorial del cerebro.
Pablo Garca Estvez.
6
Tipos de Redes Neuronales Redes Neuronales Supervisadas (RNS)Perceptrn (PRT) Adalina (ADA) Perceptrn Multicapa (MLP)
Otras Redes Neuronales Supervisadas (ORS)Funciones de Base Radial (RBF) Redes de Regresin Generalizada (GRN) Redes Neuronales Probabilsticas (RNP)
Redes Neuronales Autoorganizadas (RAT)Redes Competitivas (RNC) Mapas Autoorganizados (SOM)Pablo Garca Estvez. 7
La neurona biolgica
10 80 micras
100 micras
Pablo Garca Estvez.
8
La transmisin de la informacinLa informacin llega a la neurona mediante neurotransmisores (glutamato o adrenalina). La llegada de stos cambia el potencial elctrico del Soma de -60mV por encima de los -45mV. En ese momento se abren los poros y aumenta la concentracin de Na dentro de la neurona que pasa a tener +50mV. Ese potencial se transmite por el axn.
0,2 micras
Sinapsis
SomaInformacin
Axn
Despus la neurona queda en reposo durante un tiempo. Se codifica la frecuencia que la neurona puede hacer disparos. Lo habitual son de 1 a 100 pulsos / segundo Pablo Garca Estvez. 9
Redes Neuronales Supervisadas
La neurona artificial
Redes Neuronales Supervisadas
Pablo Garca Estvez.
10
Funcin de Transferencia Lineal
Lineal
Y=H
1
Y = -1 para H < -1
Escaln
1 1 1
Y = H para 1 < H < +1 Y = 1 para H > +1
Redes Neuronales Supervisadas
Pablo Garca Estvez.
11
Funcin de Transferencia Logaritmo Sigmoidea1
0.9
0.8
0.7
0.6
0.5
0.4
1 Y= H 1+ e
0.3
0.2
0.1
0 -5
-4
-3
-2
-1
0
1
2
3
4
5
Redes Neuronales Supervisadas
Pablo Garca Estvez.
12
Funcin de Transferencia Tangente Sigmoidea1
0.8
0.6
0.4
0.2
0
2 1 Y= 2 H 1+ e
-0.2
-0.4
-0.6
-0.8
-1 -5
-4
-3
-2
-1
0
1
2
3
4
5
Redes Neuronales Supervisadas
Pablo Garca Estvez.
13
Perceptrn Multicapa (MLP)X1
[3 4 2]
X2
X3
Entradas
Ocultas
SalidasPablo Garca Estvez. 14
Redes Neuronales Supervisadas
Mecnica de la Red1.
Entrenamiento1. 2. 3. 4. 5. 6.
Alimentacin de la red con datos Obtencin de resultados de la red Comparacin de los resultados con los objetivos Obtencin del error Modificacin de pesos Siguiente iteracin hasta conseguir el menor error Alimentacin de la red con los datos del test Analizar los resultados
2.
Test1. 2.
Redes Neuronales Supervisadas
Pablo Garca Estvez.
15
La regla LMSDenominada Regla de WidrowHoff Es la base de las reglas de aprendizaje Se puede resumir en dos puntos1. 2. Definicin del error Optimizacin de la funcin del error: pesos sinpticos que minimicen del error. El proceso se denomina Descenso por el Gradiente.
Redes Neuronales Supervisadas
Pablo Garca Estvez.
16
Pautas de la regla LMSSe calcula el sentido de la mxima variacin de la funcin de error y se toma el camino opuesto. La mxima variacin viene dada por el Gradiente de la funcin de error en el punto uno. Apuntaremos haca un mnimo. El proceso se itera hasta que se alcance ese mnimo. La variacin de los pesos depende de su gradiente, pero adems, a ste se le multiplicar por un nmero infinitesimal para que la variacin sea pequea.
W(t+1) =W(t) E(W) E(W) es el gradiente de la funcin de coste o funcin de error. es el coeficiente de aprendizajeRedes Neuronales Supervisadas Pablo Garca Estvez. 17
Establecimiento de la regla LMSSaliday i = Wij x j ij =1 N
Error
1 p n E Wij = t i y i 2 =1 i =1
[ ]
(
)
2
Buscar los pesos W*ij que minimice este error. Para resolver este problema de minimizacin se recurre al descenso por el gradiente. La variacin de los pesos sinpticos es igual al gradiente del error por el ratio de aprendizaje. El gradiente del error es la derivada del error respecto a los pesos sinpticos:
E (Wij ) Wij = E (Wij ) = Wij
p p E [Wij ] 1 2 dy i = 2 (t i y i ) = (t i y i ) xi 2 =1 dWij Wij =1
Wij = t i y i xi =1
p
(
)
Wij(t+1) =Wij(t) (ti yi) xj Wij(t+1) =Wij(t) (ti yi) xjRedes Neuronales Supervisadas Pablo Garca Estvez. 18
La regla Delta
Si la deducimos en neuronas que tengan como funcin de transferencia una funcin sigmoidea, la regla LMS se denomina regla Delta.
Redes Neuronales Supervisadas
Pablo Garca Estvez.
19
La regla Back Propagation (BP)
[n m r]1
1
X1
2
3
t1
X2
Xnm
r
tr
Pablo Garca Estvez. 20
Redes Neuronales Supervisadas
El error de una MLPSalida de la MLP
m ' Z k = f Wkj j =1
n ' f W ji X i j k i =1
El error cuadrtico
1 p r E = t k Z k 2 =1 k =1
(
)
2
Sustituimos la salida final por la salida oculta
1 p r ' E = t k f Wkj y k' j 2 =1 k =1
[
(
)]
2
Lgicamente cuanto ms pequea sea esta funcin, ms eficiente ser nuestro modelo. Hay que proceder a minimizarla. Se har mediante el descenso por el gradiente, tanto en la capa de salida como en la capa oculta.
Redes Neuronales Supervisadas
Pablo Garca Estvez.
21
Clculo de la variacin en una MLPLa variacin de los pesos que unen la capa oculta con la capa de salida es igual al coeficiente de aprendizaje por el gradiente del error:' Wkj =
E ' Wkj
' p f (v k ) W = [t k f (v )] y j = ' y k j ' v k =1 =1 p ' kj
' k
Derivada de la respuesta de la red Calculamos la Seal de error de la capa oculta:
Seal de error de la capa de salida.
f v r ' j ' j = k Wkj k =1 v j
( )
La variacin de los pesos que unen la capa oculta con la capa de entrada..
W ji = j xi =1
p
Redes Neuronales Supervisadas
Pablo Garca Estvez.
22
Salida MLP mediante Matrices(X 1 W1,1 W2,1 W3,1 W4,1 X 3 ) W1, 2 W2, 2 W3, 2 W4, 2 = (H 1 W W2,3 W3,3 W4,3 1,3 H4 )
X2
H2
H3
f (H 1
H2
H3
H 4 ) = (Y1 Y2
Y3 Y4 )
(Y1
Y2
Y3
W '1,1 W ' 2,1 W '1, 2 W ' 2, 2 Y4 ) = (H '1 W' W ' 2,3 1,3 W ' 1, 4 W ' 2, 4
H '2
H '3
H '4 )
f (H '1
H '2
H '3
H ' 4 ) = (Z 1
Z2
Z3
Z4 )23
Redes Neuronales Supervisadas
Pablo Garca Estvez.
Diferentes algoritmos en MatLab
Algoritmo Variable Rprop Gradiente conjugado escalar Fletcher Powell CG Polak Ribire CG Powell Beale CG Secante de un paso Quasi Newton BFGS Levenberg Marquardt
Sentencia MatLab Traingdx Trainrp Trainscg Traincgf Traincgp Traincgb Trainoss Trainbfg Trainlm
Redes Neuronales Supervisadas
Pablo Garca Estvez.
24
Ajuste del algoritmo del crecimiento empresarial
Construir un modelo que nos estime el crecimiento de una empresa en el momento t + 1 en base a los datos del momento t. Elegimos los datos financieros de la empresa Grficas El Pas S. L.
Algoritmo del Crecimiento
Pablo Garca Estvez.
25
Balance de Grficas el Pas S.L.
1999Activo Circulante Pasivo Circulante Activo Total Reservas + Remanente Resultado de explotacin Acreedores Acreedores Comerciales Otras Deudas no comerciales Deudas con terceros Fondos Propios 12.270.724.000 8.174.688.000 20.329.018.000 2.628.707.000 9.887.965.000 7.778.000 4.900.062.000 1.241.232.000 6.149.072.000 11.921.060.000
19989.764.265.000 7.832.419.000 16.265.030.000 2.570.662.000 6.970.150.000 13.448.000 3.390.470.000 1.293.376.000 4.697.294.000 8.419.163.000
19979.040.261.000 7.979.367.000 15.169.978.000 2.534.921.000 6.110.406.000 19.949.000 2.963.345.000 1.226.952.000 4.210.246.000 7.170.662.000
19966.859.774.000 7.485.363.000 14.153.602.000 2.512.074.000 4.180.073.000 33.319.000 2.823.370.000 1.652.342.000 4.509.031.000 6.634.920.000
19958.559.099.000 8.995.964.000 14.526.634.000 1.658.576.000 3.867.883.000 6.538.000 4.909.294.000 1.256.946.000 6.172.778.000 5.524.132.000
Algoritmo del Crecimiento
Pablo Garca Estvez.
26
Las entradas y salidasEl crecimiento del activo ser el conjunto de datos objetivo en la red, mientras que los datos de entrada sern los coeficientes utilizados en la Z score de Altman. X1 es el cociente entre el fondo de maniobra y el activo total X2 es el cociente entre las reservas y el activo total X3 es el cociente entre el BAII y el activo total X4 es el cociente entre el valor contable de los fondos propios, minorado en su caso por los desembolsos pendientes y el valor contable de las deudas
Algoritmo del Crecimiento
Pablo Garca Estvez.
27
Coeficientes de Altman
1999 X1 X2 X3 X4
1998
1997
1996
1995
0,20150 0,11880 0,06993 -0,04420 -0,03007 0,12931 0,15805 0,16710 0,17749 0,11417 0,48640 0,42854 0,40280 0,29534 0,26626 1,93868 1,79234 1,70315 1,47147 0,89492 7,22% 7,18% -2,57%
Crecimiento del activo 24,99%
Algoritmo del Crecimiento
Pablo Garca Estvez.
28
Red Neuronal PropuestaX1
W1,1 W2,1 W1,2
X2W2,2 W1,3
Y1
W1,1
W2,4 Y2 W1,2
Z
activo
X3
W2,3 W1,4
X4
[4 2 1] Entrenamiento mediante Levenberg MarquardtPablo Garca Estvez. 29
Algoritmo del Crecimiento
Pautas del anlisis Buscamos la ecuacin que explique la distribucin de los incrementos de activos. Mediante iteraciones buscamos un sobreaprendizaje.1. 2. 3. 4. 5.
Normalizar los datos en el rango -1 a +1 Construir la red Inicializar los pesos a nmeros aleatorios Entrenar la red Hacer un test con la red entrenada
Algoritmo del Crecimiento
Pablo Garca Estvez.
30
Cdigo de la RedEn el MatLAb, en la ToolBox de Redes Neuronales:
[pn,minp,maxp]=premnmx(p); [pn,minp,maxp]=premnmx(p); net=newff([-1 1;-1 1;-1 1;-1 1],[2 1],{'tansig','purelin'},'trainlm'); net=newff([-1 1;-1 1;-1 1;-1 1],[2 1],{'tansig','purelin'},'trainlm'); net.trainParam.epochs=2000; net.trainParam.epochs=2000; net.trainParam.goal=1e-10; net.trainParam.goal=1e-10; net=train(net,pn,t); net=train(net,pn,t);
Algoritmo del Crecimiento
Pablo Garca Estvez.
31
Grfico del entrenamiento100
Performance is 1.83978e-013, Goal is 1e-010
10
-2
10
-4
Training-Blue Goal-Black
10
-6
10
-8
10
-10
10
-12
10
-14
0
1
2
3
4
5 11 Epochs
6
7
8
9
10
11
Pablo Garca Estvez.
32
Test de la Red a=sim(net,pn); a=sim(net,pn); [m,b,r]=postreg(a,t) [m,b,r]=postreg(a,t) m m =1.0000 =1.0000 b b = -4.3581e-007 = -4.3581e-007 rr =1.0000 =1.0000
Algoritmo del Crecimiento
Pablo Garca Estvez.
33
Matrices de pesos y umbralesMatriz de pesos que unen la capa de entrada con la capa oculta
2,408862171 -1,391784197 1,073982825 -0,598284551
-0,201043854 -0,505301706 1,129306228 -1,354683944
Matriz de umbrales de las neuronas de la capa oculta
-2,96577417 0,405841576Umbral de la capa de salida
-1,673134369 -0,283098225
Matriz de pesos que unen la capa oculta con la capa de salida
0,195717862833669
Pablo Garca Estvez.
34
Algoritmo del crecimiento
%
t +1 Activo
0,4058 0,2831 = + 0,073 2 H1 2 H 2 1+ e 1+ e
H1 = X1N 2,4097 X2N 1,3928 + X3N 1,0741 X4N 0,5985 2,9665 H2 = - X1N 0,2005 X2N 0,5053 + X3N 1,1299 X4N 1,3543 1,6728
Algoritmo del Crecimiento
Pablo Garca Estvez.
35
Anlisis de sensibilidadX1 X2 X3 X4Crecimiento 45,00% 40,00% 35,00% 30,00% 25,00% 20,00% 15,00% 10,00% 5,00% 0,00%0 0, 1 0, 2 0, 3 0, 4 0, 5 0, 6 0, 7 0, 8 0, 9 1 1, 1 1, 2 1, 3 1, 4 1, 5 1, 6 1, 7 1, 8 1, 9 2 2, 1 2, 2 2, 3 2, 4 2, 5 2, 6 2, 7 2, 8 2, 9 3Algoritmo del Crecimiento Pablo Garca Estvez. 36
0,1188 0,15805 0,42854 variable
Validacin de la ecuacin de AltmanLa Z score de Altman es una ecuacin que busca determinar la situacin de quiebra de las empresas. Z = 6,56 X1 + 3,26 X2 + 6,72 X3 + 1,05 X4 147 empresas del sector de artes grficas. Variables de entrada: Las cuatro X de la ecuacin de Altman para cada una de las 147 empresas y para cada uno de los aos comprendidos entre 1995 y 1999, ambos inclusive. 147 empresas 4 variables 5 aos = 2.940 datos. Variable objetivo: quiebra (0) o no (1)
Validacin de Altman
Pablo Garca Estvez.
37
Parada temprana Se divide los datos en tres grupos:1. 2. 3.
Entrenamiento Validacin Test
Normalizaremos los datos Usaremos una MLP [4 10 1] Algoritmo de entrenamiento Levenberg Marquardt Funciones de transferencia Tangente Sigmoidea y LinealPablo Garca Estvez. 38
Red Neuronal PropuestaX1
X2
X3
X4
Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1Pablo Garca Estvez. 39
Z
activo
Las variables todosp (todos los datos de la base de datos) trp (1/2 de la base de datos utilizado para entrenar) trt (objetivos del entrenamiento) vp (1/4 de la base de datos utilizado para validar) vt (objetivos de la validacin) tsp (1/2 de la base de datos utilizado para test) tst (objetivos del test)
Pablo Garca Estvez.
40
Los cdigos[todospn,mintodosp,maxtodosp]=premmnmx(todosp); [todospn,mintodosp,maxtodosp]=premmnmx(todosp); trpn=tramnmx(trp,mintodosp,maxtodosp); trpn=tramnmx(trp,mintodosp,maxtodosp); vpn= tramnmx(vp,mintodosp,maxtodosp); vpn= tramnmx(vp,mintodosp,maxtodosp); v.P=vpn v.P=vpn v.T=vt v.T=vt net=init(net); net=init(net); [net,tr]=train(net,trpn,trt,[ ],[ ],v); [net,tr]=train(net,trpn,trt,[ ],[ ],v);
Pablo Garca Estvez.
41
Grfico del entrenamiento101
Performance is 0.122762, Goal is 0
Training-Blue Validation-Green
10
0
10
-1
0
1
2
3
4
5 11 Epochs
6
7
8
9
10
11
Pablo Garca Estvez.
42
Cdigos del Testtspn=tramnmx(tsp,mintodosp,maxtodosp); tspn=tramnmx(tsp,mintodosp,maxtodosp); rdo=sim(net,tspn); rdo=sim(net,tspn); [m,b,r]=postreg(rdo,tst) [m,b,r]=postreg(rdo,tst) m= m= 0.1019 0.1019 b= b= 0.5702 0.5702 rr= = 0.1335 0.1335
Pablo Garca Estvez.
43
Grfico del TestBest Linear Fit: A = (0.102) T + (0.57) 1.6 Data Points A=T Best Linear Fit
1.4
1.2
1
0.8 A 0.6 0.4
R = 0.133 0.2
0
-0.2
0
0.1
0.2
0.3
0.4
0.5 T
0.6
0.7
0.8
0.9
1
Pablo Garca Estvez.
44
Modelo Asset Allocation 11 carteras. Cada una de estas carteras invierte todos los meses la parte correspondiente de la renta variable en el IBEX-35 La parte correspondiente de la renta fija lo invierte en un ndice de renta fija AFI con vencimiento a 10 aos. Al cabo de un mes se vende la cartera y se calcula el rendimiento mensual.
Pablo Garca Estvez.
45
La base de datos Los datos utilizados son los niveles de cierre, tanto del IBEX-35, como del ndice AFI a 10 aos desde el 1 de enero de 1997 hasta el 31 de diciembre de 2000. Las carteras con mayor contenido de renta variable consiguen mayores rentabilidades, pero tambin las mayores prdidas.
Pablo Garca Estvez.
46
Perfil de rendimiento de la cartera
Pablo Garca Estvez.
47
Las variables utilizadasTanto por ciento invertido en renta variable. (RV). Precio de cierre del S & P 500 (SP). Precio de cierre del IBEX-35 (IB). Tipo de cambio al contado pesetas por dlar americano (E$). Momentum de un da del S&P 500. (MSP). Momentum de un da del IBEX-35. (MIB). ndice AFI a 1 ao (A1). ndice AFI a 10 aos (A10). Diferencia entre AFI a 1 ao y AFI a 10 aos. (DIF).Pablo Garca Estvez. 48
Datos utilizados 9 variables x 11 carteras = 99 datos en cada fecha. Al estudiar los rendimientos en 47 fechas diferentes, final de cada mes desde enero de 1997 hasta diciembre de 2000, la cantidad de datos total que se han utilizado es de: 47 x 99 = 4.653 datos.
A estos hay que sumarle los rendimientos de las carteras en cada fecha. Estos suman: 11 carteras x 1 rendimiento x 47 fechas = 517 datos La suma total de datos computados asciende a 5.170 datos
Pablo Garca Estvez.
49
Red utilizada
[9 15 1 sigmoidea lineal con algoritmo LM
Pablo Garca Estvez.
50
Resultado del entrenamiento
Pablo Garca Estvez.
51
Prediccin de la Red
Pablo Garca Estvez.
52
Errores de prediccin
Pablo Garca Estvez.
53
Matriz de pesos de la capa oculta
-0,273 -0,497 0,205 0,229 0,220 0,285 0,029 -0,202 0,141
-1,243 2,241 -1,187 -1,209 2,582 -2,023 2,101 -1,879 -1,896
0,956 1,711 1,442 -0,009 0,736 -0,851 -0,348 -2,166 0,600
-0,241 -0,488 -1,742 0,860 -1,838 0,752 1,105 2,033 -0,661
2,124 4,252 -1,072 -0,208 -0,999 -1,197 -0,073 2,405 0,524
-1,738 -1,893 -2,156 2,057 -0,233 2,630 1,750 0,656 -0,264
-1,692 -1,900 1,954 0,374 -2,554 2,203 -2,264 -0,733 -0,020
-1,097 -0,646 2,571 1,105 -0,557 0,883 -0,044 2,232 0,394
-0,456 -0,530 2,986 0,562 0,612 1,159 2,014 3,647 -0,116
-0,273 -0,497 0,205 0,229 0,220 0,285 0,029 -0,202 0,141
-1,243 2,241 -1,187 -1,209 2,582 -2,023 2,101 -1,879 -1,896
0,956 1,711 1,442 -0,009 0,736 -0,851 -0,348 -2,166 0,600
-0,241 -0,488 -1,742 0,860 -1,838 0,752 1,105 2,033 -0,661
2,124 4,252 -1,072 -0,208 -0,999 -1,197 -0,073 2,405 0,524
-1,738 -1,893 -2,156 2,057 -0,233 2,630 1,750 0,656 -0,264
Los umbrales-2,383 3,638 -3,539 2,265 0,651 -3,212 1,303 0,692 0,467 -1,075 3,214 1,483 1,134 0,880 -1,557
Pablo Garca Estvez.
54
Salida de la red-1,84777741 1,06081602 -2,58164027 2,33309921 4,01448452 2,28167753
2 y= 1 2n 1+ e
-5,02074176 3,82706919 -3,50704386 -3,00474526 -3,39173707 1,85488364 1,6220616 -2,38924055 4,18695229
Rendimiento
Pablo Garca Estvez.
55
Funciones de Base Radial (BFR)W
X
Y((dist))
X b1
LW
+ b2
Z
Vector de entradas
Modelo hbrido. Utiliza tanto el aprendizaje supervisado como el no supervisado. La ventaja: poco tiempo de entrenamiento
Pablo Garca Estvez.
56
Diferencia de la BRF con la MLPLa diferencia con una MLP est en las neuronas de la capa oculta. En las RBF calculan la diferencia entre el vector de entradas y los pesos sinpticos (centroides) y a esta diferencia le aplican una funcin radial con forma gaussiana:
(r ) = eDonde:R 2
r2 2 2
r = X i W j ,ii =1
2
2 es el parmetro de normalizacin o factor de escala y mide la anchura de lagaussianaPablo Garca Estvez. 57
Su funcionamiento Cuando la distancia entre W y X decrece, la funcin crece. Su mximo sucede cuando W - X = 0, momento en el cual la funcin devuelve 1. Cuando presentamos un vector de entrada, cada neurona de la capa oculta, con funciones de transferencia de base radial, darn una u otra salida dependiendo de lo cerca que est el vector de entrada de los pesos sinpticos
1 0,5
0
? 0,833
0
+ 0,83358
Pablo Garca Estvez.
El cdigo
net = newbre(p,t,spread) net = newbr(p,t,goal,spread) Spread es una constante para la funcin de base radial Si Spread = 4 entonces la neurona responder con 0,5 para cualquier entrada dentro de la distancia de 4 desde los pesos sinpticos
Pablo Garca Estvez.
59
Redes Autoorganizadas
Pablo Garca Estvez.
60
Zona Somatosensorial
Pie Estmago Pecho Brazo Dedo 5 Dedo 4 Dedo 3 Dedo 2 Pulgar Ojo Cara Labio superior Labio inferior Boca Lengua Faringe
Pablo Garca Estvez.
61
Redes Competitivas
Capa de entrada
Capa de salida
Pablo Garca Estvez.
62
Cmo funciona las competitivasEl objetivo en una red competitiva es buscar la neurona de la capa de salida que tenga un conjunto de pesos sinpticos ms parecidos a los valores de las neuronas de la capa de entrada. Busca el vector de pesos sinpticos correspondientes a una sola neurona que sea ms parecido al patrn de entrada de la red en un momento determinado. Cada neurona calcula la diferencia entre el valor del patrn de la entrada y el conjunto de los pesos sinpticos de cada neurona de salida. En funcin de este clculo se determinar la neurona vencedora entre todas las neuronas; sta ser la que tiene menor diferencia entre sus pesos y el conjunto de entradasPablo Garca Estvez. 63
Red competitiva [2; 4x4]1,1 1,2 1,3 1,4
Pesos
1
2,1
2,2
3,3
4,4
3,1
3,2
3,3
3,4
24,1 4,2 4,3 4,4
Entradas Salidas
d i , j , (t ) =
(Wk h =1
i , j ,h
Xk )
2
W jik (t + 1) = W jik (t ) + X k (t ) W jik (t )Pablo Garca Estvez.
[
]64
Perfomance de una cartera
Valor 1 2 3 4 5 6 7 8 9 10
Rendimiento 14,68% 24,39% 14,26% 19,80% 31,01% 7,96% 17,13% 3,36% 18,25% 5,33%
Riesgo 53,10% 23,14% 34,34% 44,92% 22,79% 5,75% 41,69% 59,23% 58,16% 14,89%
Liquidez 43,15% 72,57% 96,25% 99,18% 39,41% 17,84% 82,73% 42,89% 6,19% 69,54%
Valor 11 12 13 14 15 16 17 18 19 20
Rendimiento 21,86% 27,79% 25,24% 39,12% 34,83% 15,59% 34,13% 14,75% 0,25% 19,88%
Riesgo 19,13% 39,94% 54,83% 9,83% 58,75% 40,96% 46,69% 2,49% 19,11% 51,02%
Liquidez 86,87% 7,34% 25,12% 48,98% 32,15% 79,92% 53,06% 86,14% 1,50% 31,65%
Pablo Garca Estvez.
65
Cdigo en BASICCdigo 10 REM red competitiva de 4 x 4, 3 de entrada 20 CLS : ref = 1000: g = 0 30 DIM x(20): DIM y(20): DIM w(48): DIM z(20) 40 RANDOMIZE TIMER 50 FOR b = 1 TO 48 60 w(b) = RND 70 NEXT b 80 PRINT "Introduccin de los datos de entrada" 85 PRINT : PRINT 90 FOR a = 1 TO 20 100 PRINT "x "; a; 110 INPUT x(a) 120 PRINT "y "; a; 130 INPUT y(a) 132 PRINT "z "; a; 134 INPUT z(a) 140 NEXT a 150 CLS 160 INPUT "N de ciclos", C 170 FOR d = 1 TO C 175 CLS 180 PRINT d 190 FOR e = 1 TO 20 200 FOR f = 1 TO 48 STEP 3 210 dist = SQR(((w(f) - x(e)) ^ 2) + ((w(f + 1) y(e)) ^ 2) + ((w(f + 2) - z(e)) ^ 2)) 220 IF dist < ref THEN ref = dist : g=f 230 IF dist < ref THEN g = e 240 NEXT f 250 w(g) = w(g) + (.1 * (x(e) - w(g))) 260 w(g + 1) = w(g + 1) + (.1 * (y(e) - w(g + 1))) 265 w(g + 2) = w(g + 2) + (.1 + (z(e) - w(g + 2))) 270 NEXT e 280 NEXT d 290 FOR h = 1 TO 48 300 PRINT h, w(h) 305 LPRINT h, w(h) 310 NEXT h 320 END
Pablo Garca Estvez.
66
Resultado de la red
15
1
5
2
10
8
17
20
11
14
18
6
19
9
12
3
4
7
16
Pablo Garca Estvez.
67
Distribucin de las carteras120,00%
100,00%
80,00% Rendimiento 60,00% Riesgo Liquidez 40,00%
20,00%
0,00% 17 20 6 12 19 4 2 10 11 18 1 8 3 7 16 9 13 15 5 14
Pablo Garca Estvez.
68
Mapas Autoorganizados Teuvo Kohonen introduce en las redes competitivas la funcin de vecindad creando los Mapas de rasgos autoorganizados o SOFM (Self-Ornanizing Feature Maps). En los SOFM se declara una neurona ganadora que tiene una distancia menor entre sus pesos sinpticos y el vector de datos de entrada. Pero ahora, tiene, adems, una funcin de vecindad. Esta funcin define el entorno alrededor de la neurona ganadora, y en la fase de aprendizaje se actualizan tanto los pesos de las neurona ganadora como los pesos de las neuronas pertenecientes a la vecindad.Pablo Garca Estvez. 69
La vecindadLa vecindad est en funcin de la distancia entre la neurona ganadora y sus vecinas.
Pablo Garca Estvez.
70
Topologa La distancia es una zona bidimensional que existe alrededor de cada neurona. Esta zona puede ser circular cuadrada o hexagonal
T3
T2
T1
Pablo Garca Estvez.
71
Fases del aprendizaje
1.
2.
La ordenacin: donde se identifican las neuronas ganadoras y su vecindad. El ajuste fino: donde se especializan las neuronas ganadoras. En esta fase el radio de la vecindad es igual a 1. Es decir , la vecindad se reduce a la neurona ganadora.
Pablo Garca Estvez.
72
Mecnica1. 2.
Los pesos, Wijk son aleatorios Se presenta un patrn de entrada. X(t) Cada neurona calcula su similitud entre los pesos sinpticos y el vector de entrada mediante la Distancia Eucldea
d=
(WN k =1
ijk
Xk )
2
3.
Determinacin de la neurona ganadora: g*. Esta es la que muestra la menor distancia al patrn de entrada.
Pablo Garca Estvez.
73
Mecnica4.
Wijk (t + 1) = Wijk (t ) + (t ) h( i g * , t ) (X k (t ) Wijk (t ))Donde (t) es un trmino de aprendizaje que toma valores comprendidos entre 0 y 1. Cuando se alcanza un nmero de iteraciones superior a 500, entonces (t) tiende a valer 0. Para el clculo de (t) se suele utilizar una de las dos siguientes ecuaciones 1
Actualizacin de los pesos de la neurona ganadora g* y sus vecinas
t (t ) = 0 + ( f 0 ) t
f (t ) = 0 0
t
En donde 0 es el ritmo inicial, f es el ritmo final, que suele tomar valores de 0,01, t es la iteracin actual y t es el nmero mximo de iteraciones que se desean realizar La funcin h(i g*,t) es la funcin de vecindad. El tamao de la vecindad se reduce en cada iteracin. En la fase de ajuste fino, vale 0,01 y el radio de vecindad es igual a 1.
Pablo Garca Estvez.
74
La funcin de vecindadLa funcin de vecindad depende de:La distancia El radio de vecindad.La distancia se mide como:
ig =
(i g1 )
2
+ ( j g2 )
2
La funcin de vecindad decrece con la distancia a la vencedora. Cuanto ms alejada, ms pequea ser. Depende del radio de vecindad R(t) que representa el tamao de la vecindad actual.
h(1 g * , t ) = f [R(t )]Pablo Garca Estvez.
75
La funcin de vecindad Para el clculo de la vecindad se utilizan funciones del tipo Escaln o del tipo Sombrero Mejicano2 1,5 1 0,5 0 -10 -9 -0,5
-8 -7 -6 -5
-4 -3 -2 -1
0
1
2
3
4
5
6
7
8
9
10
Pablo Garca Estvez.
76
La BMUDespus de declararse la neurona ganadora (BestMatching Unit), BMU, los vectores de los pesos del SOM son actualizados. Los vectores de los pesos del BMU y sus vecinas topolgicas se mueven haca el vector de entrada, haciendo la distancia ms reducida
Pablo Garca Estvez.
77
Clasificacin de pases
sD=som_read_data(ocdec.data); sD=som_read_data(ocdec.data); sD=som_normalize(sD,logistic); sD=som_normalize(sD,logistic); sM=som_make(sD); sM=som_make(sD); sM=som_autolabel(sM,sD,vote); sM=som_autolabel(sM,sD,vote); som_show(sM,umat,all,comp,[1:6]); som_show(sM,umat,all,comp,[1:6]);
Pablo Garca Estvez.
78
Resultados
Pablo Garca Estvez.
79
Matriz de correlaciones
IPC IPC PIB PARO DEF IN-CP
PIB PARO DEF IN-CP DIF-INT 0,47 -0,06 1,00 -0,42 0,51 -0,19 -0,49 0,23 -0,42 1,00 -0,53 0,12 0,85 -0,31 0,51 -0,53 1,00 -0,70 -0,39 0,51 -0,19 0,12 -0,70 1,00
1,00 -0,15 -0,15 1,00 0,47 -0,06 -0,49 0,23 0,85 -0,31
DIF-INT -0,39 0,51
Pablo Garca Estvez.
80
Cdigos de clasificacin
[c,p,err,ind] = kmeans_cluster(sM,8) [c,p,err,ind] = kmeans_cluster(sM,8) [dummy,i]=min(ind) [dummy,i]=min(ind) cl=p{i} cl=p{i} som_cplane(sM,cl) som_cplane(sM,cl)
Pablo Garca Estvez.
81
Clasificacin de las celdas
Pablo Garca Estvez.
82
Monitorizacin de los pases
Pablo Garca Estvez.
83
Monitorizacin
1996Pablo Garca Estvez.
199784
Modelo ampliado de pases
PIB FBCF FBCFPR DEFICIT BPCC INCP INLP PLSP RDE DEPIB
El crecimiento del PIB La variacin anual de la formacin bruta del capital fijo La variacin anual de la formacin bruta del capital fijo privado El dficit en relacin al PIB El saldo de la balanza por cuenta corriente respecto al PIB Los tipos de inters a corto plazo Los tipos de inters a largo plazo La variacin anual de la productividad laboral en el sector privado El ratio de desempleo respecto a la fuerza laboral civil Variacin anual del deflactor del PIB
Pablo Garca Estvez.
85
Modelo ampliado de los pases
Pablo Garca Estvez.
86
Matriz de CorrelacionesPIB PIB FBCF FBCFPR DEFICIT BPCC INCP INLP PLSP RDE DEPIB 1,000 0,777 0,511 0,264 0,078 -0,125 -0,092 0,423 0,014 0,023 FBCF 0,777 1,000 0,622 0,175 0,060 -0,169 -0,111 0,139 0,016 0,020 FBCFPR 0,511 0,622 1,000 0,171 0,088 -0,183 -0,116 0,112 0,048 0,004 DEFICIT 0,264 0,175 0,171 1,000 0,224 -0,151 -0,266 -0,052 -0,432 0,042 BPCC 0,078 0,060 0,088 0,224 1,000 -0,458 -0,456 0,063 -0,103 -0,194 INCP -0,125 -0,169 -0,183 -0,151 -0,458 1,000 0,924 0,025 0,159 0,663 INLP -0,092 -0,111 -0,116 -0,266 -0,456 0,924 1,000 0,070 0,250 0,642 PLSP 0,423 0,139 0,112 -0,052 0,063 0,025 0,070 1,000 0,144 -0,037 RDE 0,014 0,016 0,048 -0,432 -0,103 0,159 0,250 0,144 1,000 0,120 DEPIB 0,023 0,020 0,004 0,042 -0,194 0,663 0,642 -0,037 0,120 1,000
Pablo Garca Estvez.
87
rea de excelencia Crecimiento del PIB por encima del 3% Variacin de la Formacin Bruta del Capital Fijo Total y Privado por encima del 8% Dficit cercano a cero o Superavit Balanza de Pagos Comercial positiva Tipos de inters a corto por debajo del 4% y tipos a largo por debajo del 8% Productividad laboral por encima del 3% Tasa de desempleo por debajo del 8% Deflactor del PIB por debajo del 3%Pablo Garca Estvez. 88
Clasificacin de las reas
PIB A B C D E F Muy Alto Bajo Medio alto Alto Medio Muy bajo
FBCF Muy Alto Medio bajo Medio alto Muy Alto Medio Medio bajo
FBCFPR Medio alto Medio bajo Medio alto Alto Medio bajo Muy bajo
DEFICIT Muy bajo Medio alto Alto Medio bajo Muy alto Alto
BPCC Bajo Muy bajo Alto Muy alto Alto Alto
INCP Bajo Muy bajo Medio Muy alto Medio alto Medio alto
INLP Bajo Muy bajo Medio Muy alto Alto Medio alto
PLSP Alto Muy bajo Medio Medio bajo Medio Medio bajo
RDE Bajo Medio bajo Alto Medio bajo Muy alto Medio alto
DEPIB Bajo Muy bajo Medio bajo Alto Muy alto Medio alto
Pablo Garca Estvez.
89
Clasificacin de las reas
Pablo Garca Estvez.
90
Alemania y Espaa
Pablo Garca Estvez.
91
EE.UU. y Francia
Pablo Garca Estvez.
92
Japn
Pablo Garca Estvez.
93
Clasificacin de las Call del futuro IBEX Anlisis de las opciones del primer semestre de 2000 sobre el futuro sobre el IBEX-35 mediante SOFM con tres variables: el open interest, el tiempo, el aos, que queda hasta el vencimiento y la relacin entre el valor del precio de ejercicio y el IBEX-35. Para realizar este ejemplo utilizaremos los datos proporcionados por MEFF sobre el contrato Call sobre el futuro del IBEX-35 desde el 3 de enero de 2000 hasta el 30 junio de 2000.
Pablo Garca Estvez.
94
La base de datos Slo utilizaremos los datos de los contratos que tuvieron volumen de negociacin; esto reduce a 4.779 referencias. Establecemos utilizar 4.559 referencias, elegidas de manera aleatoria para realizar tanto el entrenamiento como el ajuste fino, reservando las 180 referencias restantes para realizar un test de clasificacin
Pablo Garca Estvez.
95
Los cdigos
sD=som_read_data('opibex.data'); sD=som_read_data('opibex.data'); data read ok data read ok sD=som_normalize(sD,'logistic'); sD=som_normalize(sD,'logistic'); sM=som_make(sD); sM=som_make(sD);
Pablo Garca Estvez.
96
El entrenamientoDetermining map size... Determining map size... map size [23, 15] map size [23, 15] Initialization... Initialization... Training using batch algorithm... Training using batch algorithm... Rough training phase... Rough training phase... Training: 3/ 3 ss Training: 3/ 3 Finetuning phase... Finetuning phase... Training: 3/ 12 ss Training: 3/ 12 Training: 6/ 12 ss Training: 6/ 12 Training: 9/ 12 ss Training: 9/ 12 Training: 12/ 12 ss Training: 12/ 12 Final quantization error: 0.049 Final quantization error: 0.049 Final topographic error: 0.037 Final topographic error: 0.037
Pablo Garca Estvez.
97
Cdigo de visualizacin
sM=som_autolabel(sM,sD,'vote'); sM=som_autolabel(sM,sD,'vote');
som_show(sM,'umat','all','comp',[1:3],'empty','Labels','norm','d'); som_show(sM,'umat','all','comp',[1:3],'empty','Labels','norm','d');
Pablo Garca Estvez.
98
Resultados
Pablo Garca Estvez.
99
Cdigos de distancias U=som_umat(sM); U=som_umat(sM); Um=U(1:2:size(U,1),1:2:size(U,2)); Um=U(1:2:size(U,1),1:2:size(U,2)); C=som_colorcode(sM); C=som_colorcode(sM); subplot(1,2,1) subplot(1,2,1) som_cplane(sM,C,1-Um(:)/max(Um(:))); som_cplane(sM,C,1-Um(:)/max(Um(:))); title('Cdigos de color + matrices de distancia') title('Cdigos de color + matrices de distancia') subplot(1,2,2) subplot(1,2,2) som_grid(sM,'Coord',sM.codebook(:,[1 3]),'MarkerColor',C); som_grid(sM,'Coord',sM.codebook(:,[1 3]),'MarkerColor',C); title('Dispersin de puntos'); title('Dispersin de puntos');
Pablo Garca Estvez.
100
Matrices de distancia
Pablo Garca Estvez.
101
Clculo del nmero de grupos [c,p,err,ind]=kmeans_clusters(sM,8); [c,p,err,ind]=kmeans_clusters(sM,8); plot(1:length(ind),ind,'x-') plot(1:length(ind),ind,'x-')1.5
1.4
1.3
1.2
1.1
1
0.9 1 2 3 4 5 6 7 8 9 10
Pablo Garca Estvez.
102
Establecimiento del grfico [dummy,i]=min(ind) [dummy,i]=min(ind) dummy = dummy = 0.9314 0.9314 ii = = 5 5 cl=p{i}; cl=p{i}; subplot(1,2,1) subplot(1,2,1) som_cplane(sM,C,1-Um(:)/max(Um(:))); som_cplane(sM,C,1-Um(:)/max(Um(:))); subplot(1,2,2) subplot(1,2,2) som_cplane(sM,cl) som_cplane(sM,cl)Pablo Garca Estvez. 103
Los grupos
Pablo Garca Estvez.
104