[Neuroinfo] [Connectionists] Fully reproducible cortical modelling

James A. Bednar jbednar at inf.ed.ac.uk
Tue Jan 7 23:35:12 CET 2014

Hi all,

Several people have suggested that the packages we describe below
would be worth announcing to the wider neuroinformatics community.  
I hope you will find them of interest!

Jim Bednar
From: James A. Bednar
To: comp-neuro at neuroinf.org, connectionists at cs.cmu.edu,
	visionlist at visionscience.com, ava at jiscmail.ac.uk
Date: Dec 20 23:36:58 2013 +0000

We are pleased to announce the availability of a comprehensive new
example of modelling topographic maps in the visual cortex, suitable
as a ready-to-run starting point for future research.  This example
consists of:

1. A new J. Neuroscience paper (Stevens et al. 2013a) describing
   the GCAL model and showing that is is stable, robust, and adaptive,
   developing orientation maps like those observed in ferret V1.

2. A new open-source Python software package, Lancet, for launching
   simulations and collating the results into publishable figures.

3. A new Frontiers in Neuroinformatics paper (Stevens et al. 2013b)
   describing a lightweight and practical workflow for doing
   reproducible research using Lancet and IPython.

4. An IPython notebook showing the precise steps necessary to
   reproduce the 842 simulation runs required to reproduce the
   complete set of figures and text of Stevens et al. (2013a),
   using the Topographica simulator (topographica.org).

5. A family of Python packages that were once part of Topographica but
   are now usable by a broader audience. These packages include
   'param' for specifying parameters declaratively, 'imagen' for
   defining 0D, 1D, and 2D distributions (such as visual stimuli), and
   'featuremapper' for analyzing the activity of neural populations
   (e.g. to estimate receptive fields, feature maps, or tuning curves).

The resulting recipe for building mechanistic models of cortical map
development should be an excellent way for new researchers
to start doing work in this area.

Jean-Luc R. Stevens, Judith S. Law, Jan Antolik,
Philipp Rudiger, Chris Ball, and James A. Bednar

Computational Systems Neuroscience Group
The University of Edinburgh


1. STEVENS et. al. 2013a: GCAL model

Our recent paper:

   Jean-Luc R. Stevens, Judith S. Law, Jan Antolik, and James
   A. Bednar. Mechanisms for stable, robust, and adaptive
   development of orientation maps in the primary visual cortex.
   Journal of Neuroscience, 33:15747-15766, 2013.

shows how the GCAL model was designed to replace previous models of V1
development that were unstable and not robust.  The model in this
paper accurately reproduces the process of orientation map development
in ferrets, as illustrated in this animation comparing GCAL, a simpler
model, and chronic optical imaging data from ferrets:



Lancet is a lightweight Python package that offers a set of flexible
components to allow researchers to declare their intentions succinctly
and reproducibly. Lancet makes it easy to specify a parameter space,
run jobs, and collate the output from an external simulator or
analysis tool. The approach is fully general, to allow the researcher
to switch between different software tools and platforms as necessary.
Lancet can be obtained from:


3. STEVENS et. al. 2013b: LANCET/IPYTHON workflow

   Jean-Luc R. Stevens, Marco I. Elver, and James A. Bednar.
   An Automated and Reproducible Workflow for Running and Analyzing
   Neural Simulations Using Lancet and IPython Notebook.
   Frontiers in Neuroinformatics, in press, 2013.

Lancet is designed to integrate well into an exploratory workflow
within the Notebook environment offered by the IPython project. In an
IPython notebook, you can generate data, carry out analyses, and plot
the results interactively, with a complete record of all the code used.
Together with Lancet, it becomes practical to automate every step
needed to generate a publication within IPython Notebook, concisely
and reproducibly.  This new paper describes the reproducible workflow
and shows how to use it in your own projects.

4. NOTEBOOKS for Stevens et al. 2013a

As an extended example of how to use Lancet with IPython to do
reproducible research, the complete recipe for reproducing Stevens et
al. 2013a is available in models/stevens.jn13 of Topographica's GitHub
repository.  The first of two notebooks defines the model, alternating
between code specification, a textual description of the key model
properties with figures, and interactive visualization of the model's
initial weights and training stimuli. The second notebook can be run
to quickly generate the last three published figures (at half
resolution) but can also launch all 842, high-quality simulations
needed to reproduce all the published figures in the paper.  Static
copies of these notebooks, along with instructions for downloading
runnable versions, can be viewed here:



