Skip to main content
Log in

Hot coffee: associative memory with bump attractor cell assemblies of spiking neurons

  • Published:
Journal of Computational Neuroscience Aims and scope Submit manuscript

Abstract

Networks of spiking neurons can have persistently firing stable bump attractors to represent continuous spaces (like temperature). This can be done with a topology with local excitatory synapses and local surround inhibitory synapses. Activating large ranges in the attractor can lead to multiple bumps, that show repeller and attractor dynamics; however, these bumps can be merged by overcoming the repeller dynamics. A simple associative memory can include these bump attractors, allowing the use of continuous variables in these memories, and these associations can be learned by Hebbian rules. These simulations are related to biological networks, showing that this is a step toward a more complete neural cognitive associative memory.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. Code can be found at http://www.cwa.mdx.ac.uk/NEAL/wta.html and at http://modeldb.yale.edu/266507.

  2. Note that the model expressed in equation (1) about the exponential integrate-and-fire neuron is a particular case of the AdEx model by removing the adaptation current (w) (Gerstner and Brette 2009).

  3. The same exploration procedure has been done with SpiNNaker (Furber et al. 2013) neuromorphic hardware (see (Vergani and Huyck 2020))

References

  • Binder, J., Conant, L., Humphries, C., Fernandino, L., Simons, S., Aguilar, M., & Desai, R. (2016). Toward a brain-based componential semantic representation. Cognitive neuropsychology, 33 (3-4), 130–174.

    PubMed  Google Scholar 

  • Brachman, R., & Schmolze, J. (1989). An overview of the KL-ONE knowledge representation system. In Readings in artificial intelligence and databases, Morgan Kaufmann, pp 207–230.

  • Buzsaki, G. (2010). Neural syntax: cell assemblies, synapsembles, and readers. Neuron, 68(3), 362–385.

    CAS  PubMed  PubMed Central  Google Scholar 

  • Carroll, S., Josić, K., & Kilpatrick, Z. (2014). Encoding certainty in bump attractors. Journal of computational neuroscience, 37(1), 29–48.

    PubMed  Google Scholar 

  • Chen, Y. (2017). Mechanisms of winner-take-all and group selection in neuronal spiking networks. Frontiers in computational neuroscience, 11, 20.

    PubMed  PubMed Central  Google Scholar 

  • Chrysanthidis, N., Fiebig, F., & Lansner, A. (2019). Introducing double bouquet cells into a modular cortical associative memory model. Journal of computational neuroscience, 47(2-3), 223–230.

    PubMed  PubMed Central  Google Scholar 

  • Churchland, P., & Sejnowski, T. (1999). The computational brain. MIT Press.

  • Collins, A., & Loftus, E. (1975). A spreading-activation theory of semantic processing. Psychological review, 82(6), 407–428.

    Google Scholar 

  • Craig, A., Chen, K., Bandy, D., & Reiman, E. (2000). Thermosensory activation of insular cortex. Nature neuroscience, 3(2), 184–190.

    CAS  PubMed  Google Scholar 

  • Davison, A., Yger, P., Kremkow, J., Perrinet, L., & Muller, E. (2007). PyNN: towards a universal neural simulator API in python. BMC neuroscience, 8(S2), P2.

    PubMed Central  Google Scholar 

  • Edelman, G. (1987). Neural darwinism: The theory of neuronal group selection. Basic books.

  • Fourcaud-Trocmé, N, Hansel, D., Van Vreeswijk, C., & Brunel, N. (2003). How spike generation mechanisms determine the neuronal response to fluctuating inputs. Journal of neuroscience, 23(37), 11628–11640.

    PubMed  Google Scholar 

  • Furber, S., Lester, D., Plana, L., Garside, J., Painkras, E., Temple, S., & Brown, A. (2013). Overview of the SpiNNaker system architecture. IEEE transactions on computers, 62(12), 2454–2467.

    Google Scholar 

  • Gerstner, W., & Brette, R. (2009). Adaptive exponential integrate-and-fire model. Scholarpedia, 4(6), 8427. https://doi.org/10.4249/scholarpedia.8427. revision #90944.

    Google Scholar 

  • Gerstner, W., Kistler, W., Naud, R., & Paninski, L. (2014). Neuronal dynamics: From single neurons to networks and models of cognition. Cambridge University Press.

  • Gewaltig, M., & Diesmann, M. (2007). Nest (neural simulation tool). Scholarpedia, 2(4), 1430.

    Google Scholar 

  • Hahn, G., Ponce-Alvarez, A., Monier, C., Benvenuti, G., Kumar, A., Chavane, F., Deco, G., & Frégnac, Y. (2017). Spontaneous cortical activity is transiently poised close to criticality. PLoS computational biology, 13(5), e1005543.

    PubMed  PubMed Central  Google Scholar 

  • Handjaras, G., Ricciardi, E., Leo, A., Lenci, A., Cecchetti, L., Cosottini, M., Marotta, G., & Pietrini, P. (2016). How concepts are encoded in the human brain: a modality independent, category-based cortical organization of semantic knowledge. NeuroImage, 135, 232–242.

    PubMed  Google Scholar 

  • Harris, K. (2005). Neural signatures of cell assembly organization. Nature reviews neuroscience, 6, 399–407.

    CAS  PubMed  Google Scholar 

  • Hebb, D. (1949). The organization of behavior: A neuropsychological theory. J. Wiley & Sons.

  • Huyck, C., & Ji, Y. (2018). Two simple neurocognitive associative memory models. In Sixteenth International Conference on Cognitive Modelling (pp. 31–36).

  • Huyck, C., & Mitchell, I. (2014). Post and pre-compensatory Hebbian learning for categorisation. Cognitive neurodynamics, 8(4), 299–311.

    PubMed  PubMed Central  Google Scholar 

  • Huyck, C., & Mitchell, I. (2018). CABots and other neural agents. Frontiers in neurorobotics, 12,79.

  • Huyck, C., & Passmore, P. (2013). A review of cell assemblies. Biological cybernetics, 107(3), 263–288.

    PubMed  Google Scholar 

  • Kim, S., Rouault, H., Druckmann, S., & Jayaraman, V. (2017). Ring attractor dynamics in the drosophila central brain. Science, 356(6340), 849–853.

    CAS  PubMed  Google Scholar 

  • Kohonen, T. (1982). Self-organized formation of topologically correct feature maps. Biological cybernetics, 43(1), 59–69.

    Google Scholar 

  • Kreiser, R., Cartiglia, M., J.Martel, Conradt, J., & Sandamirskaya, Y. (2018). A neuromorphic approach to path integration: a head-direction spiking neural network with vision-driven reset. In IEEE International Symposium on Circuits and Systems (ISCAS) (pp. 1–5).

  • Laing, C., Chow, R., & Carson, C. (2001). Stationary bumps in networks of spiking neurons. Neural computation, 13(7), 1473–1494.

    CAS  PubMed  Google Scholar 

  • Lansner, A. (2009). Associative memory models: from the cell-assembly theory to biophysically detailed cortex simulations. Trends in neuroscience, 32(3), 178–186.

    CAS  Google Scholar 

  • Laurens, J., & Angelaki, D. (2018). The brain compass: a perspective on how self-motion updates the head direction cell attractor. Neuron, 97(2), 275–289.

    CAS  PubMed  PubMed Central  Google Scholar 

  • Martin, A. (2007). The representation of object concepts in the brain. Annual review of pyschology, 58, 25–45.

    Google Scholar 

  • Meiss, J. (2007). Dynamical systems. Scholarpedia, 2(2), 1629. https://doi.org/10.4249/scholarpedia.1629. revision #137210.

    Article  Google Scholar 

  • Nadh, K., & Huyck, C. (2010). A pong playing agent modelled with massively overlapping cell assemblies. Neurocomputing, 73, 2928–2934.

    Google Scholar 

  • Oja, E. (1982). Simplified neuron model as a principal component analyzer. Journal of mathematical biology, 15(3), 267–273.

    CAS  PubMed  Google Scholar 

  • Pena, R., Zaks, M., & Roque, A. (2018). Dynamics of spontaneous activity in random networks with multiple neuron subtypes and synaptic noise. Journal of computational neuroscience, 45(1), 1–28.

    PubMed  PubMed Central  Google Scholar 

  • Peterson, G., & Barney, H. (1952). Control methods used in a study of the vowels. Journal of the acoustical society of america, 24(2), 175–184.

    Google Scholar 

  • Pulvermuller, F. (1999). Words in the brain’s language. Behavioral and brain sciences, 22(2), 253–279.

    CAS  PubMed  Google Scholar 

  • Quillian, M. (1967). Word concepts: a theory of simulation of some basic semantic capabilities. Behavioral science, 12, 410–30.

    CAS  PubMed  Google Scholar 

  • Redish, A., Elga, A., & Touretzky, D. (1996). A coupled attractor model of the rodent head direction system. Network: computation in neural systems, 7(4), 671–685.

    Google Scholar 

  • Richardson, M., & Gerstner, W. (2003). Conductance versus current-based integrate-and-fire neurons: is there qualitatively new behaviour? Lausanne lecture.

  • Seeholzer, A., Deger, M., & Gerstner, W. (2019). Stability of working memory in continuous attractor networks under the control of short-term plasticity. PLoS computational biology, 15(4), e1006928.

    CAS  PubMed  PubMed Central  Google Scholar 

  • Singer, W., Engel, A., Kreiter, A., Munk, M., Neuenschwander, S., & Roelfsema, P. (1997). Neuronal assemblies: necessity, signature and detectability. Trends in cognitive sciences, 1(7), 252–261.

    CAS  PubMed  Google Scholar 

  • Somers, D., Nelson, S., & Sur, M. (1995). An emergent model of orientation selectivity in cat visual cortical simple cells. Journal of neuroscience, 15(8), 5448–5465.

    CAS  PubMed  Google Scholar 

  • Stringer, S., Rolls, E., Trappenberg, T., & Araujo, I D. (2002). Self-organizing continuous attractor networks and path integration: two-dimensional models of place cells. Network: computation in neural systems, 13(4), 429–446.

    CAS  Google Scholar 

  • Tetzlaff, C., Dasgupta, S., Kulvicius, T., & Florentin, W. (2015). The use of Hebbian cell assemblies for nonlinear computation. Scientific reports, 5, 12866.

    CAS  PubMed  PubMed Central  Google Scholar 

  • Tkačik, G, Mora, T., Marre, O., Amodei, D., Palmer, S., Berry, M., & Bialek, W. (2015). Thermodynamics and signatures of criticality in a network of neurons. Proceedings of the National Academy of Sciences, 112(37), 11508–11513.

    Google Scholar 

  • Vergani, A., & Huyck, C. (2020). Critical limits in a bump attractor network of spiking neurons. arXiv:2003.13365.

  • Willshaw, D., Buneman, O., & Longuet-Higgins, H. (1969). Non-holographic associative memory. Nature, 222, 960–962.

    CAS  PubMed  Google Scholar 

  • Wilson, H., & Cowan, J. (1973). A mathematical theory of the functional dynamics of cortical and thalamic nervous tissue. Kybernetik, 13(2), 55–80.

    CAS  PubMed  Google Scholar 

  • Wimmer, K., Nykamp, D., Constantinidis, C., & Compte, A. (2014). Bump attractor dynamics in prefrontal cortex explains behavioral precision in spatial working memory. Nature neuroscience, 17(3), 431.

    CAS  PubMed  Google Scholar 

  • Yoon, K., Buice, M., Barry, C., Hayman, R., Burgess, N., & Fiete, I. (2013). Specific evidence of low-dimensional continuous attractor dynamics in grid cells. Nature neuroscience, 16(8), 1077.

    CAS  PubMed  PubMed Central  Google Scholar 

Download references

Funding

This work has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 720270 (the Human Brain Project) and the UK EPSRC grants EP/D059720 and EP/P00542X/1.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Christian Robert Huyck.

Ethics declarations

Conflict of interests

The authors declare no conflict of interest.

Additional information

Communicated by:Action Editor: Alessandro Treves

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A:: Neural and Synaptic Models

The biophysical neuron model used in the simulations described in this paper is a leaky integrate and fire model with a fixed threshold. Synaptic conductance is transmitted at a decaying-exponential rate from the pre to post-synaptic neurons (Gerstner et al. 2014). The simulations are coded in PyNN (Davison et al. 2007) to specify the topology, flow of inputs, and recording. The neurons themselves are simulated using NEST (Gewaltig and Diesmann 2007).

The model used in this paper follows (Fourcaud-Trocmé et al. 2003) (but also see (Richardson and Gerstner 2003)). The activation is the current voltage VM. Equation (1) describes the change in voltage; VM is the membrane potential and CM is the membrane capacity. The four currents are the leak current, the currents from excitatory and inhibitory synapses, and the input current (from some external source). The variable currents are governed by equations (2), (3) and (4). In equations (2) and (3) \(E^{rev}_{Ex}\) and \(E^{rev}_{In}\) are the reversal potentials; excitation (and inhibition) changes slow as the voltage approaches these reversal potentials. In equation (4), Vrest is the resting potential of the neuron, and τM is the leak constant.

$$ \frac{dV_{M}}{dt} = \frac{(-I_{Leak} - I^{syn}_{Ex} - I^{syn}_{In} + I_{Ext} )}{C_{M}} $$
(1)
$$ I^{syn}_{Exc} = G_{Ex} \times (V_{M} - E^{rev}_{Ex} ) $$
(2)
$$ I^{syn}_{Inh} = G_{In} \times (V_{M} - E^{rev}_{In} ) $$
(3)
$$ I_{Leak} = \frac {C_{M} (V_{M} - V_{rest})}{\tau_{M}} $$
(4)
$$ G_{Ex}(t) = k_{Ex} \times t \times e^{-\frac{t}{\tau^{syn}_{Ex}}} $$
(5)
$$ G_{In}(t) = k_{In} \times t \times e^{-\frac{t}{\tau^{syn}_{In}}} $$
(6)

In equations (5) and (6), GEx and GIn are the conductance in mS/cm2 to scale the post-synaptic potential amplitudes used in equation (2), and 3. t is the time step. The constant kEx and kIn are chosen so that \( G_{Ex}(\tau ^{syn}_{Ex})=1 \) and \( G_{In}(\tau ^{syn}_{In})=1 \). The \( \tau ^{syn}_{Ex} \) and the \( \tau ^{syn}_{In} \) are the decay rate of excitatory and inhibitory synaptic current.

When the voltage reaches the threshold, there is a spike and the voltage is reset. No current is transferred during the refractory period τrefract. In these simulations vthresh = − 48.0mV, τrefract = 2.0 ms. The time step t is 1ms. CM = 1.0nF, vreset = − 70.0mV, vrest = − 65.0mV, \(E^{rev}_{Ex}=0.0 \)mV, \(E^{rev}_{In} = -70\)mV, \(\tau ^{syn}_{Ex} = 5.0\)ms, \(\tau ^{syn}_{In} = 5.0\)ms and τM = 20.0ms. The particular parameters vthresh,τrefract, and t, were selected as the authors have used them for prior simulations; they are the parameters used in the binary CAs for the semantic portion of the associative memoryFootnote 2. The remaining parameters are default values.

Appendix B:: The Winner Take All (WTA) model: stationary bumps

This paper describes work on a linear WTA model, instead of a planar model or hyper-planar model. A line of neurons is connected with local excitatory synapses, and a surround of inhibitory synapses. (If the first and last neurons are also adjacent, it is a ring attractor.) There are many synaptic matrices that lead to persistent behaviour once the initial neurons are stimulated (see section B). What is needed is sufficient local synaptic excitatory strength to allow the neurons within the winning group to fire persistently. This needs to be balanced with sufficient inhibitory synaptic strength to prevent spread beyond the initial group.

