Nuevas Tendencias en Redes Neuronales Artificiales: Extreme Learning Machine Pedro Jos´ e Garc´ ıa Laencina, Rafael Verd´ u Monedero, Jorge Larrey Ruiz, Juan Morales S´ anchez, Jos´ e Luis Sancho G´ omez. Departamento de Tecnolog´ ıas de la Informaci´ on y las Comunicaciones Universidad Polit´ ecnica de Cartagena. Plaza del Hospital 1, 30202 Cartagena Tel´ efono: (+34) 968326542. E-mail: pedroj.garcia@upct.es Resumen. Las redes neuronales artificiales han sido ampliamente utilizadas para resolver problemas de diagnosis m´ edica, reconocimiento de voz, predicci´ on de ´ ındices bursatiles, etc. A pesar de ello, presentan como claros inconvenientes el elevado tiempo de c´ alculo necesario y la convergencia a ınimos locales. Este art´ ıculo analiza un novedoso, r´ apido y eficiente m´ etodo para el entrenamiento de redes tipo “feed-forward” conocido como Extreme Learning Machine. 1. Introducci´ on Las Redes Neuronales Artificiales (RNA) han sido empleadas con ´ exito en m ´ ultiples aplicaciones durante las ´ ultimas d´ ecadas [1]. No obstante, surgen diversos inconvenientes durante el proceso de optimizaci´ on de los hiper-par´ ametros (i.e., pesos y umero de neuronas) como son el elevado tiempo de alculo necesario y la convergencia a ınimos locales, debido a la no-unicidad de soluci´ on para un determinado problema al usar etodos de entrenamiento basados en gradiente [1]. Muchos trabajos han sido desarrollados para obtener r´ apidos y precisos algoritmos de entrenamiento supervisado para esquemas del tipo “feed-forward”, siendo uno de los as eficientes el etodo conocido como Extreme Learning Machine (ELM) [2], [3]. Este trabajo analiza este nuevo algoritmo, junto con un etodo para la selecci´ on ´ optima del n´ umero de neuronas. Finalmente, se muestran los resultados obtenidos en dos problemas de regresi´ on. 2. Redes Neuronales Artificiales Las RNA del tipo “feed-forward”, o Perceptrones Multicapa (Multi-Layer Perceptron, MLP), constan de ultiples capas de unidades computacionales (neuronas) interconectadas, pudiendo aproximar cualquier funci´ on continua seleccionando los hiper-par´ ametros adecuadamente [1]. Un MLP est´ andar est´ a compuesto de una capa oculta de H neuronas. Los pesos de la capa de entrada conectan las n variables de entrada con las H neuronas, mientras que una segunda capa de pesos conecta las salidas de las H neuronas con las m unidades de salida del MLP. Considerar un vector de entrada x =[x 1 ,x 2 ,...,x n ] T ∈ℜ n , con “target” t =[t 1 ,t 2 ,...,t m ] T ∈ℜ m . As´ ı, la salida del MLP viene dada por y = H j=1 β j f (w j · x + b j ) , (1) donde y = {y k } m k=1 , f (·) son las funciones de activaci´ on de las neuronas ocultas, β j = [β j1 j2 ,...,β jm ] T son los pesos de salida asociados a la neurona oculta j esima, mientras que w = [w j1 ,w j2 ,...,w jn ] T y b j representa el sesgo de entrada asociado a dicha neurona. Las unidades de salida tienen funciones de activaci´ on lineales, mientras que para f (·) se suelen emplear funciones de tipo sigmoide. Como se puede comprobar, los hiper-par´ ametros a optimizar durante el entrenamiento son los pesos y el n ´ umero de neuronas. Generalmente, se establece un umero de neuronas H , los pesos son inicializados aleatoriamente, y a partir de un conjunto de entrenamiento asociado al problema a resolver, la red es entrenada mediante el algoritmo “back-propagation”, junto con m´ etodos de optimizaci´ on basados en gradiente. El n´ umero ´ optimo de neuronas es seleccionado por validaci´ on cruzada. Este tipo de procedimiento conlleva un gran n´ umero de iteraciones de entrenamiento, y una busqueda exhaustiva del n´ umero de neuronas, lo que es puede suponer un gran inconveniente en aplicaciones de tiempo real. Para m´ as detalles de implementaci´ on/dise˜ no, ver [1]. 3. Extreme Learning Machine El algoritmo Extreme Learning Machine (ELM) est´ a fundamentado en que un MLP compuesto por H neuronas, cuyos pesos de entrada est´ an inicializados aleatoriamente, pueden “aprender” N distintos casos de entrenamiento produciendo un error cero, siendo N H , y aproximar cualquier tipo de funci´ on continua [2]. Tras inicializar de manera aleatoria los pesos de entrada, un MLP puede ser considerado como un sistema lineal y los pesos de salida pueden obtenerse de manera anal´ ıtica mediante un simple alculo de la pseudo-inversa de la matriz de las salidas de las H neuronas ocultas para un determinado conjunto de entrenamiento. As´ ı, dado un conjunto de N vectores de entrada, un MLP con H neuronas