Spatio-temporal pattern recognizers using spiking neurons and spike-timing-dependent plasticity - Humble, James; Denham, Susan; Wennekers, Thomas (Frontiers in Computational Neuroscience, 2012)
It has previously been shown that by using spike-timing-dependent plasticity, neurons can adapt to the beginning of a repeating spatio-temporal firing pattern in their input. In the present work we demonstrate that this mechanism can be extended to train recognisers for longer spatio-temporal input signals. Using a number of neurons that are mutually connected by plastic synapses and subject to a global winner-takes-all mechanism, chains of neurons can form where each neuron is selective to a different segment of a repeating input pattern, and the neurons are feedforwardly connected in such a way that both the correct input segment and the firing of the previous neurons are required in order to activate the next neuron in the chain. This is akin to a simple class of finite state automata. We show that nearest-neighbour spike-timing-dependent plasticity (where only the pre-synaptic spike most recent to a post-synaptic one is considered) leads to ``nearest-neighbour'' chains where connections only form between subsequent states in a chain (similar to classic ``synfire chains''). In contrast, ``all-to-all spike-timing-dependent plasticity'' (where all pre- and post-synaptic spike pairs matter) leads to multiple connections that can span several temporal stages in the chain; these connections respect the temporal order of the neurons. It is also demonstrated that previously learnt individual chains can be ``stitched together'' by repeatedly presenting them in a fixed order. This way longer sequence recognisers can be formed, and potentially also nested structures. Robustness of recognition with respect to speed variations in the input patterns is shown to depend on rise-times of postsynaptic potentials and the membrane noise. It is argued that the memory capacity of the model is high, but could theoretically be increased using sparse codes.