An implementation of the Semantic Pointer Architecture for Nengo
Project description
Implementation of the Semantic Pointer Architecture for Nengo
Project status
All of the core functionality is implemented, but some of the API might still be subject to changes.
Installation
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+.
Documentation
The documentation can be found here.
Getting Help
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.
Release History
0.5.0 (June 1, 2018)
Added
One-dimensional outputs of Nengo objects can be used as scalars in action rules. (#139, #157)
Syntactic sugar for complex symbolic expressions: nengo_spa.sym('A + B * C'). (#138, #159)
Include the achieved similarity in warning issued when desired maximum similarity could not be obtained. (#117, #158)
Possibility to name Vocabulary instances for debugging. (#163, #165)
Changed
0.4.1 (May 18, 2018)
This release fixes problems with the online documentation. Local installs are not affected.
0.4.0 (May 17, 2018)
This release increases the minimum required Nengo version to Nengo 2.7 (previously Nengo 2.4).
Added
Added documentation and build tools for the documentation. (#68)
Changed
This release introduces a new syntax for SPA action rules. (#114)
Remove
Unnecessary vocab argument from Transcode. (#68)
Fixed
0.3.2 (November 17, 2017)
Added
Fixed
0.3.1 (November 7, 2017)
Changed
Clearer error message as a SpaTypeError something is used as input/output in an action rule without being declared as such. (#82, #89)
Fixed
0.3.0 (October 16, 2017)
Added
Add add_output and add_neuron_output methods to IdentityEnsembleArray to provide the full API that is provided by the regular Nengo EnsembleArray. (#61, #28)
Add create_inhibit_node function to create nodes that inhibit complete Nengo networks. (#65, #26)
Add a solver argument to the action rule’s translate to use a solver instead of an outer product to obtain the transformation matrix which can give slightly better results. (#62, #57)
Changed
Actions rules do not require module to be assigned to the model any longer. They will access exactly the same variables as are available in the surrounding Python code. This means that existing action rules need to be changed to reference the correct names. (#63)
Actions will be build automatically without an explicit call to build(). (#59, #45, #55)
Consolidated the functionality of Encode and Decode into Transcode. (#67, #58)
Fixed
Fix some operations changing the dimensionality of semantic pointers with an odd initial dimensionality. (#52, #53)
When building actions the basal ganglia and thalamus will only be created when actually required. (#60, #42)
The vocabulary translate mechanism will properly ignore missing keys in the target vocabulary when populate=False. (#62, #56)
Allow empty string as argument to Vocabulary.populate. (#73)
0.2 (June 22, 2017)
Added
Tutorial explaining what has changed in nengo_spa compared to the legacy SPA implementation. (#46)
Examples can be extracted with python -m nengo_spa extract-examples <destination>. (#49, #7)
Changed
Replaced input_keys and output_keys arguments of associative memories with a single mapping argument. (#29, #8)
Replaced ampa_config and gaba_config parameters of the BasalGanglia with ampa_synapse and gaba_synapse parameters. Removed the general_config parameter. (#30, #23)
Fixed
0.1.1 (May 19, 2017)
Fixed
Updated the 0.1 changelog.
0.1 (May 19, 2017)
Initial release of Nengo SPA with core functionality, but excluding
updates and completion the documentation,
proper integration with Nengo GUI.
The API is still conisdered unstable in some parts of it are likely to change in the future.
Main features compared to the SPA implementation shipped with Nengo are:
neural representations have been optimized for higher accuracy,
support for arbitrarily complex action rules,
SPA networks can be used as normal Nengo networks,
and SPA networks can be nested.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nengo_spa-0.5.0.tar.gz
.
File metadata
- Download URL: nengo_spa-0.5.0.tar.gz
- Upload date:
- Size: 218.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25c68d8d1f92de99547614e07ec28f40a275eeca803e298d569acd2ba2d64e93 |
|
MD5 | 3f9067a56f87d90fb9f41d8175f013ab |
|
BLAKE2b-256 | 9a25a0d29bc31c07f5b5247cf588fd87f6149bce585461be93a3f22cfd106f7e |
File details
Details for the file nengo_spa-0.5.0-py2.py3-none-any.whl
.
File metadata
- Download URL: nengo_spa-0.5.0-py2.py3-none-any.whl
- Upload date:
- Size: 84.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d189e7ab6ab373831cf5dd8cb6802d559c3e9a9effb6e0afbb0c5b5ad79910e0 |
|
MD5 | 5cf8ba5dfb7d8c83325a2fca185f15bf |
|
BLAKE2b-256 | b71271cb85e88f216c0df64dec44c8f628aa6ceccbd2936aca8bec2f69f4fae1 |