la granja: artículo científico / scientific paper revista de...

12
Artículo científico / Scientific paper METEOROLOGÍA COMPUTACIONAL L A GRANJ A: REVISTA DE CIENCIAS DE LA VIDA DOI: 10.17163/lgr.n21.2015.04 ANÁLISIS C OMPARATIVO DE AJUSTE EN E NTRENAMIENTO DE R EDES NEURONALES ARTIFICIALES A PARTIR DE LAS L IBRERÍAS OPEN NN Y ALGLIB COMPARATIVE ANALYSIS OF ADJUSTMENT IN ARTIFICIAL NEURAL NETWORKS TRAINING USING OPEN NN AND ALGLIB LIBRARIES Erith Muñoz 1,2 y Cesar Seijas 1 1 Facultad de Ingeniería, Universidad de Carabobo, Valencia-Venezuela 2 Universidad San Francisco de Quito, Colegio de Ciencias e Ingeniería - El Politécnico. Calle Diego de Robles y Vía Interoceánica, Campus Cumbayá, Edif. Newton. Casilla Postal 17-1200-841, Quito, Ecuador. Autor para correspondencia: [email protected] Manuscrito recibido el 19 de agosto de 2014. Aceptado, tras revisión, el 1 de junio de 2015. Resumen En las últimas décadas son muchos los avances que han tenido lugar en el desarrollo de aplicaciones y alcances de las redes neuronales artificiales, y de igual modo el desarrollo tecnológico en el área de la computación. Este tipo de avances han incidido directamente en el número de publicaciones de aplicaciones, en diversas áreas del conocimiento, basadas en este método de inteligencia artificial. Ahora bien, hasta el presente sigue siendo tema de discusión la idoneidad y aplicabilidad de herramientas de software libre para facilitar la implementación y la calidad de resultados. En este contexto, este trabajo representa un análisis comparativo de aplicaciones usando las librerías ALGLIB y Open NN (Open Source Neural Networks C++ Library), orientadas al entrenamiento y reproducción de redes neuronales artificiales. De igual modo, se establece una evaluación de los resultados obtenidos a partir de los niveles de correlación entre la salida de valores para redes entrenadas y un conjunto de datos de entrenamiento simulados. Palabras claves: Redes Neuronales Artificiales, ALGLIB, Open NN, Algoritmo Quasi-Newton, C++. Abstract In the last decades, there have been a considerable amount of innovations in the development of applications and the scope of artificial neural networks, and likewise the technological development in computer science. These improvements have had a direct effect in the number of publications on applications, in diverse areas of knowledge, based on this artificial intelligence method. Until now, the adequacy and applicability of free software tools to facilitate the implementation and the quality of results is still under discussion. In this context, this work presents a comparative analysis of such applications using libraries ALGLIB and Open NN, oriented to training and reproduction of artificial neural networks. Also, we propose an evaluation of the results obtained from the levels of correlation between the output values for trained networks and a set of data for simulated training. Keywords: Artificial neural networks, ALGLIB, Open NN, Quasi-Newton algorithm, C++ Forma sugerida de citar: Muñoz, E. y C. Seijas 2015. Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partir de las Librerías Open NN y ALGLIB. La Granja: Revista de Ciencias de la Vida. Vol. 21(1): 49-60. ISSN: 1390-3799. L A GRANJ A: Revista de Ciencias de la Vida 21(1) 2015: 49-60. c 2015, Universidad Politécnica Salesiana, Ecuador. 49

Upload: others

Post on 29-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONAL

LA GRANJA:REVISTA DE

CIENCIAS DE LA VIDA

DOI: 10.17163/lgr.n21.2015.04

ANÁLISIS COMPARATIVO DE AJUSTE EN ENTRENAMIENTO DE

REDES NEURONALES ARTIFICIALES A PARTIR DE LAS LIBRERÍAS

OPEN NN Y ALGLIB

COMPARATIVE ANALYSIS OF ADJUSTMENT IN ARTIFICIAL NEURAL

NETWORKS TRAINING USING OPEN NN AND ALGLIB LIBRARIES

Erith Muñoz1,2 y Cesar Seijas1

1Facultad de Ingeniería, Universidad de Carabobo, Valencia-Venezuela2Universidad San Francisco de Quito, Colegio de Ciencias e Ingeniería - El Politécnico. Calle Diego de Robles y Vía Interoceánica,

Campus Cumbayá, Edif. Newton. Casilla Postal 17-1200-841, Quito, Ecuador.

Autor para correspondencia: [email protected]

Manuscrito recibido el 19 de agosto de 2014. Aceptado, tras revisión, el 1 de junio de 2015.

Resumen

En las últimas décadas son muchos los avances que han tenido lugar en el desarrollo de aplicaciones y alcances de las redes neuronalesartificiales, y de igual modo el desarrollo tecnológico en el área de la computación. Este tipo de avances han incidido directamenteen el número de publicaciones de aplicaciones, en diversas áreas del conocimiento, basadas en este método de inteligencia artificial.Ahora bien, hasta el presente sigue siendo tema de discusión la idoneidad y aplicabilidad de herramientas de software libre parafacilitar la implementación y la calidad de resultados. En este contexto, este trabajo representa un análisis comparativo de aplicacionesusando las librerías ALGLIB y Open NN (Open Source Neural Networks C++ Library), orientadas al entrenamiento y reproducciónde redes neuronales artificiales. De igual modo, se establece una evaluación de los resultados obtenidos a partir de los niveles decorrelación entre la salida de valores para redes entrenadas y un conjunto de datos de entrenamiento simulados.

Palabras claves: Redes Neuronales Artificiales, ALGLIB, Open NN, Algoritmo Quasi-Newton, C++.

