Redes neuronales artificiales ¿Qué son?
Las redes neuronales artificiales son modelos matemáticos que intentar emular hasta cierto punto el comportamiento de las redes neuronales de el cerebro. Estos modelos pueden ser programados logrando comportamientos computacionales que no son posibles con la programación tradicional.
¿Qué ventajas tiene la red neuronal biológica?
La red neuronal de los seres vivos es una estructura compleja resultante de millones de años de evolución que tiene como objetivo además del funcionamiento del resto del cuerpo el reconocimiento del entorno, la toma de decisiones y el aprendizaje. Además debe ser capaz de sufrir heridas y golpes sin perder su funcionalidad, es decir, debe ser un sistema robusto. Si se pierde gran cantidad de neuronas el cerebro se adapta para compensar la falta sin que el sistema se vea afectado.
El cerebro tiene la capacidad de reconocer y aprender patrones rápidamente y de manera eficiente, un bebé recién nacido aprende a reconocer el rostro de su madre y luego a procesar el resto de las caras.
Todas estas características y otras más como la velocidad y su capacidad de trabajar en paralelo hacen de las redes neuronales un sistema superior al que puede ser logrado por la programación tradicional.
Originalmente estos modelos fueron diseñados por neurólogos que intentaban explicar porque el cerebro funcionaba como lo hacía, como se guardaban los recuerdos o como se generaba el proceso de aprendizaje dentro de la red neuronal.
Estructura de las redes neuronales biológicas
Las redes biológicas consisten en un conjunto de neuronas que se comunican entre sí a través de pulsos eléctricos, las neuronas son capaces de generar nuevas conexiones con otras células y de modificar dichas conexiones.
Al generarse un pulso eléctrico en el receptor de una neurona esta reenviara ese pulso a el resto de las neuronas a las que esta conectada y así sucesivamente, pero solamente si este pulso tiene cierta intensidad. La intensidad del pulso cuando llega a la neurona depende de las sustancias químicas que son emitidas del lado de la neurona emisora, cuanto más conductora con más facilidad pasará la corriente, ajustando la conductividad de la sustancia se genera la configuración dentro de la red.
¿Y donde almacena el aprendizaje y los recuerdos? Se almacena en la misma red. En un sistema de red neuronal no existen variables donde se guarden datos específicos, esos datos forman parte de la configuración de la red (conjunto de conexiones con sustancias conductoras específicas) que pueden ser recuperadas al ingresar un pulso de electricidad especifica en la o las neuronas específicas.
¿Cómo se traduce esto en redes neuronales artificiales?
El sistema artificial utilizado para programación es una versión muy simplificada , aunque existe otra rama que sigue diseñando los modelos para entender mejor el cerebro humano. En este modelo los pulsos eléctricos son reemplazados con valores de ingreso que pueden ser binarios (1 para entrada, 0 para ausencia de entrada) o tomar una multitud de valores, la conductividad química es reemplazada por un valor de cada enlace llamado peso, el valor entrante será multiplicada por el valor de entrada y el resultante se enviará a la siguiente neurona o como salida. Finalmente cada neurona es una unidad de procesamiento cuya funcionalidad será obtener todos los valores de entrada, sumarlos y pasarlos por una función llamada función de activación cuyo resultado será la salida de dicha neurona.
En la imagen cada uno de los círculos representan una unidad de procesamiento, cada flecha entre neuronas un enlace y los valores de estos dados por la letra w son la variables que guardaran los pesos de cada enlace, los pesos son diferentes para cada enlace. Finalmente las neuronas con la letra S representan las neuronas de salida.
Las redes neuronales artificiales dependiendo de su utilización pueden tomar distintas estructuras, donde varia el número de neuronas, la forma en que estas se conectan entre si y los datos que reciben. Utilizando diversos algoritmos de aprendizaje es posible lograr que la red aprenda a partir de valores ingresados y que clasifique u agrupe nuevos datos.
¿Qué aplicaciones ha tenido las redes neuronales artificiales?
Las redes neuronales han sido aplicados en todas las áreas tanto por instituciones como por empresas. Su rango de utilización es muy amplio y sigue ampliándose cada día. Su capacidad de encontrar, clasificar y predecir patrones lo convierte en una herramienta útil para el control y planificación de diversas estrategias. A continuación se listan algunas de las muchas aplicaciones que se han realizado:
- Aplicaciones Medicas: Diagnósticos, Estimación de costos, Reconocimiento de imágenes médicas
- Aplicaciones Científicas: Reconocimiento de patrones, modelado de sistemas físicos, evaluación de ecosistemas, reconocimiento de gentes, clasificación botánica, análisis e identificación de olores.
- Aplicaciones Financieras: Predicción de mercado, aprobación de créditos, predicción de bancarrota
- Aplicaciones Industriales: Control de procesos, Control de calidad
- Para los que les interese ingresar en el mundo de las redes neuronales recomiendo el Framework Encog que se especializa todo tipo de machine learning.
Fuentes:
Bishop, C.M. (1995) Neural Networks for Pattern Recognition, Oxford: Oxford University Press. ISBN 0-19-853849-9
Haykin, S. (1999) Neural Networks: A Comprehensive Foundation, Prentice Hall, ISBN 0-13-273350-1
J. Heaton http://www.devx.com/opensource/Article/44014/1954 Basic Market Forecasting with Encog Neural Networks