Implementation of the Semantic Pointer Architecture for Nengo
The Semantic Pointer Architecture provides an approach to building cognitive models implemented with large-scale spiking neural networks.
- Write arbitrarily complex expressions with type checking involving neurally
represented and static Semantic Pointers like
dot((role * filler + BiasVector) * tag, cmp) >> target. Nengo SPA will take care of implementing the required neural networks.
- Quickly implement action selection systems based on a biological plausible model of the basal ganglia and thalamus.
- Neural representations are optimized for representing Semantic Pointers.
- Support for using different binding methods with algebras. Nengo SPA ships with implementations of circular convolution (default) and vector-derived transformation binding (VTB), which is particularly suitable for deep structures. Different binding operations/algebras can be mixed in a single model.
- Seamless integration with non-SPA Nengo models.
- All of the core functionality is implemented and most of the API should be fairly stable.
- While basic integration with the Nengo GUI works, it should be improved in the future. However, those improvements will mostly depend on Nengo GUI providing an appropriate plugin system.
Nengo SPA depends on Nengo 2.7+, and we recommend that you install Nengo before installing Nengo SPA.
To install Nengo SPA:
pip install nengo-spa
Nengo SPA is tested to work on Python 2.7 and 3.4+.
The documentation can be found here.
Questions relating to Nengo and Nengo SPA, whether it's use or it's development, should be asked on the Nengo forum at https://forum.nengo.ai.