Abstract

In the last decades, there have been a considerable amount of innovations in the development of applications and the scope ofartificial neural networks, and likewise the technological development in computer science. These improvements have had a directeffect in the number of publications on applications, in diverse areas of knowledge, based on this artificial intelligence method. Untilnow, the adequacy and applicability of free software tools to facilitate the implementation and the quality of results is still underdiscussion. In this context, this work presents a comparative analysis of such applications using libraries ALGLIB and Open NN,oriented to training and reproduction of artificial neural networks. Also, we propose an evaluation of the results obtained from thelevels of correlation between the output values for trained networks and a set of data for simulated training.

Keywords: Artificial neural networks, ALGLIB, Open NN, Quasi-Newton algorithm, C++

Forma sugerida de citar: Muñoz, E. y C. Seijas 2015. Análisis Comparativo de Ajuste en Entrenamiento de RedesNeuronales artificiales a partir de las Librerías Open NN y ALGLIB. La Granja: Revistade Ciencias de la Vida. Vol. 21(1): 49-60. ISSN: 1390-3799.

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 49

Page 2: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

1. Introducción

El objetivo de este trabajo es presentar un análisiscomparativo entre las librerías Open NN y ALGLIBpara entrenamiento y reproducción de redes neuro-nales artificiales, ambas de características de softwa-re libre, a partir de la evaluación del ajuste en unproceso de entrenamiento. Los datos usados parael entrenamiento de las redes neuronales fueron si-mulados siguiendo la metodología presentada en laguía de usuarios del RTTOV v10 (Radiative Transferfor TOVS satellite), para la simulación de radianzasdebido a la dispersión de microondas por nubes yprecipitación (Hocking et al., 2012). Estos datos estáncompuestos por 22 variables de entrada correspon-dientes a los 22 canales del sensor ATMS a bordo dela plataforma Suomi-NPP, y una variable de salidarepresentada por la tasa de precipitación. Además,los datos comprenden observaciones sobre océano ycontinente en período de verano.

En este contexto, se entrenan redes neuronalespara que las salidas generen tasas de precipitación apartir de las temperaturas de brillo proporcionadaspor datos de los canales del sensor ATMS a bordo dela plataforma Suomi-NPP. Con la finalidad de eva-luar las diferencias inherentes a la estacionalidad deprocesos de precipitación se entrenan redes neuro-nales artificiales sobre superficie de océano y conti-nente en condiciones de verano en referencia al he-misferio norte.

2. Generalidades

Las redes neuronales artificiales representan una delas técnicas más conocidas de las que forman par-te del área de Inteligencia Artificial, la cual algu-nos autores consideran, que ha sido inspirada porla naturaleza de la inteligencia humana en su afánpor comprender y desarrollar entidades inteligentessimples que permitan crear sistemas de inteligenciacomplejos. Haykin (1999) proporcionó el siguienteconcepto para ANNs: Una Red Neuronal Artificiales un procesador distribuido dotado de alto nivelde paralelismo construido a partir de unidades deprocesamientos simples, las cuales tienen una capa-cidad natural de almacenar conocimiento conformea la experiencia y disponer de dicho conocimientopara su uso (Haykin, 1999).

De acuerdo a Mas y Flores (2008), la definición

presentada por Haykin (1999) asemeja a las ANNscon el cerebro en dos aspectos, en primer lugar re-salta el hecho de que el conocimiento es adquiridopor la red desde su medio, a través de un procesode aprendizaje y por otra parte las fuerzas de las co-nexiones inter-neuronas, conocidas como pesos si-nápticos, son usadas para almacenar el conocimien-to adquirido. El primer aspecto está relacionado alas características de los datos de entrada y salida,así como con los mecanismos de entrenamiento dela red, mientras que el segundo aspecto está relacio-nado con la estructura de la ANN. A continuaciónse proporciona un tratamiento formal del conjuntode tópicos asociados con ANNs usados en esta in-vestigación.

De acuerdo con Haykin (1999), toda estructuracompleja de ANNs está conformada por una uni-dad de procesamiento simple denominada neuro-na (Haykin, 1999). Una neurona puede considerarsecomo una entidad que emite una respuesta (salida)debido a la estimulación generada (activación) porel recibimiento de señales conocidas (entradas). Enotras palabras, la neurona recibe información de en-trada para la cual ella emite respuestas en funciónde un conocimiento previo, lo cual implica que si laneurona recibe estímulos desconocidos, la respues-ta pudiera ser no acorde a lo esperado. La correcciónde respuestas no esperadas por parte de la neuronaque recibe nuevos estímulos, se resuelve mediantela aplicación de procesos de entrenamiento.

En la Figura 1 se aprecia el modelo matemá-tico de la estructura de una neurona, donde con-siderando que j es el índice de identificación dela neurona estimulada, se tiene entonces que X ={x1, x2, x3, . . . , xn} es el vector de entradas que con-tiene información de n neuronas inter-conectadascon j. Por otro lado wij es el peso sináptico en-tre cada una de las n neuronas, identificadas coni = 1, 2, 3, . . . , n, y la neurona j; θj es el umbral deactivación de la neurona j también conocido comoumbrales. Por otra parte, f es la función de activa-ción asociada a la neurona j, generalmente se usauna función sigmoidal, tal como la tangente hiper-bólica. La relación matemática entre las entradas yla salida yj de la neurona esta dado como:

yj = f

(

n

∑i=1

wijxi − θj

)

(1)

