Mostrando entradas con la etiqueta Simulación. Mostrar todas las entradas
Mostrando entradas con la etiqueta Simulación. Mostrar todas las entradas

jueves, 26 de junio de 2014

La enorme importancia de simular un diminuto gusano

¿Dónde estamos en los intentos de simulación del cerebro como en el caso de Blue Brain? ¿Cuál es el interés que puede representar un microscópico gusano como Caenorhabditis elegans (C. elegans)? ¿Sirve de algo el tan cacareado Conectoma? Afortunadamente un pequeño pero importante proyecto nos puede ayudar: OpenWorm

Reconozco que me he puesto muy pesado con el dichoso gusano. Y sin embargo, sigo convencido de que tiene una importancia capital. Queremos entender el cerebro humano. Queremos incluso simularlo en el ordenador. Gastamos cifras astronómicas en intentarlo. ElConectoma humano, el mapa de todas las conexiones neuronales en el sistema nervioso humano, concita el trabajo de un gran número de investigadores. Y mucho dinero.
Pero la pregunta es muy simple. ¿Cómo podemos entender y en su caso simular una estructura sumamente compleja como el cerebro humano si no somos capaces de hacerlo con una muy simple como el sistema nervioso de C. elegans?
El reduccionismmo en ciencia es muy útil. También en neurociencia. Alan Hodgkin y Andrew Huxley recibieron el Premio Nobel por averiguar el modo en el que la señal nerviosa se propaga por la neurona, el llamado potencial de acción. Y lo descubrieron en el calamar. Más concretamente en el axón gigante del calamar que se ve a simple vista y es sencillo de manipular. Eric Kandel recibió el Premio Nobel por sus estudios sobre la memoria realizados en una babosa marina, Aplysia. Gracias a estos dos animales sabemos mucho de los humanos.
Crear modelos es esencial en ciencia. Desde las matemáticas a un simple papel nos ayudan a explicar el mundo. También a hacer predicciones, experimentar, buscar errores… Pero en neurociencia hay muy pocos. Y la realidad, incluso la del gusano es muy compleja. Sin un modelo estamos perdidos.
Los intentos de simulación en neurociencia han comenzado con el más complejo de los sistemas ¡el cerebro humano! Es como si el primer proyecto de un arquitecto fuera un rascacielos o el de un ingeniero una estación espacial. Blue Brain o Cognitive Computing de IBM son dos de los más afamados. Ambos esperan lograrlo dentro de una década… si es que para entonces existen ordenadores capaces de hacerlo.
Una pequeña comparación. El cerebro humano tiene 85.000.000.000 de neuronas. C. elegans tiene 302. conocemos su Conectoma, es decir, la rede de conexiones de estas neuronas que suponen unas 7.000 sinapsis (el cerebro humano tiene 450 billones). Conocemos su genoma. A pesar de ello no sabemos cómo funciona. El modelo, la simulación, son imprescindibles.
OpenWorm es un modesto proyecto basado en estándares abiertos que se propone algo tan sencillo y complejo como simular C. elegans. El gusano es sencillo pero el proyecto es complejo. No solo simula las neuronas, sino las casi mil células incluidas las 95 células musculares. No solo eso. Pretende simular el entorno, es decir, la comida, el agua o el calor.
Ayúdanos a construir la primera forma de vida artificial
Se trata de un proyecto abierto en el que tú puedes participar. Usa estándares abiertoscomo OpenCL, Python… La descripción del estado del arte del proyecto y el roadmap están publicadas. Para ayudarnos, está disponible una reconstrucción en 3D.
El sw que simula el comportamiento de las neuronas es otro estándar llamado NeuroML. Todas las neuronas están descritas para que funcionen con este simulador.
La simulación completa se realiza en la actualidad en un GPU cluster de Amazon de unos 5 Tflops, lo que equivale a unos 50 ordenadores caseros.
Empezar por lo pequeño suele ser una buena idea. El gusano nos llevará al humano. Con tiempo y trabajo.

domingo, 14 de abril de 2013

El gusano que desafía la simulación del cerebro


C. Elegans es un diminuto gusano. Henry Markram es el creador del proyecto Blue Brain, el más famoso intento de simulación del cerebro. Dharmendra Modha es el director del proyecto Cognitive Computing de IBM que también pretende simular el cerebro así como crear un nuevo chip neuromórfico. Sebastian Seung es el gran defensor del Conectoma que también es el nombre de su libro en uno de cuyos capítulos relaciona todas las partes.



