Redes neuronales y escalas multidimensionales

El perceptrón multicapa

1) Seleccionar arquitectura

Resumido de: Serrano, C. (1997): "Feedforward Neural Networks in the Classification of Financial Information", European Journal of Finance, Vol 3, Nº 3, September, pp. 183-202

En primer lugar utilizaremos un modelo supervisado, el Perceptrón Multicapa y como algoritmo, el back propagation, ambos disponibles en cualquier programa simulador de redes neuronales. Una vez ejecutado el programa tenemos que crear una red neuronal nueva, eligiendo en primer lugar el número de capas, usualmente tres -ratios de entrada, capa oculta y capa de salida con el estado de la empresa-.

Una vez seleccionado el número de capas, se construye el modelo de red elegido: número de neuronas en cada capa y tipo de conexión. En nuestro ejemplo las neuronas de la capa de entrada serán nueve, una por cada ratio. La capa de salida tendrá una neurona, que puede tomar dos valores, cero para las empresas quebradas y uno para las solventes. Para elegir el número de neuronas de la capa oculta habría que hacer un estudio más profundo de la complejidad del problema que incluye estudiar el número de dimensiones y la existencia de componentes no lineales. En nuestro ejemplo hemos optado porque sean cuatro las neuronas de la capa oculta.


2)
Fase de entrenamiento

La siguiente fase es la de entrenamiento. Durante esta fase de aprendizaje en la mayor parte de los modelos se produce una variación de los pesos sinápticos, coeficientes del modelo, que miden la intensidad de interacción entre las neuronas. En otros modelos se puede producir la incorporación de nuevas neuronas o la pérdida de algunas de ellas. En todos los programas hay que seleccionar el algoritmo, que en nuestro caso es el back propagation así como una serie de parámetros. Con ello estamos en condiciones de iniciar el aprendizaje. La mayoría de los programas muestran un gráfico o tabla en la que se muestran los resultados del aprendizaje para cada iteración.


3)
Fase de test

Tras la fase de aprendizaje se procede a una fase de test, en la que, con nuevos patrones de entrada, comprobamos la eficacia del sistema generado. Si no es aceptable, se debe proceder a repetir la fase de desarrollo, bien utilizando un nuevo conjunto de patrones de entrenamiento, bien modificando el sistema de aprendizaje o la arquitectura. Superada esta fase, la arquitectura, neuronas y conexiones, y los pesos sinápticos quedan fijos pudiendo el sistema operar en modo recuerdo. El modo recuerdo es el modo de operación normal del sistema: dada una entrada proporcionará una salida en consonancia con el aprendizaje recibido.
Los porcentajes de acierto de la red neuronal son positivos, siendo clasificadas correctamente la mayoría de las empresas de la muestra.


4) Otro ejemplo con un programa de ordenador

Básicamente la operativa con cualquier programa de ordenador neuronal implementado en un ordenador convencional es similar. Por ejemplo, DartNet es un programa elaborado en la Universidad de Dartmouth por Jamshed Bharucha y Sean Nolan y está disponible en la dirección de Internet dartvax.dartmouth.edu. Funciona en ordenadores Macintosh y es muy sencillo de usar por lo que puede utilizarse con fines didácticos, aunque tiene muchas limitaciones para utilizarlo en una aplicación real.


5) Una vez ejecutado el programa tenemos que crear una red neuronal nueva

Elegir en primer lugar el número de capas, usualmente tres -ratios de entrada, capa oculta y capa de salida con el estado de la empresa-.


6) Se construye el modelo de red elegido: número de neuronas en cada capa y tipo de conexión.

En este nuevo ejemplo, las neuronas de la capa de entrada serán cinco, una por cada ratio. La capa de salida tendrá una neurona, que puede tomar dos valores, cero para las empresas quebradas y uno para las solventes. Para elegir el número de neuronas de la capa oculta habría que hacer un estudio más profundo de la complejidad del problema que incluye estudiar el número de dimensiones y la existencia de componentes no lineales. En nuestro ejemplo hemos optado porque sean dos las neuronas de la capa oculta.

Diseñar la estructura de la red (número de neuronas y conexiones) es muy sencillo en el programa DartNet

Como podemos apreciar en la figura, el procedimiento para diseñar la estructura es muy sencillo en el programa Dartnet. En el menú existe la opción Construir Red (Network-Building) y el cursor se convierte en un martillo con el que podemos literalmente golpear para ir creando nuevas neuronas y sus conexiones. A continuación se elige la opción Seleccionar Red (Network-Selecting), que nos permite elegir para cada neurona el tipo de función de activación (identidad, sigmoidea o umbral).


7) El siguiente paso es la adecuada selección de los patrones

En nuestro ejemplo tomaremos la muestra de 66 bancos para realizar el aprendizaje, que mostramos en la figura.

Base de datos utilizada para entrenar la red neuronal


8) La siguiente fase es la de entrenamiento o aprendizaje

