torch-biopl
is a PyTorch package designed to bridge the gap between traditional Artificial Neural Networks (ANNs) and biologically-inspired models. It provides modules that allow researchers to:
- Train models using standard machine learning techniques while incorporating biological constraints.
- Simulate large-scale populations of neurons with realistic biological properties.
- Explore the impact of network topology on neural function.
-
ConnectomeRNN
- Handles rate-based neural populations whose recurrent connectivity matrix is specified from a biologically recoded (or synthetically initialized) connectome.
- Includes under-the-hood application of sparse tensor arithmetic for efficient memory usage, enabling simulation and training of large-scale networks.
- Supports the ability to flexibly spin up probabilistic connectomes, define celltypes and associated synaptic variables, and tune user-defined parameters via gradient descent.
-
SpatiallyEmbeddedRNN
:- Model constructors and helpers to wire up cortical architectures with varying levels of biological specification.
- Configurable aspects include cell classes, cell types, cell subtypes, local connectivity rules, synaptic and neuronal nonlinearities, time constants, feedback wiring, and lots more.
For instructions to install the right dependencies and use either the API or CLI (Command Line Interface) of torch-biopl
please refer to our Quick start guide and API documentation.
For basic and advanced examples please refer to the webpage.
We welcome contributions to torch-biopl
. For guidelines on submitting code and documentation changes, please refer to contributing.