Extracting Single-Unit Spiking Activity from Extracellular Recordings
This unit focuses on how to obtain single-unit spiking activity from raw extracellular recordings — a process known as spike sorting. You’ll approach this in two ways: first, from the bottom up, using Python’s core scientific stack (NumPy, SciPy-Signal and Scikit-Learn) to detect spikes, apply principle component analysis (PCA) to the spike waveforms and cluster the extracted features to identify individual units. Then, top-down using the SpikeInterface library which provides a high-level interface for applying different spike sorting algorithms and curating the results. This dual approach enables understanding of the fundamental operations involved in spike sorting and enables you to make educated decision about different sorting parameters while also providing the tools to efficiently apply state-of-the-art spike sorting algorithms.
Tools
Sessions
Detecting Spikes in Continuous Recordings
Filter raw electrophysiological recordings, detect spikes using threshold crossing, and extract spike waveforms from multi-channel data
Feature Extraction and Waveform Clustering
Extract low-dimensional features from spike waveforms using PCA and cluster them into putative single units with Gaussian Mixture Models
Spike Sorting with SpikeInterface
Run automated spike sorting algorithms using the SpikeInterface framework
Postprocessing and Curation with SpikeInterface
Extract waveforms, compute quality metrics, curate sorting results, compare multiple sorters, and localize units on the probe