Durante esta fase de aprendizaje en la mayor parte de los modelos se produce una variación de los pesos sinápticos, coeficientes del modelo, que miden la intensidad de interacción entre las neuronas. En otros modelos se puede producir la incorporación de nuevas neuronas o la pérdida de algunas de ellas. En todos los programas hay que seleccionar el algoritmo, que en nuestro caso es el back propagation así como una serie de parámetros. Con ello estamos en condiciones de iniciar el aprendizaje. La mayoría de los programas muestran un gráfico o tabla en la que se muestran los resultados del aprendizaje para cada iteración. En este caso concreto, como podemos observar en la figura el aprendizaje completo de la muestra se ha obtenido con 636 iteraciones.

Gráfico y tabla con los resultados del aprendizaje


9) Tras la fase de aprendizaje se procede a una fase de test, en la que, con nuevos patrones de entrada, comprobamos la eficacia del sistema generado.

Si no es aceptable, se debe proceder a repetir la fase de desarrollo, bien utilizando un nuevo conjunto de patrones de entrenamiento, bien modificando el sistema de aprendizaje o la arquitectura. Superada esta fase, la arquitectura, neuronas y conexiones, y los pesos sinápticos quedan fijos pudiendo el sistema operar en modo recuerdo. El modo recuerdo es el modo de operación normal del sistema: dada una entrada proporcionará una salida en consonancia con el aprendizaje recibido. Veamos en la figura los resultados del en la que probamos la red neuronal con ratios de una empresa imaginaria.

Resultados del test realizado con los cinco ratios de una empresa


10) Es posible conocer el nivel de excitación de cada neurona.

En este programa se puede obtener una representación visual muy clarificadora: los valores de los pesos sinápticos o coeficientes del modelo se representan con diferentes tonalidades de gris. Además es posible guardar en un fichero los valores de estos coeficientes, opción muy útil para su posterior análisis estadístico.


11) Resultados con el Perceptron

La tabla siguiente muestra los resultados del test, para el Análisis Discriminante Lineal (ADL) y el Perceptrón Multicapa (PMC) con jackknife. En resumen 7 errores para el ADL y 4 para el PMC.

