tutorials:writing_your_own_plasticity_model
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
tutorials:writing_your_own_plasticity_model [2016/08/18 16:40] – [Changing the plasticity model] zenke | tutorials:writing_your_own_plasticity_model [2016/08/18 16:52] – Updates links zenke | ||
---|---|---|---|
Line 10: | Line 10: | ||
{{ : | {{ : | ||
- | In Auryn you can implement this type of learning rule very intuitively if the '' | + | In Auryn you can implement this type of learning rule very intuitively if the '' |
Line 17: | Line 17: | ||
===== Understanding plasticity in Auryn ===== | ===== Understanding plasticity in Auryn ===== | ||
- | Before writing | + | In most cases you will want to use Auryn to implement |
- | + | ||
- | In most cases it will be best to writing your own synapse model, by modifying an existing model (like [[examples:sim_background|Triplet STDP]]) which already | + | |
Line 115: | Line 113: | ||
return dw; | return dw; | ||
</ | </ | ||
- | The code describes how each weight should be updated upon a presynaptic spike (hence the suffix). Since spikes in Auryn are labelled | + | The code describes how each weight should be updated upon a presynaptic spike (hence the suffix). Since spikes in Auryn are labeled |
The complete weight update '' | The complete weight update '' | ||
- | This describes | + | One thing you should pay close attention to, because it could might easily introduce errors: **You need to translate postsynaptic IDs (as shown above)**, but not the presynaptic ones! Copies of presynaptic trances are available on each rank, whereas postsynaptic traces are distributed with the neuronal dynamics. This only makes a difference when you are running simulations in parallel with MPI, but then it's an important difference. |
+ | |||
+ | We now covered weight updates triggered by presynaptic spikes, but what happens upon a postsynaptic spike? | ||
=== Backward spike propagation === | === Backward spike propagation === | ||
Line 174: | Line 175: | ||
Suppose, you would like to change the plasticity model, all you need to do is to copy TripletConnection.h and TripletConnection.cpp to YourNameConnection.h and .cpp and then the '' | Suppose, you would like to change the plasticity model, all you need to do is to copy TripletConnection.h and TripletConnection.cpp to YourNameConnection.h and .cpp and then the '' | ||
- | One thing you should pay attention to, because it could might easily introduce errors: You need to translate postsynaptic IDs (as shown above), but not the presynaptic ones! Copies of presynaptic trances are available on each rank, whereas postsynaptic traces are distributed with the neuronal dynamics. This only makes a difference when you are running simulations in parallel with MPI, but then it's an important difference. | + | |
==== Weight updates in continuous time (evolve) ==== | ==== Weight updates in continuous time (evolve) ==== |
tutorials/writing_your_own_plasticity_model.txt · Last modified: 2018/02/07 23:11 by zenke