Henry Markram comenzó hace años su intento de simular el cerebro humano. Para ello utilizó un modelo informático de neurona. Este es un modelo complejo en el que se simula cada trozo de la neurona, cada compartimento, por lo que se llama neurona realista o compartimental. Su idea era simular una columna del córtex, compuesta por 10.000 neuronas. Una columna es una unidad básica en la que, por ejemplo, todas sus neuronas responden a un único punto de la piel. El córtex cerebral está compuesto por un millón de estas columnas. La idea es que una vez simulada una columna, podamos realizar un millón de copias de esta simulación para simular el córtex cerebral (nótese que se habla solo del córtex que representa un 20% de todas las neuronas del cerebro). Para esta simulación cuenta con un potente (ya no tanto) supercomputador de IBM.

Dharmendra Modha inició su propio proyecto dentro de IBM. Utilizó una neurona simple llamada on/off o Integrate & Fire. Este modelo integra las entradas y decide si dispararse o no. Requiere mucha menos capacidad de cómputo que un modelo de neurona compartimental. Modha anunció que había realizado una simulación a la escala de un ratón, luego una rata y luego un gato (nunca dijo que había simulado el cerebro de tales animales).

Markram montó en cólera y escribió una carta al jefe de Modha en IBM en términos muy despectivos. En la carta estaban copiados algunos importantes medios de comunicación. Decía lindezas del estilo de "Querido Bernie. Usted me dijo que debería haber encadenado a este tipo por los dedos de los pies la última vez que Modha hizo una estúpida declaración acerca de la simulación del cerebro de un ratón". Una carta con un estilo muy poco frecuente entre científicos.

Mientras ambos, Markram y Modha, siguen con las que se pueden considerar las dos simulaciones más ambiciosas del cerebro humano, Sebastian Seung ha saltado a la palestra con el conectoma.

Seung afirma que el proyecto Blue Brain adolece de un problema fundamental: la conectividad. El proyecto establece que la conectividad es aleatoria y que sigue un principio darwinista: se forma muchas sinapsis y las mejores sobreviven. Sabemos que esto es solo cierto en pequeña medida. Las neuronas buscan sus blancos específicos, no al azar, y solo compiten entre ellas en un espacio muy limitado. En general puede decirse que el conectoma está genéticamente determinado y es la experiencia la que afina el modelo. Lo cierto es que el proyecto Blue Brain puede incorporar datos del conectoma en el futuro, según se vaya conociendo. Respecto a Modha, a buen seguro los está incorporando ya.

En este punto es donde aparece el gusano. C. elegans (Caenorhabditis elegans) es un gusano microscópico con el sistema nervioso más simple que conocemos. Tiene 302 neuronas. Las conocemos todas así como las 6.418 sinapsis que posee y los músculos que inervan. Es decir, sabemos el detalle exacto de su conectividad, su conectoma. También hemos secuenciado su genoma.

La pregunta es obvia. Si conocemos su conectoma, por qué no lo hemos simulado ya. Desafortunadamente la respuesta no es tan clara. Aún nos queda mucho por conocer de C. elegans. Sus neuronas son bastante distintas de las nuestras. Muchas de ellas no tienen disparos, es decir, potenciales de acción. No sabemos como son sus sinapsis, incluso desconocemos si son excitatorias o inhibitorias. 

Prácticamente cada neurona es distinta de las demás, con excepción de su gemela del lado opuesto del cuerpo. La relación entre neuronas y clases entre el gusano y nosotros es muy distinta. Nosotros tenemos millones de neuronas de varios tipos mientras que C. elegans tiene una neurona de cada tipo.

Existe otro problema fundamental en la simulación del cerebro: el cambio, la llamada plasticidad del cerebro. Es lo que Seung llama las 4 R: reforzamiento (las sinapsis existentes se refuerzan o se debilitan), reconexión (se crean nuevas sinapsis o se destruyen las existentes), recableado (las neuronas crean y destruyen ramas enteras donde se establecerán o perderán sinapsis) y regeneración (eventualmente se crean neuronas en algunas regiones del cerebro). Incorporar la plasticidad en la simulación es muy complejo.

Mientras que Markram, Modha y Seung siguen con sus loables trabajos, el minúsculo C. Elegans se empeña en mostrarnos la complejidad de la conducta animal.

Artículo publicado originalmente en ALT1040

domingo, 10 de marzo de 2013

Obama invertirá miles de millones en estudiar el cerebro


  • El gobierno de EE.UU. invertirá 3 mil millones de dólares en una década 
  • Las similitudes con el Human Brain Project europeo son muy grandes 
  • En una década conoceremos mucho del mayor enigma existente: el cerebro humano

Unas semanas después de que la UE lanzara el Human Brain Project, la administración de Obama se dispone a emprender un proyecto parecido dotado con miles de millones de dólares según informa el NYT. El cerebro está de moda. No solo eso. Su conocimiento, redundará en enormes ventajas para la ciudadanía y producirá grandes beneficios económicos, similares al Proyecto Genoma Humano.



