spark.nn.interfaces.input.linear#

Classes#

LinearSpikerConfig

LinearSpiker model configuration class.

LinearSpiker

Transforms a continuous signal to a spiking signal.

Module Contents#

class spark.nn.interfaces.input.linear.LinearSpikerConfig(__skip_validation__=False, **kwargs)[source]#

Bases: spark.nn.interfaces.input.base.InputInterfaceConfig

LinearSpiker model configuration class.

Parameters:

__skip_validation__ (bool)

tau: float[source]#
cd: float[source]#
max_freq: float[source]#
class spark.nn.interfaces.input.linear.LinearSpiker(config=None, **kwargs)[source]#

Bases: spark.nn.interfaces.input.base.InputInterface

Transforms a continuous signal to a spiking signal. This transformation assumes a very simple linear neuron model without any type of adaptation or plasticity. Units have a fixed refractory period and at maximum input signal will fire up to some fixed frequency.

Init:

tau: float [ms] cd: float [ms] max_freq: float [Hz]

Input:

signal: FloatArray

Output:

spikes: SpikeArray

Parameters:

config (LinearSpikerConfig | None)

config: LinearSpikerConfig[source]#
tau[source]#
cd[source]#
max_freq[source]#
build(input_specs)[source]#

Build method.

Parameters:

input_specs (dict[str, spark.core.specs.PortSpecs])

Return type:

None

reset()[source]#

Reset module to its default state.

__call__(signal)[source]#

Input interface operation.

Input:

A FloatArray of values in the range [0,1].

Output:

A SpikeArray of the same shape as the input.

Parameters:

signal (spark.core.payloads.FloatArray)

Return type:

spark.nn.interfaces.input.base.InputInterfaceOutput