Supervised learning in spiking neural networks with FORCE training (Nicola & Clopath 2017)

 Download zip file 
Help downloading and running models
The code contained in the zip file runs FORCE training for various examples from the paper: Figure 2 (Oscillators and Chaotic Attractor) Figure 3 (Ode to Joy) Figure 4 (Song Bird Example) Figure 5 (Movie Example) Supplementary Figures 10-12 (Classifier) Supplementary Ode to Joy Example Supplementary Figure 2 (Oscillator Panel) Supplementary Figure 17 (Long Ode to Joy) Note that due to file size limitations, the supervisors for Figures 4/5 are not included. See Nicola, W., & Clopath, C. (2016). Supervised Learning in Spiking Neural Networks with FORCE Training. arXiv preprint arXiv:1609.02545. for further details.
1 . Nicola W, Clopath C (2016) Supervised Learning in Spiking Neural Networks with FORCE Training arXiv preprint arXiv:1609.02545.
2 . Nicola W, Clopath C (2017) Supervised learning in spiking neural networks with FORCE training Nature Communications
Model Information (Click on a link to find other models with that property)
Model Type: Connectionist Network;
Brain Region(s)/Organism:
Cell Type(s): Abstract Izhikevich neuron; Abstract theta neuron; Abstract integrate-and-fire leaky neuron;
Gap Junctions:
Simulation Environment: MATLAB;
Model Concept(s):
Implementer(s): Nicola, Wilten [wnicola at];
Instructions for FORCE Training Code

Wilten Nicola (

The code is separated into folders named for their corresponding figure from the manuscript. The code is usually labelled NeuronModelFORCETask.m or NeuronModelTask.m for example THETALORENZ is the code used to run a network of theta neurons learning a trajectory generated from the Lorenz system. Some of the folders also contain matlab files for numerically integrating the supervisors (lorenz.m, vanderpol.m etc). Running the code NeuronModelFORCEtask.m trains a network to reproduce the dynamics of the supervisor using FORCE training.
The code for Figure 4 (songbird example) and Figure 5 (movie replay example) does not contain the supervisor due to file size constraints. Users can however provide their own supervisors in these examples.
Some folders contain pre-trained weight matrices saved in .mat files. These folders contain a file labelled NETWORKSIM.mat which loads the weight matrix, and simulates the pre-trained network with random initial conditions.
Also note, that there is a slight discrepancy in the reported parameter set for the Izhikevich neuron model for one of the supplementary oscillatory examples, which has b = -2 ns/mv, vthresh = -19.2 mv instead if b = 0 ns/mv and vthresh = -20 mv, as reported. This does not affect convergence results for the supplementary oscillator figure but leads to slight differences in reported post-training firing rates for the supplementary oscillatory figure.

Loading data, please wait...