Difference between nengo_deeplearning simulators?


#1

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.


#2

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).