El presidente Obama, en su discurso sobre el Estado de la Unión, citó la investigación cerebral como un ejemplo de que el gobierno debería "invertir en las mejores ideas".

El NYT dice que en marzo el gobierno de EE.UU. desvelará un plan para invertir hasta 3 mil millones de dólares en la investigación del cerebro en la próxima década. Hace unos días era conocido el lanzamiento europeo del Human Brain Project con un presupuesto de mil millones de euros para los próximos diez años. ¿Algún parecido?

Desde luego los proyectos europeo y americano se parecen en muchos aspectos. La inmensa relevancia que ambos conceden a la investigación del cerebro. Los frutos económicos y sociales que se esperan conseguir. El plazo de una década. La astronómica cifra invertida. El enfoque multidisciplinar. La implicación de muchos pequeños proyectos e institutos de investigación. Tanto que probablemente muchos actores participen en ambos proyectos. No parece posible que prosperen uno sin el otro.

El proyecto, que aún no está en marcha, se denomina Brain Activity Map BAM y los detalles no están claros. El gobierno estadounidense ya invierte en muchos proyectos de gran envergadura a través de los Institutos de Salud N.I.H. y de la agencia de defensa DARPA. Algunos proyectos como el Conectoma o SyNAPSE están financiados por el gobierno.

Pero el nuevo proyecto es de una dimensión mucho más ambiciosa. La comparación con el proyecto genoma humano es inevitable. Este constó de 300 millones de dólares anuales durante una década y terminó antes de tiempo. Un estudio calcula que el retorno de la inversión fue de 800 mil millones hasta el año 2010.

Los pequeños pasos son imprescindibles, pero a veces hace falta más. Llegar a la luna o secuenciar el genoma requieren de un esfuerzo gigantesco y coordinado. No se puede esperar que el resultado llegue si no se ponen los medios. Y sin embargo, el nuevo proyecto es mucho más complicado que los anteriores. Empezando por el objetivo. Llegar a la luna es un objetivo sencillo de definir y medir. Se llega o no se llega. Establecer la secuencia de todas las letras del ADN es también sencillo de definir. Pero en relación al cerebro, ¿cuál es el objetivo? ¿Comprender el cerebro? ¿Cómo se sabe que se ha conseguido?

Un grupo de científicos definió y publicó en Neuron hace unos meses algunas características del proyecto. Estas son algunas de sus reflexiones.

Estudiar los componentes elementales no explica el conjunto. Cuando muchas neuronas trabajan juntas hay propiedades emergentes (como la conciencia) que no se pueden explicar solo conociendo bien una neurona. Y citan, cómo no, a Santiago Ramón y Cajal hablando de los circuitos cerebrales
selvas impenetrables donde muchos investigadores se han perdido
Para encontrar respuesta a los enigmas del cerebro, proponen "registrar cada disparo neuronal de cada neurona en un circuito". Consideran que es posible hacerlo, pero a día de hoy es como cruzar el Pacífico a nado. Esto llevaría a tener no solo el Conectoma, sino el conectoma funcional, no solo todas las sinapsis sino todas las sinapsis trabajando.

Para conseguir tales registros (hoy solo registramos algunas decenas de neuronas simultáneamente) serán necesarios algo así como electrodos nanométricos que emitan wireless. Además, el soporte computacional requeriría superordenadores que hoy no existen.

Es decir, el proyecto propone inventar y usar tecnologías que no solo no existen sino que no sabemos cómo crear o si serán posibles. Pero esto es bueno. Para decir lo que ya sabemos no necsitamos 3 mil millones de dólares.

La relación entre el proyecto americano y europeo, a ambos lados del Atlántico ¿será una competición como la carrera de armamentos o la carrera espacial? ¿Será una competencia como la ocurrida en el estudio de genoma entre el proyecto público y el privado? Lo seguro es que la inversión será muy productiva y que dentro de una década conoceremos mucho mejor la más compleja maquinaria del universo conocido: el cerebro humano.

Artículo publicado originalmente en ALT1040

domingo, 3 de marzo de 2013

El colosal Human Brain Project

La Unión Europea ha dotado al Human Brain Project con 1.000 millones de euros para los próximos 10 años. Este proyecto estrella es denominado flagship, buque insignia. El proyecto es colosal y ha despertado una gran controversia. Es calificado como una simulación del cerebro ya que es el heredero del Blue Brain Project. Sin embargo, es mucho más que eso. Es el esfuerzo más ambicioso para descifrar los enigmas del cerebro.



