Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing
We developed Convis, a Python simulation toolbox for large scale neural populations which offers arbitrary receptive fields by 3D convolutions executed on a graphics card. The resulting software proves to be flexible and easily extensible in Python, while building on the PyTorch library (The Pytorch...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Frontiers Media S.A.
2018-03-01
|
Series: | Frontiers in Neuroinformatics |
Subjects: | |
Online Access: | http://journal.frontiersin.org/article/10.3389/fninf.2018.00009/full |
id |
doaj-a52439b793274d3794c17cc3ba3ffea3 |
---|---|
record_format |
Article |
spelling |
doaj-a52439b793274d3794c17cc3ba3ffea32020-11-24T23:06:13ZengFrontiers Media S.A.Frontiers in Neuroinformatics1662-51962018-03-011210.3389/fninf.2018.00009295067Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual ProcessingJacob Huth0Timothée Masquelier1Angelo Arleo2Centre National de la Recherche Scientifique, INSERM, Sorbonne Universités, UPMC Univ Paris 06, Paris, FranceCERCO UMR5549, Centre National de la Recherche Scientifique, University Toulouse 3, Toulouse, FranceCentre National de la Recherche Scientifique, INSERM, Sorbonne Universités, UPMC Univ Paris 06, Paris, FranceWe developed Convis, a Python simulation toolbox for large scale neural populations which offers arbitrary receptive fields by 3D convolutions executed on a graphics card. The resulting software proves to be flexible and easily extensible in Python, while building on the PyTorch library (The Pytorch Project, 2017), which was previously used successfully in deep learning applications, for just-in-time optimization and compilation of the model onto CPU or GPU architectures. An alternative implementation based on Theano (Theano Development Team, 2016) is also available, although not fully supported. Through automatic differentiation, any parameter of a specified model can be optimized to approach a desired output which is a significant improvement over e.g., Monte Carlo or particle optimizations without gradients. We show that a number of models including even complex non-linearities such as contrast gain control and spiking mechanisms can be implemented easily. We show in this paper that we can in particular recreate the simulation results of a popular retina simulation software VirtualRetina (Wohrer and Kornprobst, 2009), with the added benefit of providing (1) arbitrary linear filters instead of the product of Gaussian and exponential filters and (2) optimization routines utilizing the gradients of the model. We demonstrate the utility of 3d convolution filters with a simple direction selective filter. Also we show that it is possible to optimize the input for a certain goal, rather than the parameters, which can aid the design of experiments as well as closed-loop online stimulus generation. Yet, Convis is more than a retina simulator. For instance it can also predict the response of V1 orientation selective cells. Convis is open source under the GPL-3.0 license and available from https://github.com/jahuth/convis/ with documentation at https://jahuth.github.io/convis/.http://journal.frontiersin.org/article/10.3389/fninf.2018.00009/fullvision model toolboxretina modelprimary visual cortex modelPythonGPUTheano |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Jacob Huth Timothée Masquelier Angelo Arleo |
spellingShingle |
Jacob Huth Timothée Masquelier Angelo Arleo Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing Frontiers in Neuroinformatics vision model toolbox retina model primary visual cortex model Python GPU Theano |
author_facet |
Jacob Huth Timothée Masquelier Angelo Arleo |
author_sort |
Jacob Huth |
title |
Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing |
title_short |
Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing |
title_full |
Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing |
title_fullStr |
Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing |
title_full_unstemmed |
Convis: A Toolbox to Fit and Simulate Filter-Based Models of Early Visual Processing |
title_sort |
convis: a toolbox to fit and simulate filter-based models of early visual processing |
publisher |
Frontiers Media S.A. |
series |
Frontiers in Neuroinformatics |
issn |
1662-5196 |
publishDate |
2018-03-01 |
description |
We developed Convis, a Python simulation toolbox for large scale neural populations which offers arbitrary receptive fields by 3D convolutions executed on a graphics card. The resulting software proves to be flexible and easily extensible in Python, while building on the PyTorch library (The Pytorch Project, 2017), which was previously used successfully in deep learning applications, for just-in-time optimization and compilation of the model onto CPU or GPU architectures. An alternative implementation based on Theano (Theano Development Team, 2016) is also available, although not fully supported. Through automatic differentiation, any parameter of a specified model can be optimized to approach a desired output which is a significant improvement over e.g., Monte Carlo or particle optimizations without gradients. We show that a number of models including even complex non-linearities such as contrast gain control and spiking mechanisms can be implemented easily. We show in this paper that we can in particular recreate the simulation results of a popular retina simulation software VirtualRetina (Wohrer and Kornprobst, 2009), with the added benefit of providing (1) arbitrary linear filters instead of the product of Gaussian and exponential filters and (2) optimization routines utilizing the gradients of the model. We demonstrate the utility of 3d convolution filters with a simple direction selective filter. Also we show that it is possible to optimize the input for a certain goal, rather than the parameters, which can aid the design of experiments as well as closed-loop online stimulus generation. Yet, Convis is more than a retina simulator. For instance it can also predict the response of V1 orientation selective cells. Convis is open source under the GPL-3.0 license and available from https://github.com/jahuth/convis/ with documentation at https://jahuth.github.io/convis/. |
topic |
vision model toolbox retina model primary visual cortex model Python GPU Theano |
url |
http://journal.frontiersin.org/article/10.3389/fninf.2018.00009/full |
work_keys_str_mv |
AT jacobhuth convisatoolboxtofitandsimulatefilterbasedmodelsofearlyvisualprocessing AT timotheemasquelier convisatoolboxtofitandsimulatefilterbasedmodelsofearlyvisualprocessing AT angeloarleo convisatoolboxtofitandsimulatefilterbasedmodelsofearlyvisualprocessing |
_version_ |
1725623569835098112 |