Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Dan F. M. Goodman is active.

Publication


Featured researches published by Dan F. M. Goodman.


Frontiers in Neuroinformatics | 2008

Brian: A Simulator for Spiking Neural Networks in Python

Dan F. M. Goodman; Romain Brette

“Brian” is a new simulator for spiking neural networks, written in Python (http://brian. di.ens.fr). It is an intuitive and highly flexible tool for rapidly developing new models, especially networks of single-compartment neurons. In addition to using standard types of neuron models, users can define models by writing arbitrary differential equations in ordinary mathematical notation. Python scientific libraries can also be used for defining models and analysing data. Vectorisation techniques allow efficient simulations despite the overheads of an interpreted language. Brian will be especially valuable for working on non-standard neuron models not easily covered by existing software, and as an alternative to using Matlab or C for simulations. With its easy and intuitive syntax, Brian is also very well suited for teaching computational neuroscience.


Frontiers in Neuroscience | 2009

The brian simulator.

Dan F. M. Goodman; Romain Brette

“Brian” is a simulator for spiking neural networks (http://www.briansimulator.org). The focus is on making the writing of simulation code as quick and easy as possible for the user, and on flexibility: new and non-standard models are no more difficult to define than standard ones. This allows scientists to spend more time on the details of their models, and less on their implementation. Neuron models are defined by writing differential equations in standard mathematical notation, facilitating scientific communication. Brian is written in the Python programming language, and uses vector-based computation to allow for efficient simulations. It is particularly useful for neuroscientific modelling at the systems level, and for teaching computational neuroscience.


Nature Neuroscience | 2016

Spike sorting for large, dense electrode arrays

Cyrille Rossant; Shabnam Kadir; Dan F. M. Goodman; John Schulman; Maximilian L D Hunter; Aman B Saleem; Andres Grosmark; Mariano Belluscio; Gh Denfield; Alexander S. Ecker; As Tolias; Samuel G. Solomon; György Buzsáki; Matteo Carandini; Kenneth D. M. Harris

Developments in microfabrication technology have enabled the production of neural electrode arrays with hundreds of closely spaced recording sites, and electrodes with thousands of sites are under development. These probes in principle allow the simultaneous recording of very large numbers of neurons. However, use of this technology requires the development of techniques for decoding the spike times of the recorded neurons from the raw data captured from the probes. Here we present a set of tools to solve this problem, implemented in a suite of practical, user-friendly, open-source software. We validate these methods on data from the cortex, hippocampus and thalamus of rat, mouse, macaque and marmoset, demonstrating error rates as low as 5%.


Neural Computation | 2014

High-dimensional cluster analysis with the masked em algorithm

Shabnam Kadir; Dan F. M. Goodman; Kenneth D. Harris

Cluster analysis faces two problems in high dimensions: the “curse of dimensionality” that can lead to overfitting and poor generalization performance and the sheer time taken for conventional algorithms to process large amounts of high-dimensional data. We describe a solution to these problems, designed for the application of spike sorting for next-generation, high-channel-count neural probes. In this problem, only a small subset of features provides information about the cluster membership of any one data vector, but this informative feature subset is not the same for all data points, rendering classical feature selection ineffective. We introduce a “masked EM” algorithm that allows accurate and time-efficient clustering of up to millions of points in thousands of dimensions. We demonstrate its applicability to synthetic data and to real-world high-channel-count spike sorting data.


Frontiers in Neuroinformatics | 2014

Equation-oriented specification of neural models for simulations

Marcel Stimberg; Dan F. M. Goodman; Victor Benichoux; Romain Brette

Simulating biological neuronal networks is a core method of research in computational neuroscience. A full specification of such a network model includes a description of the dynamics and state changes of neurons and synapses, as well as the synaptic connectivity patterns and the initial values of all parameters. A standard approach in neuronal modeling software is to build network models based on a library of pre-defined components and mechanisms; if a model component does not yet exist, it has to be defined in a special-purpose or general low-level language and potentially be compiled and linked with the simulator. Here we propose an alternative approach that allows flexible definition of models by writing textual descriptions based on mathematical notation. We demonstrate that this approach allows the definition of a wide range of models with minimal syntax. Furthermore, such explicit model descriptions allow the generation of executable code for various target languages and devices, since the description is not tied to an implementation. Finally, this approach also has advantages for readability and reproducibility, because the model description is fully explicit, and because it can be automatically parsed and transformed into formatted descriptions. The presented approach has been implemented in the Brian2 simulator.


Frontiers in Neuroinformatics | 2010

Automatic Fitting of Spiking Neuron Models to Electrophysiological Recordings

Cyrille Rossant; Dan F. M. Goodman; Jonathan Platkiewicz; Romain Brette

Spiking models can accurately predict the spike trains produced by cortical neurons in response to somatically injected currents. Since the specific characteristics of the model depend on the neuron, a computational method is required to fit models to electrophysiological recordings. The fitting procedure can be very time consuming both in terms of computer simulations and in terms of code writing. We present algorithms to fit spiking models to electrophysiological data (time-varying input and spike trains) that can run in parallel on graphics processing units (GPUs). The model fitting library is interfaced with Brian, a neural network simulator in Python. If a GPU is present it uses just-in-time compilation to translate model equations into optimized code. Arbitrary models can then be defined at script level and run on the graphics card. This tool can be used to obtain empirically validated spiking models of neurons in various systems. We demonstrate its use on public data from the INCF Quantitative Single-Neuron Modeling 2009 competition by comparing the performance of a number of neuron spiking models.


Frontiers in Neuroscience | 2011

Fitting Neuron Models to Spike Trains

Cyrille Rossant; Dan F. M. Goodman; Bertrand Fontaine; Jonathan Platkiewicz; Anna K. Magnusson; Romain Brette

Computational modeling is increasingly used to understand the function of neural circuits in systems neuroscience. These studies require models of individual neurons with realistic input–output properties. Recently, it was found that spiking models can accurately predict the precisely timed spike trains produced by cortical neurons in response to somatically injected currents, if properly fitted. This requires fitting techniques that are efficient and flexible enough to easily test different candidate models. We present a generic solution, based on the Brian simulator (a neural network simulator in Python), which allows the user to define and fit arbitrary neuron models to electrophysiological recordings. It relies on vectorization and parallel computing techniques to achieve efficiency. We demonstrate its use on neural recordings in the barrel cortex and in the auditory brainstem, and confirm that simple adaptive spiking models can accurately predict the response of cortical neurons. Finally, we show how a complex multicompartmental model can be reduced to a simple effective spiking model.


The Journal of Neuroscience | 2011

Late Emergence of the Vibrissa Direction Selectivity Map in the Rat Barrel Cortex

Yves Kremer; Jean-François Léger; Dan F. M. Goodman; Romain Brette; Laurent Bourdieu

In the neocortex, neuronal selectivities for multiple sensorimotor modalities are often distributed in topographical maps thought to emerge during a restricted period in early postnatal development. Rodent barrel cortex contains a somatotopic map for vibrissa identity, but the existence of maps representing other tactile features has not been clearly demonstrated. We addressed the issue of the existence in the rat cortex of an intrabarrel map for vibrissa movement direction using in vivo two-photon imaging. We discovered that the emergence of a direction map in rat barrel cortex occurs long after all known critical periods in the somatosensory system. This map is remarkably specific, taking a pinwheel-like form centered near the barrel center and aligned to the barrel cortex somatotopy. We suggest that this map may arise from intracortical mechanisms and demonstrate by simulation that the combination of spike-timing-dependent plasticity at synapses between layer 4 and layer 2/3 and realistic pad stimulation is sufficient to produce such a map. Its late emergence long after other classical maps suggests that experience-dependent map formation and refinement continue throughout adult life.


Neural Computation | 2011

Vectorized algorithms for spiking neural network simulation

Romain Brette; Dan F. M. Goodman

High-level languages (Matlab, Python) are popular in neuroscience because they are flexible and accelerate development. However, for simulating spiking neural networks, the cost of interpretation is a bottleneck. We describe a set of algorithms to simulate large spiking neural networks efficiently with high-level languages using vector-based operations. These algorithms constitute the core of Brian, a spiking neural network simulator written in the Python language. Vectorized simulation makes it possible to combine the flexibility of high-level languages with the computational efficiency usually associated with compiled languages.


Network: Computation In Neural Systems | 2012

Simulating spiking neural networks on GPU

Romain Brette; Dan F. M. Goodman

Modern graphics cards contain hundreds of cores that can be programmed for intensive calculations. They are beginning to be used for spiking neural network simulations. The goal is to make parallel simulation of spiking neural networks available to a large audience, without the requirements of a cluster. We review the ongoing efforts towards this goal, and we outline the main difficulties.

Collaboration


Dive into the Dan F. M. Goodman's collaboration.

Top Co-Authors

Avatar

Romain Brette

Paris Descartes University

View shared research outputs
Top Co-Authors

Avatar

Victor Benichoux

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar

Cyrille Rossant

University College London

View shared research outputs
Top Co-Authors

Avatar

Marcel Stimberg

French Institute of Health and Medical Research

View shared research outputs
Top Co-Authors

Avatar

Bertrand Fontaine

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge