domingo, 28 de agosto de 2011

Entrevista a Dharmendra Modha en la revista Wired

Los que sigue es una entrevista realizada a Dharmendra Modha por la revista Wired. En ella habla del nuevo chip sináptico desarrollado por IBM. La traducción está googlelizada. Recomiendo el original.

Wired.com: ¿Por qué desea que los ordenadores aprendan y trabajen como los cerebros?

Dharmendra Modha: Vemos una necesidad creciente de que los ordenadores sean adaptables, de desarrollar una funcionalidad que hoy no pueden alcanzar. Los ordenadores actuales pueden realizar cálculos rápidos. Son el hemisferio izquierdo del cerebro, y son inadecuadas para el cálculo del estilo del lado derecho del cerebro como el reconocimiento del peligro, los rostros de amigos y así sucesivamente, que nuestro cerebro hace sin esfuerzo.

Una analogía que me gusta usar: Usted no conducir un coche con medio cerebro, sin embargo, hemos estado usando un solo tipo de ordenador. Es como añadir otro miembro a la familia.

Wired.com: Entonces, usted no ve SyNAPSE como un reemplazo de los ordenadores modernos?

Modha: Veo cada sistema como un complemento. Los ordenadores modernos son buenos en algunas cosas - han estado con nosotros desde ENIAC , y creo que estarán con nosotros a perpetuidad - pero no son adecuados para el aprendizaje.

Un ordenador moderno, en su forma elemental, es un bloque de memoria y un procesador separados por un bus, la vía de comunicación. Si desea crear un ordenador como el cerebro, es necesario emular a los estados de las neuronas, las sinapsis, y las interconexiones entre las neuronas en memoria, los axones. Tiene que leer los estados neuronales en la memoria, envíarlos al procesador a través del bus, actualizarlos, enviarlos de vuelta y almacenarlos en la memoria. Es un ciclo de almacenar, recuperar, actualizar, almacenar ... y así sucesivamente.

Para ofrecer un rendimiento en tiempo real y útil, tiene que ejecutar este ciclo muy, muy rápido. Y eso conduce a velocidades de reloj cada vez mayores. ENIAC funcionaba a unos 100 KHz. En 1978 fueron 4,7 MHz. Los procesadores de hoy en día son alrededor de 5 GHz. Si desea tasas más rápida y un reloj más rápido, lograrlo requiere la creación de dispositivos cada vez más pequeños.

Wired.com: Y ahí es donde nos topamos con problemas, ¿verdad?

Modha: Exactamente. Hay dos problemas fundamentales. El primero es que, muy pronto, nos enfrentaremos a límites físicos. La madre naturaleza nos va a detener. La memoria es el siguiente problema. A medida que se acorta la distancia entre los elementos de pequeño tamaño, la fuga de corriente aumenta a un ritmo exponencialmente mayor. En algún momento el sistema no es útil.

De modo que hemos dicho: vamos a retroceder unos pocos millones de años. Las neuronas funcionan alrededor de 10 Hz, en promedio. El cerebro no tiene frecuencias de reloj cada vez mayores. Es una red social de las neuronas.

Wired.com: ¿Qué quiere decir por una red social?

Modha: Los vínculos entre las neuronas son las sinapsis, y eso es lo importante: cómo está cabñeado el cerebro. ¿Quiénes son sus amigos, y a qué distancia están? Usted puede pensar en el cerebro como un sistema de computación masiva, masivamente paralelo y distribuido.

Supongamos que desea mapear este cálculo nreuronal en uno de los ordenadores de hoy. Son poco adecuados para ello e ineficientes, por lo que estamos buscando en el cerebro un enfoque diferente. Vamos a construir algo que se parezca a nivel básico, y ver si funciona. Crear un sustrato masivamente paralelo y distribuido. Y eso significa, al igual que en el cerebro, acercar la memoria al procesador.

(...)

Wired.com: En el cerebro, las conexiones neuronales son plásticas. Cambian con la experiencia. ¿Cómo puede algo cableado hacer esto?

Modha: La memoria mantiene el estado de las sinapsis y se puede adaptar en tiempo real para codificar las correlaciones, las asociaciones y de la causalidad o la anticausalidad. Hay un dicho por ahí, "las neuronas que disparan juntas, se conectan entre sí." El disparo de las neuronas puede fortalecer o debilitar las sinapsis a nivel local. Así es como el aprendizaje se ve afectado.

Wired.com: Así que supongamos que tenemos un equipo a gran escala que aprende. ¿Cómo conseguir que haga algo útil?

