
Todos recordamos de los ejercicios escolares de atormentar en aritmética. Tomará al menos un minuto multiplicar números como 3,752 y 6,901 con un lápiz y papel. Por supuesto, hoy, cuando tenemos teléfonos a mano, podemos comprobar rápidamente que el resultado de nuestro ejercicio debería ser 25,892,552. Los procesadores de teléfonos modernos pueden realizar más de 100 mil millones de tales operaciones por segundo. Además, estos chips consumen solo unos pocos vatios, lo que los hace mucho más eficientes que nuestros cerebros lentos, consumen 20 vatios y requieren mucho más tiempo para lograr el mismo resultado.
Por supuesto, el cerebro no evolucionó para hacer aritmética. Por lo tanto, lo hace mal. Pero él hace frente al procesamiento de un flujo constante de información proveniente de nuestro entorno. Y él reacciona a él, a veces más rápido de lo que podemos darnos cuenta. No importa la cantidad de energía que consumirá una computadora normal; será difícil hacer frente a lo que se le da fácilmente al cerebro, por ejemplo, entender el idioma o subir las escaleras.
Si pudieran crear máquinas cuyas capacidades computacionales y eficiencia energética fueran comparables al cerebro, entonces todo cambiaría dramáticamente. Los robots se moverían hábilmente en el mundo físico y se comunicarían con nosotros en un lenguaje natural. Los sistemas a gran escala recopilarían grandes cantidades de información sobre negocios, ciencia, medicina o gobierno, descubriendo nuevos patrones, encontrando relaciones causales y haciendo predicciones. Las aplicaciones móviles inteligentes como Siri y Cortana podrían depender menos de las nubes. Dicha tecnología podría permitirnos crear dispositivos con bajo consumo de energía, complementando nuestros sentidos, proporcionándonos medicamentos y emulando las señales nerviosas, compensando el daño a los órganos o la parálisis.
¿Pero no es demasiado pronto para establecer objetivos tan audaces? ¿Nuestra comprensión del cerebro es demasiado limitada para que podamos crear tecnologías basadas en sus principios? Creo que emular incluso las características más simples de los circuitos nerviosos puede mejorar drásticamente el rendimiento de muchas aplicaciones comerciales. La precisión con que las computadoras deben copiar los detalles biológicos de la estructura del cerebro para acercarse a su nivel de velocidad es una pregunta abierta. Pero los sistemas actuales, inspirados en la estructura del cerebro, o neuromórficos, se convertirán en herramientas importantes para encontrar una respuesta.
Una característica clave de las computadoras convencionales es la separación física de la memoria que almacena datos e instrucciones, y la lógica que procesa esta información. No existe tal división en el cerebro. Los cálculos y el almacenamiento de datos se producen de forma simultánea y local, en una extensa red que consta de aproximadamente 100 mil millones de células nerviosas (neuronas) y más de 100 billones de conexiones (sinapsis). En su mayor parte, el cerebro está determinado por estas conexiones y cómo cada una de las neuronas responde a la señal entrante de las otras neuronas.
Hablando de las extraordinarias posibilidades del cerebro humano, generalmente nos referimos a la reciente adquisición de un largo proceso evolutivo: la
neocorteza (nueva corteza). Esta capa delgada y extremadamente doblada forma la capa externa del cerebro y realiza tareas muy diferentes, incluido el procesamiento de la información recibida de los sentidos, el control de las habilidades motoras, el trabajo con la memoria y el aprendizaje. Esta amplia gama de posibilidades está disponible en una estructura bastante homogénea: seis capas horizontales y un millón de columnas verticales de 500 μm de ancho, que consisten en neuronas que integran y distribuyen información codificada en pulsos eléctricos a lo largo de las antenas que crecen a partir de ellas: dendritas y axones.
Como todas las células del cuerpo humano, la neurona tiene un potencial eléctrico del orden de 70 mV entre la superficie externa y el interior. Esta tensión de membrana cambia cuando una neurona recibe una señal de otras neuronas asociadas con ella. Si el voltaje de la membrana aumenta a un valor crítico, se forma un pulso, o una sobretensión que dura varios milisegundos, del orden de 40 mV. Este impulso se propaga a lo largo del axón de una neurona hasta que alcanza la sinapsis, una estructura bioquímica compleja que conecta el axón de una neurona con la dendrita de otra. Si el impulso satisface ciertas restricciones, la sinapsis lo convierte en otro impulso, bajando las dendritas ramificadas de la neurona que recibe la señal, y cambia su voltaje de membrana en la dirección positiva o negativa.
La conectividad es una característica crítica del cerebro.
La neurona piramidal , un tipo especialmente importante de células de neocorteza humana, contiene alrededor de 30,000 sinapsis, es decir, 30,000 canales de entrada de otras neuronas. Y el cerebro se adapta constantemente. La neurona y las propiedades de la sinapsis, e incluso la estructura de la red en sí, cambian constantemente, principalmente bajo la influencia de los datos de entrada de los sentidos y la retroalimentación ambiental.
Las computadoras modernas de uso general son digitales, no analógicas; La clasificación del cerebro no es tan simple. Las neuronas acumulan una carga eléctrica, como los condensadores en los circuitos electrónicos. Este es claramente un proceso análogo. Pero el cerebro usa ráfagas como unidades de información, y esto es básicamente un esquema binario: en cualquier momento, en cualquier lugar, hay una explosión o no. En términos de electrónica, el cerebro es un sistema con señales mixtas, con computación analógica local y la transmisión de información mediante ráfagas binarias. Como la ráfaga tiene solo 0 o 1 valores, puede recorrer una gran distancia sin perder esta información básica. También se reproduce, llegando a la siguiente neurona en la red.
Otra diferencia clave entre el cerebro y la computadora es que el cerebro hace frente al procesamiento de la información sin un reloj central que sincronice su funcionamiento. Aunque observamos eventos de sincronización, ondas cerebrales, se organizan, surgiendo como resultado del trabajo de las redes neuronales. Curiosamente, los sistemas informáticos modernos están comenzando a adoptar la asincronía inherente al cerebro para acelerar los cálculos al realizarlos en paralelo. Pero el grado y el propósito de paralelizar estos dos sistemas es extremadamente diferente.
La idea de usar el cerebro como modelo para la computación tiene raíces profundas. Los primeros intentos se basaron en una
neurona umbral simple que produce un valor si la suma de los datos de entrada ponderados excede el umbral, y el otro si no lo hace. El realismo biológico de este enfoque, concebido por Warren McCullough y
Walter Pitts en la década de 1940, es muy limitado. Sin embargo, este fue el primer paso para aplicar el concepto de una neurona desencadenante como elemento de cálculo.
En 1957,
Frank Rosenblatt propuso otra versión de una neurona umbral, el
perceptrón . Una red de nodos interconectados (neuronas artificiales) está compuesta de capas. Las capas visibles en la superficie de la red interactúan con el mundo exterior como entradas y salidas, y las capas ocultas en el interior llevan a cabo todos los cálculos.
Rosenblatt también sugirió usar una función central del cerebro: la contención. En lugar de apilar todas las entradas, las neuronas en el perceptrón pueden hacer una contribución negativa. Esta característica permite que las redes neuronales usen una sola capa oculta para resolver problemas XOR en lógica, en la que la salida es verdadera si solo una de las dos entradas binarias es verdadera. Este simple ejemplo muestra que la adición de realismo biológico puede agregar nuevas capacidades computacionales. Pero, ¿qué funciones del cerebro son necesarias para su trabajo y cuáles son rastros de evolución inútiles? Nadie lo sabe
Sabemos que se pueden lograr resultados computacionales impresionantes sin tratar de crear realismo biológico. Los investigadores de aprendizaje profundo han recorrido un largo camino en el uso de computadoras para analizar grandes cantidades de datos y extraer ciertos atributos de imágenes complejas. Aunque las redes neuronales que crearon tienen más entradas y capas ocultas que nunca, todavía se basan en modelos neuronales extremadamente simples. Sus amplias posibilidades reflejan no el realismo biológico, sino la escala de las redes contenidas en ellas y el poder de las computadoras utilizadas para su entrenamiento. Pero las redes de aprendizaje profundo aún están muy lejos de las velocidades computacionales, la eficiencia energética y las capacidades biológicas de aprendizaje cerebral.
La gran brecha entre el cerebro y las computadoras modernas se enfatiza mejor mediante simulaciones cerebrales a gran escala. En los últimos años, se han realizado varios intentos de este tipo, pero todos han sido severamente limitados por dos factores: energía y tiempo de simulación. Por ejemplo, considere una
simulación realizada por Markus Daisman y sus colegas hace varios años usando 83,000 procesadores en una supercomputadora K en Japón. La simulación de 1.73 billones de neuronas consumió 10 billones de veces más energía que el área equivalente del cerebro, aunque usaron modelos extremadamente simplificados y no realizaron ningún entrenamiento. Y tales simulaciones generalmente funcionaron más de 1000 veces más lento que el cerebro biológico en tiempo real.
¿Por qué son tan lentos? Las simulaciones cerebrales en computadoras convencionales requieren el cálculo de miles de millones de ecuaciones diferenciales que están interconectadas y describen la dinámica de las células y las redes: procesos analógicos como mover una carga a través de una membrana celular. Las computadoras que usan la lógica booleana, que cambia la energía para mayor precisión, y comparten memoria y computación, son extremadamente ineficientes para modelar el cerebro.
Estas simulaciones pueden convertirse en una herramienta para la cognición del cerebro, transfiriendo los datos obtenidos en el laboratorio a simulaciones con las que podemos experimentar y luego comparar los resultados con las observaciones. Pero si esperamos ir en una dirección diferente y usar las lecciones de neurobiología para crear nuevos sistemas informáticos, debemos repensar cómo diseñamos y creamos computadoras.
Neuronas en silicio.Copiar el trabajo del cerebro usando electrónica puede ser más factible de lo que parece a primera vista. Resulta que se gastan alrededor de 10 fJ (10-15 julios) para crear un potencial eléctrico en la sinapsis. La puerta de un transistor de semiconductor de óxido de metal (MOS), que es mucho más grande y consume más energía que las usadas en la CPU, requiere solo 0.5 fJ para cargarse. Resulta que la transmisión sináptica es equivalente a cargar 20 transistores. Además, a nivel de dispositivo, los circuitos biológicos y electrónicos no difieren tanto. En principio, puede crear estructuras como sinapsis y neuronas a partir de transistores y conectarlas de tal manera que se obtenga un cerebro artificial que no absorba cantidades tan deslumbrantes de energía.
La idea de crear computadoras usando transistores que funcionan como neuronas apareció en la década de 1980 con el profesor Carver Mead de Caltech. Uno de los argumentos clave de Mead a favor de las computadoras "neuromórficas" fue que los dispositivos semiconductores pueden, en cierto modo, seguir las mismas leyes físicas que las neuronas, y que el comportamiento analógico puede usarse para cálculos con alta eficiencia energética.
El grupo de Mead también inventó una plataforma de comunicaciones neuronales en la que las ráfagas se codifican solo por sus direcciones de red y hora de ocurrencia. Este trabajo fue innovador, ya que fue el primero en hacer del tiempo una característica necesaria de las redes neuronales artificiales. El tiempo es un factor clave para el cerebro. Las señales necesitan tiempo de propagación, las membranas necesitan tiempo de reacción, y es el tiempo el que determina la forma de los potenciales postsinápticos.
Varios grupos de investigación activos hoy, por ejemplo, el grupo
Giacomo Indiveri de la Escuela Técnica Superior Suiza y
Kwabena Bohen de Stanford, siguieron los pasos de Mead e introdujeron con éxito elementos de redes biológicas corticales. El truco es trabajar con transistores usando una corriente de bajo voltaje que no alcanza su valor umbral, creando circuitos analógicos que copian el comportamiento del sistema nervioso, mientras consumen un poco de energía.
La investigación adicional en esta dirección puede encontrar aplicación en sistemas como la interfaz cerebro-computadora. Pero existe una gran brecha entre estos sistemas y el tamaño real de la red, la conectividad y la capacidad de aprendizaje del cerebro animal.
Por lo tanto, en la región de 2005, tres grupos de investigadores comenzaron a desarrollar sistemas neuromórficos que eran significativamente diferentes del enfoque original de Mead. Querían crear sistemas a gran escala con millones de neuronas.
Más cercano a las computadoras comunes es el proyecto
SpiNNaker , dirigido por Steve Ferber de la Universidad de Manchester. Este grupo desarrolló su propio chip digital, que consta de 18 procesadores ARM que funcionan a 200 MHz, aproximadamente una décima parte de la velocidad de las CPU modernas. Aunque los núcleos ARM provienen del mundo de las computadoras clásicas, simulan ráfagas enviadas a través de enrutadores especiales diseñados para transmitir información de forma asincrónica, al igual que el cerebro. La implementación actual, que forma parte del Proyecto del Cerebro Humano de la Unión Europea, y se completó en 2016, contiene 500,000 núcleos ARM. Dependiendo de la complejidad del modelo neuronal, cada núcleo puede simular hasta 1000 neuronas.
El chip TrueNorth, desarrollado por
Darmendra Maud y sus colegas en el Laboratorio de Investigación de IBM en Almaden, se niega a usar microprocesadores como unidades computacionales, y en realidad es un sistema neuromórfico en el que la computación y la memoria están entrelazadas. TrueNorth sigue siendo un sistema digital, pero se basa en neuroconcursos especialmente diseñados que implementan un modelo neuronal específico. El chip contiene 5.400 millones de transistores, está construido con tecnología Samsung
CMOS de 28 nm (estructura complementaria de semiconductores de óxido de metal). Los transistores emulan 1 millón de circuitos neuronales y 256 millones de sinapsis simples (un bit) en un solo chip.
Diría que el próximo proyecto,
BrainScaleS , se alejó bastante de las computadoras convencionales y se acercó al cerebro biológico. Trabajamos en este proyecto con mis colegas de la Universidad de Heidelberg para la iniciativa europea "El cerebro humano". BrainScaleS implementa el procesamiento de señales mixtas. Combina neuronas y sinapsis, en cuyo papel los transistores de silicio actúan como dispositivos analógicos con intercambio de información digital. El sistema de tamaño completo consta de sustratos de silicio de 8 pulgadas y le permite emular 4 millones de neuronas y mil millones de sinapsis.
El sistema puede reproducir nueve modos diferentes de respuesta de neuronas biológicas, y se desarrolla en estrecha colaboración con neurocientíficos. A diferencia del enfoque analógico de Mead, BrainScaleS funciona en modo acelerado, su emulación es 10,000 veces más rápida que en tiempo real. Esto es especialmente conveniente para estudiar el proceso de aprendizaje y el desarrollo.
Es probable que el aprendizaje se convierta en un componente crítico de los sistemas neuromórficos. Ahora, los chips creados en la imagen del cerebro, así como las redes neuronales que se ejecutan en computadoras comunes, se entrenan de forma paralela con la ayuda de computadoras más potentes. Pero si queremos utilizar sistemas neuromórficos en aplicaciones reales, por ejemplo, en robots que tendrán que trabajar codo a codo con nosotros, deberán poder aprender y adaptarse sobre la marcha.
En la segunda generación de nuestro sistema BrainScaleS, implementamos la oportunidad de capacitación mediante la creación de "procesadores de flexibilidad" en el chip. Se utilizan para cambiar una amplia gama de parámetros de neuronas y sinapsis. Esta característica nos permite ajustar los parámetros para compensar las diferencias de tamaño y propiedades eléctricas al pasar de un dispositivo a otro, aproximadamente cómo se ajusta el cerebro a los cambios.
Los tres sistemas a gran escala que he descrito se complementan entre sí. SpiNNaker puede configurarse de manera flexible y usarse para probar diferentes neuromodelos, TrueNorth tiene una alta densidad de integración, BrainScaleS está diseñado para capacitación y desarrollo continuo. La búsqueda de la forma correcta de evaluar la efectividad de tales sistemas está en curso. Pero los primeros resultados son prometedores. El equipo TrueNorth de IBM calculó recientemente que la transmisión sináptica en su sistema requiere 26 pJ. Y aunque es 1000 veces más energía requerida en un sistema biológico, es casi 100 000 veces menos energía utilizada para la transmisión en simulaciones en computadoras de uso general.
Todavía estamos en una etapa temprana de comprender qué pueden hacer esos sistemas y cómo aplicarlos para resolver problemas reales. Al mismo tiempo, debemos encontrar formas de combinar muchos chips neuromórficos en grandes redes con capacidades de aprendizaje mejoradas, mientras se reduce el consumo de energía. Uno de los problemas es la conectividad: el cerebro es tridimensional y nuestros circuitos son bidimensionales. El tema de la integración tridimensional de los circuitos ahora se está estudiando activamente, y esas tecnologías pueden ayudarnos.
Los dispositivos que no están basados en CMOS -
memristors o PCRAM (
memoria con cambio de estado de fase ) pueden convertirse en otra ayuda.
Hoy en día, los pesos que determinan la respuesta de las sinapsis artificiales a las señales entrantes se almacenan en la memoria digital ordinaria, que ocupa la mayor parte de los recursos de silicio necesarios para construir una red. Pero otros tipos de memoria pueden ayudarnos a reducir el tamaño de estas células de micrómetro a nanómetro. Y la principal dificultad de los sistemas modernos será soportar las diferencias entre los diferentes dispositivos. Los principios de calibración desarrollados por BrainScaleS pueden ayudar.Acabamos de comenzar nuestro viaje a lo largo del camino hacia sistemas neuromórficos prácticos y útiles. Pero el esfuerzo lo vale. Si tiene éxito, no solo crearemos sistemas informáticos potentes; Incluso podemos obtener nueva información sobre el trabajo de nuestro propio cerebro.