One example is a network with each neuron having excitatory synapses to the nearest two neurons on both sides (distance(d)d <= 2) and inhibitory synapses to the next nearest 4 neurons on both sides (3 <= d <= 6). This is called a 2-4 bump attractor in this paper. The model is implemented in a neural network with 100 spiking neurons. This is also called a stationary bump (Laing et al. 2001), or a bump attractor. In the associative memory, the bump attractor approximates the continuous value activation of a temperature scale in which every neuron represents a single degree from 0 to 99 C.

This paper explores a range of parameters instead of developing a mathematical model. Mathematical models of bump attractors usually take advantage of simplifications, such as firing rates (e.g. (Carroll et al. 2014)), or they take advantage of statistical mechanics (e.g. (Tkačik et al. 2015)). Unfortunately, statistical mechanical analysis of bump attractors usually makes use of a large number of probabilistic neurons. Here we are using a relatively small number of deterministic neurons.

1.1 B.1 Persistent bumps, divergent bumps, and multiple Bumps

The behaviour of the 2-4 bump attractor varies based on the weight of the excitatory and inhibitory synapses. Table 2 describes the behaviour of this network as the inhibitory and excitatory synaptic weights vary in steps of .01 μS (microsiemens). In the Table, D means firing spreads, diverging so all of the neurons fire persistently, and a number reflects how many bumps are firing persistently after 1000ms. One means that all of the neurons that are firing persistently are adjacent to each other; they are one bump.

Table 2 Table of persistently firing bumps of neurons for a 2-4 stable bump topology. The top refers to input of three adjacent neurons, and the bottom to an input of 75 contiguous neurons. The value in the cell represents the number of persistent bumps; D (divergent) refers to all of the neurons persistently firing

In the top part of the table, three adjacent neurons are forced to spike, representing input from the environment. Three neurons are chosen as it is typically thought that several neurons are needed to cause another to spike (Churchland and Sejnowski 1999), so this is the minimum input needed to (ignite) start a CA persistently firing. After the initial stimulation, each simulation is run for 1000ms. The value in the cells of the Table is the number of neurons that are firing at the end of the simulation.

In the first row of Table 2, there is insufficient excitatory synaptic strength to enable the neurons to continue to fire each other. In the excitatory 0.06 row, there is enough spread of activation to enable the neurons to fire persistently. In the first columns (e.g. cell .06 -.02) there is insufficient inhibition to prevent the neural activation spreading, and all of the neurons fire. On the right however (e.g. cell .08 -.09), a small reverberating population fires throughout the simulation.

This shows that persistent stable firing occurs after three adjacent neurons are spiked. This persistent spiking is similar to the behaviour of a binary CA. However, when a larger range of neurons are initially spiked (as may be the case in an associative memory), there is further interesting behaviour.

The bottom part of the Table 2 refers to 75 neurons being initially spiked. As in the top portion, some excitatory inhibitory weight pairs lead to no persistence, and some lead to all of the neurons firing.

In the bottom half of the Table, those with one in the cell have more than 75 neurons persistently firing, but not all 100. Most of the table cells show two bumps firing. These two bumps are always on the edge. The edge neurons inhibit the interior neurons, as do the interior neurons themselves so that they do not fire a second time. The edge neurons have fewer incoming inhibitory connections, so they can persistently fire. After the initial burst, the interior neurons do not fire, the two bumps do not influence each other, and they fire persistently as if they were ignited by two individual sets of inputs. It is also interesting to note that several of these cells have more than two bumps; this Table shows four, six and seven bumps. Again these bumps are all quite thin, with approximately seven persistently firing neurons, and they have a relatively small number of non-firing neurons in between them.

Note that it is possible to have local excitation with inhibition to all other neurons. When there are a small number of inputs, this performs largely the same as, for instance, a 2-4 stationary bump. However, with a larger number of inputs, say 75, the inhibition from the initial firing prevents all the neurons from firing. In Table 2, the 75 input cells would all be 0. Let us call this topology with inhibition to all other neurons a 2-n topology. It is possible to set the synaptic weights so that a 2-n topology leads to persistent firing from 75 inputs, but the width of the bump would be very large. For instance, a 2-n topology with 0.08 excitation and 0.005 inhibition has a persistent bump 68 neurons wide when 75 neurons initially spiked, and 56 neurons wide when 3 neurons are initially spiked.

1.2 B.2 Exploring input variation

The stationary bump attractor’s spiking behaviour differs as the excitatory and inhibitory weights vary. They also vary as the number of initial neurons spiked changes.

The number of input sources were varied from 1 to 40, while the synaptic weights were also varied, from 0.05 to 0.10 (step 0.01). All the simulations run in NEST (Gewaltig and Diesmann 2007).Footnote 3

Table 3 shows the number of inputs needed to support ignition of the bump attractor network. The ignition of the bump attractor network depends on both the number of inputs and the specific weight combination. In most cases, only two spike sources are needed to ignite the network, but there are cases where four sources are needed or only one. It is important to note that there are some cases where there is ignition, without continued persistence (represented by a * in the Table); for example 0.05 - 0.08 only fires until 88 ms. There are also cases in which the bump ignites but with divergence, those in the lower left triangle of Table 3 indicated with (D). Like Table 2, Table 3 confirms that there needs to be sufficient excitatory strength to support persistence, and sufficient excitatory strength to overcome inhibitory strength. Similarly, too much excitatory strength in relation to inhibition leads to divergence. When there is less excitatory strength, more input sources can support ignition, as shown when excitation is 0.05, and fewer sources are needed for more excitation, as shown when excitation is 0.1.

Table 3 Minimal number of spikes sources to ignite the 2-4 bump-attractor network. The / means absence of any spikes, the ∗ means firing without persistence and (D) means diverging behaviour

The splitting behaviours are presented in Tables 4 and 5. Table 4 shows the smallest number of sources needed for two bumps to emerge. It also shows when there is diverging behaviour indicated with the letter D. Again, Table 4 shows that even as the number of sources increases, the stable, non divergent bumps are focused around a balance between excitation and inhibition. When there is less inhibition (toward the left of the Table), more sources are required for splitting to emerge.

Table 4 Number of inputs that determine the splitting behaviour into 2 bumps of the 2-4 bump attractor network. D means divergent behaviour, the / means no persistent firing
Table 5 Combination of excitatory E and inhibitory I weights that determine the splitting behaviour with 3 bumps or 4 bumps of the 2-4 bump attractor network

Table 5 shows a special subset of weight combinations in which three and four bumps emerge. They are the subset belonging to the central diagonal in Table 5 where excitatory weights are one step (0.01) greater than inhibitory, except the case with 0.1-0.1 has equal weights.

This section has shown parameter sweeps over a 2-4 bump attractor, with a particular leaky integrate and fire model, a particular synaptic transmission model, and particular neural parameters. The same parameters are unlikely to work with different models or even different neural parameters. While the same weight and number of input parameters are unlikely to work on different variants, the general idea of balancing excitatory and inhibitory weight will. Moreover, it will generalise to different sized bump attractors, for instance a bump attractor with excitatory synapses at a distance of three, and inhibitory synapses eight beyond, a 3-8 attractor.

The emergence of multiple bumps is caused by similar, and, in the case of this section, equal inputs to a large contiguous range of the bump attractor. Bumps may influence each other.

Appendix C:: Replacing two bumps with one

The bump attractor is both an attractor and a repeller. Adjacent neurons support each making a local attractor, but adjacent bumps repel each other. A rastergram is insufficient to show this, but Fig. 2 (in section 4) includes the voltage and rastergram of a single bump, and of two bumps that are near to each other.

With a single bump, note that the neurons in the centre of the bump spike more frequently than those on the outside (Fig. 2a). However, the rastergram does not show the effect on non-spiking neurons. The voltage diagrams (Fig. 2b and 2d) show the voltage of the neurons at each step. The neurons adjacent to the bump are excited but not to the firing threshold, and those beyond are inhibited. Those in the bump are, of course, excited; their voltage changes from the reset voltage − 70mV toward the firing threshold − 48mV. Those further away are unaffected and remain at the base level of activation, − 65mV as are all neurons before the initial input.

The inhibition in the neurons between the bumps is quite high even when compared with the inhibition on the neurons on the outside of the bump. So, what is needed is a burst of excitation into those central neurons with inhibition to the outside, but only in the case where the two bumps are quite close together.

The inhibition can be overcome and the two bumps replaced by one using an extra set of neurons that only fires when two nearby bumps are firing. There are the same number of neurons in the new Overcome population as in the original stable bump population, and they are aligned. The neurons in the Overcome population get excitatory input from the corresponding neurons below in a small window (10 neurons on either side with a weight of 0.0013). Where the two windows overlap, the neurons fire. If only one bump is firing in the subnet, or if the bumps are quite distant, no neurons in the Overcome subnet fire.

When the Overcome neurons fire they send excitation to the Bump neurons directly below, and inhibition more distantly. In this case, the Overcome neurons excite in a window of three about themselves (with a weight of 0.0013), and inhibit the next eight (with a weight of -0.4). This is quite similar to a bump topology with three excitatory and eight inhibitory synapses, a 3-8 bump attractor.

The result of this is that the interior neurons fire, and then remain persistently firing. Figure 5 shows this. The bottom figures (C and D) are the raster and voltage plots of the bump attractor. Note that the initial firing behaviour leads to a split into two bumps in Fig. 5c. Voltage slowly builds in the appropriate neurons in the Overcome subnetwork Fig. 5b, causing a single set of neural firing that shifts the behaviour in the stable bump attractor.

Fig. 5
figure 5

Results from the Overcome topology initially spiking neurons 10 through 23. A rastergram of the inhibitory subnetwork for the Overcome simulation (a), voltage signature of the inhibitory subnetwork for Overcome (b), rastergram of the bump subnetwork for Overcome (c), and voltage signature of the bump subnetwork for Overcome (d). This shows an initial input that splits into two bumps. Neurons in the inhibtory subnetwork fire, causing the bumps to merge

1.1 C.1 Merging Bumps

When the temperature range is quite large, the two initial bumps do not influence each other. For example, in Table 2 when there are 75 inputs (from neurons 25 to 99), the bumps are from neurons 25 to 31 and 92 to 98.

