eprop_synapse – Synapse type for e-prop plasticity¶
Description¶
eprop_synapse
is an implementation of a connector model to create synapses between postsynaptic
neurons \(j\) and presynaptic neurons and \(i\) for eligibility propagation (e-prop) plasticity.
E-prop plasticity was originally introduced and implemented in TensorFlow in [1].
The e-prop synapse triggers the calculation of the gradient at each spike over an interval that begins at the previous spike and ends at a cutoff specified by the user or the current spike, depending on which of the two time points is earlier. The gradient calculation is specific to the post-synaptic neuron and thus defined there.
Eventually, it optimizes the weight with the specified optimizer.
E-prop synapses require archiving of continuous quantities. Therefore e-prop
synapses can only be connected to neuron models that are capable of
archiving. So far, compatible models are eprop_iaf
, eprop_iaf_psc_delta
, eprop_iaf_psc_delta_adapt
,
eprop_iaf_adapt
, and eprop_readout
.
For more information on e-prop plasticity, see the documentation on the other e-prop models:
For more information on the optimizers, see the documentation of the weight optimizer:
Details on the event-based NEST implementation of e-prop can be found in [2].
Warning
This synaptic plasticity rule does not take precise spike timing into account. When calculating the weight update, the precise spike time part of the timestamp is ignored.
Parameters¶
The following parameters can be set in the status dictionary.
Common e-prop synapse parameters |
||||
---|---|---|---|---|
Parameter |
Unit |
Math equivalent |
Default |
Description |
|
{} |
Dictionary of optimizer parameters |
Individual synapse parameters |
||||
---|---|---|---|---|
Parameter |
Unit |
Math equivalent |
Default |
Description |
|
ms |
\(d_{ji}\) |
1.0 |
Dendritic delay |
|
pA |
\(W_{ji}\) |
1.0 |
Initial value of synaptic weight |
Recordables¶
The following variables can be recorded.
Synapse recordables |
||||
---|---|---|---|---|
State variable |
Unit |
Math equivalent |
Initial value |
Description |
|
pA |
\(B_{jk}\) |
1.0 |
Synaptic weight |
Usage¶
This model can only be used in combination with the other e-prop models and the network architecture requires specific wiring, input, and output. The usage is demonstrated in several supervised regression and classification tasks reproducing among others the original proof-of-concept tasks in [1].
Transmits¶
SpikeEvent, DSSpikeEvent
References¶
See also¶
Examples using this model¶
Tutorial on learning to accumulate evidence with e-prop after Bellec et al. (2020)
Tutorial on learning to generate a lemniscate with e-prop after Bellec et al. (2020)
Tutorial on learning to generate handwritten text with e-prop after Bellec et al. (2020)
Tutorial on learning to generate sine waves with e-prop after Bellec et al. (2020)