A menudo se califica a la Unión Europea como un monstruo burocrático con escaso valor. El Human Brain Project demuestra como es posible emprender proyectos de ámbito europeo que den auténtico valor. La dotación de la empresa es fabulosa: 1.000 millones de euros en 10 años. Así, la UE pretende ser pionera un área de absoluta actualidad y de enorme beneficio para los ciudadanos: la comprensión del cerebro. Es de destacar que el país líder, Suiza, ni siquiera pertenece a la UE y que otros países no europeos como EE.UU, Argentina o Japón también intervienen.


Henry Markram es el padre de la empresa. Durante años ha estado trabajando en su predecesor, el Blue Brain Project. De Markham se ha dicho que es un encantador de serpientes: alto, de buena voz, con un discurso seductor, ha destacado por encima del trabajo callado de muchos neurocientíficos. Y que ha conseguido convencer a las autoridades europeas para invertir una suma tan enorme.


Las críticas al proyecto son varias, la mayoría provenientes del mundo anglosajón y notablemente de EE.UU. Un proyecto así, dicen, deja sin recursos a muchos pequeños proyectos también importantes. La simulación del cerebro no es posible, al menos por ahora, dicen otros. Aunque algo de razón puedan tener las críticas están en esencia equivocadas.


Europa carece de planes e instituciones para grandes proyectos. Pero en EE.UU muchas organizaciones gubernamentales apoyan grandes proyectos. Por ejemplo DARPA o los Institutos de Salud NHI. Uno de tales proyectos es el Conectoma. Otro es SyNAPSE para desarrollar un chip neuromórfico en el que interviene IBM. La Agencia de Energía Nuclear promueve el uso de la supercomputación. Y así un largo etcétera.


El Human Brain Project no es una aventura de simulación del cerebro humano, aunque este sea uno de sus objetivos. La meta es comprender el cerebro y encontrar aplicaciones a este conocimiento.

La investigación en neurociencia está muy fragmentada. Y el cerebro es muy complejo. Se puede estudiar desde muchos niveles de organización, desde la genética hasta la conducta. El objetivo del proyecto es lograr la integración de todos estos conocimientos. Y para ello hace falta un modelo. Con un buen modelo, podremos incorporar los datos de todas las investigaciones.

En el lugar más bajo, nos encontramos con los datos moleculares. Cientos de experimentos prueban moléculas que intervienen en el funcionamiento del cerebro. De estas investigaciones salen medicamentos que pretenden aliviar las enfermedades mentales. Pero, desgraciadamente, el avance es muy lento, en buena medida porque no sabemos en qué sitios y de qué forma actúan los medicamentos. Un modelo del cerebro es imprescindible.

Con un buen modelo, podemos realizar una simulación, y es aquí donde encaja la tan cacareada simulación cerebral. Pero el objetivo primero es incorporar todos los datos de las muy diversas investigaciones que se relizan hoy en día así como plantear nuevas investigaciones.

Quizá copiando el modelo de SyNAPSE, el Human Brain Project también quiere desarrollar la supercomputación y la creación de nuevos chips inspirados en la neurociencia. Chips que superen la arquitectura Von Neumann. La apuesta europea se llama Facets mientras que la americana, liderada por IBM es el chip neurosinaptico ya en fase beta.

La dimensión del proyecto es colosal no solo por el dinero. Más de 80 partners intervienen. Decenas de universidades europeas, entre ellas varias españolas con la Universidad Politécnica de Madrid y el Instituto Cajal a la cabeza, así como varias instituciones argentinas. Los gigantes informáticos IBM, SAP o Cray. La nómina de neurocientíficos es notable como el Premio Nobel Torsten Wiesel que deslumbró al mundo con su investigación de la corteza visual del gato o Stanislas Dehaene que estudia la conciencia entre otras cosas.

La principal dificultad estará en la coordinación del enorme equipo. Pero la ambición es imprescindible si se quiere desvelar el órgano más complejo del universo conocido: el cerebro humano.

Artículo publicado originalemente en ALT1040
Fotos: EPLF

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.

domingo, 15 de mayo de 2011

El cerebro tiene una capacidad de memoria de 500 petabytes y de procesamiento de 1 exaflops

