Chris Eliasmith , Terry Stewart *
Implementing high-order cognition in neuromorphic hardware
Spaun is the first brain simulation capable of exhibiting cognitive behaviour. It consists of 2.5 million spiking neurons, a 28×28 retina, and a 3-joint arm. It is able to recognize digits, write digits, remember lists, add digits, learn when gambling, and correctly answer pattern-completion intelligence tests. To create it, we required two key features: the ability to efficiently implement algorithms in parallel neural networks, and the ability to map cognitive theories into these algorithms. For the first of these, we use the Neural Engineering Framework, a method for using arbitrary neuron models to approximate any algorithm stated in terms of state variables and differential equations. For the second, we use the Semantic Pointer Architecture, which shows how to implement and manipulate symbol-like structures using high-dimensional vectors and operations on those vectors. The result is the identification of a class of algorithms that combine the advantages of localist discrete symbols with the advantages of distributed continuous representations, and these algorithms are extremely natural to implement using a large number of simple non-linear components with weighted connections between them.
In developing this system, we found a number of areas where neurobiological details revealed important insights into the design.
For example, the heterogeneity of neurons turns out to be vital for accurately approximating a wide range of functions. This has allowed us to make use of transistor mismatch to actually improve performance.
At the higher level, the constraints of the cortex-basal ganglia-thalamus loop lead to a very natural method for adjusting the effective connectivity of the system based on the current context, allowing the system to switch strategies, tasks, and actions without actually doing any physical rewiring.