Modha: Esta es una plataforma de tecnología que se adapta a entornos ubicuos y cambiantes. Como el cerebro, hay casi una variedad ilimitada de aplicaciones. El cerebro puede tomar la información de la vista, tacto, oído, olfato y otros sentidos e integrarlos en modalidades. Por modalidades que quiero decir eventos como hablar, caminar, etc.

Esas modalidades, el cálculo completo, se refiere a las conexiones neuronales. Su fuerza, su ubicación, quién habla con quién. Es posible configurar algunas partes de esta red para diferentes propósitos. Hay cosas que son universales a todos los organismos con un cerebro: la presencia de un borde, texturas, colores. Incluso antes nacer se pueden reconocer. Son naturales.

Reconocer la cara de su madre, a través del aprendizaje, viene después. Imagínese una jerarquía de técnicas de programación, una red social de chips neuronales que hablan y pueden adaptarse y reconfigurarse para llevar a cabo las tareas que usted desea. Ese es nuestro objetivo.


viernes, 19 de agosto de 2011

Cognitive Computing: Neurociencia, supercomputación y nanotecnología según Dharmendra Modha de IBM

Dharmendra S. Modha es director del departamento Cognitive Computing de IBM. En un paper y un vídeo resume el estado del arte de su trabajo basado en neurociencia, supercomputación y nanotecnología. IBM acaba de presentar los primeros prototipos de un chip sináptico inspirado en la computación biológica.
Aunque poco conocido, en mi opinión su trabajo es el más prometedor en la actualidad en cuanto a la simulación y comprensión del cerebro. Un ingeniero rodeado de un formidable equipo que pretende dos cosas: comprender y simular el cerebro y desarrollar un nuevo modelo de chips que supere el modelo Von Neumann del que acaba de presentar los primeros prototipos.
El equipo esá formado por su departamento en IBM, varias universidades y la agencia estatal DARPA (U.S. Defense Advanced Research Projects Agency) que financia el proyecto Synapse (Systems of Neuromorphic Adaptive Plastic Scalable Electronics).
Históricamente dos enfoques se han usado para explorar las relaciones mente ordenador. El enfoque top-down está en la base de la Inteligencia Artificial fuerte. También en la neurociencia cognitiva. El problema es que hay múltiples posibles soluciones para resolver un problema cognitivo, una de las cuales es el cerebro. El enfoque bottom-up parte de los datos neurocientíficos para escalar hacia arriba el funcionamiento del cerebro. El enfoque de cognitive computing es hacer operacionales los enormes conocimientos que aporta la neurociencia usando simulaciones a gran escala.
 Neuroanatomía
La conectividad del cerebro es poco conocida. Es sin embargo fundamental. Se conoce la existencia de columnas corticales. Están formadas por 10.000 neuronas y responden todas ellas a un único estímulo. Están organizadas en 6 capas y son iguales en todos los mamíferos. Son, después de la neurona, la unidad básica de procesamiento. La diferencia entre un mamífero y otro (hombre y rata) es el número e interconexión de estas columnas. Estas columnas forman las áreas corticales (vista, movimiento...) y establecen entre ellas conexiones a corta y larga distancia en el cerebro.
El proyecto Conectoma se basa en la difusión del agua a través de los axones medida por MRI para averiguar las conexiones. El departamento de Modha ha refinado algoritmos para mejorar su conocimiento (BlueMatter). Pero es una técnica que, aunque prometedora y no invasiva, da falsos positivos y falsos negativos.
El proyecto CoCoMac resume los datos de cientos de experimentos realizados en el cerebro del macaco, vía a vía. Se inyecta un tinte y se sigue su trayectoria. Modha y su equipo han sistematizado todos estos datos recogidos durante décadas por neurocientíficos. El resultado es un mapa de conexiones en el que se destacan las diversas áreas y su conectividad.
Después han tratado de averiguar cuales son las áreas centrales al sistema. Para ello eliminan las áreas periféricas (que tienen pocas conexiones de entrada o salida) como si se pelaran las capas de una cebolla. Los resultados parecen indicar que el cerebro responde a criterios de restricciones físicas y es muy eficiente. El córtex prefrontal, con muchas conexiones no es físicamente central pero si es topológicamente central. En una red normal (eléctrica, de ordenadores, facebook...) tres peladas son suficientes. En el cerebro se necesitan más de veinte. peladas para encontrar el  núcleo de la red. Esto se ha realizado con datos estructurales. Se ha tratado de averiguar si este núcleo estructural es también funcional. Cuando un mono realiza una tarea positiva se activan unas redes y cuando no hace nada (tarea negativa) se activan otras distintas (Red Neuronal por Defecto DMN) Ambas redes son anticorrelacionadas. Los resultados indican que ambas redes están en el núcleo de las conexiones derivadas de los estudios CoCoMac.
Incorporar los datos del Conectoma y CoCoMac al simulador es tarea esencial de Cognitive Computing.
Neurofisiología.
La unidad básica de computación neural es la neurona (y aquí Modha hace la obligada cita a Santiago Ramón y Cajal). Elegir el nivel de simulación de la neurona es clave. Usando una analogía se puede usar un telescopio, un microscopio o unos prismáticos. Modha evita usar modelos biológicamente detallados de neuronas como NEURON o GENESIS. En su lugar usa una neurona fenomenológica: tiene entradas y salidas, implementa sinapsis, algún neurotransmisor, potenciales de acción (spikes) y plasticidad sináptica o aprendizaje según el modelo de Donald Hebb: "las neuronas que se disparan juntas, se conectan entre sí". Esto reduce enormemente los requerimientos computacionales y preserva la funcionalidad del modelo.
Simulación a gran escala
C2 es el simulador elegido. Con él han realizado simulaciones a gran escala. La mayor es del nivel del cortex del gato. Los desafíos computacionales a los que se enfrentan tales simulaciones son enormes. Cientos de miles de procesadores y terabytes de memoria para actualizar casi en tiempo real miles de millones de sinapsis y potenciales de acción.
Es muy importante resaltar que tales simulaciones no simulan ningún comportamiento real hasta la fecha. Los datos provenientes del conectoma deben actualizar el modelo.
El simulador no es una respuesta sino una herramienta en la que formular hipótesis sobre la computación neural.
En una década la potencia de los superordenadores permitirá simulaciones a escala cortical humana.
Pero con un enorme problema de espacio y consumo eléctrico. Frente a 20 vatios que consume el cerebro, se necesitarán 100.000.000 vatios.
Futuro. Chip sináptico
"Este no es el final, ni siquiera es el principio del final, pero es, quizás, el final del principio..." Winston Churchill:
La solución es desarrollar un nuevo modelos de chips que supere el paradigma actual de la arquitectura Von Neumann. Esta se compone de procesador, memoria y bus que los conecta. El bit se lee de la memoria y se lleva al procesador, allí se cambia y se mueve de vuelta para almacenarlo en memoria. Hay un único procesador y el bus es un cuello de botella. Depende del reloj y actualmente la frecuencia es de 5GHz.
La arquitectura del cerebro está dirigida a eventos y es distribuida. Los datos no se mueven y el aprendizaje es hebbiano.
La computación moderna plantea un modelo de programa almacenado, tradicionalmente implementado en circuitos frágiles, digitales, sincrónos, en serie, centralizados, rápidos, conectados por cable, de uso general, con direccionamiento explícito de memoria que impone una dicotomía entre programas y datos. En marcado contraste, el cerebro utiliza unidades de computación replicadas, las neuronas y las sinapsis, implementadas en un modo mixto analógico-digital, asíncronas, paralelas, distribuidas, lentas, reconfigurables, especializadas, con un sustrato biológico tolerante a fallos, con direccionamiento implícito de memoria donde se desdibuja la frontera entre computación y datos.
Ya hay dos prototipos de chips sinápticos. Ambos núcleos fueron fabricados en 45 nm SOI CMOS, y contienen 256 neuronas. Un núcleo contiene 262.144 sinapsis programables y el otro contiene 65.536 sinapsis de aprendizaje. El equipo de IBM ha demostrado con éxito aplicaciones sencillas como la navegación, la visión artificial, reconocimiento de patrones, memoria asociativa y la clasificación. 
El desarrollo del chip pasará por varias fases. En la fase 1 tendrá 10^6 sinapsis. Después 10^10, 10^12 y 10^14
El chip debe ser reconfigurable con plasticidad sináptica y estructural (nuevas conexiones)
Cada subárea cortical es un chip y la interconexión de varios de ellos representará el cerebro.
Conclusiones.
El impulso interdisciplinar de ingenieros y neruocientíficos en sus muchas ramas permitirá ir poco a poco desvelando los misterios del cerebro y refinando los modelos de simulación.
Dos son los objetivos últimos. Comprender el cerebro es uno. Desarrollar un nuevo modelo de computación es el otro.