Difference between nengo_deeplearning simulators?

There are two ways to run a Nengo network with a LasagneNode.

With the nengo_deeplearning simulator:

sim = nengo_deeplearning.Simulator(net)
sim.run_steps(10)

With the Nengo reference simulator:

sim = nengo.Simulator(net)
sim.run_steps(10)

What’s the practical difference between these two simulators? Why use one over the other? They seem to take the same amount of time to run.

When you run things via nengo.Simulator it’s just running the network as a black box function within a Node. nengo_deeplearning.Simulator is aware of LasagneNode's, so it can do things like optimize the parameters of the network inside the node (via sim.train).

1 Like