Nengo DL 0.3.0 released

The Nengo DL team is jazzed to announce the release of Nengo DL 0.3.0.

What is Nengo DL?

Nengo DL is a backend for Nengo that integrates deep learning methods (supported by the TensorFlow framework) with other Nengo modelling tools. This allows users to optimize their models using deep learning training methods, improves simulation speed (on CPU or GPU), and makes it easy to insert TensorFlow models (such as a convolutional neural network) into Nengo networks.

How do I use it?

To use Nengo DL, replace instances of nengo.Simulator with nengo_dl.Simulator.

For example, if you have a network called model and you run it with

with nengo.Simulator(model) as sim:
    sim.run(10)

you would change that to

with nengo_dl.Simulator(model) as sim:
    sim.run(10)

and that’s it!

Information on accessing the more advanced features of Nengo DL can be found in the documentation.

What’s new?

The major changes with this release are a number of behind-the-scenes improvement that result in faster simulation speeds and lower build times. We’ve also added more documentation, fixed some bugs, and brought everything up to date with Nengo 2.4.0. Check out the GitHub release page for a full changelog.

How do I get it?

To install Nengo DL, we recommend using pip:

pip install nengo_dl

More detailed installation instructions can be found here.

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.

2 Likes

What an exciting great news!

a quick question here:
How does the performance of the DL simulator differ from OCL simulator?
I understand the DL simulator provides the incorporation of tensorflow model which is awesome.
But for the Nengo model sumulation, does it benifit from DL simulator in any way?

thanks for your response.

Edward Chen

%EDIT:
I think I missed some information here.
I realized that tensorflow doesn’t necessary mean GPU computing.
There is tensorflow GPU installed on my computer, so I just thought in that way.
My original question was some what confusing, I apologize for that.
To be specific, I got “nengo DL simulator” and “tensorflow on GPU”.
How does it compared to “nengo ocl simulator”?

nengo_ocl is still the fastest option, if you don’t need any of the deep learning features. nengo_dl is fairly close though (and we can hope for more improvement as TensorFlow is developed further). Here are some simple benchmarks to give you an idea what the comparison looks like (you can check out nengo_dl/benchmarks.py if you want to see what the actual benchmarks are in more detail).

1 Like

Just out of curiosity: What version of Nengo did you use for these benchmarks?

That’s the latest release (2.4.0).

1 Like

One thing I forgot to mention is that nengo_dl allows you to process multiple inputs simultaneously through a network. For example, if you want to run your network once with input a, once with input b, and once with input c, you just run the network once with a, b, and c in parallel (as opposed to having to run the network three times). If you have a use-case like that then nengo_dl is probably the fastest Simulator option (with more of an improvement the more inputs you want to run in parallel).

Hello drasmuss,

Great! This is just the perfect information I’m looking for, true comparison, love it, thanks.