Skip to content

High-speed simulator of convolutional spiking neural networks with at most one spike per neuron.

License

Notifications You must be signed in to change notification settings

SPiN-Lab/Spytorch

 
 

Repository files navigation

SpykeTorch

High-speed simulator of convolutional spiking neural networks with at most one spike per neuron.

alt text

SpykeTorch is a PyTorch-based simulator of convolutional spiking neural networks, in which the neurons emit at most one spike per stimulus. SpykeTorch supports STDP and Reward-modulated STDP learning rules. The current code is the early object oriented version of this simulator and you can find the documentation in docs folder in PDF format or in our lab website (http://cnrl.ut.ac.ir/SpykeTorch/doc/) in HTML format. Since SpykeTorch is fully compatible with PyTorch, you can easily use it if you know PyTorch. A tutorial is available in the paper titled "SpykeTorch: Efficient Simulation of Convolutional Spiking Neural Networks with at most one Spike per Neuron" which introduces the SpykeTorch package (https://www.frontiersin.org/articles/10.3389/fnins.2019.00625/full).

IMPORTANT: Current version of SpykeTorch does not support negative synaptic weights.

To setup this package, you can install Anaconda or Miniconda

# Clone the repository
git clone https://github.com/miladmozafari/SpykeTorch

# Create a new conda environment
conda create -n spyketorchproject python=3
conda activate spyketorchproject

# Install all the dependencies
pip install -r requirements.txt
# Alternatively, one can just run the following command
pip install git+https://github.com/miladmozafari/SpykeTorch.git

Scripts info:

About

High-speed simulator of convolutional spiking neural networks with at most one spike per neuron.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 68.2%
  • Python 31.8%