miércoles, febrero 15, 2012

Redes neuronales: emulando el cerebro (Parte 2)

Los científicos e ingenieros de computación estudiaron la estructura del cerebro humano y aislaron el elemento principal de su interior: la neurona. Estudiaron luego la estructura y funcionamiento de la neurona y trataron de hacer un modelo de funcionamiento de la misma.



Hicieron un modelo en el que las neuronas son una especie de "tanque", y que tiene conexiones de entrada, muchas, pero solo una de salida. Esas conexiones de entrada funcionan como tubos, y esos tubos tienen unas llaves, que permiten entrar más o menos agua. Esas llaves son llamadas el "peso" de la entrada, y entre más peso tenga la entrada, más relevante es la entrada para la salida. Ese tanque tiene una capacidad límite de almacenamiento de agua y cuando ese límite es superado, la salida se abre, y sale agua. Así, tenemos nuestro modelo listo: un tanque con muchas tuberías de entrada, y una de salida, y cada tubería de entrada con una llave que regula la entrada de agua al tanque. Todas esas entradas echan agua al tanque y sacan agua del tanque, pero si en algún momento muchas entradas se activan, pues el tanque se llena y sale agua de él. El tamaño del tanque se llama "umbral", y se dice que cuando el tanque se llena, la neurona se "activa".

Con nuestro modelo listo,  ponemos una neurona una al lado de otra, y al tener varias, creamos lo que se llama una "capa". Luego ponemos varias capas listas, conectando las salidas de unas neuronas como entradas de otras, y tenemos una red neuronal.



Cuando los ingenieros y científicos empezaron a probar las redes neuronales, se dieron cuenta eran muy robustas para reconocer patrones, pero eran demasiado lentas para hacer procesamientos de información como los computadores, y que debían ser entrenadas para que pudieran funcionar (el mecanismo de "entrenamiento" consiste en definir el tamaño del peso de la entrada a la neurona, es decir, la relevancia que tiene una entrada para activar la salida). Como las neuronas son modeladas en computadores, y los computadores no son  paralelos sino secuenciales (no entraré a explicar este detalle, pero si quieren saber por qué, es necesario estudiar arquitectura de computadores), los modelados de redes neuronales se demoraban demasiado en dar resultados, por lo que se alargó mucho más su estudio y aplicación.



Ahora, si vemos nuestro cerebro, para nosotros es muy complicado multiplicar por ejemplo 76761847651847 x 30140834701. Para una red neuronal, es algo difícil hacer este tipo de operaciones. Sin embargo, nuestro cerebro recibe información de todas partes, la procesa de manera paralela, genera salidas, y aún así, tiene capacidad de mucho más. Esa es la ventaja de una red neuronal frente a un computador. Y esas son precisamente las ventajas de las redes neuronales, las que están ahora siendo emuladas de manera artificial con procesadores individuales, usadas en elementos como robots y sistemas de reconocimiento de patrones, como rostros y modelos. Son usados también en predicciones y, en un futuro, es muy probable que sean usados en dispositivos móviles para predecir comportamientos de su portador, la cara, el rostro, sus gustos y otras cosas que no alcanzo ahora a imaginarme :)



Artículos relacionados:
Reconocimiento por el cuerpo: biometría

No hay comentarios.: