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...

Full description

Bibliographic Details
Main Authors: Jacob Huth, Timothée Masquelier, Angelo Arleo
Format: Article
Language:English
Published: Frontiers Media S.A. 2018-03-01
Series:Frontiers in Neuroinformatics
Subjects:
GPU
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