jaxsnn.event.modules.hx.linear.Synapse

class jaxsnn.event.modules.hx.linear.Synapse(layer_idx: int, source_population: Population, target_population: Population, *args, weight_scale: float, transform: Callable[[jax.Array, float], jax.Array], **kwargs)

Bases: jaxsnn.event.hardware.modules.projection.Projection

Synapse layer

__init__(layer_idx: int, source_population: Population, target_population: Population, *args, weight_scale: float, transform: Callable[[jax.Array, float], jax.Array], **kwargs)None

TODO: Think about what to do with device here.

Parameters
  • in_features – Size of input dimension.

  • out_features – Size of output dimension.

  • device – Device to execute on. Only considered in mock-mode.

  • dtype – Data type of weight tensor.

  • experiment – Experiment to append layer to.

  • execution_instance – Execution instance to place to.

Methods

__init__(layer_idx, source_population, …)

TODO: Think about what to do with device here.

get_connections()

source_population()

target_population()

Attributes

changed_input_data

Getter for changed_input_data.

property changed_input_data

Getter for changed_input_data.

Returns

Boolean indicating whether module changed since last run.

get_connections()List[Tuple[int, int, int]]
source_population()
target_population()