eprop_iaf_bsshslm_2020 – Currentbased leaky integrateandfire neuron model with deltashaped postsynaptic currents for eprop plasticity¶
Description¶
eprop_iaf_bsshslm_2020
is an implementation of a leaky integrateandfire
neuron model with deltashaped postsynaptic currents used for eligibility
propagation (eprop) plasticity.
Eprop plasticity was originally introduced and implemented in TensorFlow in [1].
The suffix _bsshslm_2020
follows the NEST convention to indicate in the
model name the paper that introduced it by the first letter of the authors’ last
names and the publication year.
Note
The neuron dynamics of the eprop_iaf_bsshslm_2020
model (excluding eprop
plasticity) are similar to the neuron dynamics of the iaf_psc_delta
model,
with minor differences, such as the propagator of the postsynaptic current
and the voltage reset upon a spike.
The membrane voltage time course \(v_j^t\) of the neuron \(j\) is given by:
whereby \(W_{ji}^\mathrm{rec}\) and \(W_{ji}^\mathrm{in}\) are the recurrent and input synaptic weights, and \(z_i^{t1}\) and \(x_i^t\) are the recurrent and input presynaptic spike state variables, respectively.
Descriptions of further parameters and variables can be found in the table below.
The spike state variable is expressed by a Heaviside function:
If the membrane voltage crosses the threshold voltage \(v_\text{th}\), a spike is emitted and the membrane voltage is reduced by \(v_\text{th}\) in the next time step. After the time step of the spike emission, the neuron is not able to spike for an absolute refractory period \(t_\text{ref}\).
An additional state variable and the corresponding differential equation represents a piecewise constant external current.
Furthermore, the pseudo derivative of the membrane voltage needed for eprop plasticity is calculated:
See the documentation on the iaf_psc_delta
neuron model for more information
on the integration of the subthreshold dynamics.
The change of the synaptic weight is calculated from the gradient \(g\) of the loss \(E\) with respect to the synaptic weight \(W_{ji}\): \(\frac{\mathrm{d}{E}}{\mathrm{d}{W_{ij}}}=g\) which depends on the presynaptic spikes \(z_i^{t1}\), the surrogategradient / pseudoderivative of the postsynaptic membrane voltage \(\psi_j^t\) (which together form the eligibility trace \(e_{ji}^t\)), and the learning signal \(L_j^t\) emitted by the readout neurons.
The eligibility trace and the presynaptic spike trains are lowpass filtered with some exponential kernels:
whereby \(\tau_\text{m,out}\) is the membrane time constant of the readout neuron.
Furthermore, a firing rate regularization mechanism keeps the average firing rate \(f^\text{av}_j\) of the postsynaptic neuron close to a target firing rate \(f^\text{target}\). The gradient \(g^\text{reg}\) of the regularization loss \(E^\text{reg}\) with respect to the synaptic weight \(W_{ji}\) is given by:
whereby \(c_\text{reg}\) scales the overall regularization and the average is taken over the time that passed since the previous update, that is, the number of trials \(n_\text{trial}\) times the duration of an update interval \(T\).
The overall gradient is given by the addition of the two gradients.
For more information on eprop plasticity, see the documentation on the other eprop models:
Details on the eventbased NEST implementation of eprop can be found in [2].
Parameters¶
The following parameters can be set in the status dictionary.
Neuron parameters 


Parameter 
Unit 
Math equivalent 
Default 
Description 
C_m 
pF 
\(C_\text{m}\) 
250.0 
Capacitance of the membrane 
c_reg 
\(c_\text{reg}\) 
0.0 
Prefactor of firing rate regularization 

E_L 
mV 
\(E_\text{L}\) 
70.0 
Leak / resting membrane potential 
f_target 
Hz 
\(f^\text{target}\) 
10.0 
Target firing rate of rate regularization 
gamma 
\(\gamma\) 
0.3 
Scaling of surrogate gradient / pseudoderivative of membrane voltage 

I_e 
pA 
\(I_\text{e}\) 
0.0 
Constant external input current 
regular_spike_arrival 
Boolean 
True 
If True, the input spikes arrive at the end of the time step, if False at the beginning (determines PSC scale) 

surrogate_gradient_function 
\(\psi\) 
piecewise_linear 
Surrogate gradient / pseudoderivative function [“piecewise_linear”] 

t_ref 
ms 
\(t_\text{ref}\) 
2.0 
Duration of the refractory period 
tau_m 
ms 
\(\tau_\text{m}\) 
10.0 
Time constant of the membrane 
V_min 
mV 
\(v_\text{min}\) 
1.79e+308 
Absolute lower bound of the membrane voltage 
V_th 
mV 
\(v_\text{th}\) 
55.0 
Spike threshold voltage 
The following state variables evolve during simulation.
Neuron state variables and recordables 


State variable 
Unit 
Math equivalent 
Initial value 
Description 
learning_signal 
pA 
\(L_j\) 
0.0 
Learning signal 
surrogate_gradient 
\(\psi_j\) 
0.0 
Surrogate gradient / pseudoderivative of membrane voltage 

V_m 
mV 
\(v_j\) 
70.0 
Membrane voltage 
Recordables¶
The following variables can be recorded:
learning signal
learning_signal
membrane potential
V_m
surrogate gradient
surrogate_gradient
Usage¶
This model can only be used in combination with the other eprop models, whereby 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 proofofconcept tasks in [1].
References¶
Sends¶
SpikeEvent
Receives¶
SpikeEvent, CurrentEvent, LearningSignalConnectionEvent, DataLoggingRequest