As there is no theoretical limit to the range of a continuous value for a specific semantic category, the 3-8 bump attractor approach, or indeed any X-Y bump attractor including all to all inhibition, will not work; larger bump attractors can account for larger ranges of inputs, but the bumps themselves also get larger. This can however be solved by an additional inhibitory topology increasing with distance, activated by the two firing bumps.

As in the overcome case, there is an extra population of neurons of the same size, which is called the Merge subnet. It is important that these neurons do not fire unless there are two bumps firing, so each of the Bump neurons has a small excitatory connection to each of the merge neurons (weight 0.0006). There are also direct one to one excitatory synapses (weight 0.01) from the Bump subnet to the Merge subnet so that the neurons associated with the bumps fire; so, these subnets are also aligned.

Inhibitory synapses from the Merge neurons to the Bump neurons are distance biased with more distant neurons being more inhibited (weight = (1.02δ) ∗ 0.04 where δ is distance). Thus the outside neuron of the neurons in the opposing bump is more inhibited than the inside neuron, and this, metaphorically, pushes the bumps together. There are no synapses to nearby neurons (range of 15).

There is a difficulty that as the distance increases, the inhibitory strength becomes too large and the bumps stop each other. The inhibition described in this paper, increases exponentially with distance (with a base of 1.02). It is sufficient to cope with 75 neuron input, but will not work with much larger differences.

Figure 6 shows the behaviour of this system. Figure 6a shows the spiking behaviour of the inhibitory Merge subnet. Its firing is sparser than the bump attractor Fig. 6c, but follows it. Note that once the inside edge of the bump stops being inhibited, because it is near enough to have no more inhibitory synapses, it quickly moves because the inside is not inhibited, but the outside is. Also note that the voltage in the Merge subnet is high throughout the run after initial stimulation in Fig. 6b. This is below firing threshold, but is due to the all to all synapses.

Fig. 6
figure 6

Results from the Merging topology initially spiking neurons 70 through 99. A rastergram of spiking behaviour for the inhibitory subnetwork (a), voltage signature of the inhibitory subnetwork (b), rastergram of spiking behaviour for the bump attractor subnetwork (c), and voltage signature of the bump attractor (d). This shows how the networks collectively move the bumps towards each other

This then moves the two bumps toward each other. It does not however push them together due to them repelling each other. Fortunately, this extra merge topology is compatible with the overcome topology. An example of the full bump merging topology, combining a bump, a Merge subnet, and an Overcome subnet, is shown in Section 4 in Fig. 3.

Note that this topology has some stability across varying bumps. Changing the bump weights from .08 excitatory and -.08 inhibitory, to .09 -.09 does require a change, but it is only the inhibitory weight in the Merge subnet from -0.4 to -0.32. Similarly, changing the bump weights to .07 -.07 requires the inhibitory Merge weight to -0.29. With lower weights (e.g. -0.4) , pairs of bumps from the larger ranges are extinguished, and with higher weights, the larger ranges do not merge sufficiently close. It is not a linear relation (both greater and smaller bump weights require less inhibition) as the excitatory inhibitory balance is not an entirely linear relation.

Appendix D:: Associative memory

Appendix D introduces an associative memory with an input bump attractor. The goal of the system is to produce the correct associated output from two inputs. A refined system using bump attractors for each beverage, with the additional merge and overcome subnets (Appendix D) shows the problem of broad input in context, and shows a solution to this problem. Finally, Hebbian learning is used to learn the associations (Appendix D), which leads to more efficient runtime retrieval with psychologically plausible retrieval times.

1.1 D.1 The hot coffee network: an associative memory example

The basic simulation that has driven the development of this paper is an associative memory of beverages with a semantic value for temperature, and an underlying temperature in celsius.

The gross topology of the network is shown in Fig. 4 in Section 5. The input temperature from the environment is represented by a stable bump subnetwork of 100 neurons. The topology used in the remainder of the paper is a 2-4 topology with excitatory connections from a given neuron to the two adjacent neurons on either side, then four inhibitory neurons beyond. The weights are .08 excitatory and -.08 inhibitory. This represents the temperature values between 0 and 99.

There are also neurons that represent the temperature of the individual beverages. These subnetworks are used in the associations. The 10 neurons in the Inhibition subnetwork take input from the beverage temperature neurons, and in return inhibit them; each beverage neuron synapses to each inhibitory neuron with a weight of 0.04, and in return receives an inhibitory synapse with a weight of 0.016. The neurons in the Inhibition subnet synapse to two adjoining neurons with a weight of .03 providing extra inhibition via increased firing. The inhibition prevents the spread of activation from one beverage to another. For instance, if the input temperature is 75-77, and Coke is queried, the associated neurons in the Coke Temperature subnet will spike, igniting Hot; now that the Input Temperature and Hot are firing, they ignite Coffee Temperature, which would then ignite Coffee without the Inhibition subnet.

The arrows represent several synapses from a given set of neurons to another set to support associations. Each Input Temperature neuron excites its associated Coffee Temperature neuron weight of 0.01. As these neurons are meant to associate CAs, in themselves, they are insufficient to cause neurons in another CA to fire; each beverage temperature stimulates the eight excitatory beverage semantic neurons and the appropriate temperature semantic neurons with a weight of 0.025.