La ecuación 1 representa una generalización sim-ple de la ecuación de McCulloch-Pitts (Hertz et al.,

50LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.

Page 3: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partirde las Librerías Open NN y ALGLIB

1991), lo cual hace referencia a la similitud entre elmodelo biológico neuronal con el modelo matemá-tico presentado, con la salvedad de que en este caso,la relación entrada-salida no considera dependenciatemporal, es decir es una relación atemporal y porotro lado no se consideran en la salida efectos deacumulación debido a los datos de entrada, lo cualse traduce en que no se almacena información sobreestados anteriores de las entradas, sólo el momentoactual (Xingui y Shaohua, 2010). La forma en que lasneuronas son dispuestas en una red determinan laarquitectura o topología de la red, la cual está estre-chamente relacionada con la selección del algoritmode entrenamiento (Mas y Flores, 2008).

Figura 1. Modelo matemático de una neurona (Xingui yShaohua, 2010).

2.1 El modelo del perceptrón

El modelo del perceptrón fue introducido por Ro-senblatt (1958) y también de forma independientepor Widrow y Hoff (1960), como un mecanismo ca-paz de ser entrenado en forma supervisada y a suvez como la arquitectura más simple de ANNs. Enla Figura 2 se muestra la arquitectura del percep-trón, el mismo consta de una capa de entrada conec-tada a una capa de salida, en la capa de entrada elnúmero de neuronas n es igual a la cantidad de da-tos de entrada xi, mientras que en la capa de salidase tienen m neuronas de salida yj.

Figura 2. Algoritmo para la estimación de Temperatura(Hsieh, 2009).

La salida yj de una neurona en términos de lacombinación lineal de entradas xj, está definida poruna función de activación. Existen diferentes tiposde funciones de activación entre las cuales se desta-can, por ser usados en la presente investigación, lafunción lineal y las funciones sigmoidales (Hiperbó-lica y Logística).

La forma de las funciones sigmoidales permitensimular la actividad de una neurona biológica, de-bido a que a partir de las combinaciones de los dife-rentes estímulos recibidos por una neurona, es posi-ble describir estados de transición intermedios entrelos estados absolutos de activación y no- activaciónen la respuesta neuronal. Tal y como se aprecia enla figura 3, la función de activación para respues-tas binarias está representada en la subfigura 3.a porla función escalón, en la subfigura 3.b se muestra lafunción lineal, y en la 3.c y 3.d las funciones sigmoi-dales.

Figura 3. Funciones de activación: a) Escalón , b) Lineal, c)Logística, d) Hiperbólica (Mas y Flores, 2008).

En referencia al modelo del perceptrón debe aña-dirse que las limitaciones fueron puestas en eviden-cia en el trabajo de Minsky y Papert (1969), en elcual tras un estudio basado en aplicaciones de lógi-ca operacional, el perceptrón no permitió conseguirsoluciones para el problema del XOR, debido a quees un problema linealmente no separable, destacan-do por ende, la aplicabilidad de la arquitectura delperceptrón exclusivamente a problemas linealmenteseparables.

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 51

Page 4: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

2.2 El modelo del perceptrón multicapa

Posterior al conocimiento de las limitaciones delmodelo del perceptrón relacionadas al requerimien-to de la linealidad de los datos de entrada y salida,se pensaba que esta dificultad podía ser superadamediante la inclusión de capas ocultas entre la capade entrada y salida, sin embargo para la época nohabía ningún algoritmo para resolver ANNs multi-capas. El trabajo de Rumelhart et al. (1986), fijó lasbases que permitieron posteriormente el desarrollodel Perceptrón Multicapa (MLP, por sus siglas en in-glés). En el mismo se presenta el re-descubrimientodel Algoritmo de Propagación Dirigida hacia Atrás,el cual había sido presentado previamente por Wer-bos (1974).

En la Figura 4 se muestra la estructura de unMLP de arquitectura xi − hj − yk (Una capa de en-trada x conformada por i neuronas, una oculta h de jneuronas y una capa de salida y de k neuronas). Estaarquitectura de ANN es conocida como PerceptrónMulticapa Dirigido hacia Adelante (MLPFF, por sussiglas en inglés) la cual se caracteriza por el hechode que, cada neurona de cada capa, está conectadacon cada neurona de la próxima capa.

Figura 4. Arquitectura de un MLP, en la cual se muestra lacapa de entrada de datos, una capa oculta, y una de capade salida (Hsieh, 2009).

En este caso se deben implementar dos funcio-nes de activación una para activar a las neuronas dela capa oculta al ser estimuladas por las neuronasde la capa de entrada , y otra para activar las neuro-nas de la capa de salida tras ser estimuladas por lasneuronas de la capa oculta. En este contexto consi-derando en primer lugar la salida de las neuronas hj

de la capa oculta, se tiene la siguiente ecuación:

hj = f

(

n

∑i=1

wijxi − bj

)

(2)

Donde, de forma similar a la ecuación 1, wij es elpeso sináptico entre cada neurona de entrada i conla j-esima neurona de la capa oculta, f es la funciónde activación y bj es el umbral de activación de laneurona de la capa oculta j. Por otra parte, la salidapara la neurona yk de la capa de salida está dada porla ecuación siguiente:

yk = g

(

n

∑j=1

w̆jkhj − b̆k

)

(3)

Donde w̆jk es el peso sináptico entre cada neuro-na j de la capa oculta con cada neurona yk de la capade salida y g es la función de activación. La exten-sión de la figura 3, para el caso de N capas ocultasresulta natural, siendo necesario obtener la salida endependencia de la función de activación entre cadados capas sucesivas, de tal forma como se mostrópara hj y yk en este ejemplo.

2.3 Entrenamiento de ANNs.

