Transcript Document

A Bifurcation Theoretical Approach
to the Solving the Neural Coding Problem
June 28
Albert E. Parker
Complex Biological Systems
Department of Mathematical Sciences
Center for Computational Biology
Montana State University
Collaborators: Tomas Gedeon, Alex Dimitrov, John Miller, and Zane Aldworth
Outline
The Neural Coding Problem
A Clustering Problem
The Role of Bifurcation Theory
A new algorithm to solve the Neural Coding
Problem
The Neural Coding Problem
GOAL: To understand the neural code.
EASIER GOAL: We seek an answer to the question,
How does neural activity represent information about environmental stimuli?
“The little fly sitting in the fly’s brain trying to fly the fly”
Looking for the dictionary to the neural code …
encoding
stimulus
X
response
Y
decoding
… but the dictionary is not deterministic!
Given a stimulus, an experimenter observes many different neural responses:
X
Yi| X
i = 1, 2, 3, 4
… but the dictionary is not deterministic!
Given a stimulus, an experimenter observes many different neural responses:
X
Yi| X
i = 1, 2, 3, 4
Neural coding is stochastic!!
Similarly, neural decoding is stochastic:
Y
Xi|Y
i = 1, 2, … , 9
Probability Framework
encoder: P(Y|X)
environmental
stimuli
neural
responses
Y
X
decoder: P(X|Y)
The Neural Coding Problem:
How to determine the
encoder P(Y|X) or the decoder P(X|Y)?
Common Approaches: parametric estimations, linear methods
Difficulty: There is never enough data.
As we attempt search for an answer to the neural coding problem, we proceed in the
spirit of John Tukey:
It is better to be approximately right than exactly wrong.
One Approach: Cluster the responses
Stimuli
X
L objects {xi}
Responses
p(X,Y)
Y
Clusters
q(YN |Y)
K objects {yi}
YN
N objects {yNi}
One Approach: Cluster the responses
Stimuli
X
L objects {xi}
Responses
p(X,Y)
Y
Clusters
q(YN |Y)
K objects {yi}
YN
N objects {yNi}
• To address the insufficient data problem, one clusters the
outputs Y into clusters YN so that the information
that one can learn about X by observing YN , I(X;YN), is as
close as possible to the mutual information I(X;Y)
Two optimization problems which use this
approach
• Information Bottleneck Method (Tishby, Pereira, Bialek 1999)
min I(Y,YN) constrained by I(X;YN)  I0
q
max –I(Y,YN) +  I(X;YN)
q
• Information Distortion Method (Dimitrov and Miller 2001)
max H(YN|Y) constrained by I(X;YN)  I0
q
max H(YN|Y) +  I(X;YN)
q
An annealing algorithm
to solve
maxq(G(q)+D(q))

Let q0 be the maximizer of maxq G(q), and let 0 =0. For k  0, let (qk , k ) be
a solution to maxq G(q) +  D(q ). Iterate the following steps until
K =  max for some K.
1. Perform  -step: Let  k+1 = k + dk where dk>0
2. The initial guess for qk+1 at  k+1 is qk+1(0) = qk +  for some small
perturbation .
3. Optimization: solve maxq (G(q) +  k+1 D(q)) to get the maximizer qk+1 ,
using initial guess qk+1(0) .
Application of the annealing method to the Information Distortion problem
maxq (H(YN|Y) +  I(X;YN))
when p(X,Y) is defined by four gaussian blobs
p(X,Y)
X
52 stimuli
Y
52 responses
Stimuli
Responses
Y
q(YN |Y)
52 responses
YN
4 clusters
Evolution of the optimal clustering:
Observed Bifurcations for the Four Blob problem:
We just saw the optimal clusterings q* at some  *=  max . What do the clusterings look like for <  max ??
Application to cricket sensory data
E(X|YN): stimulus
means conditioned
on each of the classes
typical spike
patterns
optimal
quantizer
We have used bifurcation
theory in the presence of
symmetries to totally describe
how the the optimal clusterings
of the responses must evolve…
Symmetries??
class 1
class 3
q(YN|Y) : a clustering
Y
K objects {yi}
YN
N objects {yNi}
Symmetries??
class 3
class 1
q(YN|Y) : a clustering
Y
K objects {yi}
YN
N objects {yNi}
Observed Bifurcation
Structure
Observed Bifurcation
Structure
Group Structure
S4
S3
S2 S2 S2
S3
S2
S2
S3
S2
S2
1
S2 S2
S3
S2
S2
S2
Observed Bifurcation
Structure
q*
Group Structure
S4
S3
S2 S2 S2
S3
S2
S2
S3
S2
S2
S2 S2
S3
S2
S2
S2
1

Continuation techniques
provide
numerical confirmation
of the theory
Additional structure!!
Conclusions …
 We have a complete theoretical picture of how the
clusterings of the responses evolve for any problem of the
form
maxq(G(q)+D(q))
o When clustering to N classes, there are N-1 bifurcations.
o In general, there are only pitchfork and saddle-node bifurcations.
o We can determine whether pitchfork bifurcations are either
subcritical or supercritical (1st or 2nd order phase transitions)
o We know the explicit bifurcating directions
 SO WHAT?? This yields a new and improved algorithm
for solving the neural coding problem …
A numerical algorithm to solve max(G(q)+D(q))
q

Let q0 be the maximizer of maxq G(q), 0 =1 and s > 0. For k  0, let (qk , k ) be a
solution to maxq G(q) +  D(q ). Iterate the following steps until
K =  max for
some K.
   qk 

1. Perform  -step: solve  q , L (qk , k ,  k )
        q , L (qk , k ,  k )
  k
   qk 
 and select  k+1 = k + dk where
for 

   k 
dk = (s sgn(cos )) /(||qk ||2 + ||k ||2 +1)1/2.
2.
The initial guess for (qk+1,k+1) at  k+1 is
(qk+1(0),k+1 (0)) = (qk ,k) + dk ( qk, k) .
3.
Optimization: solve maxq (G(q) +  k+1 D(q)) using pseudoarclength continuation
to get the maximizer qk+1, and the vector of Lagrange multipliers k+1 using initial
guess (qk+1(0),k+1 (0)).
4.
Check for bifurcation: compare the sign of the determinant of an identical block
of each of q [G(qk) +  k D(qk)] and q [G(qk+1) +  k+1 D(qk+1)]. If a bifurcation is
detected, then set qk+1(0) = qk + d_k u where u is bifurcating direction and repeat
step 3.