jueves, 21 de marzo de 2013

Redes Neuronales Predictivas


La predicción es una adivinación calculada del futuro. Desde el punto de vista metodológico, los métodos de predicción se pueden agrupar en dos grandes bloques: métodos cualitativos o tecnológicos y métodos cuantitativos. Básicamente los métodos cualitativos se utilizan en aquellos casos en los que el pasado no proporciona una información directa sobre el fenómeno considerado. En las predicciones de carácter cuantitativo, se parte del supuesto de que se tiene registrada información sobre el pasado relacionado con el fenómeno que se quiere estudiar. Generalmente la información sobre el pasado aparece en forma de series de tiempo. La predicción constituye un elemento clave para el desarrollo de la ciencia. En la actualidad, el enfoque predictivo ha dejado de ser una actividad esotérica para convertirse en un instrumento de gran potencialidad, en campos tan diversos como la economía, medicina, política, demografía o la ya clásica meteorología.



La pieza clave de un proceso predictivo es lo que se entiende por reconocimiento. Para que este reconocimiento tenga lugar, hace falta disponer de un conjunto de conocimientos a modo de base de datos o memoria. Este conocimiento se adquiere por aprendizaje, a lo largo de la existencia de una persona. Su contenido no es la suma de una serie de representaciones locales, esto es cada estructura tendría su representación perfectamente localizada, sino más bien una representación distribuida uniformemente por toda la base de datos o memoria. Esta distribución del conocimiento lleva consigo una suerte de solapamiento de los contenidos. Este solapamiento hace posible la existencia de un proceso de generalización que, no consiste más que en la posible extensión del conocimiento previamente adquirido a otras estructuras desconocidas hasta el momento. El reconocimiento de una estructura presupone una correspondencia entre los rasgos de esta estructura y los almacenados en la memoria. En el caso de tratarse de una nueva estructura y por tanto desconocida para el sistema - entra en juego el proceso de generalización, mediante el cual se extrapola el conocimiento adquirido a esa nueva estructura, siempre que ésta tenga algún punto en común con las estructuras previamente almacenadas en la memoria. Los investigadores Rumelhart y McClelland definen el funcionamiento de las redes neuronales artificiales como un procesamiento distribuido en paralelo. Esta es una de las facetas más importantes de las redes neuronales y a ella se debe precisamente su capacidad predictiva.

Las redes neuronales artificiales son sistemas de procesamiento de la información cuya estructura y funcionamiento están inspirados en las redes neuronales biológicas. Consisten en un gran número de elementos simples de procesamiento llamados nodos o neuronas que están organizados en capas. Cada neurona está conectada con otras neuronas mediante enlaces de comunicación, los cuales tienen asociado un determinado peso. En los pesos se encuentra el conocimiento que tiene la red neuronal acerca de un determinado problema. El uso de las redes neuronales puede orientarse en dos direcciones: (1) como modelos para el estudio del sistema nervioso y los fenómenos cognitivos, (2) como herramientas para la resolución de problemas prácticos como la clasificación de patrones y la aproximación de funciones. Desde esta segunda perspectiva, las redes neuronales han sido aplicadas de forma satisfactoria en la predicción de diversos problemas en diferentes áreas de conocimiento tales como la biología, medicina, economía, ingeniería, psicología, etc.; obteniendo excelentes resultados respecto a los modelos derivados de la estadística clásica. La virtud de las redes neuronales radica en su capacidad para aprender funciones complejas o no lineales entre variables sin necesidad de imponer supuestos o restricciones de partida en los datos.

Las redes neuronales, desde el mismo principio de su aplicación práctica, han demostrado ser una herramienta poderosa para la clasificación de los datos, el reconocimiento de patrones y la predicción, debido a sus capacidades de aprender y generalizar los datos observados. Hu el año 1964, fue el primero en demostrar, en un ejemplo práctico de predicciones meteorológicas, la capacidad predictiva de las redes neuronales. Werbos el año 1974, experimentó con las redes neuronales como herramientas para el pronóstico de series de tiempo, basado en datos de observaciones. El año 1986 se formuló el algoritmo de retropropagación, por Rumelhart, Hinton y Williams, basándose en los trabajos de Werbos el año 1974 y Parker el año 1982. Experimentando con la red neuronal de retropropagación, Werbos el año 1990, llegó a la conclusión de que las redes neuronales superan a los métodos estadísticos de predicción, como el análisis de regresión y el modelo de predicción de Box - Jenkins.

