sPyNNaker icon indicating copy to clipboard operation
sPyNNaker copied to clipboard

STDP doesn't work with initial post-spikes preceeding a pre-spike

Open rowleya opened this issue 8 years ago • 4 comments

It seems that if the post-neuron spikes followed by the pre-neuron, the initial spikes from the post-neuron don't cause depression. There doesn't seem to be a reason why this is.

rowleya avatar Sep 21 '17 09:09 rowleya

It is possible that it instead uses time=0 for the last_pre_spike time. This should be flagged as an invalid time as it might cause potentiation when depression is expected.

rowleya avatar Sep 21 '17 09:09 rowleya

Hi @rowleya,

This is a special case and indeed time=0 for last pre spike will first cause potentiation and then will evaluate depression on the actual first pre spike. Maybe you need a check in _plasticity_update_synapse - before looping through post synaptic window, check that last_pre_time!=0.

This reminds me of another issue, when there is no last pre synaptic spike in the simulation, the last bunch of post synaptic spikes will not cause depression because they never even get looked at. This can easily be solved by injecting a fake spike at the end of simulation which would not be evaluated for depression.

Regards,

Mantas

mmikaitis avatar Oct 13 '17 13:10 mmikaitis

!= 0 isn't quite enough - really we need a flag to indicate if there has been a pre-spike or not (since there might actually be one at time=0)

rowleya avatar Oct 13 '17 15:10 rowleya

Again I think I'm correct in saying that this issue has been dealt with in recent work.

andrewgait avatar Oct 25 '19 13:10 andrewgait