Question about ensembles

Hi, I’m new here (to both Nengo and the forums), so please forgive me if this is in the wrong spot.

I’m trying to create a simple network of LIF neurons to serve as a reservoir for a liquid state machine. In all the examples I’ve looked at, neurons exist in ensembles. The documentation describes an ensemble as “A group of neurons that collectively represent a vector.”

However, I’m not interested in having my neurons represent a vector. I don’t want encoders, intercepts, or really anything more than…well, a bunch of neurons. Is there some way that I can either have a network of neurons without ensembles, or to disable the high-level representation encoding for ensembles?


Hi @adam, and welcome to the Nengo forums. :smiley:

Yes! You can absolutely do this in Nengo. If you want just a bunch of neurons, that’s what a nengo.Ensemble essentially is. In Nengo, we group bunches of neurons into an ensemble to make them easier to manage (easier to connect to and from, and easier to define neural properties for the entire group). If you do not want to use the vector representations of Nengo ensembles, all you need to do is connect directly to/from the .neurons object, as described here.

I should note, however, that in Nengo, by default, the properties of the neurons (basically the gains and biases) are randomly generated. If you want them to be a specific value, you’ll need to set the gain and bias parameters (or use the intercepts and max_rates parameters) when you create the Nengo ensemble (see here for more info).

Thank you so much! That is exactly what I was looking for!