Home
Mini Project 3: spike detection and spike sorting
Background information
An extracellular electrode might record from two or three up to about
10 nearby neurons during a trial. Spike waveforms recorded from different
neurons may overlap in time and space, so some recorded waveforms will be difficult
to associate with their source neuron. This is known as the spike sorting problem.
The spike sorting pipeline typically proceeds in four stages:
data filtering
threshold spike detection
feature extraction
clustering
Image: Einevoll et al. (2012),
Towards reliable spike-train recordings from thousands of neurons with multielectrodes,
Current Opinion in Neurobiology
Also see: spike.g-node.org
Spike sorting software that may work well for Neuropixels data:
Kilosort wiki
Kilosort 1
Kilosort 2
JRCLUST (Janelia Rocket Clust)
SpyKING CIRCUS at yger.net
SpyKING CIRCUS docs
SpikeX spike sorting software
I implemented SpikeX with Matlab to visualise ephys data and test
various methods for spike sorting. Data that includes intracellular
recording ("ground truth") was used to validate SpikeX.
Henze, et al. Simultaneous intracellular and extracellular
recordings from hippocampus region CA1 of anesthetized rats (2009).
CRCNS.org. http://dx.doi.org/10.6080/K02Z13FP
The data consists of simultaneous intracellular and extracellular
recordings in the hippocampus of anesthetized rats. Experimental
procedures and major results are described in:
Henze et al, J. Neurophysiology 84, 390-400 (2000).
Harris et al, J. Neurophysiology 84, 401-414 (2000).
Data source: Buszaki Lab
Data details: about the hc-1 data set at CRCNS
Data may be downloaded from: CRCNS download
Data was recorded by tertrodes or silicon probes.
For tetrodes there are 4 extracellular channels.
For silicon probes (2 shanks by 6 channels each) see the IntraExtra.xls file.
The order is indicated for one shank, remaining channels form the other shank.
[http://crcns.org/data-sets/hc/hc-1/about]
Preliminary test results.
Neural networks (NNs) have been used successfully for image classification and
speech recognition. However, they are also known for wildly incorrect classification
of some inputs. This means that NNs are not well matched to problems where the cost of
classification errors is high, or where classifications must be explained (e.g. why
was the input classified as an Ostrich?). And they are not well suited for detecting
when an input does not belong to any known class ... this is a problem because
NNs work by detecting similarities between training examples and new data, not differences.
So, although NNs can appear to work well on some tasks, deceptively well in some cases,
they might be the wrong method for spike detection. In the slightly broader context of
spike sorting, where might NNs be useful?
Test results.