mercurial.core.pattern_completion module
Pattern completion network for olfactory/gustatory modalities with empirical parameters.
- class mercurial.core.pattern_completion.HopfieldPatternCompletion(n_neurons: int = 8000, stored_patterns: List[ndarray] | None = None, tau_a: float = 0.02, tau_f: float = 1.0, beta_f: float = 0.5, noise_amp: float = 0.01, beta_sigmoid: float = 10.0, hebb_params: HebbianParams | None = None)[source]
Bases:
objectHopfield‑style attractor network for pattern completion, parameterised by empirical olfactory bulb and piriform cortex data.
Methods
get_overlap
reset
sigmoid
step
store_patterns
- __init__(n_neurons: int = 8000, stored_patterns: List[ndarray] | None = None, tau_a: float = 0.02, tau_f: float = 1.0, beta_f: float = 0.5, noise_amp: float = 0.01, beta_sigmoid: float = 10.0, hebb_params: HebbianParams | None = None)[source]
- Parameters:
- n_neuronsint
Number of units (default 8000, approximate human olfactory bulb glomeruli).
- stored_patternslist of np.ndarray, optional
Binary patterns {-1,1} or continuous [0,1] to store.
- tau_a, tau_ffloat
Time constants for activity and fatigue (s).
- beta_ffloat
Fatigue scaling.
- noise_ampfloat
Stochastic noise amplitude.
- beta_sigmoidfloat
Gain of the sigmoid (high for binary attractors).
- hebb_paramsHebbianParams, optional
Empirical Hebbian learning parameters.