-
Notifications
You must be signed in to change notification settings - Fork 109
Extended Temporal Memory
This document describes the algorithm in extended_temporal_memory.py.
Extended Temporal Memory (ETM) adds an improvement to regular Temporal Memory (TM), enabling learning from external input, such as motor efference copy, as well as from apical input, such as feedback from higher regions.
External input is fed through basal distal dendrites, and thus is treated the same way as lateral connections in the regular temporal memory.
Learning through apical dendrites is done in a similar manner as through distal segments, using Hebbian learning rules on synapse permanences, which are either reinforced or decremented depending on whether the presynaptic and postsynaptic cells fired simultaneously.
The inhibitory mechanism is extended to apical activations, using the following rules. A neuron will not become active if one of the following is true:
- it is not receiving feed-forward input on its proximal segment
- it is not receiving lateral input on a distal segment and another neuron in the same column is receiving lateral input
- it is not receiving external input on an apical segment and another neuron in the same column is receiving lateral and external input.
Otherwise the neuron will be activated.
-
ETM takes one extra parameter compared to regular TM,
learnOnOneCell
. When set toTrue
, the winner cell for each column is fixed between resets, enabling for example a more stable attention mechanism during sensorimotor inference. -
When feeding an input record through ETM, an additional argument,
formInternalConnections
, can be specified. It enables the temporal memory to form connections with its internal cells.