Skip to main content

Single-Unit Electrode DEcoding

Project description

suede

Single Unit Electrode DEcoders

This package comprises three single-unit electrode related modules. The first, is a single-unit electrode synthetic data generator where you can set neurons’ preferred directions, base firing rate, trial length times, etc. This synthetic data can then be supplied as input to the following two modules, both of which are decoders. The first decoder (second module) is a bayesian decoder, and the second decoder (third module) is an optimal linear estimator. The bayesian decoder can be run solely on the synthetic single-unit electrode data generated from the first module, but the optimal linear estimator in addition to single-unit electrode spiking data requires cursor position data, which is not provided. This package is therefore best suited for offline analysis of existing single-unit electrode datasets.


These decoders are designed for and will work best for center-out reach tasks with one unique target per reach direction. In the following images each red dot signifies a reach target:

4-, 8-, and 16-Target Reach Tasks


1) Synthetic Data Generation: /synthetic_data

Example script available: synthetic_data_script.py
Generates single-unit electrode spike data for a set of neurons with self-specified preferred directions. The result can be visualized with the following set of tools located in /visualization_tools:

  • Histogram of Average Spike Counts Over Time + Average Firing Rates by Direction:

4-Target Reach Task

8-Target Reach Task

16-Target Reach Task


2) Bayesian Decoder: /bayesian

Example script available: bayesian_decoder_script.py
In the following plots, T-int = T integration or integration time, represents the time window of data that is being used by the decoder for training and testing on a per trial basis.

This module uses a bayesian classifier to predict the target direction given the spike activity of neurons in the given training data.

  • Accuracy Plots:

4-, 8-, and 16-Target Reach Tasks


3) Optimal Linear Estimator: /ole

No example script currently available
This module uses spike activity in conjunction with cursor position to train an optimal linear estimator. The trained model can then predict the intended cursor position movement at a specified time.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for suede, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size suede-0.1.1-py3-none-any.whl (4.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size suede-0.1.1.tar.gz (4.0 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page