Rate-based neuron models¶
-
class
nonlinearities_gauss_rate
- #include <gauss_rate.h>
Name: gauss_rate - rate model with Gaussian gain function
Description:
gauss_rate is an implementation of a nonlinear rate model with input function
\[ input(h) = g * \exp( -( x - \mu )^2 / ( 2 * \sigma^2 ) ) \]. Input transformation can either be applied to individual inputs or to the sum of all inputs.The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
mu
real
Mean of the Gaussian gain function
sigma
real
Standard deviation of Gaussian gain function
linear_summation
boolean
Specifies type of non-linearity (see above)
rectify_output
boolean
Switch to restrict rate to values >= 0
Note:
The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M. (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann Mi (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: Mario Senden, Jan Hahne, Jannis Schuecker
SeeAlso: rate_connection_instantaneous, rate_connection_delayed
-
class
nonlinearities_lin_rate
- #include <lin_rate.h>
Name: lin_rate - Linear rate model
Description:
lin_rate is an implementation of a linear rate model with input function \( input(h) = g * h \). The model supports multiplicative coupling which can be switched on and off via the boolean parameter mult_coupling (default=false). In case multiplicative coupling is actived the excitatory input of the model is multiplied with the function \( mult\_coupling\_ex(rate) = g_{ex} * ( \theta_{ex} - rate ) \) and the inhibitory input is multiplied with the function \( mult\_coupling\_in(rate) = g_{in} * ( \theta_{in} + rate ) \).
The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
lambda
real
Passive decay rate
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
mult_coupling
boolean
Switch to enable/disable multiplicative coupling
g_ex
real
Linear factor in multiplicative coupling
g_in
real
Linear factor in multiplicative coupling
theta_ex
real
Shift in multiplicative coupling
theta_in
real
Shift in multiplicative coupling
rectify_output
boolean
Switch to restrict rate to values >= 0
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: David Dahmen, Jan Hahne, Jannis Schuecker
SeeAlso: rate_connection_instantaneous, rate_connection_delayed
-
template<class
TNonlinearities
>
classrate_neuron_ipn
: public Archiving_Node - #include <rate_neuron_ipn.h>
Name: rate_neuron_ipn - Base class for rate model with input noise.
Description:
Base class for rate model with input noise of the form
\[ \tau dX_i(t) = [ - \lambda X_i(t) + \mu + \phi( \sum w_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) ] dt + [ \sqrt{\tau} \cdot \sigma ] dW_{i}(t) \]or\[\begin{split} \tau dX_i(t) = [ - \lambda X_i(t) + \mu + \text{mult_coupling_ex}( X_i(t) ) \cdot \\ \phi( \sum w^{ > 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) \\ + \text{mult_coupling_in}( X_i(t) ) \cdot \\ \phi( \sum w^{ < 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) ] dt \\ + [ \sqrt{\tau} \cdot \sigma ] dW_{i}(t) \end{split}\]This template class needs to be instantiated with a class containing the following functions:input (nonlinearity that is applied to the input, either psi or phi)
mult_coupling_ex (factor of multiplicative coupling for excitatory input)
mult_coupling_in (factor of multiplicative coupling for inhibitory input)
The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value, input represents phi) or to each input individually (False, input represents psi). In case of multiplicative coupling the nonlinearity is applied separately to the summed excitatory and inhibitory inputs if linear_summation=True.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
Author: David Dahmen, Jan Hahne, Jannis Schuecker
SeeAlso: lin_rate, tanh_rate, threshold_lin_rate
-
template<class
TNonlinearities
>
classrate_neuron_opn
: public Archiving_Node - #include <rate_neuron_opn.h>
Name: rate_neuron_opn - Base class for rate model with output noise.
Description:
Base class for rate model with output noise of the form
\[ \tau dX_i(t) / dt = - X_i(t) + \mu + \phi( \sum w_{ij} \cdot \psi( X_j(t-d_{ij}) + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) ) \]or\[\begin{split} \tau dX_i(t) / dt = - X_i(t) + \mu + \text{mult_coupling_ex}( X_i(t) ) \cdot \\ \phi( \sum w^{ > 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) \\ + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) ) \\ + \text{mult_coupling_in}( X_i(t) ) \cdot \\ \phi( \sum w^{ < 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) \\ + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) ) \end{split}\]Here \( xi_j(t) \) denotes a Gaussian white noise.
This template class needs to be instantiated with a class containing the following functions:
input (nonlinearity that is applied to the input, either psi or phi)
mult_coupling_ex (factor of multiplicative coupling for excitatory input)
mult_coupling_in (factor of multiplicative coupling for inhibitory input)
The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value, input represents phi) or to each input individually (False, input represents psi). In case of multiplicative coupling the nonlinearity is applied separately to the summed excitatory and inhibitory inputs if linear_summation=True.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org./10.3389/fninf.2017.00034
Author: David Dahmen, Jan Hahne, Jannis Schuecker
SeeAlso: lin_rate, tanh_rate, threshold_lin_rate
-
template<class
TNonlinearities
>
classrate_transformer_node
: public Archiving_Node - #include <rate_transformer_node.h>
Name: rate_transformer_node - Rate neuron that sums up incoming rates and applies a nonlinearity specified via the template.
Description:
The rate transformer node simply applies the nonlinearity specified in the input-function of the template class to all incoming inputs. The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value) or to each input individually (False). An important application is to provide the possibility to apply different nonlinearities to different incoming connections of the same rate neuron by connecting the sending rate neurons to the rate transformer node and connecting the rate transformer node to the receiving rate neuron instead of using a direct connection. Please note that for instantaneous rate connections the rate arrives one time step later at the receiving rate neurons as with a direct connection.
Remarks:
Weights on connections from and to the rate_transformer_node are handled as usual.
Delays are honored on incoming and outgoing connections.
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Parameters:
Only the parameter
linear_summation and the parameters from the class Nonlinearities can be set in the status dictionary.
Author: Mario Senden, Jan Hahne, Jannis Schuecker
FirstVersion: November 2017
-
class
siegert_neuron
: public Archiving_Node - #include <siegert_neuron.h>
Name: siegert_neuron
Description:
siegert_neuron is an implementation of a rate model with the non-linearity given by the gain function of the leaky-integrate-and-fire neuron with delta or exponentially decaying synapses [2] and [3, their eq. 25]. The model can be used for a mean-field analysis of spiking networks.
The model supports connections to other rate models with zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
1/s
Rate (1/s)
tau
ms
Time constant
mean
real
Additional constant input
The following parameters can be set in the status directory and are used in the evaluation of the gain function. Parameters as in iaf_psc_exp/delta.
tau_m
ms
Membrane time constant
tau_syn
ms
Time constant of postsynaptic currents
t_ref
ms
Duration of refractory period
theta
mV
Threshold relative to resting potential
V_reset
mV
Reset relative to resting membrane potential
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Fourcaud N, Brunel N (2002). Dynamics of the firing probability of noisy integrate-and-fire neurons, Neural Computation, 14(9):2057-2110 DOI: https://doi.org/10.1162/089976602320264015
- 3
Schuecker J, Diesmann M, Helias M (2015). Modulated escape from a metastable state driven by colored noise. Physical Review E 92:052119 DOI: https://doi.org/10.1103/PhysRevE.92.052119
- 4
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: DiffusionConnectionEvent
Receives: DiffusionConnectionEvent, DataLoggingRequest
Author: Jannis Schuecker, David Dahmen, Jan Hahne
SeeAlso: diffusion_connection
-
class
nonlinearities_sigmoid_rate
- #include <sigmoid_rate.h>
Name: sigmoid_rate - rate model with sigmoidal gain function
Description:
sigmoid_rate is an implementation of a nonlinear rate model with input function \( input(h) = g / ( 1. + \exp( -\beta * ( h - \theta ) ) ) \). Input transformation can either be applied to individual inputs or to the sum of all inputs.
The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
beta
real
Slope parameter
theta
real
Threshold
linear_summation
boolean
Specifies type of non-linearity (see above)
rectify_output
boolean
Switch to restrict rate to values >= 0
Note:
The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: Mario Senden, Jan Hahne, Jannis Schuecker
SeeAlso: rate_connection_instantaneous, rate_connection_delayed
-
class
nonlinearities_sigmoid_rate_gg_1998
- #include <sigmoid_rate_gg_1998.h>
Name: sigmoid_rate_gg_1998 - rate model with sigmoidal gain function as defined in [1].
Description:
sigmoid_rate_gg_1998 is an implementation of a nonlinear rate model with input function \( input(h) = ( g * h )^4 / ( .1^4 + ( g * h )^4 ) \). Input transformation can either be applied to individual inputs or to the sum of all inputs.
The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
linear_summation
boolean
Specifies type of non-linearity (see above)
rectify_output
boolean
Switch to restrict rate to values >= 0
-Note:
The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.
References:
- 1
Gancarz G, Grossberg S (1998). A neural model of the saccade generator in the reticular formation. Neural Networks, 11(7):1159–1174. DOI: https://doi.org/10.1016/S0893-6080(98)00096-3
- 2
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 3
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi/org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: Mario Senden, Jan Hahne, Jannis Schuecker
SeeAlso: rate_connection_instantaneous, rate_connection_delayed
-
class
nonlinearities_tanh_rate
- #include <tanh_rate.h>
Name: tanh_rate - rate model with hyperbolic tangent non-linearity
Description:
tanh_rate is an implementation of a nonlinear rate model with input function \( input(h) = \tanh(g * (h-\theta)) \). Input transformation can either be applied to individual inputs or to the sum of all inputs.
The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
theta
real
Threshold
linear_summation
boolean
Specifies type of non-linearity (see above)
rectify_output
boolean
Switch to restrict rate to values >= 0
Note:
The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: David Dahmen, Jan Hahne, Jannis Schuecker
SeeAlso: rate_connection_instantaneous, rate_connection_delayed
-
class
nonlinearities_threshold_lin_rate
- #include <threshold_lin_rate.h>
Name: threshold_lin_rate - rate model with threshold-linear gain function
Description:
threshold_lin_rate is an implementation of a nonlinear rate model with input function \( input(h) = min( max( g * ( h - \theta ), 0 ), \alpha ) \). Input transformation can either be applied to individual inputs or to the sum of all inputs.
The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.
Parameters:
The following parameters can be set in the status dictionary.
rate
real
Rate (unitless)
tau
ms
Time constant of rate dynamics
mu
real
Mean input
sigma
real
Noise parameter
g
real
Gain parameter
alpha
real
Second Threshold
theta
real
Threshold
linear_summation
boolean
Specifies type of non-linearity (see above)
rectify_output
boolean
Switch to restrict rate to values >= 0
Note: The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.
References:
- 1
Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034
- 2
Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022
Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent
Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest
Author: David Dahmen, Jan Hahne, Jannis Schuecker SeeAlso: rate_connection_instantaneous, rate_connection_delayed