Introducción a redes neuronales
![](https://blogs.masterhacks.net/wp-content/uploads/2017/10/masterhacks_introduccion_redes_neuronales.jpg)
Los problemas que más se adecuan para la solución neural, son los que no tienen solución computacional precisa o que requieres algoritmos muy extensos, como el caso del reconocimiento de imágenes.
Historia
En el año 1943, los investigadores Warren McCulloch y Walter Pitts, propusieron el primer modelo simple de la neurona. En las décadas de los años cincuenta y setenta, el movimiento en redes neuronales fue liderado por B. Widrow y M. E. Hoof, quienes trabajaron con la máquina denominada Adaline (Adaptive Linear Element).
Por otro lado, el psicólogo Frank Rosenblatt, de la Universidad de Corell, en 1959, construyó una máquina neural simple a la que llamó “perceptrón”. Esta máquina tenía una matriz de 400 fotoceldas que se conectaban de forma aleatoria a 512 unidades tipo neurona. Cuando se representaba un patrón a las unidades sensoras, enviaban una señal a un banco de neuronas que indicaba la categoría del patrón. Esta máquina era capaz de reconocer todas las letras del alfabeto.
Un científico que siguió trabajando con las redes neuronales fue Stephen Grossberg, quien ahora es el director del Centro para Sistemas Adoptivos de la Universidad de Boston.
Grossberg, junto a Gail Carpenter, de la Universidad de Northneastern, propusieron un modelo de red neuronal llamado ART (Adaptive Resonance Theory).
Existieron otros investigadores que trabajaron durante la década de los setenta, Teuvo Kohonen, de la Universidad de Helsinki, y Jim Anderson, de la Universidad de Brown, que trabajó con alternativas de semillas de conexionismo, y junto a Geoff Hinto, quien presentó trabajos matemáticos y de aplicación de redes neuronales, organizaron el primer encuentro neoconexionista en 1979, al que asistieron David Rumelhart, Mc Clelland, Geoff Hinton, Anderson, Herry Feldman y Terry Sejnowski.
En 1986, Mc Clelland y Rumelhart publicaron un libro en dos volúmenes, que llevó por título “Parallel Distributed Processing: Explorations in the Microstruture of Cognition”. Este libro es considerado como un clásico en el área de las redes neuronales, pues su aparición sirvió de impulso para la investigación de sistemas neuronales al mostrar las desventajas y las ventajas de las redes neuronales artificiales (RNA).
Algunas de las ventajas que tienen las redes neuronales artificiales frente a otros sistemas de procesamiento de información son:
•Las RNA son capaces de sintetizar algoritmos por medio de un proceso de aprendizaje.
•Para utilizar la tecnología neuronal no se necesita reconocer los detalles matemáticos. Sólo se requiere la familiarización con los datos del trabajo.
•Las RNA son robustas, aunque fallen algunos elementos de procesamiento, la red continúa trabajando, lo contrario a lo que sucede en programación tradicional.
Por otro lado, las desventajas son:
•Las RNA se deben entrenar para cada problema. Es necesario realizar muchas pruebas para determinar la arquitectura adecuada. El entrenamiento es extenso y puede consumir muchas horas de la computadora.
•Las RNA necesitan muchos datos, debido a la necesidad de entrenamiento en lugar de programación.
•Las RNA presentan un aspecto complejo para un observador externo que quiera realizar cambios. Para agregar un nuevo conocimiento, es necesario un cambio de iteraciones entre muchas unidades para que el efecto unificado sintetice el conocimiento.
•Para un problema grande, es imposible hacer esto de forma manual, por lo que una red con representación distribuida debe emplear algún esquema de aprendizaje.
Las redes neuronales se basan en generalizar la información extraída de datos experimentales, tablas o bases de datos, que se determinan por expertos humanos. Estas redes toman en cuenta las entradas (corriente, voltaje), y como salidas, las señales del sistema (velocidad, temperatura, torque). La red neuronal utilizada comúnmente es una red multicapa de diez neuronas en la capa de entrada, diez neuronas en la capa oculta y cinco neuronas en la capa de salida. Por lo tanto, se tienen 250 pesos ajustables mediante el control retroalimentado o de lazo cerrado.
El entrenamiento se basa en el algoritmo de “retropropragación del error”, por el método del gradiente descendiente, donde los pesos se actualizan mediante el uso de un conjunto ordenado de entradas y salidas deseadas y la comparación entre la salida y la salida real de la red neurona.
También se utiliza para el entrenamiento otro método alterno, denominado “perceptrón”, que es un clasificador de forma binaria. En este caso sólo existe la posibilidad de ser parte de un grupo A o B; funciona con sistemas lineales.