Skip to content

arnodelorme/SpikeNET

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SpikeNET

Although, as of 2021, the code is still functional, this project is no longer supported.

SpikeNET is a program designed to simulate large networks of asynchronous spiking neurons. Neurons are modeled with a limited number of parameters that include classic properties such as post-synaptic potential and threshold, as well as more novel features like dendritic sensitivity. SpikeNET can be used to simulate networks with millions of neurons and hundreds of millions of synaptic weights. Optimization of computation time, with the goal of real-time performance, has been a central focus in the development of SpikeNET.

What SpikeNET can do

  • Perform image processing using a biologically plausible network of neurons.
  • Simulate millions of integrate-and-fire neurons organized in retinotopic maps.
  • Connect these neuronal maps using projection files, and group shared synaptic weights to reduce memory usage, enabling the definition of hundreds of billions of synaptic connections.
  • Convert grayscale images into lists of spikes, with optional preprocessing of input images.
  • Implement complex projection mechanisms between neuronal maps of different sizes.
  • Support supervised learning.
  • Implement the efficient neuronal rank-order coding scheme (optional).

What SpikeNET cannot do

  • SpikeNET does not provide a comprehensive graphical interface. The neural network topology must be described using several configuration files (documented below).
  • SpikeNET has not been used to process more than one spike per neuron. It was originally designed to test the biological plausibility of feedforward processing using at most one spike per neuron. Note that lateral inhibition, excitation, and feedback can still be implemented as long as neurons discharge only once.
  • SpikeNET cannot implement synaptic connections with variable delays. All synaptic connections are instantaneous.

A glimpse at SpikeNET performance

See this page for more information.

When we rigorously tested the performance of SpikeNET in 1999, it could compute roughly 20 million connections per second on a standard desktop computer (Macintosh PowerPC 233 MHz). At that time, we believe that SpikeNET was the most powerful convolutional neural network available for image classification.

Publications

Publications directly related to SpikeNET

  • Delorme, A., Thorpe, S. (2003). SpikeNET: An Event-driven Simulation Package for Modeling Large Networks of Spiking Neurons, Network: Comput. Neural Syst., 14, 613:627. Author's PDF, journal's link.
  • Delorme, A., Thorpe, S. (2001) Face processing using one spike per neuron: resistance to image degradation. Neural Networks,  14(6-7), 795-804. Author's PDF, Science Direct.

  • Delorme, A., Gautrais, J., VanRullen, R., & Thorpe, S.J. (1999). SpikeNET: A simulator for modeling large networks of integrate and fire neurons. Neurocomputing, 26-27, 989-996. Author's PDF, Science Direct.
  • Van Rullen, R., Gautrais, J., Delorme, A., & Thorpe, S. (1998). Face processing using one spike per neurone. Biosystems, 48(1-3), 229-239. Author's PDF, Science Direct.

Publications indirectly related to SpikeNET

  • Delorme, A. (2003) Early Cortical Orientation Selectivity: How Fast Shunting Inhibition Decodes the Order of Spike Latencies. Journal of Computational Neuroscience, 15, 357-365. Author's PDF, journal's link.
  • Thorpe, S., Delorme, A., VanRullen, R. (2001) Spike based strategies for rapid processing. Neural Networks, 14(6-7), 715-726. Author's PDF, Science Direct.
  • Perrinet, L., Delorme, A., Thorpe, S. (2001) Network of integrate-and-fire neurons using Rank Order Coding A: how to implement spike timing dependant plasticity. Neurocomputing, 38-40(1-4), 817-822. Author's PDF, Science Direct.
  • Delorme, A., Perrinet, L., Thorpe, S. (2001) Network of integrate-and-fire neurons using Rank Order Coding B: spike timing dependant plasticity and emergence of orientation selectivity. Neurocomputing, 38-40(1-4), 539-545. Author's PDF, Science Direct.
  • VanRullen, R., Delorme, A. & Thorpe S.J. (2001). Feed-forward contour integration in primary visual cortex based on asynchronous spike propagation. Neurocomputing, 38-40(1-4), 1003-1009. Author's PDF, Science Direct.
  • Thorpe, S.J., Delorme, A., VanRullen, R., Paquier, W. (2000) Reverse engineering of the visual system using networks of spiking neurons. IEEE International Symposium on Circuits and Systems, 2000, 4, 405 -408. Author's PDF, journal's link.
  • Delorme, A., Gautrais, J., VanRullen, R., & Thorpe, S.J. (1999). SpikeNET: A simulator for modeling large networks of integrate and fire neurons. Neurocomputing, 26-27, 989-996. Author's PDF, Science Direct.

Using SpikeNET

1 - Install

SpikeNet is compiled by default for OSX 64 bit and Linux Fedora core.

To recompile SpikeNET. Edit the Makefile file to change the location of the X11 librairies (type "locate X11" on your command line prompt). SpikeNET intentionnaly uses very few external librairies.

cd src
make clean
make
cd ..

This creates an executable named "SpikeNET".

2 - Run Demo

In the main SpikeNET folder type one of the following depending of your platform

./SpikeNET
./SpikeNET_linux
./SpikeNET_osx

3 - Directory content

Convolution (weights) files for demo and examples

Convolutions
convos40Faces
FaceConvos
MSFaceConvos

Image folder

Images

SpikeNET demo and example model directories

networkdemo40faceslearn
networkdemo40facesrandom
networkdemo40facesrun
networkdemodetection
networkdemodetectionms
network_example_4faceslearn
network_example_4facesoptimize
network_example_orientation

SpikeNET convolution output directory

save_convos

SpikeNET source directory

src

SpikeNET GNU license

license.txt

Arnaud Delorme, February, 17, 2021

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors