braintools.cogtask.gaussian

Contents

braintools.cogtask.gaussian#

braintools.cogtask.gaussian(key, centers=None, sigma=0.1, base_value=0.0)[source]#

Create a Gaussian bump encoding value specification.

Encodes a scalar value using Gaussian tuning curves centered at different preferred values.

Parameters:
  • key (str) – Context key containing the scalar value to encode.

  • centers (Array | None) – Array of preferred values for each neuron. If None, centers are evenly spaced in [0, 1].

  • sigma (float) – Width of Gaussian tuning curves (standard deviation). Default 0.1.

  • base_value (float) – Baseline firing rate (default 0.0).

Returns:

Encoder function (ctx, feature) -> np.ndarray

Return type:

Callable[[Context, Feature], Array]

Examples

>>> inputs={'value': gaussian('stimulus_value', sigma=0.15)}
>>> # Custom centers
>>> centers = np.array([0.2, 0.4, 0.6, 0.8])
>>> inputs={'value': gaussian('stimulus_value', centers=centers, sigma=0.1)}