De acuerdo con Blackwell y Chen (2009), gene-ralmente los problemas atmosféricos basados enANNs están enfocados como un problema de clasi-ficación mediante reconocimiento de patrones (RP,por sus siglas en inglés) o como un problema de re-gresión de funciones. En estimaciones de precipita-ción, la técnica de RP es empleada generalmente pa-ra discriminar entre pixeles de precipitación y de noprecipitación en una escena, mientras que la regre-sión de funciones es empleada para estimar valoresde tasas de precipitación. En esta investigación lasANNs se entrenan para generar en la salida valo-res de tasa de precipitación, por lo tanto, el enfoqueteórico que sustenta esta investigación está vincula-do al entrenamiento de ANNs orientadas a la reso-lución de problemas de estimación de precipitaciónmediante regresión de funciones.

En este sentido es propicio el contexto para de-notar que, se define entrenamiento de una ANN alproceso de determinar valores óptimos de pesos si-nápticos y bias que maximicen la aproximación delconjunto de salidas de datos predichos mediante la

52LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.

Page 5: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partirde las Librerías Open NN y ALGLIB

ANN, con el conjunto de datos de salida que repre-sentan los datos objetivos de ajuste o de prediccióndurante la fase de entrenamiento. Las característicasintrínsecas de la ANN determinan en gran medidasu capacidad y propiedad para ser entrenadas, entreestas características se pueden mencionar la estruc-tura de la ANN, forma de inicialización de la red, asícomo también las fases de regularización que permi-ten la autoevaluación en tiempo real del proceso deentrenamiento.

El proceso de post-entrenamiento requiere ade-más un proceso de evaluación de la calidad del pro-ceso, el cual puede ser realizado mediante una re-gresión lineal entre la salida de la red y los datos ob-jetivos, así como también mediante la estimación delcoeficiente de correlación. Hsieh (2009) afirma queel proceso de entrenamiento generalmente es lleva-do a cabo al minimizar una función de costo J, queconforme a su metodología, ha sido definida comoun medio del error medio cuadrático (MSE, por sussiglas en inglés) entre la salida obtenida por la ANNy las salidas del conjunto de datos usados duranteel proceso de entrenamiento (Hsieh, 2009). Matemá-ticamente la función J tiene la siguiente forma:

J =1N

N

∑n=1

{

12 ∑

k

[ynk − yn

dk]2

}

(4)

En la ecuación 4 ydk representa el dato ob-jetivo (meta proporcionada en el entrenamiento),yk es la salida generada mediante la ANN, n =1, 2, 3, . . . , N, son el número de casos, observacio-nes o mediciones. De esta manera, se puede plan-tear que el proceso de entrenamiento de ANNs con-siste en el empleo de algoritmos de optimización(comúnmente denominados algoritmos de entrena-miento) que permitan determinar valores w y b paralos cuales la función de costo J resulte minimizada.

2.4 Entrenamiento mediante propaga-ción de errores hacia atrás

El término Propagación hacia Atrás (BP, por sus si-glas en inglés) tiene diferentes connotaciones en elcampo de las ANN, por una parte se suele asociareste término a la arquitectura de la ANN, y por otra,también se denomina BP al mecanismo de minimi-zación de la función de costo presentada por Rumel-hart et al. (1986), que es en el contexto en el cual estetérmino es empleado en la presente investigación.

Según Bishop (2005), el algoritmo BP consiste enel entrenamiento de MLPs mediante la aplicacióndel método del Gradiente Descendiente (DG, porsus siglas en inglés) sobre la función de costo, sinembargo cabe destacar que Xingui (2010) mencio-na que existen varios métodos mejorados basadosen BP, como por ejemplo el Gradiente Conjugado,Newton, Quasi-Newton, Levenberg-Maquardt, en-tre otros (Xingui y Shaohua, 2010). La optimizaciónde pesos y bias es llevada a cabo mediante BP usan-do Gradiente Descendente a partir de la actualiza-ción iterativa en la dirección en la que la función decosto disminuye mas rápido, es decir en la direcciónnegativa del gradiente.

En esta investigación se usa el algoritmo Quasi-Newton para el proceso de entrenamiento de lasANNs, debido principalmente a que es un algorit-mo de segundo orden mejorado, lo cual implica unabuena relación entre rendimiento y tiempo requeri-do para el entrenamiento, por otro lado este algorit-mo está implementado en las dos librerías de licen-cia abierta para C++, que son OPEN NN y ALGLIB,lo cual permite diseñar condiciones estándares parallevar a cabo el análisis comparativo.

3. Metodología de la investiga-ción

De acuerdo Bellerby et al. (2000), una red neuro-nal artificial de dos capas ocultas proporciona nive-les de complejidad adecuados para modelar la no-linealidad entre los datos de entrada y salida aso-ciados a problemas de segundo orden, garantizan-do además, costos computacionales admisibles pararealizar el proceso de regresión no-lineal convencio-nal que involucran los métodos generales de estima-ción de tasa de precipitación usando ANNs en basea datos satelitales.

En este sentido, con la finalidad de emular los fe-nómenos físicos involucrados en el proceso de pre-cipitación, en este trabajo se entrenan diferentes mo-delos de redes neuronales artificiales, todos con unacapa de entrada, dos capas ocultas, una capa de sa-lida y se utilizan como datos de entrada diferen-tes combinaciones de canales del sensor ATMS. Es-ta topología de red es constante en los diversos ex-perimentos numéricos realizados en esta investiga-ción, sin embargo, se presentan algunas variantes encuanto al número de neuronas que componen la ca-

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 53

Page 6: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

pa de entrada y las capas ocultas.

En este orden de ideas, con la primicia de pro-porcionar mayor información sobre la arquitecturade red neuronal usada en este trabajo, en la Fig. 4 semuestran las diferentes partes que conforman cadared neuronal artificial.

