Skip to content

Pipeline for mean-field approximation of spiking networks #179

Open
@jajcayn

Description

@jajcayn

I recently worked out the mean-field approximation of the spiking model of the hippocampus, more-or-less successfully. This process can be automated to a large extent.

The idea is to allow users to go from their spiking networks with multiple populations (LIF/EIF/AdEx neurons + conductance-/current-based synapses) to mean-field approximation in the light of ALN. The actual equations for the mean-field model are the same (slight adjustments w.r.t number of population), the only difference would be the precomputed linear-nonlinear cascade and the model parameters. The cascade computation depends on single neuron parameters in the spiking model and the parameters of the mean-field approximation depend on both the synaptic parameters and the network parameters (number of neurons, probability of connection, etc.).

Some things to consider:

  • code for computing the cascade is already part of neurolib in models/aln/aln-precalc/precompute_quantitites/ so I'd refactor a bit and move it somewhere else
  • the cascade computation should work as a single function with arguments as per single neuron parameters, i.e. user enters necessary neuronal parameters into the function and the function does everything and saves the cascade
  • I'd create something like BaseMeanFieldNeuralMass on par with base for NeuralMass in MultiModel.. it'd contain the dynamics based on number of populations, etc
  • some functions will be necessary to compute the mean-field parameters (the Ks, Js, cs, etc)... these would live under the same subpackage as the code for cascade computation and would save params as jsons next to the cascade - jsons, because default model parameters in MultiModel are dicts and json is practically a dict...
  • finally a final model would be created by subclassing the BaseMeanFieldNeuralMass into a new mean-field model.. user would define the name of the model, some basic attributes, like default noise input, etc. but the dynamics would be the same as ALN, the parameters would be loaded from json based on computation and the linear-nonlinear cascade would be loaded based on the computation
  • profit!

Ideas? Critique?

Metadata

Metadata

Assignees

Labels

dev-talkWhy, how, when, what, you sure?enhancementEnhancing neurolib.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions