NengoDL, training a LIF Neural Network with known R, C, threshold, and refractory period

I would like to train a LIF Neural Network using tensorflow and after doing some google search, I found out about NengoDL. I did some further research about Nengo and the Neural Engineering Framework, and I’m really confused.

I have modelled the LIF Neurons in a circuit simulator as well as in Brian2 neuromorphic library for python. Brian2 was too slow and not suited for training a large network, but it allows direct modelling of a LIF Neuron based on its electrical parameters: R,C, threshold, resting potential and refractory period. I checked the Nengo Documentation and I found that I cannot modify the threshold. Also, I can not individually change R and C. I can only change the product: tau = RC.

I have the following questions:
Is there any method for me to model the neurons knowing these electrical parameters?
If it is possible, how do I train the neural network afterwards?

Hi, I’m not sure about the answer to your first question, but if the LIF model in Nengo doesn’t suit your purposes well enough, I know it’s not too difficult to define a custom neuron type. This example demonstrates it pretty well: https://www.nengo.ai/nengo/examples/usage/rectified-linear.html

As for training the spiking network, this example here demonstrates in detail how it can be done with nengoDL: https://www.nengo.ai/nengo-dl/examples/spiking-mnist.html

Training works pretty similarly to tensorflow. I’m not that experienced with all this yet but if you run into more specific problems with training I can try to help!

1 Like

Thanks Khanus. I see. I’ll try to edit the LIF neuron code and see if I can make it work.