Research overview

Being a theoretical neuroscientist, I study the nervous system by means of designing, analyzing and simulating mathematical models. We use models and theories to connect two levels of understanding, for example molecular properties with neuron function, or neuron properties with behavior. The term computational in computational neuroscience refers to “how the brain computes”, i.e. the articulation between neuron properties and behavior, but the computer metaphor should not be taken too seriously. You may want to read a series of blog posts I wrote on the epistemology of theoretical and computational neuroscience.

Vertebrate neurons communicate mainly by stereotypical electrical impulses called action potentials or “spikes” (see this series of posts on firing rate vs. spike timing). Thus a critical question is how neurons transform input signals into spike trains. At a general level, this is of course well known: sodium channels open when the membrane potential exceeds a threshold. But there are many subtleties. For example, the spike threshold depends on previous activity, on multiple timescales, with changes mediated by ionic channel properties (on a short timescale) and by structural changes (on a long timescale). Space also plays a critical role: I have recently shown theoretically that the axonal initiation of spikes makes sodium channels open as a discrete function of somatic voltage, effectively making the integrate-and-fire model much more realistic than previously thought (see this graphic explanation). There are also many unanswered questions, for example: how are the various ionic channels coordinated (in properties and in spatial distribution) so that spike initiation is functional and efficient? how is spike initiation modulated by activity on the long term? what is the function of the various types of channels in the axonal initial segment? For theoretical neuroscience, this is largely unexplored territory.

I am interested in how sensory systems work in ecological environments, and in particular in the perception of space, which is shared across almost all sensory modalities (including pain). Unlike lab environments, ecological environments are never simple (simple organisms also do not live in simple environments). My work starts from the view that perception relies on the identification and manipulation of models of the world, understood as relations between observables (ie, not necessarily generative models), where observables are sensory signals. I call these perceiver-oriented models “Subjective physics”. This view connects with major theories in psychology (Gestalt psychology, Gibson‘s ecological approach, O’Regan‘s sensorimotor theory), philosophy of mind (Poincaré, Merleau-Ponty) and linguistics (Lakoff).

Furthermore, I hypothesize that sensory relations are identified as temporal invariants in the sensory flow (ie relations that are satisfied over a contiguous period of time), which is most directly connected with Gibson’s notion of “invariant structure”. Physiologically, I have proposed that relations between sensory signals are reflected in the relations between the timings of spikes, i.e., in neural synchrony that is tuned to specific sensory models. I have proposed the concept of “synchrony receptive field” to describe the set of sensory signals that elicit synchronous firing in a given set of neurons, together with neural network models that can identify sensory models based on selective synchrony. I have developed this idea mostly in the context of spatial hearing and pitch perception.

In 2008, I started the Brian simulator with Dan Goodman (postdoc at the time and now lecturer in Imperial College, UK). It is a simulator for spiking neural networks written in Python. The focus is on flexibility and ease of use, which has made it a highly popular tool in neuroscience. All models are directly specified by users with their equations – there are no predefined models, which has many benefits. It is also possible to simulate multicompartemental models. The new version (2.0), which is also developed by Marcel Stimberg, relies on code generation, which makes Brian much faster. We are currently working on running it on multiple types of hardware (collaborations are welcome).