Skip to content

A neuroscience python package for the estimation and evaluation of neural models from patch clamp neural recordings, including a library of spike distance metrics..

Notifications You must be signed in to change notification settings

nicodjimenez/fit_neuron

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fit_neuron

fit_neuron is an easy to use python package for the fast estimation of generalized integrate and fire neural models from patch clamp electrophysiological recordings. The optimization routines implements a fitting procedure described in [RB2005] and [MS2011]. The package includes an easy to use interface similar to scikit-learn for fitting models to data and then making predictions with the fitted models. The routines used can estimate the models described in [RB2005], [MN2009], and [MS2011]. As described in depth in the documentation, the subthreshold parameters are estimated using linear regression and the threshold parameters are estimated using maximum likelihood. The fitting routine is built for speed: it estimates neuron parameters for 10 seconds of data in about 50 seconds on a quad core Asus laptop. fit_neuron also contains efficient implementations of the following spike distance measures: Victor-Purpura [DA2003], van Rossum [VR2001], Schreiber [SS2003], and Gamma [RJ2008] which can be used to evaluate the accuracy of estimated models, as well as provide measures of synchrony between spike trains.

Date

2013-12-28

Version

0.0.5

Authors
  • Nicolas D. Jimenez
  1. Pypi

The latest stable version is available to download at: https://pypi.python.org/pypi/fit_neuron.

  1. GitHub

The latest development version is available at: https://github.com/nicodjimenez/fit_neuron. All relevant contributions are welcome and fast review of pull requests is guaranteed.

  1. Documentation

Sphinx documentation for this package is available at: http://pythonhosted.org/fit_neuron/.

Dependencies

  1. Numpy

The standard python module for matrix and vector computations: https://pypi.python.org/pypi/numpy.

  1. Scipy

The standard python module for statistical analysis: http://www.scipy.org/install.html.

  1. Matplotlib

The standard python module for data visualization: http://matplotlib.org/users/installing.html.

Installation

The fit_neuron package can be installed as follows:

sudo pip install fit_neuron

The data for the fit_neuron package is then installed as follows:

sudo python -m fit_neuron.data.dl_neuron_data

Warning

Running this script for the first time will download a 300 MB zip file containing test recordings which is then unzipped to over 1 GB of text files in the installation directory of the fit_neuron package. This may take up to 20 minutes depending on your bandwidth. After the files are downloaded, the test data will be easily accessible via the fit_neuron.data package.

Testing

There are two testing scripts that may be used. Both scripts are described in the documentation (http://pythonhosted.org/fit_neuron/).

The first script is far simpler and easier to understand but is less configurable:

python -m fit_neuron.tests.test_model

The more complicated and configurable testing script for fit_neuron can be run as follows:

python -m fit_neuron.tests.test

This will create a directory called test_output_figures in the current directory.

Feel free to contact me at nicodjimenez [at] gmail.com if you have any questions / comments.

References

DA2003

Aronov, Dmitriy. "Fast algorithm for the metric-space analysis of simultaneous responses of multiple single neurons." Journal of Neuroscience Methods 124.2 (2003): 175-179.

MN2009

Mihalas, Stefan, and Ernst Niebur. "A generalized linear integrate-and-fire neural model produces diverse spiking behaviors." Neural computation 21.3 (2009): 704-718.

MS2011

Mensi, Skander, et al. "Parameter extraction and classification of three cortical neuron types reveals two distinct adaptation mechanisms." Journal of neurophysiology 107.6 (2012): 1756-1775.

RB2005

Brette, Romain, and Wulfram Gerstner. "Adaptive exponential integrate-and-fire model as an effective description of neuronal activity." Journal of neurophysiology 94.5 (2005): 3637-3642.

RJ2008

Jolivet, Renaud, et al. "A benchmark test for a quantitative assessment of simple neuron models." Journal of neuroscience methods 169.2 (2008): 417-424.

SS2003

Schreiber, S., et al. "A new correlation-based measure of spike timing reliability." Neurocomputing 52 (2003): 925-931.

VR2001

van Rossum, Mark CW. "A novel spike distance." Neural Computation 13.4 (2001): 751-763.

About

A neuroscience python package for the estimation and evaluation of neural models from patch clamp neural recordings, including a library of spike distance metrics..

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published