Las redes neuronales, al estar constituidas por un conjunto de algoritmos matemáticos, encuentran las relaciones no lineales entre conjuntos de datos. Se denominan neuronales porque están basadas en el funcionamiento de una neurona biológica cuando procesa información. En términos simples, son sistemas de procesamiento que tratan de reproducir la capacidad que tiene el cerebro humano para reconocer patrones, hacer predicciones o tomar una decisión con base en la experiencia pasada. Las redes neuronales son eficientes cuando de pronosticar se trata dado que actúan en de la siguiente forma: (1) Paralela. Cuentan con un gran número de procesadores elementales o neuronas que permite trabajar simultáneamente en la resolución de problemas. (2) Distribuida. Cada neurona trata una fracción del problema y (3) Adaptativa. Debido a que posee la capacidad de ajustarse a nuevos datos, con lo cual aprende modificando sus parámetros de cálculo hasta encontrar una solución aceptable.

La generalización es la capacidad de dar salidas satisfactorias a las entradas que el sistema no ha visto nunca en su fase de entrenamiento. La generalización implica reaccionar apropiadamente a nuevas situaciones, siendo una característica muy importante en todos los sistemas inteligentes. Esta red deberá estar en capacidad de proporcionar salidas próximas a los valores deseados cuando se le proporcionan nuevos ejemplos, es decir, entradas que no pertenecen al conjunto de entrenamiento, sino que forman parte de los patrones de prueba. Una red que produce un alto error de predicción sobre los nuevos datos, pero un bajo error sobre los datos de entrenamiento se dice que la red a sobre ajustado los datos de entrenamiento. El sobre ajuste ocurre cuando la red neuronal ha entrenado ciegamente a un mínimo en el error cuadrado total sobre el conjunto de entrenamiento. Una red neuronal que sobre ajusta los datos de entrenamiento tiene una mala habilidad de generalización. Para que ocurra una buena generalización deben cumplirse las siguientes condiciones: (1) Las entradas de la red deben contener suficiente información con relación al objetivo o salida deseada, de manera que exista una función matemática que relacione correctamente las salidas con las entradas. (2) La función que se trata de aprender debe ser, en cierto sentido, suave. Se debe tomar en cuenta que los cambios pequeños en las entradas, producen cambios pequeños en las salidas. (3) El número de patrones de entrenamiento debe ser suficientemente representativo del conjunto de los casos que se quiere generalizar.

Según los autores Palit y Popovic, en un estudio realizado el año 2005, la metodología para la predicción es generalmente entendida como un conjunto de enfoques, métodos y herramientas para la recopilación de datos a ser utilizados para la previsión o predicción de los futuros valores de estas series de datos, incluyendo las siguientes etapas: (1) Preparación de los datos para el pronóstico, es decir, la adquisición, estructuración, normalización y la división de los datos. (2) Determinación de la arquitectura de la red, es decir, la selección del tipo de red que se utilizará para la predicción, la determinación del número de nodos de entrada y salida de la red, número de capas, el número de neuronas dentro de las capas, determinación de las interconexiones entre las neuronas, la selección de la función de activación de las neuronas, entre otros. (3) Diseño de la estrategia de aprendizaje o entrenamiento de la red, es decir, la selección del algoritmo de aprendizaje, el índice de rendimiento, la capacitación y la supervisión. El entrenamiento de la red neuronal es un proceso en el que la red aprende a reconocer el modelo inherente a los datos de entrenamiento. El objetivo del entrenamiento es encontrar el conjunto conveniente para los valores de los pesos en la conexión de los nodos de la red neuronal a través de la afinación de los mismos durante el entrenamiento de la red, haciendo que la red pueda lograr el atributo de la generalización más alto. (4) Evaluación global de los resultados de la predicción mediante la utilización de nuevos conjuntos de datos de observación.

No hay comentarios: