Polychronization: Computation With Spikes
news from the future:
Eugene M. Izhikevich. Polychronization: Computation with Spikes. Neural Computation, Vol. 18, No. 2. (February 2006), pp. 245-282.
This readable, highly recommended paper is about a concept that Izhikevich calls “polychronization”. When a bunch of neurons tend to fire at the same time, you say that group is “synchronized”. But what do you call it when a group of neurons tends to participate in a consistent spatiotemporal firing pattern? Izhikevich would say that such a group of neurons is “polychronized”. Note that synchronization is just a special case of polychronization.
For example, maybe you notice that you often observe the sequence {neuron A fires, then 10ms later neuron B fires, then 14 ms later neuron C fires} in a network. These neurons are not synchronized (they are firing at different times), and the timing of the start of the pattern may or may not be timelocked to anything else (stimulus onset, gamma rhythm, etc), but what is important is that they are firing with a consistent pattern of timing within themselves.
(One complication is that the pattern may not repeat exactly; in the above example, suppose neuron B fails to fire 20% of the time. Just as we say that 3 neurons are mostly synchronized even if one of the neurons fails to fire with the others every single time, we will say that a group is polychronized even if the pattern is inexact [1])
The paper proposes a mechanism which could cause these patterns, and also a mechanism for other neurons to detect them. Both mechanisms are based on axonal conduction delay. As a warm-up, consider how we could get synchronization. Suppose that neurons A, B, and C all synapse onto both neuron D and neuron E, and that the axonal conduction delay is constant (say, 5ms). Now suppose that neurons A, B, and C all fire at the same time. If the synaptic weights are sufficently strong, this will cause D and E to fire at the same time. So, we have synchronization between D and E.
Next, suppose that there are longer delays between A,B,C and neuron E than between A,B,C, and D; it still takes 5ms for a spike to get from A,B, or C to D, but that now it takes 10ms for a spike to get from A,B, or C to E. Now if A,B, and C fire at the same time, it causes a pattern: first D fires, then E fires 5 ms later. This is how axonal conduction delays can cause these patterns.
Now, detection. In the previous two examples, D and E acted as synchrony detectors; they “detected” when A, B, and C fired together. Now what if we add 3ms to the time it takes for a spike to get from neuron C to either D or E? Here are all our axonal conduction delays now:
A->D: 5
A->E: 10
B->D: 5
B->E: 10
C->D: 8
C->E: 13
Now how should A,B,C fire in order to excite D and E? Well, C needs to fire 3ms before A and B if we want D and E to receive 3 spikes at once. So, now D and E are detecting not synchrony, but rather polychrony; they are detecting the pattern {C fires; then 3 ms later, A and B fire}.
Furthermore, D and E’s response to their pattern is not a synchronized burst, but rather it is a different firing pattern; {D fires; then 5 ms later, E fires}.
The first contribution of this paper is in providing us with a language to describe this sort of computational system. In the above example, we might notice that following pattern recurring in network activity: {C fires; then 3ms later, A and B fire; then 5ms later, D fires; then 5ms later, E fires}. The neurons involved in this pattern are termed a polychronous group [1] . Note that a single neuron might participate in multiple polychronous groups; for instance, if the above example is part of a larger network, perhaps there is another firing pattern involving neuron F, G, and C.
The second contribution of this paper is providing a simple 1000-neuron model which exhibits this sort of behavior [2]. The model itself is one page of Matlab code, and is based on the spiking neuron model in (Izhikevich, 2003). The model uses STDP plasticity to update synaptic weights as the model runs, and STDP is key to the formation of the polychronous groups [3].
The third contribution is the analysis of this model. The model displays different network states including slow and fast (”delta” and “gamma”) rhythms. The emergence of polychronous groups is robust to changes in some of the model parameters. Polychronous groups appear and disappear and change over time. Application of an external stimulus can cause a “response” consisting of the probabilistic activation of a certain subset of polychronous groups.
The most important result of the paper in the view of the authors is that the number of polychronous groups exceeds the number of neurons in the network (remember, each neuron may be part of multiple groups). This is important because if the real “logic elements” in the computation are the polychronous groups, not the individual neurons, then the memory capacity or computing capacity of the network may be larger than otherwise expected.
The forth contribution is an interesting discussion of various aspects of how the brain might work if its computation is indeed based on polychronous groups.
FOOTNOTES
[1] Actually, technically, Izhikevich defines a polychronous group based whether the group of neurons has the POTENTIAL to fire in such a pattern, based upon its anatomical connectivity. So, technically, “polychronous group” is an anatomical property, not a functional one.
[2] Although I guess Izhikevich has published similar models before so you might say that “contribution” belongs to his previous papers. Whatever.
[3] Which is analyzed further in (Izhikevich, 2004). Although I don’t think Izhikevich has conclusively shown that STDP is the ONLY kind of plasticity that could cause this.
January 5th, 2006 at 7:58 pm
Thanks to Chris Chatham’s great weblog Developing Intelligence for pointing me to this article.
BTW, I know that the phrase “STDP plasticity” sounds silly if you expand the acronym — but that’s what happens with acronyms, go figure.
January 6th, 2006 at 3:02 pm
BTW, a friend pointed out to me that Izhikevich’s STDP rule (figure 4) is an approximation that is only correct for “isolated” spikes. When spiking frequency is more than 20hz, this is not the sort of plasticity that actually happens. So, this is one way in which we know that Izhikevich’s simulations will not accord with reality.
April 14th, 2006 at 8:45 am
The idea of polychronous groups is fascinating. At TCU we had Izhikevich come
and give two talks on the subject a couple of weeks ago. Very interesting.
However I don’t believe plasticity is a requirement for the development of
these groups. For my own algorithm on this, see my paper at
http://mysite.verizon.net/wmaier/articles.html
Polychronous groups arise naturally in networks with delays. The relation
of STDP or any learning scheme to these groups is not clear.
November 8th, 2006 at 11:12 am
Bill, unfortunatly your link to article “An Algorithm for the Calculation of Polychronous Groups”
is dead. Would you fix it please? Thanx in ad!