跳转到主要内容

基于JSON/YAML的紧凑网络规范格式,紧密关联到NeuroML v2

项目描述

NeuroMLlite:基于NeuroML的读取/写入/生成网络规范的通用框架

Continuous builds PyPI PyPI - Python Version GitHub GitHub pull requests GitHub issues GitHub Org's stars Twitter Follow

NeuroMLlite正处于积极开发中。这将演变成一个用于更便携、更简洁网络规范的框架,将成为NeuroML v3的重要组成部分。

有关此包的更多背景信息,请参见此处: https://github.com/NeuroML/NetworkShorthand

Architecture

示例

查看目前提出的结构的最佳方式是查看示例

例1:简单网络,2个群体 & 投影

Ex1

JSON | Python脚本

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)

例2:简单网络,2个群体,投影 & 输入

Ex2

JSON | Python脚本 | 生成的NeuroML2

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)

例3:如上,带有模拟规范

网络JSON | 模拟JSON | Python脚本 | 生成的NeuroML2 | 生成的LEMS

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见例2)

可以使用以下工具进行模拟

  • NetPyNE
  • jNeuroML
  • NEURONjNeuroML生成
  • NetPyNEjNeuroML 生成

示例 4:包含 PyNN 细胞和输入的网络

Ex4

JSON | Python 脚本 | 生成的 NeuroML2

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)

可以使用以下工具进行模拟

  • NEST 通过 PyNN
  • NEURON 通过 PyNN
  • Brian 通过 PyNN
  • jNeuroML
  • NEURONjNeuroML生成
  • NetPyNEjNeuroML 生成

示例 5:使用 Blue Brain Project 连接数据的网络

Ex5

Ex5_1 Ex5_2 Ex5_3

JSON | Python 脚本

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)
  • 矩阵(见上方)

可以使用以下工具进行模拟

  • NetPyNE

示例 6:基于 Potjans 和 Diesmann 2014 的网络(工作中)

Ex6d Ex6f Ex6c Ex6matrix

JSON | Python 脚本 | 生成的 NeuroML2

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)
  • 矩阵(见上方)

示例 7:基于 Brunel 2000 的网络(工作中)

Ex7

JSON | Python 脚本 | 生成的 NeuroML2

可导出为

  • NeuroML 2(XML或HDF5格式)
  • 图形(见上文)

可以使用以下工具进行模拟

  • jNeuroML

安装与使用

基本框架的安装应该是相当直接的

git clone https://github.com/NeuroML/NeuroMLlite.git
cd NeuroMLlite
sudo python setup.py install

然后可以运行简单的示例

cd examples
python Example1.py  #  Generates the JSON representation of the network (console & save to file)

要生成网络的 NeuroML 2 版本,首先安装 pyNeuroML,然后使用 -nml 标志

sudo pip install pyNeuroML
python Example2.py -nml       # Saves the network structure to a *net.nml XML file

其他选项(需要安装 NeuronNetPyNEPyNNNESTBrain 等)包括

python Example4.py -jnml       # Generate NeuroML2 & LEMS simulation & run using jNeuroML
python Example4.py -jnmlnrn    # Generate NeuroML2 & LEMS simulation, use jNeuroML to generate Neuron code (py/hoc/mod), then run in Neuron
python Example4.py -jnmlnrn    # Generate NeuroML2 & LEMS simulation, use jNeuroML to generate NetPyNE code (py/hoc/mod), then run in NetPyNE
python Example4.py -netpyne    # Generate network in NetPyNE directly & run simulation
python Example4.py -pynnnrn    # Generate network in PyNN, run using simulator Neuron
python Example4.py -pynnnest   # Generate network in PyNN, run using simulator NEST
python Example4.py -pynnbrian  # Generate network in PyNN, run using simulator Brian

可以在多个细节级别(1-6)生成网络结构的图表,并使用 GraphViz 引擎(d - dot(默认);c - circo;n - neato;f - fdp)进行布局。请参阅上面的图像以查看生成的示例。

python Example6.py -graph3d
python Example6.py -graph2f
python Example6.py -graph1n

其他示例

NeuroMLlite 在 OSB 的以下存储库中进行测试/使用

另请参阅

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

neuromllite-0.6.0.tar.gz (89.3 kB 查看哈希值)

上传时间

构建分发

neuromllite-0.6.0-py3-none-any.whl (99.0 kB 查看哈希值)

上传时间 Python 3

由以下提供支持