DecodingProjection
inputs.DecodingProjection.DecodingProjection(self,
pre,
post,
target,=0.0,
window=None,
name=False,
copied )
Decoding projection to transform spike trains into firing rates.
The pre-synaptic population must be a spiking population, while the post-synaptic one must be rate-coded.
Pre-synaptic spikes are accumulated for each post-synaptic neuron. A sliding window can be used to smoothen the results with the window
parameter.
The decoded firing rate is accessible in the post-synaptic neurons with sum(target)
.
The projection can be connected using any method available in Projection
(although all-to-all or many-to-one makes mostly sense). Delays are ignored.
The weight value allows to scale the firing rate: if you want a pre-synaptic firing rate of 100 Hz to correspond to a post-synaptic rate of 1.0, use w = 1./100.
.
Example:
= ann.PoissonPopulation(1000, rates=100.)
pop1 = ann.Population(1, ann.Neuron(equations="r=sum(exc)"))
pop2 = DecodingProjection(pop1, pop2, 'exc', window=10.0)
proj 1.0, force_multiple_weights=True) proj.connect_all_to_all(
Parameters
Name | Type | Description | Default |
---|---|---|---|
pre | Population | pre-synaptic population. | required |
post | Population | post-synaptic population. | required |
target | str | type of the connection. | required |
window | float | duration of the time window to collect spikes (default: dt). | 0.0 |