hxtorch.spiking.functional.li

Leaky-integrate neurons

Classes

CUBALIParams(tau_mem, tau_syn, leak)

Parameters for CUBA LI integration and backward path

CalibratedCUBALIParams(leak, reset, …)

Parameters for CUBA LI integration and backward path

CalibratedParams(leak, reset, threshold, …)

Parameters for any (of currently available) forward and backward path.

NamedTuple(typename[, fields])

Typed version of namedtuple.

Unterjubel(*args, **kwargs)

Unterjubel hardware observables to allow correct gradient flow

Functions

hxtorch.spiking.functional.li.cuba_li_integration(input: torch.Tensor, params: Union[hxtorch.spiking.functional.li.CalibratedCUBALIParams, hxtorch.spiking.functional.li.CUBALIParams], hw_data: Optional[torch.Tensor] = None, dt: float = 1e-06)torch.Tensor

Leaky-integrate neuron integration for realization of readout neurons with exponential synapses. Integrates according to:

v^{t+1} = dt / au_{mem} * (v_l - v^t + i^t) + v^t i^{t+1} = i^t * (1 - dt / au_{syn}) + x^t

Assumes i^0, v^0 = 0. :note: One dt synaptic delay between input and output :param input: Input spikes in shape (batch, time, neurons). :param params: LIParams object holding neuron parameters. :param dt: Integration step width

Returns

Returns the membrane trace in shape (batch, time, neurons).