Разработчик(и) | Ромен Бретт, Дэн Гудман, Марсель Стимберг |
---|---|
Стабильный релиз | 2.8.0 [1] / 20 декабря 2024 г. ( 20 декабря 2024 ) |
Репозиторий |
|
Написано в | Питон |
Операционная система | Кроссплатформенный |
Тип | Программное обеспечение нейронных сетей |
Лицензия | СеСИЛЛ |
Веб-сайт | www.briansimulator.org |
Brian — это пакет Python с открытым исходным кодом для разработки симуляций сетей импульсных нейронов.
Брайан нацелен на исследователей, разрабатывающих модели на основе сетей спайковых нейронов . Общая конструкция направлена на максимизацию гибкости, простоты и времени разработки для пользователей. [2] Пользователи определяют модели нейронов, задавая свои дифференциальные уравнения в стандартной математической форме в виде строк , создают группы нейронов и соединяют их через синапсы . Это отличается от подхода, используемого многими нейронными симуляторами, в которых пользователи выбирают из предопределенного набора моделей нейронов.
Brian написан на Python. С точки зрения вычислений он основан на концепции генерации кода: пользователи указывают модель на Python, но за кулисами Brian генерирует, компилирует и запускает код на одном из нескольких языков (включая Python, Cython и C++ ). Кроме того, существует «автономный» режим, в котором Brian генерирует целое дерево исходного кода C++ без зависимости от Brian, что позволяет запускать модели на платформах, где Python недоступен.
Следующий код определяет, запускает и строит график случайно соединенной сети интегрирующих и активирующих нейронов с утечкой и экспоненциальными тормозными и возбуждающими токами.
из импорта brian2 * eqs = """ dv/dt = (ge+gi-(v+49*мВ))/(20*мс) : вольт dge/dt = -ge/(5*мс) : вольт dgi/dt = -gi/(10*мс) : вольт """ P = NeuronGroup ( 4000 , eqs , threshold = "v>-50*мВ" , reset = "v=-60*мВ" ) P . v = - 60 * мВ Pe = P [: 3200 ] Pi = P [ 3200 :] Ce = Синапсы ( Pe , P , on_pre = "ge+=1.62*мВ" ) Ce . connect ( p = 0.02 ) Ci = Синапсы ( Pi , P , on_pre = "gi-=9*мВ" ) Ci . подключить ( p = 0,02 ) M = SpikeMonitor ( P ) запустить ( 1 * секунду ) построить график ( M.t / мс , M.i , " . " ) показать ( )
Брайан в первую очередь, хотя и не исключительно, нацелен на модели нейронов с одним отсеком. Симуляторы, ориентированные на многоотсековые модели, включают Neuron , GENESIS и его производные.
Брайан фокусируется на гибкости и простоте использования и поддерживает только симуляции, запущенные на одной машине. Симулятор NEST включает в себя средства для распределения симуляций по кластеру. [3]