The theory of Nengodl


#1

Excuuse me, I want to ask a question about the nengodl.layer. For example, I wnat to know how the nengodl.layer(tf.conv2d,**) take the convolutional layer into the spike neurons. My understanding for it is that the nengodl.layer does the binary conversion for the data that will transform into the convolutional layer, and then convoluted the data and directly tarnsfer into the next layer.


#2

nengo_dl.tensor_layer(x, func, ...) applies some function func to the signal coming out of an object x. x could be a Node (in which case we’re applying the function to the output of the node), or an Ensemble (in which case we’re applying the function to the decoded output from the ensemble), or an ensemble.neurons (in which case we’re applying the function to the neural activities). It’s the same as forming a nengo.Connection(x, ...); whatever signal would be the input to that connection, that is the signal that would be the input to the tensor_layer.

The output y = nengo_dl.tensor_layer(...) is a TensorNode. The value output from this TensorNode (e.g. if you were to form a nengo.Connection(y, ...)) is the result of applying func to the signal coming out of x. So tensor_layer isn’t doing anything other than what is defined in the function func. If you specified a function that applies a binary conversion, then it will do that, but only if you built that into func.