¿Cómo se puede llegar a las sorprendentes cifras de que la memoria del cerebro es de 500 petabytes y la capacidad de proceso de 1 exaflops? Especulando y realizando múltiples supuestos. El resultado es una estimación que puede estar errada en varios órdenes de magnitud. Expongo el razonamiento para que cada cual saque sus conclusiones.
Grandes números.
La primera estimación es la del número de neuronas en el cerebro. El dato más repetido en la red es 100.000.000.000 (10^11). Considero equivalente cerebro y encéfalo (brain en inglés) y que incluye todas las estructuras dentro del cráneo como el cerebelo y el córtex (que solo representa 1/5 parte del cerebro)
El número de sinapsis es también una estimación. Una neurona puede tener hasta 100.000 sinapsis. La cifra media está entre 5.000 y 10.000. Considero para el cálculo 5.000 sinapsis por neurona.
El número total de sinapsis, por tanto, es de 500.000.000.000.000 (10^14*5).
100.000.000.000 neuronas
500.000.000.000.000 sinapsis
Neuronas Integrate&Fire y neuronas biológicamente realistas.
Las simulaciones utilizan dos tipos de neuronas. La mayoría de ellas usan un modelo Integrate&Fire. Se trata de una neurona sin representación espacial que integra la entrada que proviene de otras neuronas y decide dispararse o no. Es un modelo válido para múltiples casos y el más utilizado. De otro lado están las neuronas biológicamente realistas. Estas usan una representación tridemensional y computan lo que ocurre en cada segmento de la neurona: dendritas, cuerpo y axón. Sus necesidades computacionales son 10.000 veces superiores que las Integrate&Fire.
Estimaciones
El proyecto Blue Brain usa neuronas realistas. Henry Markham estima que la memoria necesaria para simular el cerebro es 500 petabytes y la capacidad de cómputo es de 1 exaflops. Como se verá, esta es la estimación que considero más realista.
Dharmendra S. Modha ha realizado una simulación con neuronas Integrate&Fire de la que se pueden extrapolar datos. Uno de ellos es que necesita 16 bytes por sinapsis para que la simulación sea operativa. Modha habla solo del córtex y de 10.000 sinapsis por neurona. Su predicción es que se necesitan 4 petabytes (4.000.000.000.000.000) de memoria y 1 exaflops (1.000.000.000.000.000.000) de capacidad de proceso. Corregido el dato de memoria, mi primera aproximación es de 8 petabytes:
Se trata de neuronas Integrate&Fire, es decir, de neuronas simplificadas. ¿Podemos simular la expresión de los genes o la proximidad a otras neuronas? No podemos. Dado que las necesidades computacionales son 10.000 mayores en las biológicamente realistas, el cálculo arroja la cifra de: Memoria = 80 exabytes (80.000.000.000.000.000.000). Muy lejos de la estimación de Modha y también de la de Markham (aunque solo 160 veces más). Dado que este último ya usa neuronas realistas, considero válida su cifra de:

Memoria = 500 petabytes (500.000.000.000.000.000)

Es de resaltar que Watson solo usa 500 gigabytes para responder en Jeopardy. 500 gigabytes son 200 millones de páginas de texto (40x60=2.400 caracteres por página). Es decir, la información textual representa una parte mínima del almacenamiento total del cerebro. En la página de información de Watson se sugiere que la capacidad del cerebro está entre 1 y 1000 terabytes, una enorme variabilidad pero aún a mucha distancia de la cifra a la que yo llego.
Siguiendo con la especulación, toca el turno a la capacidad de proceso. El proyecto Blue Brain usa neuronas realistas. En concreto, usa 22 Teraflops (22.000.000.000.000 flops) para computar 10.000 neuronas. Consiguientemente, la capacidad de computación necesaria para el total del cerebro es de: Procesamiento = 220 exaflops (220.000.000.000.000.000.000 flops). Esta cifra de nuevo es mayor que las de Modha y Markham (solo 220 veces) que esta vez coinciden (aunque de forma sorprendente ya que usan dos modelos distintos de neuronas; la explicación mejor es que sus datos, como todo lo que llevas leído es pura especulación). Doy por buena la cifra de ambos:

Procesamiento = 1 exaflops (1.000.000.000.000.000.000 flops)

Las cifras que ofrecen los seguidores de la singularidad de Ray Kurzweil, 10 petaflops, están de nuevo muy lejos de las mías, lo que viene a confirmar que esto es solo un ejercicio y que ante tanta variabilidad, cada cual puede escoger su cifra.



Prefijos del sistema internacional de unidades

Singularidad
Modha

domingo, 24 de abril de 2011

El cerebro como simulador (Brain as a simulator)

¿Es posible simular el cerebro? Se trata de una pregunta fundamental que, con el avance de la neurociencia y de la computación, nos formulamos en la actualidad. La consideración inversa, la del cerebro como un simulador puede orientar la respuesta.
Varias objeciones se argumentan para concluir que el cerebro no puede simularse. Una es un tema de tamaño y conocimiento. Necesitamos ordenadores mucho más grandes de los que tenemos para simular el cerebro. Es un asunto de tiempo. Necesitamos un conocimiento muy superior del cerebro y su funcionamiento. Es también un asunto de tiempo. De los dos problemas, el tamaño del ordenador y el conocimiento del  cerebro, estamos hoy mucho más lejos de resolver el segundo (el funcionamiento del cerebro) que el primero (el tamaño del ordenador).
Mientras esto ocurre, podemos plantearnos filosóficamente si es posible la simulación.
El Ajedrecista de Leonardo Torres Quevedo
El resultado de una simulación no es la cosa en sí, es solo una simulación. Si simulo en un ordenador la reacción física de la formación del agua a través de sus componentes, hidrógeno y oxígeno, no obtengo agua, de la misma forma que al principio no tenía hidrógeno ni oxígeno. Si simulo una piedra no obtengo una piedra. Si simulo un pájaro, no obtengo un pájaro. Si simulo un cerebro no obtengo un cerebro.
Pero ¿alguien quiere obtener un cerebro con sus neuronas y sus vasos sanguíneos, con su peso y su volumen? Evidentemente no. Lo que queremos es obtener el comportamiento del cerebro. Simular su comportamiento. Eso sí, con todas sus características, estados mentales y conciencia incluidas ya que de otra forma no estaríamos simulando un cerebro. Queremos también que interaccione con el mundo, algo que ya hemos conseguido en pequeña escala. En efecto, mediante los interfaces cerebro máquina BCI, podemos conectar una cámara tanto a un nervio óptico como a un ordenador y también podemos conectar un brazo robótico tanto a un nervio motor como a un ordenador. El interfaz es posible.
Quizá nos ayude pensar sobre qué hace un cerebro.
Por un lado realiza actos reflejos (en realidad son otras partes del sistema nervioso como la médula espinal). Tan solo 4 neuronas intervienen en el reflejo de extensión de la pierna. Interconectar dichas neuronas con elementos electromecánicos puede suponer un problema técnico pero no parece que tenga una trascendencia filosófica.
¿Qué otra cosa hace el cerebro? Simular. El cerebro es un simulador. De acuerdo con la filosofía clásica y con la evidencia científica, las ideas son representaciones del mundo exterior. Son simulaciones. Y las operaciones mentales como juzgar o planificar son simulaciones del comportamiento del mundo tanto exterior como de nuestro comportamiento. Simulamos la trayectoria del coche que nos puede atropellar y reaccionamos. El cerebro simula el mundo.
Sensorama: simulador de moto. 1962
No pensemos en un ordenador que simule el cerebro. Pensemos, al revés, un cerebro que simule un ordenador. ¿Es posible? Sin duda, sí. La persona que diseña ordenadores tiene un cerebro que simula su comportamiento. ¿Y si hablamos de un simulador de vuelo? Ambos, el cerebro y el programa son simuladores. El piloto es un simulador de vuelo. Su cerebro simula lo que ocurrirá si realiza una acción determinada y de forma análoga un programa de simulación lo hace.
En relación al nivel de detalle de la simulación, este debe de ser adecuado a nuestros propósitos. Un simulador de vuelo no simula los tornillos, sino los elementos relevantes como el perfil del ala. Del mismo modo, una simulación del cerebro no necesita simular los vasos sanguíneos, le basta con simular el comportamiento neuronal.
Ya en 1950 Turing estableció que el hecho de que tanto cerebro como ordenador usen electricidad no es relevante. En su época, coexistían ordenadores mecánicos y eléctricos equivalentes. "...puesto que todas las computadoras digitales son equivalentes en cierto sentido (a las mecánicas), observamos que el uso de la electricidad no puede tener importancia teórica.() Si realmente deseamos encontrar tales semejanzas, deberíamos buscar analogías matemáticas en el funcionamiento." Leornardo Torres Quevedo diseñó en 1912 El Ajedrecista, un autómata analógico que daba mate con rey torre, equivalente a los programas informáticos posteriores. En términos informáticos un simulador es también un equipo (en general más barato o más moderno) que puede simular el comportamiento de otro equipo, es decir, un ordenador que simula a otro.
De modo que tenemos dos simuladores: el cerebro y el ordenador. ¿Es posible trasladar la simulación del mundo que hace un cerebro de un sustrato al otro, de la biología al silicio? Conceptualmente sí. Técnicamente aún queda tiempo.

domingo, 10 de abril de 2011

Tareas en las que el ordenador pasa el Test de Turing

En 1950 Alan Turing se preguntó ¿pueden pensar los ordenadores? Para no tener que resolver la ambigüedad de los conceptos máquina y pensar, diseñó una prueba que sustituyera a la citada pregunta creando con ello el célebre Test de Turing.
En el Test de Turing hay tres actores. Un concursante humano, un concursante ordenador y un juez. El juez debe averiguar en un entorno de lenguaje natural quién es el ordenador. Si no lo hace, se dice que el ordenador ha superado el Test de Turing. Para comunicarse con el juez, los concursantes utilizan un teletipo (hoy una pantalla y teclado de modo que el juez no pueda verlos ni oírlos).
A fecha de hoy el Test de Turing está lejos de ser superado por ningún ordenador en un entorno de lenguaje natural sin restricciones. Hay muchos ejemplos en la red como Eliza o Solutecia que puedes probar.
Sin embargo, si usamos el test en tareas concretas, un ordenador lo superará en muchos casos. Cada vez más y más sorprendentes. De modo que sugiero reformular el Test de Turing de la siguientes manera:
Un ordenador supera el Test de Turing para una tarea X cuando un juez humano no pueda distinguir entre un concursante humano y un concursante ordenador ejecutando la tarea X
¿En qué tareas un ordenador supera el test?
  • Cuanto más acotada sea la tarea, más posibilidades tiene un ordenador de superarla. En los entornos de ejecución abiertos, que por su naturaleza no han sido programados por completo, fracasará con mayor facilidad.
  • Los ordenadores están construidos por humanos para que les descarguen de trabajo, realizando tareas humanas. Por ello superan el test en multitud de tareas. Por ejemplo todas las tareas de informática empresarial: contabilidad, control de almacén, nóminas, cálculos diversos...
  • Matemáticas. El propio Turing advirtió que ya en su tiempo lo único adicional que debería requerir un programa matemático era ralentizar su respuesta e introducir algún error para confundir al juez humano.
  • Ajedrez. En 1997 Deep Blue ganó a Garry Kasparov estableciendo un nuevo escenario en la relación hombre máquina. Hoy los programas comerciales modernos no solo ganan a cualquier maestro, sino que ajustan su nivel (juegan deliberadamente peor) al de su contrincante para no desanimarle.
  • Música. Escucha la siguiente composición del programa Emmy al estilo Bach. Una audiencia especializada no distinguió si el compositor era Bach o Emmy.
  • Poesía. Aunque los ordenadores están lejos de crear largos textos en prosa, pueden confundir en un poema corto.
    Yunques ahumados
    Sus muslos se me escapaban como
    Peces sorprendidos
    La mitad llenos de alas.
    Con la sombra levanta
    La arquitectura del humo
    Un pie de mármol afirma
    Su casto fulgor enjuto
  • Reconocimiento de caras. Poco a poco se van adentrando en este terreno. Policías del mundo están usando estos programas que empiezan a estar disponibles en Facebook o Windows.
  • Síntesis de voz. Disponible desde hace tiempo,se va refinando. Aun distinguimos con claridad una voz humana de una sintética.
  • Reconocimiento de voz. Asignatura pendiente donde el camino por recorre es aún grande. Dada su importancia comercial, es de esperar que avance con rapidez.
  • Lenguaje natural. Watson, Es el enfoque más ambicioso de los últimos tiempos. Watson supera el test en la tarea "jugar en el concurso televisivo Jeopardy" No es un entorno abierto, pero el avance en "entendimiento" de lenguaje natural es asombroso.

domingo, 27 de marzo de 2011

Poesía compuesta por ordenador

En su constante aproximación a la simulación del comportamiento humano, los ordenadores son capaces de componer poesía. ¿Superan el Test de Turing? Júzgalo tú.
No soy un gran aficionado a la poesía. Me cuesta encontrar los múltiples sentidos, me falta paciencia y con frecuencia no la entiendo (o no se si la he entendido por completo, o no se si he entendido lo que el autor quería transmitir). Es quizá por ello que soy un buen candidato a quedar deslumbrado por lo que hacen los ordenadores en este ámbito. Juntan palabras, a veces sin errores y con aparente sentido. Los generadores de poesía son programas que pueden ser muy pequeños y con un buen resultado aparente.

¿Puede un computador escribir un poema de amor? es un libro del poeta Dionisio Cañas y el psicólogo Carlos González Tardón en el que reflexionan sobre el asunto.  ¿Un ejemplo?
Yunques ahumados
Sus muslos se me escapaban como
Peces sorprendidos
La mitad llenos de alas.
Con la sombra levanta
La arquitectura del humo
Un pie de mármol afirma
Su casto fulgor enjuto

Pablo Gervás, informático ha creado los generadores de poemas WASP (the Wishful Automatic Spanish Poet) y es autor de "Un modelo computacional para la generación automática de poesía formal en castellano" (descargar pdf)
Marchitará la nieve, el fin pesado,
por tal caso, con una lengua sola,
duro rato de rastro ensangrentado
¿Más generadores? consulta Escritura automática

Aunque mejor aún, prueba por ti mismo con los generadores de poemas y texto de Féliz Remirez. Puedes incluso leer el código del programa. Si tienes tiempo, te recomiendo que leas su ilustrativo y divertido artículo.

