SynapseGenerator

Table Of Contents

Next topic

Example 1: Long range, zeroth order pyramidal density model

This Page

Summary

SynapseGenerator is a software package used to predict connectivity at the synapse level based on statistical properties of all neuron populations that co-exist in the given brain region of interest. For each population, the spatial distribution of the dendritic and axonal arborizations needs to be either specified as a probability density function (e.g. a mixture of Gaussians), or can be estimated from samples of reconstructed dendritic/axonal arborizations.

_images/ProcessingSteps0.PNG

The five main processing steps are illustrated in the figure above:

  1. Parameters (lpar): Define the statistical parameters for each neuron population and setup a discrete space to place neurons in. The space can be 1, 2 or 3 dimensional; the discrete grid is chosen fine enough to have at most one synapse per voxel.
  2. Gaussian parameters (Yinfo): Parse the input parameters and convert the specified densities to a Gaussian Mixture model, which defines the target density Y. The presynaptic and postsynaptic neurons are specified seperately, each can consist of several neuron populations.
  3. Target Density (Y): Compute a discrete spatial sampling of the Gaussian Mixture model. Y is a (sparse) two dimensional matrix in which each row represents a voxel, containing the synapse densities of all contributing neurons.
  4. Synaptic Elements (X): Place synapses in target space such that:
  • A preset overall synaptic density is reached.
  • Synapses are placed where dendritic and axonal densities are highest.
  • No more than one synapse is placed in a single discrete voxel.

Several methods to optimize these criteria can be used:

  1. Random draws, followed by pruning;
  2. The Lasso method (under development), a linear least squares algorithm that uses a constraint that parameters cannot exceed a given value (here: at most one synapse per voxel);
  3. The Ising model (under development), which computes an optimal synapse configuration by minimizing an energy function.

The resulting matrix X has the same size as Y but is much sparser since it contains only ones (potential synapse) and zeros (no synapse).

  1. Return results:
  • Connectivity (conMat): Each synapse is assigned to a pre- and postsynaptic neuron;
  • Minimum Spanning Tree: The entire set of synapses for a given neuron is used to reconstruct its arborization, using the minimal spanning tree algorithm, as implemented in the TREES toolbox;
  • Standard set of visualizations, to analyse the consecutive steps of the pipeline.

SynapseGenerator is implemented in Matlab; its core elements are currently ported to Python.

Contents

This second iteration of the online documentation consists of the following parts:

The examples are designed such that they run smoothly on normal desktop computers with 8GB memory. With the forthcoming port to Python, we will develop a parallel computing strategy to keep requirements low.

Indices and tables