User guideΒΆ
The NengoDL API can be thought of as a combination of two high level frameworks:
Nengo and
Keras. We can define a
network using the
standard Nengo API, such as nengo.Ensemble
and nengo.Connection
. This is augmented
by nengo_dl.Layer
/nengo_dl.TensorNode
, which allow us to add standard TensorFlow
components, such as Keras Layers, to the Nengo network.
Then we can simulate that network using nengo_dl.Simulator
, which supports
both the standard Nengo Simulator syntax for running a model as well as the Keras
compile/fit/evaluate API
for training.
In this documentation we try not to duplicate information from those two base frameworks. If you are wondering how to access some functionality in Nengo or Keras, you should begin by looking up how that thing is done in the base framework. Chances are, it works the same way in NengoDL! Here we will focus on the new features introduced by NengoDL on top of those APIs, along with some practical discussion of how or when to use those features.
There are two classes that users may need to interact with in order
to access the features of NengoDL: Simulator
and
TensorNode
. The former is the main access point for
NengoDL, allowing the user to simulate models, or optimize parameters via
Simulator.fit
. TensorNode
is used for
inserting TensorFlow code into a Nengo model.