Python for information theoretic analysis of neural data.

Python for information theoretic analysis of neural data.
复制标题

DOI:
10.3389/neuro.11.004.2009
复制
发表时间:
2009-01-01
影响因子:
3.5
通讯作者:
Panzeri, Stefano
Panzeri, Stefano
中科院分区:
医学3区
文献类型:
--
作者:
Ince, Robin A A;Petersen, Rasmus S;Panzeri, Stefano

文献摘要

被引文献

相似文献

信息论是在噪声存在下进行通信的数学理论,在现代定量神经科学中发挥着越来越重要的作用。它使得将神经系统视为随机通信通道并获得对其感觉编码功能的有价值的定量见解成为可能。这些技术提供了神经元如何编码刺激的方式,这是独立于任何特定的假设上的神经元响应的哪一部分是信号,哪一个是噪声的结果,它们可以有效地应用于高度非线性系统,传统的技术失败。在这篇文章中,我们描述了我们使用Python进行信息论分析的工作和经验。我们概述了一些算法,统计和数值计算的挑战,从神经数据的信息理论量。特别是,我们认为所产生的问题,从有限的采样偏差和计算的最大熵分布的存在下的约束表示的影响,在系统中的相互作用的不同顺序。我们解释了如何以及为什么使用Python使我们能够显着提高信息理论算法的速度和适用范围,允许分析以大量变量为特征的数据集。我们还讨论了Python的使用如何促进与协作数据库和集中计算资源的集成。
Information theory, the mathematical theory of communication in the presence of noise, is playing an increasingly important role in modern quantitative neuroscience. It makes it possible to treat neural systems as stochastic communication channels and gain valuable, quantitative insights into their sensory coding function. These techniques provide results on how neurons encode stimuli in a way which is independent of any specific assumptions on which part of the neuronal response is signal and which is noise, and they can be usefully applied even to highly non-linear systems where traditional techniques fail. In this article, we describe our work and experiences using Python for information theoretic analysis. We outline some of the algorithmic, statistical and numerical challenges in the computation of information theoretic quantities from neural data. In particular, we consider the problems arising from limited sampling bias and from calculation of maximum entropy distributions in the presence of constraints representing the effects of different orders of interaction in the system. We explain how and why using Python has allowed us to significantly improve the speed and domain of applicability of the information theoretic algorithms, allowing analysis of data sets characterized by larger numbers of variables. We also discuss how our use of Python is facilitating integration with collaborative databases and centralised computational resources.