Skip to main content

Python library for automatically detectiong interictal epileptiform discharges (IEDs) by means of nonnegative matrix factorization (NMF)

Project description

automatic-spike-detection

The automatic-spike-detection package is a Python library for automatically detecting interictal epileptiform discharges (IEDs) in intracranial EEG (iEEG) recordings.

IEDs, also referred to as ”spikes”, are a characteristic of the epileptic brain that are recognizable as large transient events in the electroencephalogram of patients living with epilepsy [1]. Whereas, for clinicians, IEDs can provide valuable information about the epileptogenic zone, for researchers, they can also be a source of noise and need to be excluded, such as in [2] where Cusinato and Alnes et al. studied how the human brain processes sounds. Regardless of the context, the localization of IEDs in EEG recordings is a very time-consuming task.

This package aims to contribute to this issue by building on an algorithm previously developed by Baud et al. [3] that employs nonnegative matrix factorization (NMF) to automatically detect IEDs, an unsupervised machine-learning algorithm that produces a lower-dimensional approximation of the input.

It is important to note, that the algorithm used by this package is optimized for and was solely tested on iEEG recordings. Intracranial EEG is an invasive technique with implanted electrodes that is used for clinical monitoring, e.g. to identify the epileptogenic zone and prepare for epilepsy surgery. The primary characteristic of iEEG is that it provides high spatial and temporal resolution of the electrical activity in the brain, which makes it a valuable resource for neuroscientific research as well [4].

Please consult the automatic-spike-detection Documentation for details on the underlying concepts of the algorithm, the Installation and Usage , and the application programming interface (API)

Contributions

In addition to the dependencies in the requirements.txt file, you need to install the dependencies listed in the dev-requirements.txt file, which provides some formatting tools:

pip install requirements.txt
pip install dev-requirements.txt

References

[1] Marco de Curtis and Giuliano Avanzini. "Interictal spikes in focal epileptogenesis". Progress in Neurobiology 63, no.5 (2001): 541-567.

[2] Riccardo Cusinato, Sigurd L. Alnes, Ellen van Maren, Ida Boccalaro, Debora Ledergerber, Antoine Adamantidis, Lukas L. Imbach, Kaspar Schindler, Maxime O. Baud, and Athina Tzovara. Intrinsic neural timescales in the temporal lobe support an auditory processing hierarchy. Journal of Neuroscience, 43(20):3696–3707, 2023.

[3] Maxime O. Baud, Jonathan K. Kleen, Gopala K. Anumanchipalli, Liberty S. Hamilton, Yee-Leng Tan, Robert Knowlton, and Edward F. Chang. Unsupervised learning of spatiotemporal interictal discharges in focal epilepsy. Neurosurgery, 83(4), 2018.

[4] Elizabeth L Johnson, Julia W Y Kam, Athina Tzovara, and Robert T Knight. Insights into human cognition from intracranial eeg: A review of audition, memory, internal cognition, and causality. Journal of Neural Engineering, 17(5):051001, oct 2020.

Project details


Download files

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

Source Distribution

automatic-spike-detection-1.2.5.tar.gz (48.0 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file automatic-spike-detection-1.2.5.tar.gz.

File metadata

File hashes

Hashes for automatic-spike-detection-1.2.5.tar.gz
Algorithm Hash digest
SHA256 4c8a54a2a8195475b0c48926eb3029957857118f7779d251bc6ca633b1647cea
MD5 3a5f093538f3f8da1772c926d6e3fe57
BLAKE2b-256 fe19a3d6de4d1d5be10b828f4a911e1123c234badf7f77e0ddc05afcea49d346

See more details on using hashes here.

File details

Details for the file automatic_spike_detection-1.2.5-py3-none-any.whl.

File metadata

File hashes

Hashes for automatic_spike_detection-1.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8f51f61c0048cc0c3ad3cc074957e4a08d1422ebd0b92e79d79c95e6af5c1f39
MD5 3cea34f5c88a8861d85843fe8699609c
BLAKE2b-256 3acf94bcffa35aba74211efb9ab8bf6b7f93d60d872bef2abd010fba33bc3ce4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page