Copyright © 2008 Elsevier Ltd All rights reserved.
2008 Special Issue
FIND — A unified framework for neural data analysis
Received 2 November 2007;
The complexity of neurophysiology data has increased tremendously over the last years, especially due to the widespread availability of multi-channel recording techniques. With adequate computing power the current limit for computational neuroscience is the effort and time it takes for scientists to translate their ideas into working code. Advanced analysis methods are complex and often lack reproducibility on the basis of published descriptions. To overcome this limitation we develop FIND (Finding Information in Neural Data) as a platform-independent, open source framework for the analysis of neuronal activity data based on Matlab (Mathworks). Here, we outline the structure of the FIND framework and describe its functionality, our measures of quality control, and the policies for developers and users. Within FIND we have developed a unified data import from various proprietary formats, simplifying standardized interfacing with tools for analysis and simulation. The toolbox FIND covers a steadily increasing number of tools. These analysis tools address various types of neural activity data, including discrete series of spike events, continuous time series and imaging data. Additionally, the toolbox provides solutions for the simulation of parallel stochastic point processes to model multi-channel spiking activity. We illustrate two examples of complex analyses with FIND tools: First, we present a time-resolved characterization of the spiking irregularity in an in vivo extracellular recording from a mushroom-body extrinsic neuron in the honeybee during odor stimulation. Second, we describe layer specific input dynamics in the rat primary visual cortex in vivo in response to visual flash stimulation on the basis of multi-channel spiking activity.
Keywords: Coefficient of variation; Gamma process; Point process simulation; Spike train analysis; Neural activity data analysis; Open source toolbox; Mushroom body; Visual cortex; Rat; Honey bee
- 1. Motivation
- 2. Concept
- 3. Design and community interaction
- 3.1. Data import and internal data representation
- 3.2. External data representation and storage
- 3.3. Addressing the need for different programming languages by using plug-ins
- 4. Functionality
- 5. Examples of analysis with FIND
- 5.1. Odor-response dynamics of spiking irregularity in a mushroom-body extrinsic neuron of the honeybee
- 5.1.1. Experiments
- 5.1.2. Rate estimation
- 5.1.3. Time warp
- 5.1.4. Time-resolved estimation of CV
- 5.1.5. Dynamic changes of the gamma order
- 5.1.6. Conclusion and interpretation
- 5.2. Layer-specific stimulus response latency in the rat visual cortex
- 6. Conclusions, discussion and outlook
Fig. 1. Schematic overview of the FIND framework. Currently, data acquisition with different products results in files with numerous proprietary data formats for neural data (top row). The FIND framework provides unified data import to read these and various open data formats (Read). The imported data is represented in a unified manner within the Matlab programming environment (Store). On this level, FIND supports browsing the existing data set and the selection of a subset of data for further processing. Then analysis functions can be called using a GUI and/or directly from the command line (Select and Call). Our approach includes full interchangeability between GUI calls and programmed scripts using the function calls. All calls generated are passed through a unified interface (Adapt) to call the actual analysis-functions that process the data. On the next level (Analyse), we provide high-level analysis functions. Interaction between several high-level analyses and cascading of data processing steps is supported by the unified data representation. For all steps, we offer template functions and documentation to facilitate and encourage the addition of further methods to the FIND framework. For a full list of functions currently available, see the project website http://find.bccn.uni-freiburg.de.
Fig. 2. Levels of function access and release within the FIND framework. We have established three stages of code addition to FIND. On the first level (developers’ version) prototypes are submitted and included into the FIND framework. Within this version, adaptation to the FIND standards, testing and documentation are accomplished. After passing the review of an editorial board the functions are offered to the public as a release version. The full support of all functions available using the GUI is the highest level of abstraction offered by our framework. Stability and coverage of the functionality increases with higher levels within FIND. We warmly welcome contributors, developers and users of the FIND toolbox for all levels mentioned.
Fig. 3. Time-resolved inter-spike interval statistics during odor presentation. (a) Repeated measurements of spiking activity from a single mushroom body alpha-lobe extrinsic neuron of the honeybee in response to N=66 repeated stimulations with the same odor (peppermint). Each tick marks the time of occurrence of one spike, each row of spikes represents one experimental trial. The presentation of the odor stimulus with onset at time t=0 is indicated by the gray shading. (b) Trial-averaged rate function, estimated using an alpha-shaped convolution kernel with an optimal kernel width of (inset). (c) Illustration of the time-unwarping method. Event times in experimental time (top) are translated into event times in operational time (right) according to the integrated rate function (black curve). The gray shading again indicates the odor stimulation. Operational time has no units, but counts indicate the number of expected events, i.e. for the operational time interval [0, 10] we expect on average 10 spikes per trial. The stimulus onset time t′=t=0 serves as a reference in both time frames. (d) All 66 single-trial spike trains in operational time. The rate of spike events is now normalized to unity. (e) Time-resolved of the inter-spike intervals in experimental time. was first measured in operational time and subsequently presented in experimental time, using the inverse time transformation t′→t to warp the time axis. The results of three different methods of estimation are shown (see text). The red curve represents the average of the trial-to-trial estimated ; the blue curve gives the CV based on the pooled ISIs from all trials. The black curve assumes a gamma renewal model fitted the ISI distribution (shown in f), where . (f) This time-resolved fit of a gamma distribution to the ISIs pooled from all trials gives the gamma order α of the model. For comparison, the gray dashed line indicates the gamma order of a Poisson process. (g) The time-resolved histogram of the ISI distribution in experimental time (normalized to area = 1).
Fig. 4. Layer-specific response latency in rat primary visual cortex in response to optical full field stimulation. (a) The recovered positions of the tips of 7 electrodes (dots) within the indicated cortical layers. White lines indicate the boundaries of the layers. (b) The spike density histogram for all trials (N=37) aligned to stimulus onset (time t=0 in experimental time) for each electrode (light gray–low firing rate, dark: high firing rate). (c) The multi-unit activity rate profile for each electrode estimated using a smoothing Savitzky–Golay filter (half-width: 10 ms, order 0). (d) The first derivative of the firing rates (Savitzky–Golay filter, half-width 20 ms, order 1). These profiles were used for the autoAlign procedure. (e) The firing rates (as in (c)) after alignment of rate derivatives. Note that the time axis for each trace is now relative to a zero mean shift (see text). (f) Absolute latencies of the maximal increase in firing rate for each electrode.