ngc-learn 是一个 Python 模拟库,旨在通过以灵活重新排列的组件和操作的形式具体实例化神经元动力学和突触可塑性形式来满足上述需求,以构建用于大脑研究的任意、模块化和复杂的仿生系统。启发了计算和神经认知建模。更重要的是,它旨在促进神经计算和信息处理、神经元电路、生物学上合理的信用分配和神经模拟代理的新模型的设计、开发和分析。具体来说,ngc-learn 实现了模拟以微分方程为特征的仿生系统的通用模式,包括基于生物物理尖峰神经元细胞的仿生系统。
ngc-learn 的总体目标是为研究人员和工程师提供:
模块化设计,允许在预测处理框架下灵活创建、模拟和分析神经系统和电路;
一个强大、平易近人的工具,由直接研究和致力于推进预测处理和仿生系统的研究人员和实验人员编写和维护,旨在降低进入该研究领域的壁垒;
一个模型博物馆,捕捉历史上基本且有趣的预测处理和其他仿生模型的本质,允许对古典和现代思想进行研究和实验。
ngc-learn 软件框架最初由罗切斯特理工学院的神经自适应计算 (NAC) 实验室于 2019 年开发,旨在作为预测编码研究的内部工具(早期版本是 Scala 编程语言,可以追溯到早期2017)。它仍然由 NAC 实验室积极维护并用于预测处理和仿生学研究(请参阅本 工程博客文章中 ngc-learn 的提及/声明)。我们热烈欢迎社区为此项目做出贡献。有关详细信息,请查看我们的 贡献指南。
具体来说,为了充分利用 ngc-learn,重要的是要掌握其“节点和电缆系统”(正如历史上所提到的那样)以构建模拟对象。这套教程将逐步介绍您需要了解的库的关键方面,以便您可以构建和运行计算生物物理模型的模拟。此外,我们还提供了 ngcsimlib底层的一些核心机制的演练,ngcsimlib 是驱动 ngc-learn 的模拟依赖库;这些不仅对于理解 ngc-learn 的模拟后端完成任务的原因和方式特别有用,而且对于那些想要为自己的研究或为主要开发做出贡献的 ngc-learn 设计新的自定义扩展的人也特别有用。图书馆。
NGC-Sim-Lib:NGC-Learn 的支持库
ngc-sim-lib是ngc-learn的支持库和核心依赖项 ,ngc-learn 是一个为计算神经科学和认知神经科学研究而设计的库。虽然 ngc-learn 包含 JAX 实现的例程和任何支持的 C 代码,但 ngc-sim-lib 是一个纯 Python 包,主要用于提供促进复杂自适应系统的一般(抽象)模拟的机制、例程和实用程序由动力组件组成。有关信息,包括与使用说明和详细信息相关的任何信息,请参阅 ngc-learn 自述文件:https://github.com/NACLab/ngc-learn/。
该软件包根据 3-Clause BSD 许可证分发。目前由神经自适应计算(NAC)实验室维护 。