epelpad

Que son las Redes Neuronales Artificiales

Hola T! Estoy cansado de la política, asi que les traigo inteligencia colectiva


Empecemos
Hablando en criollo, las redes neuronales artificiales son ecuaciones matemáticas con un orden inspirado en las neuronas biológicas.

Empecemos con algo de historia tomada de wikipedia.

Historia
Los primeros modelos de redes neuronales datan de 1943 por los neurólogos Warren McCulloch y Walter Pitts. Años más tarde, en 1949, Donald Hebb desarrolló sus ideas sobre el aprendizaje neuronal, quedando reflejado en la "regla de Hebb" .
En 1958, Rosenblatt desarrolló el perceptrón simple, y en 1960, Widrow y Hoff desarrollaron el ADALINE, que fue la primera aplicación industrial real.



Perseptrón simple


En los años siguientes, se redujo la investigación, debido a la falta de modelos de aprendizaje y el estudio de Minsky y Papert sobre las limitaciones del perceptrón. Sin embargo, en los años 80, volvieron a resurgir las RNA gracias al desarrollo de la red de Hopfield, y en especial, al algoritmo de aprendizaje de retropropagación (BackPropagation) ideado por Rumelhart y McClelland en 1986 que fue aplicado en el desarrollo de los perceptrones multicapa.


Perseptrón multicapa

el algoritmo de retropropagacion es comúnmente llamada de gradiente descendente, la que trata de optimizar los pesos sinápticos de las funciones a través de la minimizan de un funcional de costo. Se dice que el entrenamiento es desde la salida hacia las entradas debido a que el funcional de costo por lo general trata de minimizar el error cuadrático medio entre la salida esperada de la red y el valor deseado.
Este ultimo es el que voy a explicar como mas o menos funciona.
Salte a este tipo de redes debido a que estoy haciendo un proyecto para un curso. Después muestro un perseptron simple, utilizandolo para simular un sistema dinámico lineal de una entrada y una salida. Pero ya sera en otro post.


Que es un perseptron multicapa?

Es un conjunto de neuronas ordenadas en capas.
En primera instancia se tiene la capa de entrada, donde las señales de excitación del sistema son colocadas.
Luego se encuentran las capas ocultas. las capas ocultas son neuronas que realizan procesos intermedios. en sus pesos sinapticos se encuentra la información, la cual es adquirida mediante el entrenamiento de la red. Se podría decir que estas capas conforman la memoria de la red.
Luego se encuentra la capa de salida. Esta capa es la encargada de interpretar la red y proponer un valor de salida.


Como funciona?
Esta imagen representa una neurona artificial.

Cada neurona posee varias entradas, unidas a un peso sinaptico, un bias y una función de activación
las cuales se pueden relacionar de la siguiente forma:

donde y es la salida de la neurona, x son las entradas, w son los pesos sinapticos, b es el bias(no esta en la imagen pero es representado como un 1 conectado a un peso sinaptico) y f es la funciona de activación, comunmente usada la tangente hiperbólica, la sigmoidea, la signo, la función saturacion, etc

Primero se genera un indice de desempeño:


Después se deriva en función de los pesos sinapticos y por ultimo se aplica la regla de correccion:


Bueno, esto esta muy por encima y a grandes rasgos. Yo estudie el tema por un libro. Neural Networks de Haykin (por si alguien quiere un libro bastante didáctico).

dicho esto le dejo unos videos que hice con MatLab
Si se fijan en los vídeos se indica la composición de la red. que significa los numeros, bueno, eso es simple. el primer valor indica la cantidad de entradas, el ultimo valor la cantidad de salidas y los que están por el medio son la cantidad de neuronas que posee cada capa oculta.


link: https://www.youtube.com/watch?v=H9ojth7MEOs


link: https://www.youtube.com/watch?v=ErtweKGkqQw



link: https://www.youtube.com/watch?v=r-vVML5G4u0



Esto fue todo! Gracias por pasar! Disculpen si es un post medio fugaz. Interprétese como una introducción a las posibilidades. Saludos

0 comentarios - Que son las Redes Neuronales Artificiales