EXTREME LEARNING MACHINE Ing. Franklin Riabani Mercado F. FUNDACION INFOCAL COCHABAMBA Cochabamba – Bolivia frkmrd@hotmail.com ABSTRACT La helada es un factor meteorológico importante para la hidrología, climatología y agricultura. Este estudio propone crear una máquina de aprendizaje extremo (ELM) como base para la predicción temprana de heladas meteorológicas, el estudio fue desarrollado en el valle alto del departamento de Cochabamba Bolivia, los datos fueron colectados en 6 estaciones meteorológicas llegando a un total de 178450 mediciones, se dividió la muestra en dos conjuntos de datos uno de entrenamiento con el 70% de la muestra y se obtuvieron tiempos de 67 segundos para el entrenamiento comparado con los casi 400 segundos que toma a los otros modelos de Machine Learning. Y tiempos para realizar una predicción utilizando el modelo entrenado es de 2 segundos en la plataforma Odroid respecto a los más de 15 segundos que toma a otros modelos. Con márgenes de confianza superiores al 90%. La investigación demostró que un modelo ELM propuesto mejor en la generalización y predicción de heladas y tiene una considerable ventaja en cuanto a tiempo de aprendizaje y consumo de recursos de hardware, los resultados demuestran convincente que un modelo ELM puede emplearse para crear el mejor predictor de heladas del mundo tanto en niveles de confianza y tiempos de respuesta. relevantes de un evento que actúan como datos de entrada y la segunda conocida como Prueba en la que compara estas características con nuevos datos de prueba y se obtiene al final de estas dos etapas un modelo entrenado y probado que intenta explicar los datos de entrada. 2 EXTREME LEARNING MACHINE Las Máquinas de Aprendizaje Extremo o Extreme Learning Machine (ELM) propuesto por Huang [1] están atrayendo la atención de miles de investigadores como una técnica de Machine Learning (ML) que resuelve muchos de los problemas a los que se enfrentan otras técnicas, por ejemplo su lenta velocidad de aprendizaje [2]. ELM inicialmente trabaja en redes monocapa hacia delante o de tipo “feedforward” (SLFNs) [3] como se muestra en la figura siguiente. KEYWORDS Inteligencia computacional, Machine Learning, SciPy, Raspberry Pi, Agricultura inteligente, Heladas 1 INTRODUCCIÓN El aprendizaje automático es una rama de la inteligencia computacional que busca que las computadoras sean capaces de aprender e inducir conocimiento de cierta información. El aprendizaje automático está compuesto por dos fases o etapas la primera conocida como Entrenamiento donde se observa las características más Fig. 1: Arquitectura Single Layer Feedforward neural network El ELM está basado en el concepto de que si los pesos de entrada y los sesgos de la capa oculta de una SLFN, son asignados al azar, la SLFN puede ser considerada como un sistema lineal y los pesos de salida se pueden determinar analíticamente mediante la inversa generalizada [4]. Esta idea ya fue estudiada por Huang et al [5]; y hay un estudio profundo acerca de las diferencias entre el ELM y trabajos previos. Sin embargo, Huang demuestra la capacidad que tiene el ELM para ser un aproximador universal donde los nodos elegidos al azar pueden ser generados de acuerdo con cualquier distribución de probabilidad continua, sin ningún conocimiento previo [6]. Esta asignación aleatoria se puede hacer si las funciones de activación en la capa oculta son infinitamente diferenciables [3, 4], la más popular es la una función signoide. En general, las SLFNs estándar con L neuronas en la capa oculta y función de activación , pueden aproximar las N muestras con error cero. Esto es: ∑ ‖ ‖ Según Huang [5], la función de salida de una red SLFN con L nodos ocultos puede ser representada por: ∑ ∑ (2) Donde denota la función de salida del nodo oculto i. Para nodos aditivos con función de activación , es definida como: (3) Para [1] las N muestras distintas , las redes monocapa de tipo “feedforward” con L nodos ocultos son matemáticamente modeladas como: ∑ ( ) (4) Estas SLFNs pueden aproximar estas N muestras con un error medio nulo ∑ ‖ ‖ es decir, existen tal que: ∑ ( ) (5) Las ecuaciones anteriores pueden ser escritas de forma vectorial como: (6) Donde [ [ ] ] [ ] 2.2.1 Teorema 1. Dado un valor positivo pequeño y una función de activación que sea infinitamente diferenciable en cualquier intervalo, y N muestras arbitrarias y distintas , { } existe tal que para cada generados aleatoriamente de un intervalo , de acuerdo a una función de distribución continua con probabilidad ‖ uno, ‖ . Desde un punto de vista de interpolación, el máximo número de nodos necesario no debe ser mayor que el número de muestras de entrenamiento. De hecho el error de entrenamiento puede ser cero. 2.2.2 Teorema 2. Dada una función de activación infinitamente diferenciable en cualquier intervalo y N muestras arbitrarias distintas { } para cualquier generados aleatoriamente de un intervalo de acuerdo a una función de distribución continua, con probabilidad ‖ uno ‖ . Desde un punto de vista de interpolación, se han usado un amplio rango de funciones en las ELM, lo que incluye las funciones signoidales, las funciones de base radial, seno, coseno, exponencial, y muchas otras no regulares. 2.3 Teorema de Aproximación Universal 2.2 Teorema de Interpolación ( ) ] (1) 2.1 Teoría de Aprendizaje de las Máquinas de Aprendizaje Extremo ∑ [ Huang, en [24] demostró en la teoría que las redes SLFNs con nodos RBF (Radial Base Function) generados aleatoriamente, pueden aproximar cualquier función continua objetivo sobre cualquier subconjunto . Se define como un espacio de funciones f en un subconjunto X compacto en el espacio Euclidiano ddimensional tal que | | son integrables, es decir ∫ | | , se denota como , , el producto escalar se define como: 〈 〉 ∫ (7) El módulo de en el espacio es denotado por ‖ ‖, y la distancia más corta entre la función de red y la función objetivo se mide a través de: ‖ ‖ [∫ | | ] (8) 2.3.6 Teorema 3. Dada una función continua a trozos no constante y acotada para nodos aditivos o una función continua integrable a trozos y para una función objetivo continua ∫ y una secuencia de la función generada aleatoriamente { } , el límite ‖ ‖ se mantiene con probabilidad uno si: 〈 〉 ‖ (9) ‖ 2.3.7 Teorema 4. Dada una función continua a trozos no constante , si abarcar { } es engorroso en , para una función objetivo continua y una secuencia de función { } generada aleatoriamente en base a una ‖ ‖ distribución continua, se mantiene con probabilidad de la unidad si los pesos de salida son determinados por mínimos cuadrados para ∑ ‖. minimizar ‖ 2.4 ELM Básica Los parámetros de los nodos permanecen fijos una vez que se han establecido aleatoriamente. Entrenar la red SLFN simplemente es equivalente a encontrar la solución por mínimos cuadrados del sistema lineal : ‖ ̂ ‖ ‖ ‖ Paso 2: Calcular la matriz de salida de la capa oculta . Paso 3: Calcular los pesos de la capa de salida (Teoremas 3 y 4). : El algoritmo ELM puede trabajar con muchos tipos de funciones de activación. Muchos algoritmos de aprendizaje no están preparados para trabajar con redes de umbral directamente y en su lugar usan redes analógicas para aproximar las redes umbrales, tales como el método de descenso por gradiente. Sin embargo, una ventaja del ELM es que puede ser usado para entrenar este tipo de redes directamente sin necesidad de recurrir a otros algoritmos. 3 HERRAMIENTAS Y METODOS 3.1 Dataset La investigación se concentra en el valle alto del departamento de Cochabamba, los datos fueron proporcionados por SENAMHI, de 6 estaciones meteorológicas automatizadas que se encuentran en las poblaciones de Tarata, Arbieto, Punata, Cliza y San Benito. (10) Si el número L de nodos ocultos es igual al número de muestras de entrenamiento N, L=N, acorde con el Teorema 1, la matriz H es cuadrada e invertible cuando los parámetros son elegidos aleatoriamente, y así las redes SLFN pueden aproximar dichas muestras de entrenamiento con un error nulo. Sin embargo, en la mayoría de los casos el número de nodos es mucho menor que el número de muestras de entrenamiento, , por lo que no es cuadrada y pueden no existir tal que . La solución que minimiza por mínimos cuadrados el sistema de ecuaciones superior es: Donde la matriz salida de los nodos ocultos , y un número de nodos ocultos , Paso 1: Generar de forma aleatoria los parámetros de los nodos ocultos Teoremas 1 y 4. (11) es la inversa generalizada Moore-Penrose de . 2.5 Algoritmo ELM Para [3]Dado un conjunto de entrenamiento { } , una función de Fig. 1: Zona de intervención de la investigación El periodo de Colecta de datos corresponde a diciembre de 2011 hasta agosto de 2015, se tienen 1360 días observados, el tiempo entre mediciones que realizan las estaciones meteorológicas es de 15 min, como resultado se obtienen 96 mediciones por día, lo que nos proporciona entre todos los días observados y las 6 estaciones un dataset de 179320 mediciones. Las variables que se manejan en la investigación son: Temperatura relativa Radiación Solar Viento Humedad Precipitación El motivo para el manejo de todas estas variables para entrenar el ELM y no solo la temperatura, se debe a que la radiación y el viento son factores que favorecen la ocurrencia de una helada, debido al balance regional de radiación [8] como se ve en las siguientes figuras: Fig. 2: Las nubes reintegran calor disminuyen la ocurrencia de heladas a la tierra y procesamiento de imágenes, procesado de la señal, estadística, integración numérica. 3.4 Diseño y Entrenamiento de un SLFN Entrenado con ELM Como se mencionó en la introducción del trabajo, en este proyecto de investigación se pretende demostrar que con una estructura mono capa, se consiguen altos niveles de generalización similares o superiores a otros algoritmos. Esta estructura estará basada en el algoritmo ELM expuesto en puntos anteriores, lo primero que se hará es trabajar con redes SLFNs (Fig. 1) para comprobar los resultados que se obtienen al aplicar el ELM sobre una red neuronal SLFN. Es decir, simplemente se pondrá en práctica toda la teoría expuesta a lo largo de este artículo. El producto final de la investigación es crear el mejor predictor a nivel mundial del fenómeno meteorológico de Heladas 1. Fig. 3: Cielo despejado aumenta la radiación de calor de suelo hacia el espacio La lluvia y la humedad determinan el tipo de helada que se producirá [8]. 3.2 Plataformas de Hardware Las plataformas de experimentación más populares a la fecha que se escribe este articulo como son Raspberry pi 2 modelo B y Odroid C1 en la tabla 1 se muestra una comparación de características más relevantes de hardware. Procesador Memoria RAM GPU HDD SO Raspberry Pi 2 Modelo B Hardkernel Odroid C1 Broadcom BCM2836 Quac Core Cortex A7 a 900 MHz 1GB LPDDR2 Amlogic S805 Quac Core Cortex A5 a 1.5 GHz 1GB DDR3 ARM Mali-450MP2 de cuatro núcleos Socket para módulos eMMC de 8/64Gb Raspbian, Ubuntu Core, OpenELEC, etc. VideoCore IV Slot de tarjeta micro SD Ubuntu 14.04 con XBMC/Kodi Tabla 1: Características de hardware de las plataformas de experimentación 3.3 Scipy Es un software científico que comenzó su desarrollo en 2001 escrita en Python. SciPy es una expansión de NumPy, que integra nuevos paquetes para el tratamiento científico de datos. Integra gran cantidad de funciones de 1 Una helada se produce cuando la temperatura ambiente desciende por debajo de los cero grados centígrados, este fenómeno es muy frecuente en noches de cielo despejado y la ausencia de viento, a lo que se conoce como inversión térmica. Otro evento que favorece la ocurrencia de heladas es el desplazamiento de masas de aire frio provenientes del polo sur, las heladas se clasifican tanto por su tipo como por el daño que produce la helada. RED NEURONAL - SLFN ENTRADAS: Mediciones Temperaturas Capa Oculta W x1 W (1) (2) Capa de Salida SALIDAS: Temperaturas calculadas y1 x2 Y ... ... ... ... y2 x3 y3 +1 Fig. 4: Esquema red de trabajo arquitectura SLFN sobre las plataformas de prototipado Raspberry Pi y Odroid. En el proceso de preparación e integración de los datos los meteorológicos los resultados que se obtuvieron son: Los resultados obtenidos en la fase de entrenamiento del modelo se pueden apreciar en la fig. 5. Conforme con las convenciones de ML los datos fueron sometidos a un proceso de preparación e integración de datos. El resultado final del proceso es un Dataset con 178450, se dividió el total de datos en dos partes el primero en el Dataset de entrenamiento con el 70% que son aproximadamente 124915 mediciones y un segundo Dataset de prueba con el 30% con 53535 mediciones En un análisis exploratorio de los dos Dataset se obtuvieron los siguientes resultados: Dataset Entrenamiento Temp Rad Hum Vie Min Param -3 0.78 13.90 0.30 Max 30 29.78 99.50 4.88 Media 18 17.33 66.47 2.4 Desv. Es. Prueba 6.28 0.94 12.64 0.94 Min -2 1.86 7.10 0.35 Max 30 26.40 87.90 4.35 19 5.89 18.04 4.77 63.66 12.58 2.38 0.91 Media Desv. Es. Tabla 2: Análisis exploratorio de mediciones meteorológicas 4 RESULTADOS En esta investigación se ha presentado un algoritmo de aprendizaje eficiente para Redes Neuronales hacia adelante (SLFN) llamado Extreme Learning Machine (ELM). Los resultados de probar los métodos de machine learning como Support vector machine, redes bayesianas, análisis discriminante y ELM con una Fig. 5 Resultados Dataset de entrenamiento Podemos apreciar que los puntos se encuentran dispersos alrededor de la línea central que corresponde a la intersección del valor medido y el valor calculado por el modelo. En la fig. 6 se puede apreciar los resultados del dataset de prueba para el modelo que ya estaba completamente entrenado con el algoritmo ELM son: Fig. 6 Resultados dataset de prueba De la fig. 6 se puede concluir que los resultados son mucho más densos alrededor del valor ideal. Plataforma de Experimentación Modelo de Machine Learning Rasberry Pi 2 NC * T. E ** Odroid C1 T. P *** NC T. E T. P Support Vector Machine Red Bayesiana 86.65% 93,13% 351 450 18 19 87.07% 93.15% 327 439 15 17 Análisis Discriminante Lineal Extreme Learning Machine 92,06% 93.17% 412 67 13 4 92.75% 93.20% 395 62 12 2 * Es el nivel de confianza del valor calculado por el modelo sobre el dataset de prueba ** Es el tiempo en segundos que demora en ser entrenada con el dataset de entrenamiento *** Es el tiempo en segundos que demora el modelo en realizar una predicción Tabla 3: Tabla de comparación de modelos de Machine Learning Como una técnica de aprendizaje, el algoritmo de ELM ha demostrado un buen potencial para resolver problemas de clasificación. Así, las principales conclusiones que se han podido sacar son las siguientes: 1) La velocidad de aprendizaje del algoritmo es extremadamente alta. 2) Tiene un bajo consumo de recursos de hardware. 3) Destaca por su simplicidad. Se ha demostrado cómo una red puede ser entrenada con pocos pasos. 4) El algoritmo posee una gran capacidad de generalización a la hora de afrontar problemas de clasificación. Se ha podido observar que aumentando el número de datos de entrenamiento se obtienen mejores resultados de forma progresiva porque se crea una red más potente y a su vez el aumento con lleva una disminución de la norma de los pesos de la capa de salida, lo que deriva en un aumento de la capacidad de generalización, suavizando la frontera de decisión y por lo tanto evitando el sobreajuste. 5) Sobre las predicciones de heladas este modelo demuestra una gran eficacia en la predicción de heladas, con un elevado nivel de confianza superior al 90% comparado con otros modelos estadísticos tradicionales que solo llegan al 70%. 6) Sobre la plataforma de experimentación Raspberry Pi 2 y Odroid que corren con versiones de GNU Linux Raspbian y Ubuntu respectivamente, demuestran que son una gran alternativa para implementar experimentos de este tipo por su excelente rendimiento y su bajo costo. 5 CONCLUSIONES Y FUTURO Se propone como líneas futuras de investigación, continuar explorando las capacidades de estas arquitecturas, con el objetivo de explotar su capacidad de representación, compresión y clasificación de datos. Una buena aplicación podría ser la de entrenar esta estructura para que sea capaz de mejorar la frontera de predicción minimizando los falsos positivos. Implementar el ELM sobre otros tipos de redes neuronales nonocapas, multicapas con propagación hacia adelante y atrás para conocer las ventajas que ofrece este algoritmo sobre esas redes neuronales. Probar este este experimento sobre el nuevo sistema operativo de Windows IoT y comparar los resultados obtenidos en Raspbian. De Montfort, 2009. [8] A. B. Crespo, Aprendizaje Máquina Multitarea mediante Edición de Datos y Algoritmos de Aprendizaje Extremo, Cartagena - Colombia: Universidad Politécnica de Cartagena, 2013. [9] A. P. Engelbrech, Computational Intelligence An Introduction, Wiley: University of Pretoria, 2007. 6 REFERENCIAS [1] Nan-Ying Liang, "A Fast and Accurate On-line Sequential Learning Algorithm for Feedforward Networks," IEEE Transactions on Neural Networks, vol. 17, no. 6, pp. 1411-1426, 2006. [2] David A. Elizondo and Stephen G. Matthews, "Recent Patents on Computational Intelligence, Centre for Computational Intelligence," Leicester, De Montfort University, 2009. [3] A. B. Crespo, Aprendizaje Máquina Multitarea mediante Edición de Datos y Algoritmos de Aprendizaje Extremo, Cartagena - Colombia: Universidad Politécnica de Cartagena, 2013. [4] E. Cambria, "Extreme Learning Machines," IEEE Intelligent Systems, pp. 30-59, 2013. [5] Q. Huang, "Extreme Learning Machine: Theory and Applications," Neurocomputing, no. 70(1-3), pp. 489-501, 2006. [6] J. m. m. Olmo, Desarrollo software de técnicas para el diseño automático de Redes Neuronales Artificiales con bajo coste computacional, Cartagena - Colombia: Universidad Politecnica de Cartagena, 2013. [7] E. D. a. S. G. Matthews, Recent Patents on Computational Intelligence, Centre for Computational Intelligence, Leicester: University [10] F. Fundacion Española para la Ciencia y la tecnologia, Meteorologia y Climatologia, España: Fundacion Española para la Ciencia y la tecnologia, FECYT, 2004. [11] Z. Q. C. Huang Guang-Bin, "Extreme Learning Machine: Theory and Applications," Neurocomputing, vol. 70, no. 1-3, pp. 489-501, 2006. [12] P. Q. Quispe, Redes neuronales evolutivas para la prediccion de heladas, La Paz - Bolivia: UMSA, 2009. [13] S. P. J. Rajesh R., "Extreme Learning Machines - A Review and State-of the art.," International Journal of wisdom based Computing, vol. 1, pp. 35-48, 2011. [14] L. G. Matías Ramíre, Heladas, CENTRO NACIONAL DE PREVENCIÓN DE DESASTRES - CENAPRE, 2001. [15] S. B. Rampal Singh, "Application of Extreme Learning Machine Method for Time Series Analysis," International Journal of Intelligent Technology, vol. 2, no. 4, pp. 256-262, 2007.