Neural Engineering Object ( Nengo ) — это графическое и скриптовое программное обеспечение для моделирования крупномасштабных нейронных систем. [1] Как программное обеспечение для нейронных сетей Nengo — это инструмент для моделирования нейронных сетей с приложениями в когнитивной науке , психологии , искусственном интеллекте и нейронауке .
Некоторая форма Nengo существует с 2003 года. Первоначально разработанный как скрипт Matlab под названием NESim (Neural Engineering Simulator), позже он был перенесен в реализацию Java под названием NEO, а затем в конечном итоге Nengo. Первые три поколения Nengo разрабатывались с упором на разработку мощного инструмента моделирования с простым интерфейсом и системой сценариев. По мере того, как инструмент становился все более полезным, ограничения системы с точки зрения скорости привели к разработке API, независимого от бэкэнда. Эта последняя итерация Nengo определяет конкретный API сценариев на основе Python с бэкэндами, ориентированными на Numpy, OpenCL и нейроморфное оборудование, такое как Spinnaker. [2] [3] Эта новейшая итерация также поставляется с интерактивным графическим интерфейсом, помогающим быстро создавать прототипы нейронных моделей. [4]
Nengo использует пользовательскую лицензию, которая позволяет бесплатное использование в личных и исследовательских целях, но для коммерческих целей требуется платная лицензия. [5]
Nengo построен на двух теоретических основах: Neural Engineering Framework (NEF) [6] и Semantic Pointer Architecture (SPA) [7] .
Nengo отличается от других программ моделирования в первую очередь тем, как оно моделирует связи между нейронами и их силой. Используя NEF, [8] Nengo позволяет определять веса связей между популяциями спайковых нейронов, указывая функцию для вычисления, вместо того, чтобы заставлять веса устанавливаться вручную или использовать правило обучения для их настройки со случайного начала. [9] При этом эти вышеупомянутые традиционные методы моделирования по-прежнему доступны в Nengo.
Для представления символов в Nengo используется SPA. Многие аспекты человеческого познания проще моделировать с помощью символов. В Nengo они представлены в виде векторов с набором операций, связанных с ними. Эти векторы и их операции называются SPA. SPA использовался для моделирования человеческого лингвистического поиска [10] и планирования задач. [11]
Известные разработки, выполненные с использованием программного обеспечения Nengo, произошли во многих областях, и Nengo использовался и цитировался в более чем 100 публикациях. [12] Важной разработкой, которую следует отметить, является Spaun , сеть из 6,6 миллионов [13] искусственных спайковых нейронов (небольшое число по сравнению с числом в человеческом мозге), которая использует группы этих нейронов для выполнения когнитивных задач посредством гибкой координации. Spaun является крупнейшей в мире функциональной моделью мозга и может использоваться для проверки гипотез в области нейронауки . [14]