Neural Engineering Object ( Nengo ) es un software gráfico y de secuencias de comandos para simular sistemas neuronales a gran escala. [1] Como software de redes neuronales, Nengo es una herramienta para modelar redes neuronales con aplicaciones en ciencia cognitiva , psicología , inteligencia artificial y neurociencia .
Alguna forma de Nengo existe desde 2003. Originalmente desarrollado como un script de Matlab con el nombre NESim (Neural Engineering Simulator), luego se trasladó a una implementación de Java con el nombre de NEO y, finalmente, Nengo. Las primeras tres generaciones de Nengo se desarrollaron con un enfoque en desarrollar una poderosa herramienta de modelado con una interfaz simple y un sistema de secuencias de comandos. A medida que la herramienta se volvió cada vez más útil, las limitaciones del sistema en términos de velocidad llevaron al desarrollo de una API independiente del back-end. Esta versión más reciente de Nengo define una API de secuencias de comandos basada en Python específica con back-ends dirigidos a hardware Numpy, OpenCL y Neuromorphic como Spinnaker. [2] [3] Esta iteración más reciente también viene con una GUI interactiva para ayudar con la creación rápida de prototipos de modelos neuronales. [4]
Nengo utiliza una licencia personalizada que permite el uso personal y de investigación gratuito, pero se requiere una licencia paga para fines comerciales. [5]
Nengo se basa en dos fundamentos teóricos, el Marco de Ingeniería Neural (NEF) [6] y la Arquitectura de Puntero Semántico (SPA). [7]
Nengo se diferencia principalmente de otros programas de modelado en la forma en que modela las conexiones entre las neuronas y sus puntos fuertes. Usando NEF, [8] Nengo permite definir pesos de conexión entre poblaciones de neuronas con picos especificando la función que se calculará, en lugar de forzar que los pesos se establezcan manualmente, o usar una regla de aprendizaje para configurarlos desde un inicio aleatorio. [9] Dicho esto, estos métodos de modelado tradicionales antes mencionados todavía están disponibles en Nengo.
Para representar símbolos en Nengo, se utiliza SPA. Muchos aspectos de la cognición humana son más fáciles de modelar utilizando símbolos. En Nengo, estos se presentan como vectores con un conjunto de operaciones asociadas. Estos vectores y sus operaciones se denominan SPA. SPA se ha utilizado para modelar la búsqueda lingüística humana [10] y la planificación de tareas. [11]
Se han producido desarrollos notables logrados utilizando el software Nengo en muchos campos, y Nengo se ha utilizado y citado en más de 100 publicaciones. [12] Un desarrollo importante a tener en cuenta es Spaun , una red de 6,6 millones [13] de neuronas artificiales (un número pequeño en comparación con el número en el cerebro humano), que utiliza grupos de estas neuronas para completar tareas cognitivas a través de una coordinación flexible. Spaun es el modelo cerebral funcional más grande del mundo y puede utilizarse para probar hipótesis en neurociencia . [14]