Each of the eight semantic excitatory beverage neurons excites each associated temperature beverage neuron with a weight of 0.0015, and the semantic temperature neurons excite their beverage temperature neurons with a weight of 0.001.

Synapses inside simple CAs are not represented in the figure. Being binary CAs, the neurons in the semantic CAs have internal synapses as does the bump attractor Input Temperature subnet.

The individual CAs can be ignited by external stimulation. When this happens they all persist, and do not cause any other CAs to fire. There are the five semantic binary CAs and the Input Temperature bump CAs.

There are two types of atypical case to mention. The first case is the activation of a low input temperature (< 10) along with Cold or a high input temperature (≥ 70) with Hot. In this case, both beverages are activated, which is of course the correct result.

The second is the activation of two semantic CAs, for example, Hot and Coffee. Here the full range of beverage temperature neurons fire, but they fire at a low rate. In this case, the Coffee Temperature neurons from 70-99 fire. While this topology, using weakly connected beverage temperature neurons, in a sense solves the problem, a better result might be the prototypical beverage temperature neurons firing persistently. For instance, for Hot and Coffee, the neurons around 85 might fire. This would lead to actual retrieval when the semantic neurons are turned off, as the bump attractor neurons would continue to fire.

An obvious modification is to replace the beverage temperature subnets, which have no internal connections, with bump attractors. However, a straight forward switch elicits a flaw. If for example Hot Coffee is stimulated, all 30 neurons (70-99) fire, but the stable state that the Coffee Temperature subnetwork settles into is two bumps of neurons, one from 70 and one to 99, firing persistently with those in between silent. This is similar to the two bumps of Tables 2 and 4.

1.2 D.2 Full hot coffee network

While it seems reasonable for the full range of temperature neurons to fire due to direct semantic information, it is somewhat inconsistent with the firing behaviour from direct temperature input. Moreover, the firing in the beverage temperature subnet is not persistent on its own. A better result would be to have prototypical or average temperatures fire persistently. So, in the case of Hot Coffee semantic input, the neurons that represent coffee at 81 to 88 might fire persistently.

Making the beverage temperature subnets bump attractors enables persistent activity. However, with large input ranges, there are two bumps of activity at the ends of the range. For example, in the Hot Coffee case, neurons 70 to 74 and 95 to 99 fire persistently. This is the problem that was solved in Section 4.

The associative memory topology is modified to include the extra Merge and Overcome subnets. The full hot coffee network is still described by Fig. 4, but the Coffee Temperature and Coke Temperature boxes are now three populations each, a stable bump attractor, a parallel Merge subnet, and a parallel Overcome subnet; so the beverage temperatures are now each represented by 300 neurons. Note that the dynamics of these three subnets in isolation differ from those in the full topology because of the Inhibition subnetwork in the full topology; the neurons in the bump attractors fire at a lower rate. Extra excitatory (weight 0.002 from 0.0013) and inhibitory strength (weight -0.5 from -0.4) are needed in the Overcome subnetwork as the stable bump is firing at a lower rate due to the effect of the Inhibition subnetwork.

Now, as in Section D, the basic one semantic feature and one temperature input work properly, and quickly. For instance, temperature input of 85 to 87 and the semantic value Coffee, turns on the semantic value Hot within 300 ms. The ambiguous inputs (the semantic value Cold with a temperature below 10, and the semantic value Hot with a temperature above 70) turn on both semantic beverages.

The additional merging topology now causes the double semantic input queries to generate the appropriate temperature outputs. Each of the six pairs (e.g. Cold Coke, or Warm Coffee) produce a persistently firing output. Unlike the simple topology it is self sustaining when the two semantic CAs stop firing. Table 1 shows the association temperature range and the output results. It also shows the time to converge, noting how wider ranges take significantly longer to converge. However, small ranges (like Cold Coke) converge almost immediately even when they would break into two bumps (Warm Coke).

1.3 D.3 Associative memory with learning

The mammalian brain constantly learns, and one of the real benefits of spiking neural systems is that they can be reasonable models of at least parts of mammalian brains, so it is important that these systems learn. Using Hebbian learning, the subnetwork is presented triplets of inputs (semantic beverage, semantic temperature, actual temperature), and the firing behaviour is stored. Compensatory learning rules are Hebbian, and based on a Oja’s rule (Oja 1982), where the synaptic weight WXY from neuron X to neuron Y is represented by equation (7); it is the likelihood that the two neurons cofire when the presynaptic neuron X fires, modified by a constant.

$$ W_{XY} = C*\frac{coFire(X,Y)}{fire(X)} $$
(7)

So, if Y fires 80% of the time along with X and C = 1, the weight is 0.8. If C = 0.5, WXY = 0.4. Cofiring requires a time window and for this work a 10ms window has been used so that Y can fire in the same step as X or 10ms later to cofire. In a compensatory rule, C is calculated based on the total synaptic weight entering a neuron(a pre-compensatory rule), or leaving a neuron (post-compensatory). Thus weights are distributed based on the cofiring behaviour of all attached neurons.

From this behaviour, new synaptic weights are calculated using a compensatory Hebbian learning rule. Results are shown from learning based on presentation of a single triple for each of the semantic pairings with one temperature (section D). The full range of semantic pairings with all of their temperatures (section D) is presented in one test and random inputs distributed about a centroid in another.

1.3.1 D.3.1 One of each category

