Learning spatial transformations through STDP (Davison, Frégnac 2006)

 Download zip file   Auto-launch 
Help downloading and running models
A common problem in tasks involving the integration of spatial information from multiple senses, or in sensorimotor coordination, is that different modalities represent space in different frames of reference. Coordinate transformations between different reference frames are therefore required. One way to achieve this relies on the encoding of spatial information using population codes. The set of network responses to stimuli in different locations (tuning curves) constitute a basis set of functions which can be combined linearly through weighted synaptic connections in order to approximate non-linear transformations of the input variables. The question then arises how the appropriate synaptic connectivity is obtained. This model shows that a network of spiking neurons can learn the coordinate transformation from one frame of reference to another, with connectivity that develops continuously in an unsupervised manner, based only on the correlations available in the environment, and with a biologically-realistic plasticity mechanism (spike timing-dependent plasticity).
1 . Davison AP, Fr├ęgnac Y (2006) Learning cross-modal spatial transformations through spike timing-dependent plasticity. J Neurosci 26:5604-15 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism: Generic;
Cell Type(s):
Gap Junctions:
Receptor(s): GabaA; AMPA;
Simulation Environment: NEURON;
Model Concept(s): Synaptic Plasticity; Long-term Synaptic Plasticity; Unsupervised Learning; STDP;
Implementer(s): Davison, Andrew [Andrew.Davison at iaf.cnrs-gif.fr];
Search NeuronDB for information about:  GabaA; AMPA;
Spike Timing Dependent Weight Adjuster
with symmetric functions (i.e. only depends on the absolute value of the
time difference, not on its sign.
Andrew Davison, UNIC, CNRS, September 2004

	RANGE interval, tlast_pre, tlast_post
	RANGE deltaw, wmax, f
	GLOBAL tau_a, tau_b, a, on

	interval	(ms)	: since last spike of the other kind
	tlast_pre	(ms)	: time of last presynaptic spike
	tlast_post	(ms)	: time of last postsynaptic spike
	f                       : weight change function
	deltaw			: change in weight
	wsyn			: weight of the synapse
	tas             (ms2)   : tau_a squared

	interval = 0
	tlast_pre = 0
	tlast_post = 0
	f = 0
	deltaw = 0

	tau_a   = 20 (ms)       : crossing point from LTP to LTD
	tau_b   = 15 (ms) 	: decay time constant for exponential part of f
	wmax    = 1		: min and max values of synaptic weight
	a       = 0.001		: step amplitude
	on	= 1		: allows learning to be turned on and off globally

	tas = tau_a * tau_a : do it here in case tau_a has been changed since the last spike

	if (w >= 0) {				: this is a pre-synaptic spike
		interval = tlast_post - t
		tlast_pre = t
		f = (1 - interval*interval/tas) * exp(interval/tau_b)
		deltaw = wmax * a * f
	} else {				: this is a post-synaptic spike
		interval = t - tlast_pre
		tlast_post = t
		f = (1 - interval*interval/tas) * exp(-interval/tau_b)
		deltaw = wmax * a* f
	if (on) {
		wsyn = wsyn + deltaw
		if (wsyn > wmax) {
			wsyn = wmax
		if (wsyn < 0) {
			wsyn = 0