Figura 5. Diseño secuencial de la topología de red neuro-nal de dos capas ocultas.

3.1 Capa de entrada

La importancia de la capa de entrada se encuentraimplícita en el hecho de que la red neuronal debeemular las relaciones físicas y matemáticas que tie-nen lugar entre las variables que conforman los da-tos de entrada y salida que representan las magnitu-des predichas. En este sentido, deben realizarse va-rias consideraciones con la finalidad de llevar a cabouna óptima selección de los datos de entrada, entrelas que cabe resaltar el hecho de que dichas varia-bles tengan poca correlación entre sí, pero alta co-rrelación con la salida de la ANN, así como tambiénque contengan poco contenido de ruido en el casode que los datos provengan de instrumentos de me-dición.

Con respecto a la estructura de la capa de entra-da, es importante precisar que el conjunto de varia-bles de entrada define el número de neuronas en es-ta capa. Así pues, el número de variables de entradatiene una relación directa con el diseño de la estruc-tura de neuronas de las capas ocultas de la red y porende con el desempeño de la red entrenada. Es im-portante además resaltar que en el proceso de en-trenamiento de la red neuronal, los datos de inicia-lización del proceso de entrenamiento entrada estánconformados por variables de entrada y variables desalida.

Las variables de entrada están representadas porel conjunto de canales del ATMS que tienen una al-

ta relación con la posibilidad de predecir la tasa deprecipitación, y por otro lado los datos de salida sonvalores de tasa de precipitación simulados para lasdiferentes combinaciones de los datos de entradas.Posterior a esta separación descriptiva sobre los da-tos entrada, los mismos son divididos en tres sub-conjuntos de datos; el primero corresponde a los da-tos de entrenamiento para la red, el segundo a datosque sirven para la verificación de ajuste en el tiempodel proceso de entrenamiento y el tercero para reali-zar pruebas sobre el desempeño predictivo de la redneuronal.

Las variables de entrada están representadas porel conjunto de canales del ATMS que tienen una al-ta relación con la posibilidad de predecir la tasa deprecipitación, y por otro lado los datos de salida sonvalores de tasa de precipitación simulados para lasdiferentes combinaciones de los datos de entradas.Posterior a esta separación descriptiva sobre los da-tos entrada, los mismos son divididos en tres sub-conjuntos de datos; el primero corresponde a los da-tos de entrenamiento para la red, el segundo a datosque sirven para la verificación de ajuste en el tiempodel proceso de entrenamiento y el tercero para reali-zar pruebas sobre el desempeño predictivo de la redneuronal.

3.2 Escalamiento y desescalamiento delos datos

En la Fig. 4 se puede apreciar en la etiqueta A que,antes de que los datos sean integrados a la capa deentrada, hay un proceso de escalamiento. El proce-so de escalamiento puede ser llevado a cabo cuandolos datos representan linealidad en cuanto a la esca-la, sin embargo es conveniente hacerlo para expre-sar los datos de entrada en orden de magnitud ce-ro, lo cual ayuda a alcanzar una mejor aproximaciónpor parte del algoritmo de entrenamiento. De igualforma se aprecia que en la etiqueta H, nuevamentese hace el desescalamiento de los datos, lo cual esimprescindible para expresar los resultados en lasmagnitudes originales.

3.3 Capas ocultas

En la arquitectura de las redes que son entrena-das para los efectos de este trabajo, se han inclui-do dos capas ocultas, siguiendo las recomendacio-nes de Blackwell y Chen (2005). De este modo, la ar-

54LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.

Page 7: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partirde las Librerías Open NN y ALGLIB

quitectura base para la evaluación del entrenamien-to de redes neuronales es 10 neuronas en la primeracapa oculta y 5 en la segunda, tomando como refe-rencia el trabajo de Chen et al. (2006). A partir de estaarquitectura base, se evalúa el desempeño de cadared entrenada y en función de la calidad de resul-tados obtenidos se plantean experimentos alternati-vos con diferentes números de neuronas en ambascapas ocultas.

3.4 Función de activación

En la Fig. 4 se aprecian 2 capas de activación, unacon la etiqueta D que corresponde a las neuronasde la capa oculta 1 y otra con la etiqueta F que estáasociada a la capa oculta 2, en ambos casos se ha se-leccionado como función de activación a la funciónhiperbólica. Es importante mencionar, que en la Fig.4 ha sido ignorada una tercera capa de activaciónque corresponde a las neuronas de la capa de salida,esta omisión se debe al hecho de que la función deactivación aplicada en esta etapa es la lineal, la cualpara los efectos este trabajo ha sido implementadaen una relación uno a uno.

3.5 Características de ALGLIB

ALGLIB es un conjunto de herramientas compu-tacionales y numéricas con versiones comercialesy gratuitas, orientadas a implementaciones mate-máticas aplicadas. ALGLIB contiene interfaces dedesarrollo para la reproducción y entrenamiento deANNs, que están compuestas por librerías dispo-nibles para ser compiladas y usadas en varios len-guajes de programación, sin embargo en este traba-jo las implementaciones han sido llevadas a cabo enC++ para establecer una comparación con OpennNN, que está desarrollada exclusivamente en estelenguaje.

Dentro de las ventajas que aporta ALGLIB pa-ra implementaciones de ANNs resalta el hecho deque se pueden entrenar ANNs tanto para clasifi-cación como para regresión lineal, por otra partecuenta con tres algoritmos de entrenamiento queson, el L-BFGS (Limited Memory Broyden-Fletcher-Goldfarb-Shanno) que es un método Quasi- Newtoncon costo de iteraciones fijas cuyo uso es recomen-dable en problemas con gran cantidad de datos, el