The Topographica simulator has been refactored into several fully
independent Python projects available on GitHub (http://ioam.github.io).
These projects are intended to be useful to a wide audience of both
computational and experimental neuroscientists:

   param: The parameters offered by param allow scientific Python
   programs to be written declaratively, with type and range checking,
   optional documentation strings, dynamically generated values,
   default values and many other features.

   imagen: Imagen offers a set of 0D,1D and 2D pattern
   distributions. These patterns may be procedurally generated or
   loaded from files. They can be used to generate simple scalar
   values, such as values drawn from a specific random distribution,
   or for generating complex, resolution-independent composite image
   pattern distributions typically used as visual stimuli (e.g. Gabor
   and Gaussian patches or masked sinusoidal gratings).

   featuremapper: Featuremapper allows the response properties of a
   neural population to be measured from any simulator or experimental
   setup that can give estimates of the neural activity values in
   response to an input pattern. Featuremapper may be used to measure
   preference and selectivity maps for various stimulus features (e.g
   orientation and direction of visual stimuli, or frequency for
   auditory stimuli), to compute tuning curves for these features, or
   to measure receptive fields, regardless of the underlying
   implementation of the model or experimental setup.


     title        = "Mechanisms for Stable, Robust, and Adaptive
                     Development of Orientation Maps in the Primary
                     Visual Cortex",
     author       = "Jean-Luc R. Stevens and Judith S. Law and
                     J\'{a}n Antol\'{i}k and James A. Bednar",
     year         = 2013,
     journal      = "Journal of Neuroscience",
     volume       = "33",
     pages        = "15747-15766",
     url          = "http://dx.doi.org/10.1523/JNEUROSCI.1037-13.2013",
     urlalt       = "http://homepages.inf.ed.ac.uk/jbednar/papers/stevens.jn13.pdf",
     abstract     = "Development of orientation maps in ferret and cat
         primary visual cortex (V1) has been shown to be stable, in that
         the earliest measurable maps are similar in form to the eventual
         adult map, robust, in that similar maps develop in both dark
         rearing and in a variety of normal visual environments, and yet
         adaptive, in that the final map pattern reflects the statistics
         of the specific visual environment. How can these three
         properties be reconciled? Using mechanistic models of the
         development of neural connectivity in V1, we show for the first
         time that realistic stable, robust, and adaptive map development
         can be achieved by including two low-level mechanisms originally
         motivated from single-neuron results. Specifically, contrast
         gain control in the retinal ganglion cells and the lateral
         geniculate nucleus reduces variation in the presynaptic drive
         due to differences in input patterns, while homeostatic
         plasticity of V1 neuron excitability reduces the postsynaptic
         variability in firing rates. Together these two mechanisms,
         thought to be applicable across sensory systems in general, lead
         to biological maps that develop stably and robustly, yet adapt
         to the visual environment. The modeling results suggest that
         topographic map stability is a natural outcome of low-level
         processes of adaptation and normalization. The resulting model
         is more realistic, simpler, far more robust, and is thus a good
         starting point for future studies of cortical map development.",

    author       = "Jean-Luc R. Stevens and Marco I. Elver and James
                    A. Bednar",
    title        = "An Automated and Reproducible Workflow for Running
                    and Analyzing Neural Simulations Using {Lancet} and
                    {IPython} {Notebook}",
    journal      = "Frontiers in Neuroinformatics",
    year         = 2013,
    note         = "In press",
    url          = "http://www.frontiersin.org/neuroinformatics/10.3389/fninf.2013.00044/abstract",
    abstract     = "Lancet is a new, simulator-independent Python
                    utility for succinctly specifying, launching, and
                    collating results from large batches of interrelated
                    computationally demanding program runs. This paper
                    demonstrates how to combine Lancet with IPython
                    Notebook to provide a flexible, lightweight, and
                    agile workflow for fully reproducible scientific
                    research.  This informal and pragmatic approach uses
                    IPython Notebook to capture the steps in a
                    scientific computation as it is gradually automated
                    and made ready for publication, without mandating
                    the use of any separate application that can
                    constrain scientific exploration and innovation.
                    The resulting notebook concisely records each step
                    involved in even very complex computational
                    processes that led to a particular figure or
                    numerical result, allowing the complete chain of
                    events to be replicated automatically.
                    Lancet was originally designed to help solve
                    problems in computational neuroscience, such as
                    analyzing the sensitivity of a complex simulation to
                    various parameters, or collecting the results from
                    multiple runs with different random starting points.
                    However, because it is never possible to know in
                    advance what tools might be required in future
                    tasks, Lancet has been designed to be completely
                    general, supporting any type of program as long as
                    it can be launched as a process and can return
                    output in the form of files. For instance, Lancet is
                    also heavily used by one of the authors in a
                    separate research group for launching batches of
                    microprocessor simulations.  This general design
                    will allow Lancet to continue supporting a given
                    research project even as the underlying approaches
                    and tools change.",

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

More information about the Neuroinfo mailing list