Nengo Loihi 0.4.0 released

The Nengo team at ABR is pleased to announce the release of Nengo Loihi 0.4.

What is Nengo Loihi?

Nengo Loihi is a backend for the Nengo neural simulator allowing standard spiking Nengo models to run on Intel’s new Loihi neuromorphic chip. Nengo Loihi includes an emulator so that you can develop spiking neuron models for Loihi without having access to hardware.

How do I use it?

Once installed, Nengo Loihi simulates Nengo networks. After defining your network, instead of simulating it with

nengo.Simulator(model)

do

nengo_loihi.Simulator(model)

and that’s it!

What’s new?

Nengo Loihi remains in heavy development. Lots of changes are happening under the hood that might affect your model. In most cases these changes should improve model speed and accuracy, but if any of these changes has an adverse effect, please let us know!

The biggest change in version 0.4.0 is two new examples that demonstrate the capabilities of Nengo and Loihi.

The new nonlinear adaptive control example shows Nengo Loihi controlling a two-link arm and learning to compensate for unexpected gravitational force. While this is a simple case, the underlying network structure is the same as that used in ABR’s adaptive control demo.

The new MNIST convolutional network example shows Nengo Loihi running a convolutional network created and trained with NengoDL. It correctly classifies 99 of 100 randomly selected test images, and provides a basis for constructing the more sophisticated convolutional neural networks used in state-of-the-art image and speech recognition.

Version 0.4.0 also includes many improvements to make models easier to debug. When using the Nengo Loihi emulator, we more closely match chip behavior and let you know when your model will not fit on the chip. When using Nengo Loihi hardware, we fixed a bug that was preventing error messages from being raised in certain situations.

We have also enabled an experimental optimization and made it on by default. Nengo models often use “passthrough nodes,” nodes that move data around without modification, to simplify model construction. Previously, these passthrough nodes were implemented off-chip by sending chip data to the host and back again. Now, we attempt to replace passthrough nodes with on-chip connections in order to reduce the amount of communication between chip and host. Removing passthrough nodes can change model behavior, so if your models are no longer working as expected, you can disable this optimization by passing remove_passthrough=False to the Simulator.

Finally, we have improved the look and feel of the documentation, and keep old versions of the documentation accessible. When you go the main documentation page, you will be looking at the docs associated with the latest development version. The dropdown menu at the top-right of every page links to the docs associated with specific versions (e.g., v0.4.0).

How do I get it?

If you are using the emulator, then you can simply use pip.

pip install nengo-loihi

If you are setting up Nengo Loihi to use Loihi hardware for the first time, see the Nengo Loihi installation instructions.

Where can I learn more?

Where can I get help?

You’re already there! If you have an issue upgrading or have any other questions, please post them in this forum.

1 Like