How to achieve long-term potentiation and long-term depression

Hello everyone, I am a newcomer.
I am very interested in nengo, but encountered some problems in the process of using it.

  1. We all know that the main manifestations of synaptic plasticity in the brain are LTP and LTD, so how to use STDP to achieve synaptic plasticity in nengo?
  2. I want to build a complex model in which only a few connections can use supervised learning to train the weights. Can nengo do this? Are there any examples that can help me understand?
    If you can answer my questions, I would be very grateful. At the same time, all kinds of ideas are also welcome.

Hi @YL0910,

To answer your questions, we support multiple learning rules in Nengo, and the BCM rule in particular performs STDP calculations as part of the learning rule update.

Regrading examples of supervised learning, The Nengo documentation contains many examples of both supervised and unsupervised learning.

Thank you very much for your answer! I read the link you shared with me. I want to find a supervised learning rule based on STDP. Is there any research in this area?

I’m not familiar with any supervised learning rules based on STDP, although @tbekolay may have some insights. His Master’s thesis focused on learning in spiking neural networks with STDP.

Probably my most salient publication on the topic would be this one. You could achieve this in modern Nengo by setting learning_rule_type=[nengo.PES(), nengo.BCM()] on a connection, but part of the reason why we don’t have any examples doing this is because there isn’t a practical benefit to doing this over just nengo.PES() (that I can find).

Hello! @tbekolay I was going through the publication on hPES. I was wondering if we can classify MNIST with only unsupervised learning in Nengo with BCM as done in

It is probably possible! But I’m not aware of anyone who’s done it. My guess is that it will take some parameter tweaking to get working, but aside from that there’s no reason why it wouldn’t work.

Alright. I shall try to do with BCM. I am new to Nengo syntax so was finding it difficult to define training and evaluation procedure for reproducing the results.

1 Like

Once you have a start on the model, feel free to post it here for help getting it working! It’s hard for us to get a model started since we haven’t read the source paper, but once you have the structure it’s more feasible for us to iterate on the model.

1 Like

Sure. Thanks a lot. I will post it here.