Neuron: Computational

Download Report

Transcript Neuron: Computational

A Geodesic Method for Spike
Train Distances
Neko Fisher
Nathan VanderKraats
Neuron: The Device
http://training.seer.cancer.gov/module_bbt/unit02_sec04_b_cells.html
• Input: dendrites
• Output: axon
• Dendrite/axon connection =
synapse
Neuron: The Device
•Synapse
•Dendrites (Input)
•Cell Body
•Axon (Output)
Output
Input
• How is information transmitted?
– Spikes
– Soma’s Membrane Potential (V)
– Weighted sum
– Spike effect decays over time
Threshold
Time
Slide complements of Arunava Banerjee
Systems of Spiking Neurons
Neuron 1:
Neuron 2:
Neuron 3:
time
• Spike effect decays over time
– Bounded window
• Discretization
Systems of Spiking Neurons
• Spike train windows = points in Phase Space
Neuron 1:
Neuron 2:
Neuron 3:
time
• Dynamical System
– Each point has a well-defined point following it
Phase Space Overview
• Extremely high dimensionality
– For systems of 1000 neurons and reasonable
simulation parameters, we have up to
100,000 dimensions!!
• Sensitive to Initial Conditions
– Chaotic attractors
Phase Space Overview
Seizure
Quiescence
• Degenerate States
– Quiescent State
– Seizure State
Phase Space Overview
Stable States
Quiescence
• Stable States
– Zones of attraction
Seizure
Phase Space Overview
Stable States
Seizure
Quiescence
• Problem: Given a point (spike train), how can we
tell what state we’re in?
– Need Distance Metric between pts in our space
Distance Metrics


Spike Count
Victor/Aranov Multi-neuronal edit distance


Leader in the field
Our Work


Neuronal Edit Distance
Distance Metric using a Geodesic Path
Spike Count



Count the number of spikes
Can tell between quiescent, stable and
seizure state spike trains
Hard to differentiate between spike trains
from the same state(Quiescent, Stable and
Seizure)
Spike Count
n=0
n = 16
n = 71
n = 17
Edit Distance





Standard for calculating distance metrics
Derived from Edit Distance for genetic
sequence allignment
Considers number of spikes
Considers temporal locality of spikes
Uses standard operations on spike trains to
make them equivalent


Insert/delete
Shift
Victor/Aranov Multi-neuronal Edit
Distance

Insert/Delete


Shifting spikes within a neuron


Cost of 1
Cost of q |Δt|
Shifting spikes between neurons

Cost of k
Victor/Aranov: Delete/Insert
Cost: 1
Insert
Delete
Victor/Aranov: Shifting spikes within
neurons
Δt
Cost: q|Δt|
Shift within Neurons
Victor/Aranov: Shifting spikes within
neurons
• D = q |Δt|
• q determines sensitivity to spike count or
spike timing
– q = 0  spike count metric
– Increasing q  sensitivity to spike timing
– Two spikes are comparable if within 2/q sec.
• q|Δt|  2 (Cost of inserting and deleting)
Victor/Aranov: Shifting spikes
between neurons
Cost: k
Shift Between Neurons
Not biologically correct
Victor/Aranov: Shifting spikes
between neurons
• d=k
• k = 0  neuron producing spike is
irrelevant
• k > 2  spikes can’t be switched between
neurons (cost would be greater than
inserting and deleting)
Problems with Victor/Aranov Edit
Distance
•
•
•
•
Allows switching spikes between neurons
Insert/delete cost are constant
Edit Distances are Euclidean
Needs Manifold
 Euclidean distance cuts through manifold
 Define local Euclidean distance
 Move along manifold