The first training mechanism presents the system with one of each category triplet. The triplets were: Hot Coffee 80 to 82; WarmCoffee 40 to 42; ColdCoffee 15 to 17; HotCoke 40 to 42; WarmCoke 15 to 17; and ColdCoke 4 to 6 .

These were each presented for 300 ms., and firing was stopped via inhibition between epochs. Firing behaviour is recorded and a compensatory Hebbian learning rule is applied. Weights from the semantic temperatures to the beverage bump attractors are calculated using a post-compensatory rule, and weights from the beverage bump attractors to the semantic temperatures are calculated using a pre-compensatory rule (see Section 2.4). The total target synaptic weight was 0.03 and 0.1 respectively.

After training, all 18 pairs (e.g. Cold and Coke, Coke and 4 to 6, and Cold and 4 to 6) are presented to the system as a test. In each case, the correct remaining third member was retrieved, and no spurious elements were retrieved. Unlike the tests from Appendices D and D, a low temperature and Cold only retrieves one beverage, because the beverages are associated with different temperature inputs. Indeed, many temperatures not presented during training are not associated at all.

1.3.2 D.3.2 The full range of inputs

Next, the full range of temperatures is presented with their appropriate semantic temperatures and for both beverages. This included roughly 200 runs of the system, with intervening inhibition to stop firing between epochs.

The Hebbian learning rule is applied leading to a system with correct results. As in the simulations in Section D, all the base double inputs lead to correct results. The cold and hot temperatures with semantic Cold and Hot lead to both beverages being retrieved.

Presenting Coke or Coffee with each temperature ignites the correct association, though Warm is incorrectly activated along with Cold for 10 and 25 respectively. Presentation of the semantic temperatures with each input temperature turns on the correct association. When the temperature is low (e.g. 3) or high (e.g. 93), both Coke and Coffee come on when Cold or Hot is presented respectively. Warm splits perfectly at 25. When input temperatures are presented where no beverage is associated with a semantic temperature, generally no beverage comes on. However, in the edge cases (e.g. Cold with 28) the beverage temperature range expands (e.g. Coffee).

As a final test, random temperatures are presented during training. The same number of input epochs is generated as the full range of temperatures, with the same number for each semantic pair. The temperature presented is a Gaussian distribution about a particular temperature. After learning, when the semantic pair is presented, a bump attractor near the Gaussian centroid is retrieved. This is a prototypicality effect.

A particularly interesting case is the presentation of the semantic temperature and beverage (see the last column of table 1 for learned results). The interesting part is that all of these results converge by 300 ms. This is within psychologically realistic times. Decisions are made in this order of time, so this associative task could be used in a cognitive model.

There is sufficient activation to cause the full range of neurons to fire, and bumps form at both ends. However, there is sufficient firing in the bumps to cause the associated Overcome subnetwork to fire. This is shown in Fig. 7. In this presentation of Warm and Coffee, the full temperature range can be seen to fire, Fig. 7a. This causes the coffee Overcome subnetwork to fire, Fig. 7b.

Fig. 7
figure 7

Rastergram of the Coffee Temperature Bump Attractor subnetwork (a) and the Coffee Temperature Overcome subnetwork (b) from weights learned from presentation of temperatures with gaussian distribution about a mean. Initial activation of a broad range of neurons from the semantic pair leads to two streams that collapse into one when Overcome neurons spike

The final Fig. 8 shows a run of the system for 1900 ms. without the 300 neurons for the coke temperature, which do not fire. The system is initially presented with Cold Coffee at 25 ms.; firing begins rapidly in the appropriate range of the Coffee Temperature subnet, causing firing in the Coffee Merge and Coffee Overcome subnets, which quickly leads to a single stream. The Inhibit subnet fires in response. At 300 ms. the neurons are inhibited. Each subsequent input starts after 300 ms., so the next is at 325 ms. The second presentation is Coffee and 45-48, which answers Warm; the third presentation is Coffee and 45-48, which answers Warm. Coffee and 85-88 is the fourth presentation, which answers Hot. Finally Hot and Coffee are presented at 1425 ms. This is resolved by 1500 ms. at 84, but it runs on here until 1800 ms. because it does not particularly look resolved as there is ongoing firing in the inhibitory coffee subnets. It does however resolve, exhibiting a fully functional hot coffee network. Thus the topology produces the correct associated output from any two inputs.

Fig. 8
figure 8

Rastergram of the network run on five inputs. The 300 coke neurons are missing, though don’t fire in this simulation. The first hundred neurons are Input Temperature; the next 50 are the semantics with Coffee as 100-109, Coke 110-119, Cold 120-129, Warm 130-139, and Hot 140-149; Coffee Temperature is 150-249, Coffee Overcome is 250-349, Coffee Merge is 350-449, and Inhibit is 450-459. There are five sets of input each followed by inhibition that shuts down the system. The inputs start every 300 ms. starting at 25 ms. The first presentations are: Cold Coffee; Coffee 45-48; Warm 45-48; Coffee 85-88; and finally Hot Coffee

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Huyck, C.R., Vergani, A.A. Hot coffee: associative memory with bump attractor cell assemblies of spiking neurons. J Comput Neurosci 48, 299–316 (2020). https://doi.org/10.1007/s10827-020-00758-1

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10827-020-00758-1

Keywords

Navigation