Generador automático de poemas Félix Remírez Año 2009
Generador automático de textos Félix Remírez 2009

domingo, 13 de marzo de 2011

Por qué ganó Watson. Velocidad y metacognición


Stephen Baker ha escrito un libro renombrado sobre el encuentro: Final Jeopardy: Man vs. Machine and the Quest to Know Everything. Como es de esperar las preguntas más interesantes se formulan en torno al cerebro humano, no acerca de las máquinas. Cuando nos preguntamos si piensa Watson, nos preguntamos si eso que hace Watson y que conocemos se parece a lo que nosotros hacemos, que no conocemos y que llamamos pensar.
Al fin y al cabo nosotros hemos construido las máquinas y las entendemos (o siempre podemos llamar a alguien que las entienda). Pero el cerebro sigue albergando enormes misterios. Una de las equivocaciones recurrentes a la hora de comparar los ordenadores y los hombres, tanto se trate de Deep Blue ganando al ajedrez a Gary Kasparov como de Watson ganando en Jeopardy es afirmar que los ordenadores se comportan de forma distinta que los cerebros o por decirlo de otra forma, que no imitan a los cerebros: los programas de ajedrez no imitan el comportamiento humano, Watson no se comporta como los humanos. Esto es solo parcialmente cierto. Desde luego no siguen la misma secuencia de pasos que los humanos. Pero los ordenadores solo hacen cosas que los humanos sabemos hacer. Los programadores escriben rutinas que ellos entienden y piden a los ordenadores que las lleven a cabo. La diferencia estriba en la velocidad con la que ejecutan las rutinas. No hay nada que haga un ordenador que un hombre no pueda hacer con papel y lápiz ( aunque necesite para ello siglos y kilómetros de papel ).

En un excelente artículo (como todos los suyos) Mind Hacks se plantea algunas novedades de Watson. Entre los muchos algoritmos que incorpora el artículo se refiere a dos. Uno de ellos es constraint satisfaction o satisfacción de requisitos por el que el sistema encuentra la solución que mejor se ajusta a los requisitos de un problema que no tiene solución matemática exacta. Este es en efecto una de las novedades del sistema ya que se plantean múltiples hipótesis y se elige la mejor, considerando que ninguna es buena al 100%. El otro se denomina local search e indica cuando considerar la búsqueda suficiente y detenerla debido a  que siempre sería posible seguir hurgando en los datos. Estas estrategias que emplea Watson ¿son humanas? Evidentemente sí, responden a aproximaciones que usamos con regularidad.

Un aspecto muy interesante es la metacognición. No solo sabemos cosas. Sabemos que sabemos. Tenemos la sensación de saberlo. Sé que conozco la respuesta antes de dar con ella. Lo tengo en la punta de la lengua (expresión que al parecer es muy similar en muchos idiomas). Sé que si sigo buscando voy a dar con la respuesta. Quizá deba empezar con la A y seguir el alfabeto hasta encontrar el nombre de la persona a la que acabo de saludar. O seguir otras estrategias de recuperación de la información. Pero con una alta probabilidad si creo que lo sé es que lo sé.
Pulsador accionado de forma mecánica por Watson
Watson carece de metacognición (aunque no sería difícil programar estadísticamente algo semejante, no sería metacognición). Hasta que no encuentra la respuesta no sabe que lo sabe. Y en el programa Jeopardy la confianza es fundamental ya que las respuesta erróneas puntúan negativamente.

¿Por qué ganó Watson? Uno de los dos concursantes rivales de Watson, Brad Ruter (el que había ganado más dinero en la historia del concurso) lo explica en Why I Lost to Watson. Los tres concursantes conocen la mayoría de las respuestas, pero Watson es el más rápido con el pulsador. La secuencia en Jeopardy es como sigue:
  1. Se presenta la pregunta visualmente a los participantes.
  2. El presentador lee la pregunta en alto.
  3. Se activa el pulsador. (Si un jugador pulsa antes de tiempo su pulsador se desactiva unos instantes)
En cuanto se presenta la pregunta y mientras el presentador está leyéndola (lo que le lleva unos tres segundos) Watson está procesando datos. Cuando se activa el pulsador, Watson usa entre 4 y 10 milisegundos en apretar el pulsador. Un tiempo imposible de batir para los humanos, aunque sepan la respuesta o tengan metacognición y sepan que lo saben. Watson perdió las preguntas de la categoría "Actores que dirigen". El motivo es que el presentador necesita poco más de 1 segundo en leer el título de la película, Watson no sabe que lo sabe y necesita 3 segundos para encontrar la respuesta, pero antes de ello los humanos se han adelantado.