Banco tipo ADL Score Prob No ERRORES PMC Score No ERRORES
1 F SI -1,27 0,08 7 32 34 41 51 53 54 58 SI 0,03 4 10 34 41 54
2 F SI -6,42 0 7 32 34 41 51 53 54 58 SI 0,1 4 10 34 41 54
3 F SI -0,71 0,23 7 32 34 41 51 53 54 58 SI 0,17 4 10 34 41 54
4 F SI -0,3 0,42 7 32 34 41 51 53 54 58 SI 0,23 4 10 34 41 54
5 F SI -0,95 0,15 7 32 34 41 51 53 54 58 SI 0,07 4 10 34 41 54
6 F SI -0,52 0,31 7 32 34 41 51 53 54 58 SI 0,02 4 10 34 41 54
7 F SI -0,87 0,18 7 32 34 41 51 53 54 58 SI 0,32 4 10 34 41 54
8 F SI -0,56 0,29 7 32 34 41 51 53 54 58 SI 0,24 4 10 34 41 54
9 F SI -1,05 0,13 7 32 34 41 51 53 54 58 SI 0,03 4 10 34 41 54
10 F SI -0,48 0,33 7 32 34 41 51 53 54 58 error 0,99 4 10 34 41 54
11 F SI -1,3 0,08 7 32 34 41 51 53 54 58 SI -0,04 4 10 34 41 54
12 F SI -2,18 0,02 7 32 34 41 51 53 54 58 SI 0,2 4 10 34 41 54
13 F SI -0,4 0,48 8 20 32 34 41 51 53 54 58 SI 0,16 4 10 34 41 54
14 F SI -3,8 0,01 7 32 34 41 51 53 54 58 SI 0,11 4 10 34 41 54
15 F SI -0,64 0,26 7 32 34 41 51 53 54 58 SI 0,41 3 34 41 54
16 F SI -1,91 0,03 7 32 34 41 51 53 54 58 SI 0,14 4 10 34 41 54
17 F SI -4,35 0 7 32 34 41 51 53 54 58 SI 0,04 3 34 41 54
18 F SI -1,64 0,03 7 32 34 41 51 53 54 58 SI 0,04 4 10 34 41 54
19 F SI -0,5 0,31 7 32 34 41 51 53 54 58 SI 0,35 4 10 34 41 54
20 F error -0,08 0,64 8 20 32 34 41 51 53 54 58 SI 0,05 3 10 34 54
21 F SI -1,81 0,02 7 32 34 41 51 53 54 58 SI 0,28 4 10 34 41 54
22 F SI -1,12 0,1 7 32 34 41 51 53 54 58 SI 0,03 4 10 34 41 54
23 F SI -0,61 0,26 7 32 34 41 51 53 54 58 SI 0,25 4 10 34 41 54
24 F error 1,37 0,97 8 24 32 34 41 51 53 54 58 SI 0,06 3 34 41 54
25 F SI -1 0,13 7 32 34 41 51 53 54 58 SI 0,13 4 10 34 41 54
26 F SI -1,43 0,05 7 32 34 41 51 53 54 58 SI 0,09 4 10 34 41 54
27 F SI -0,39 0,37 7 32 34 41 51 53 54 58 SI 0,06 4 10 34 41 54
28 F SI -0,42 0,35 7 32 34 41 51 53 54 58 SI 0,34 4 10 34 41 54
29 F SI -0,24 0,44 7 32 34 41 51 53 54 58 SI 0,46 5 10 15 34 41 54
30 S SI 1,53 0,98 7 32 34 41 51 53 54 58 SI 0,93 4 10 34 41 54
31 S SI 2,39 1 7 32 34 41 51 53 54 58 SI 1,03 4 10 34 41 54
32 S error -0,62 0,24 8 20 32 34 41 51 53 54 58 SI 0,76 4 10 34 41 54
33 S SI 0,62 0,84 7 32 34 41 51 53 54 58 SI 0,96 4 10 34 41 54
34 S error -0,7 0,21 7 32 34 41 51 53 54 58 error 0,06 5 10 15 34 41 54
35 S SI 0,23 0,69 7 32 34 41 51 53 54 58 SI 0,99 4 10 34 41 54
36 S SI 0,57 0,83 7 32 34 41 51 53 54 58 SI 0,97 4 10 34 41 54
37 S SI 2,96 1 7 32 34 41 51 53 54 58 SI 1,07 4 10 34 41 54
38 S SI 0,25 0,7 7 32 34 41 51 53 54 58 SI 1,08 3 34 41 54
39 S SI -0,1 0,51 7 32 34 41 51 53 54 58 SI 0,77 4 10 34 41 54
40 S SI 0,69 0,86 7 32 34 41 51 53 54 58 SI 0,97 5 10 28 34 41 54
41 S error -0,25 0,42 7 32 34 41 51 53 54 58 error 0,35 4 10 34 41 54
42 S SI 2,79 1 7 32 34 41 51 53 54 58 SI 0,95 3 34 41 54
43 S SI 0,47 0,79 7 32 34 41 51 53 54 58 SI 0,69 4 10 34 41 54
44 S SI 1,33 0,96 7 32 34 41 51 53 54 58 SI 1,12 4 10 34 41 54
45 S SI 1,29 0,96 7 32 34 41 51 53 54 58 SI 1,01 4 10 34 41 54
46 S SI 0,86 0,9 7 32 34 41 51 53 54 58 SI 0,99 4 10 34 41 54
47 S SI 4,85 1 8 32 34 39 41 51 53 54 58 SI 0,97 4 10 34 41 54
48 S SI 1,54 0,98 7 32 34 41 51 53 54 58 SI 1 4 10 34 41 54
49 S SI 2,43 1 7 32 34 41 51 53 54 58 SI 1,01 3 34 41 54
50 S SI 0,33 0,73 7 32 34 41 51 53 54 58 SI 0,88 4 10 34 41 54
51 S error -0,42 0,33 7 32 34 41 51 53 54 58 SI 0,59 4 10 34 41 54
52 S SI 0,23 0,69 7 32 34 41 51 53 54 58 SI 0,72 4 10 34 41 54
53 S error -1,14 0,08 8 20 32 34 41 51 53 54 58 SI 1,01 4 10 34 41 54
54 S error -1,35 0,05 7 32 34 41 51 53 54 58 error 0,01 5 10 15 34 41 54
55 S SI 4,02 1 7 32 34 41 51 53 54 58 SI 0,97 4 10 34 41 54
56 S SI 0,46 0,79 7 32 34 41 51 53 54 58 SI 0,8 3 34 41 54
57 S SI 1,03 0,93 7 32 34 41 51 53 54 58 SI 0,51 4 10 34 41 54
58 S error -0,86 0,15 8 32 34 39 41 51 53 54 58 SI 0,57 4 10 34 41 54
59 S SI 1,05 0,93 7 32 34 41 51 53 54 58 SI 0,72 3 34 41 54
60 S SI 1,38 0,97 7 32 34 41 51 53 54 58 SI 1,09 4 10 34 41 54
61 S SI 0,9 0,91 7 32 34 41 51 53 54 58 SI 0,99 3 34 41 54
62 S SI 1,62 0,98 7 32 34 41 51 53 54 58 SI 1,11 4 10 34 41 54
63 S SI 1,42 0,97 7 32 34 41 51 53 54 58 SI 1,08 4 10 34 41 54
64 S SI 2,23 1 7 32 34 41 51 53 54 58 SI 1,17 4 10 34 41 54
65 S SI 1,06 0,93 7 32 34 41 51 53 54 58 SI 1,12 4 10 34 41 54
66 S SI 1,82 0,99 7 32 34 41 51 53 54 58 SI 1,11 4 10 34 41 54
PROMEDIO 9 7.1 4 3.9

Ir a CiberConta Retroceder  Inicio leccion   Avanzar