Levenberg-Marquardt que está fundamentado

en el uso de la función de error exacta Hessiana, y elmétodo de parada temprana, el cual evita el sobre-entrenamiento a partir de la finalización automáticadel proceso de entrenamiento mediante parámetrosdeterminados en el algoritmo (http://www.alglib.net/dataanalysis/neuralnetworks.php).

Una ventaja destacable de la implementación delalgoritmo Quasi-Newton en ALGLIB, es el hechode que presenta criterios de parada predefinidos,lo cual garantiza una convergencia óptima duran-te el proceso de entrenamiento, y al mismo tiempoproporciona 3 parámetros que permiten la modifica-ción del criterio de parada sin perder generalidad enlas características de optimización. De este modo, esposible establecer procedimientos de entrenamien-to de ANNs, con pocos pasos de configuración delalgoritmo y de forma óptimizada.

3.6 Características de Open NN

Open Neural Network (Open NN) es una libre-ría gratuita basada en C++ para el entrenamien-to y reproducción de ANNs. Posee herramientaspara el manejo y disposición de datos, ademásde contar con una amplia variedad de algoritmosde entrenamiento entre los que resaltan el métododel Gradiente Descendiente, Gradiente Conjugado,Newton, Quasi-Newton, Levenberg-Marquardt, en-tre otros. Al igual que ALGLIB proporciona herra-mientas para entrenar redes para clasificación y re-gresión lineal, pero a diferencia de ALGLIB, OpenNN tiene una documentación que incluye más de10 ejemplos de soluciones de problemas a partir delentrenamiento de ANNs por diferentes algoritmos(http://www.cimne.com/flood/Links.asp).

La arquitectura de Open NN, y la implementa-ción del algoritmo Quasi-Newton, permiten al usua-rio crear estrategias de entrenamiento a partir de laconfiguración de un criterio de parada por un in-cremento mínimo de desempeño, cumplimiento demeta, meta de gradiente normal, y también por laevaluación de decremento de generalización máxi-ma. También es posible establecer configuracionespara llevar a cabo el proceso de entrenamiento en 3fases, de este modo se usa un primer algoritmo pa-ra llevar a estabilidad y convergencia los bías y pe-sos sinápticos (Generalmente un algoritmo de pri-mer orden como el Gradiente Descendente), uego elsegundo algoritmo que realiza el proceso de entre-namiento, y un tercer algoritmo para optimizar el

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 55

Page 8: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

proceso.

Para los efectos de esta investigación se ha usadoun solo algoritmo, para evaluar las características deajuste de cada librería en condiciones similares. Deigual forma es importante mencionar que el criteriode parada utilizado fue el de la evolución de gene-ralización, ya que evita el sobreentrenamiento de laANN.

4. Resultados

A continuación se presenta el diseño de las ANNspara cada experimento, así como también los resul-tados derivados para cada una de las librerías:

4.1 Entrenamiento sobre superficie decontinente

En la tabla 1 se aprecia el conjunto de experimentosdiseñados para el proceso de entrenamiento en ve-rano, cada uno tiene asociado un número de referen-cia, un código para facilitar su identificación duran-te el entrenamiento de la red neuronal, y finalmentelos canales seleccionados como datos de entrada.

Número Código Canales

1 LS_1 3,4,5,16,17,18,19,20,21,222 LS_2 18,19,20,21,223 LS_3 5,17, 18,19,20,21,22

Tabla 1. Diseño de experimentos de entrenamiento de laANN para la estimación de tasa de precipitación sobrecontinente en período de Verano (LS son siglas en inglésque hacen referencia a Land-Summer, lo cual se interpre-ta como dato para pixel sobre continente en época de Ve-rano).

El conjunto de datos simulados usados para esteentrenamiento, involucra 25384 casos de combina-ciones de los canales ATMS asociados con diferen-tes niveles de tasa de precipitación que comprendenvalores entre 6.30×10−4 y 61.43 mm/h. Los resulta-dos del entrenamiento de redes, obtenidos para estaexperiencia, se muestran en la Figura 5 y Figura 6,donde se han representado los resultados derivadosa partir de la librería ALGLIB y los obtenidos me-diante la librería Open NN respectivamente.

La primera observación a destacar es que AL-GLIB proporciona un coeficiente de correlación

21,41 % más alto que Open NN, este resultado pue-de ser observado de forma visual a partir de la re-gresión lineal y la línea de ajuste mostrada en cadacaso, siendo relevante la calidad del ajuste obtenidoa partir de ALGLIB.

En este experimento, ALGLIB reportó un valorde 2,59 para el error cuadrático medio, mientras queOpen NN la figura 7 muestra la diferencia de erro-res, durante el proceso de entrenamiento, entre losdatos de salida de la red y los datos de prueba.

Figura 6. Gráfico de dispersión entre los valores de tasa deprecipitación estimados por la ANN y el valor objetivo delos datos de entrenamiento (Database) para entrenamien-to mediante ALGLIB del experimento LS_1.

Figura 7. Gráfico de dispersión entre los valores de tasa deprecipitación estimados por la ANN y el valor objetivo delos datos de entrenamiento para entrenamiento medianteOpenNN del experimento LS_1.

56LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.

Page 9: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partirde las Librerías Open NN y ALGLIB

Figura 8. Error Cuadrático Medio del desempeño delproceso de entrenamiento(azul) y de los datos de prue-ba(rojo) durante el proceso de entrenamiento de la red enOpen NN del caso LS_1.

Idealmente, en la Figura 7 es de esperarse doscurvas superpuestas, lo cual indica que el error en-tre la salida de la red(curva inferior de la figu-ra) en entrenamiento reproduce perfectamente losdatos de prueba(curva superior de la figura), sinembargo, en lugar de esto se tiene entonces quecuando la curva roja asociada a los datos de prue-ba(Generalization) se aproxima a los datos de salidade la red en función de las épocas se tiene un pro-ceso de entrenamiento normal, ahora bien cuandoesta curva de prueba se aleja por arriba de la curvaazul(Performance), como sucede en la Fig. 7 a par-tir de la época 1000, se dice que la red está sobre-entrenando lo cual se traduce en pérdida de genera-lidad por parte del proceso de entrenamiento.

Por otro lado, cuando la curva roja se ale-ja de la azul por debajo, el resultado es un sub-entrenamiento de la red. En todo caso es necesario

evitar tanto el sub-entrenamiento, como el sobre-entrenamiento de la red, en orden de llevar a caboun buen proceso de entrenamiento. Particularmen-te, en este caso se tomó como pesos y bias de la red,los valores correspondientes a 1000 épocas.

Es importante mencionar, que esta gráfica no fueposible generarla para el entrenamiento medianteALGLIB, porque esta librería no proporciona la po-sibilidad de almacenar valores de RMSE para cadaciclo, mientras que con Openn NN fue posible ob-tenerla con una sencilla modificación de un código,también es importante aclarar que estas graficas sonnaturales en Open NN ya que el criterio de paradano es automático y un criterio para establecer para-das de entrenamiento en Open NN es definir un va-lor máximo de diferencia en RMSE entre los datosde performance y generalization.

Las Figs. 8 y 9 corresponden al segundo ex-perimento, etiquetado como LS_2. En este caso elcoeficiente de correlación obtenido por ALGLIB es24,67 % superior al de Open NN.

Respecto a la calidad de este resultado, se pue-de destacar que una correlación de 0.451 es baja ymás aun considerando que esta correlación describela capacidad de predicción de datos simulados y node datos reales, en cuyo caso se espera disminuyaaun más dicha correlación. Este resultado se atribu-ye al hecho de que estos 5 canales, por si solos nocontienen suficiente información como para estimarprecipitación. Por tal motivo, la inclusión de canalesque permitan aumentar la correlación entre los da-tos de entrada y de salida, son una excelente opciónpara aumentar los niveles de predicción.

Experimento R2 con ALGLIB R2 con OPENNN Diferencia porcentual ( %)

LS_1 0.8391 0.6594 21.41LS_2 0.4510 0.3397 24.67LS_3 0.5854 0.3846 34.30

Tabla 2. Resumen de resultados de coeficientes de correlación para las redes neuronales de estimación de tasa deprecipitación sobre continente en época de verano.

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 57

Page 10: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

Figura 9. Gráfico de dispersión entre los valores de tasa deprecipitación estimados por la ANN y el valor objetivo delos datos de entrenamiento para entrenamiento medianteALGLIB del experimento LS_2.

Figura 10. Gráfico de dispersión entre los valores de tasade precipitación estimados por la ANN y el Open NN delexperimento LS_2.

Ahora bien, en el caso del tercer experimento,etiquetado como LS_3, ALGLIB arrojó un coeficien-te de correlación 34,30 % mayor que Open NN, locual hace referencia a un mejor ajuste entre las ta-sa de precipitación predicha por la red neuronal ylos datos simulados de entrenamiento, por parte deALGLIB, tal y como se puede apreciar a partir de lasfiguras 10 y 11.

En la tabla 2, se puede observar un resumen so-bre los resultados en coeficiente de correlación ob-tenidos mediante el entrenamiento con ambas libre-rías, así como la diferencia porcentual en el ajuste.

Figura 11. Gráfico de dispersión entre los valores de tasade precipitación estimados por la ANN y el valor objetivode los datos de entrenamiento para ntrenamiento median-te ALGLIB del experimento LS_3.

Figura 12. Gráfico de dispersión entre los valores de ta-sa de precipitación estimados por la ANN y el valor ob-jetivo de los datos de entrenamiento para entrenamientomediante Open NN del experimento LS_3.

4.2 Entrenamiento sobre superficie deocéano

Las combinaciones de canales para el entrenamien-to de redes neuronales para la estimación de tasade precipitación sobre océano en época de veranose pueden apreciar en la tabla 3, donde se muestranlos tres experimentos diseñados. Los resultados ob-tenidos a partir de cada una de las tres redes neu-ronales entrenadas, para un conjunto de datos deentrenamiento compuesto por 9006 casos, se apre-

58LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.

Page 11: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Análisis Comparativo de Ajuste en Entrenamiento de Redes Neuronales artificiales a partirde las Librerías Open NN y ALGLIB

cian resumidos en la tabla 4 donde nuevamente sepueden apreciar resultados tanto para los entrena-

mientos llevados a cabo mediante ALGLIB, así co-mo también por Open NN.

Número Código Canales

1 OS_1 3,4,5,16,17,18,19,20,21,222 OS_2 18,19,20,21,223 OS_3 5,17, 18,19,20,21,22

Tabla 3. Diseño de experimentos de entrenamiento de la ANN para la estimación de tasa de precipitación sobre océanoen periodo de verano (OS son siglas en inglés que hacen referencia a Ocean-Summer, lo cual se interpreta como datopara pixel sobre océano en época de verano).

Experimento R2 con ALGLIB R2 con OPENNN Diferencia porcentual ( %)

OS_1 0.9066 0.7327 19.18OS_2 0.5530 0.2382 56.92OS_3 0.7493 0.4655 37.87

Tabla 4. Resumen de resultados de coeficientes de correlación para las redes neuronales de estimación de tasa deprecipitación sobre continente en época de verano.

5. Conclusiones

En la tabla 2 se puede apreciar una diferencia por-centual de ajuste cercana a 50 % entre ALGLIB yOpen NN cuando del experimento 1 se extraen lasentradas de los canales 3, 4, 5, 16 y 17, de tal mo-do que ha sido posible constatar que el numero devariables de entrada, el nivel de correlación entresí, y con la variable de salida juega un papel pre-dominante en las características de predicción de laANN entrenada. En este sentido, una recomenda-ción de paso previo al ingreso de datos de entradaen el proceso de entrenamiento, consiste en ingresardatos con poca correlación lineal entre sí, y con altacorrelación con la variable a predecir.

El nivel de relación entre las variables de entra-da y salida, puede ser inferido a partir del conoci-miento previo sobre las características propias de larelación entre las variables, si bien es cierto que eneste trabajo se ha evitado discutir sobre las caracte-rísticas físicas de cada uno de los canales del sen-sor ATMS y las relaciones que tienen con la varia-ble precipitación, la selección de los canales consi-derados en cada experimento tiene su justificaciónen conocimientos previos por parte del autor sobreprincipios de teledetección de la atmósfera y fenó-menos de transferencia radiativa, cuya descripción

se ha omitido en el presente trabajo para evitar des-enfoques en el objetivo de la investigación, que esproporcionar al lector un estudio comparativo so-bre el nivel de ajuste proporcionado por ALGLIB yOpen NN para los experimentos objetos de este es-tudio.

Con base en los resultados mostrados en las ta-blas 2 y 4 se concluye que bajo la configuración di-señada para Open NN, en cuanto a criterio de para-da, estrategia de entrenamiento y parametrización,se tiene en todos los casos un mayor ajuste y capaci-dad de predicción mediante ALGLIB. Por otra partees importante mencionar, que el tiempo requeridopara el proceso de entrenamiento que Open NN in-virtió para cada proceso es de aproximadamente 6horas en promedio, mientras que ALGLIB solo dos.Estos resultados, pudieran mostrar otra tendencia sila configuración de corrida para el proceso de en-trenamiento es optimizada para Open NN, lo cuales factible para usuarios con conocimientos avan-zados en este tipo de algoritmos, esto permite infe-rir que para usuarios con conocimientos introducto-rios o intermedios en ANNs y algoritmos de entre-namientos, factiblemente obtendrán mejores resul-tados a partir de las configuraciones preestablecidasen ALGLIB.

Finalmente, cabe destacar que la arquitectura deANN utilizada en cada caso fue una cada de entra-

LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.c© 2015, Universidad Politécnica Salesiana, Ecuador. 59

Page 12: LA GRANJA: Artículo científico / Scientific paper REVISTA DE ...dspace.ups.edu.ec/bitstream/123456789/13838/1/Lgr_n21_Muñoz_S… · artículo científico / scientific paper

Artículo científico / Scientific paper

METEOROLOGÍA COMPUTACIONALErith Muñoz y Cesar Seijas

da, dos capas ocultas, la primera con el doble núme-ro de neuronas que la capa de entrada y la segundacon igual número, y una capa de salida conformadapor una neurona.

Referencias

Bellerby, T., M. Todd, D. Kniveton y C. Kidd. 2000.Rainfall estimation from a combination of trmmprecipitation radar and goes multispectral sate-llite imagery through the use of an artificial neu-ral network. American Meteorological Society,págs. 2115–2128.

Bishop, C. 2005. Neural network for pattern recog-nition.

Blackwell, W. y F. Chen. 2009. Neural Networksin Atmospheric Remote Sensing. MassachusettsInstitute of Technology.

Blackwell, W. J. y F. Chen. 2005. Neural network ap-plications in high-resolution atmospheric remo-te sensing. Lincoln Laboratory Journal, págs. 299–322.

Chen, F., L. Bickmeier, W. Blackwell, R. Leslie,D. Staelin y C. Surussavadee. 2006. Satellite-based estimation of precipitation using passiveopaque microwave radiometry. Workshop of theInternational Precipitation Work-ing Group, Mel-bourne, Australia.

Haykin, S. 1999. Neural networks. a comprehensi-ve foundation. Upper Saddle River.

Hertz, J., A. Krogh y R. Palmer. 1991. Introductionto the theory of neural computation.

Hocking, J., P. Rayer, R. Saunders, M. M. A. Geer yP. Brunel. 2012. Rttov v10 users guide. ECMWF,KNMI and MeteoFrance.

Hsieh, W. 2009. Machine learning methods in theenvironmental sciences. neural networks andkernels.

http://www.alglib.net/dataanalysis/neuralnetworks.php.

http://www.cimne.com/flood/Links.asp.

Mas, J. y J. Flores. 2008. The application of artificialneural networks to the analysis of remotely sen-sed data. International Journal of Remote Sensing,págs. 617–663.

Minsky, M. y S. Papert. 1969. Perceptrons.

Rosenblatt, F. 1958. The perceptron: A probabilis-tic model for information storage and organi-zation in the brain. Psychological Review, págs.386–408.

Rumelhart, D. E., G. E. Hinton y R. J. Williams. 1986.Learning internal representations by error pro-pagation. Parallel Distributed Processing. págs.318–62.

Werbos, P. J. 1974. Beyond regression: new toolsfor prediction and analysis in the behaviouralsciences.

Widrow, B. y M. E. Hoff. 1960. Adaptive switchingcircuits. IRE WESCON Convention Record, págs.96–104.

Xingui, H. y X. Shaohua. 2010. Process neural net-work: Theory and applications.

60LA GRANJA: Revista de Ciencias de la Vida 21(1) 2015: 49-60.

c© 2015, Universidad Politécnica Salesiana, Ecuador.