Our Work
• Respect the Phase Space
– Riemannian Manifold
– Geodesic for distances
• Better local metric
– Biologically-motivated edit distance (Neuronal Edit
Distance)
– Modification for geodesic (Distance Metric for
Geodesic Paths)
• Testing: simulations
NED Operations
• Consider operations within each neuron independently
– Total Distance is sum over all neurons
• Which situation is better?
– 6 spikes moving 1 timestep each
– 1 spike moving 6 timesteps
• Reward small distances for individual spikes
– Cost of shifting a spike is (Δt)2
NED Operations
•
Which is better?
– Extra spike in the middle of the time window
– Extra spike in the beginning of the time window
•
•
Potential spikes just off the window edge!
Insert a spike by shifting a spike from the beginning of the window
– Cost: (t-(-1))2
•
Delete a spike by shifting spikes to the end of the window
– Cost: (t-WINDOW_SIZE)2
NED Equation
• Basically, take minimum of all possible matchups:
…-1
-1
-1
2
5
15
20
20
20 …
…-1
-1
-1
5
9 12 20 20
20
20
20 …
-1
-1
-1
2
5
20
20
20
9 12 20 20 20 20 20 20
20
20
-1
5
20
20
-1
-1
9
12
5
7
7
9
9
15
9 12 20 20 20 20 20
…
-1 -1 -1 -1 -1 -1 5
NED Equation
• Given 2 spike trains (points) x, y, with n neurons, window size w
Let xi denote the ith neuron of x
Let S(xi) denote the number of spikes in xi
Let f(xi,p,q) = (-1)p.xi.(w)q or the concatenation of p spikes at time -1 to the
beginning of xi and the concatenation of q spikes at time w to the end
Let fk(.) denote the kth spike time, in order, of the above
NED[ x || y ] 
n S( xi ) S( yi )
 min
i 1
j 0
 f ( x , j, S( x )  S( y )  j )  f ( y , S( x ), S( x ))2 
 k i

i
i
k
i
i
i
k

Geodesic
• Euclidean metric only good as a local approximation
• Globally, need to respect the phase space
• System dynamics come from
points advancing in time
• Include small time changes
locally
• Define small Euclidean distances
from any of these “close in time”
points
http://www.enm.bris.ac.uk/staff/hinke/fourD/pix/nx1x2p2.gif
• Do global distances recursively
Geodesic
• New Local Distance (DMGP)
– Distance Metric for Geodesic Paths
Given a point x(t):
• Next point in time should have
very low distance
– Compute x(t+1)
– DMGP[x(t) || x(t+1] = 0
http://www.enm.bris.ac.uk/staff/hinke/fourD/pix/nx1x2p2.gif
• For symmetry, define previous
time similarly
– Compute all possibilities for
x(t-1)
– DMGP[xi(t-1) || x(t)] = 0 i
Geodesic Initialization
• Geodesic algorithm must be given starting path
with a set number of timesteps
• How to find an initial path?
1,000,000
• Our Idea:
– Trace the NED
y
x
615,000
– Subdivide
recursively to
create a path of
arbitrary length
385,000
y
x
295,000
x
320,000
170,000
215,000
y
Geodesic Initialization
295,000
x
170,000
320,000
x1
215,000
y
• How to subdivide a given interval between x and y?
– Randomly select individual spikes from y and move them toward x,
using the minimum distance as defined by NED[x||y], to create a new
point x1
– Continue until NED[x||x1] is roughly half NED[x||y].
– Repeat until all intervals are sufficiently small.
– Guarantees smooth transitions from one point to next
Geodesic Algorithm
• Initialize
• For each point x(t) along geodesic trajectory:
– For some fixed NED distance , consider local
neighborhood as all points x’ where
{NED(x(t)||x’) < } U {NED(x(t+1)||x’) < } U {NED(x(t-1)||x’) < }
• Repeat until total distance stops decreasing
Testing
• K-means clustering
– Sample points in
different attractors
• Seizure versus stable
states
• Rate-differentiable
stable states
– Sample points from
same attractor
• Other ideas?
The End
Dynamical Systems Overview
• Fixed-point attractor
y=½x
f(x) = 2
Fixed point: x = 0
f(x) = 1
f(x) = 0.5
f(x) = 0.25
X=1
X=2
X=4
X = 0.5
Return
Dynamical Systems Overview
• Periodic attractor
– (aka Limit Cycle)
• Online example (Univ of Delaware)
– http://gorilla.us.udel.edu/plotapplet/examples/
LimitCycle/sample.html
Return
Dynamical Systems Overview
• Chaotic Attractor
F(x)=0.8
F(x)=0.8
F(x)=0.6
F(x)=0.4
F(x)=0.3
x=0
x=0.4
x=0.3
x=0.8
x=0.6 x=0.85x=1
F(x)=0.85
F(x) =
2x
2(1-x)
½x
-½x
if 0 ≤ x ≤ ½
if ½ ≤ x ≤ 1
if x ≥ 1
if x ≤ 0
x=1.7
• F(x) attracts to the interval [0,1], then settles into any of an infinite
number of periodic orbits
• Sensitive to initial conditions
– Minor change causes different orbit
Return
Example of stable spike train (1000 neurons for 800 ms)