LeakyIntegrator
LeakyIntegrator(tau=10.0, B=0.0, T=0.0, sum='sum(exc) - sum(inh)', noise=None)Leaky-integrator rate-coded neuron, optionally noisy.
This simple rate-coded neuron defines an internal variable v(t) which integrates the inputs I(t) with a global time constant \tau and a local baseline B. An additive noise N(t) can be optionally defined:
\tau \cdot \frac{dv(t)}{dt} + v(t) = I(t) + B + N(t)
The transfer function is the positive (or rectified linear ReLU) function with a threshold T:
r(t) = (v(t) - T)^+
By default, the input I(t) to this neuron is "sum(exc) - sum(inh)", but this can be changed by setting the sum argument:
neuron = ann.LeakyIntegrator(sum="sum(ampa)")By default, there is no additive noise, but the noise argument can be passed with a specific distribution:
neuron = ann.LeakyIntegrator(noise="Normal(0.0, 1.0)")Equivalent code:
LeakyIntegrator = Neuron(
parameters=dict(
tau = 10.0,
B = ann.Parameter(0.0),
T = 0.0,
),
equations=[
ann.Variable()'tau * dv/dt + v = sum(exc) - sum(inh) + B', method=exponential),
'r = pos(v - T)',
]
)Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| tau | float | Time constant (global). | 10.0 |
| B | float | Baseline (local). | 0.0 |
| T | float | Threshold (global). | 0.0 |
| sum | str | Input sums. | 'sum(exc) - sum(inh)' |