Skip to content

Application of the Neyman-Scott point process model to identify memory-representing polychronous neuronal groups (PNGs)

License

Notifications You must be signed in to change notification settings

WorldsEndDunce/PP-Almost-Seq

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PP-Almost-Seq

This forked repository uses a modified PP-Seq algorithm (point process model of neural sequences) dubbed "PP-Almost-Seq" to detect repeated firings of polychronous neuronal groups (PNGs) in data and detect the next-best-candidate sequences. PNGs are collections of neurons that fire with a specific order and delays and are theorized to store memories in the brain. Currently, the code focuses on stress-testing the algorithm on multiple instances of planted sequences. Research endeavors are documented here. To learn more about my research, you can also peruse the slides at the top of the documentation or check out this poster:

CURIS Poster

All major PNG-related files are in the folder labeled izhikevich_pngs. One can use the theDataMachine Python file to construct a network of neurons using the Brian 2 simulator and export the spike data into a suitable format for PP-(Almost-)Seq. The png and autoPng files use the PP-Almost-Seq algorithm to cluster spike data into sequences. autoPng allows the user to analyze multiple spike data files in one runthrough, and both save the resulting graph as a png (the image file format) in the graphs folder. For information on how to use autoPng and png, check out the songbird demo folder provided by the original authors.

The prototype PP-Almost-Seq code can be found in the gibbs.jl file. The author plans to clean up and sort the currently extremely long dictionary output. In the theDataMachine file, there are multiple functions to trigger sequences in data with various instances and delays. There is also a section of code that allows one to embed PNGs in the network via network connectivity and weights.

image

From the original readme:

PP-Seq

This repo implements the point process model of neural sequences (PP-Seq) described in:

Alex H. Williams ☕, Anthony Degleris 🌄, Yixin Wang, Scott W. Linderman 📢.
Point process models for sequence detection in high-dimensional neural spike trains.
Neural Information Processing Systems 2020, Vancouver, CA.

This model aims to identify sequential firing patterns in neural spike trains in an unsupervised manner. For example, consider the spike train below(1):

image

By eye, we see no obvious structure in these data. However, by re-ordering the neurons according to PP-Seq's inferred sequences, we obtain:

image

Further, the model provides (probabilistic) assignment labels to each spike. In this case, we fit a model with two types of sequences. Below we use the model to color each spike as red (sequence 1), blue (sequence 2), or black (non-sequence background spike):

image

The model is fully probabilistic and Bayesian, so there are many other nice summary statistics and plots that we can make. See our paper for full details.

Footnote. (1) These data are deconvolved spikes from a calcium imaging recording from zebra finch HVC. These data were published in Mackevicius*, Bahle*, et al. (2019) and are freely available online at https://github.com/FeeLab/seqNMF.

About

Application of the Neyman-Scott point process model to identify memory-representing polychronous neuronal groups (PNGs)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published