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 [2015/06/19 17:02] – typos 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 integrated on each rank; that sounds inefficient, | + | |
==== 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