Full chain toolkit for EEG signal decoding
Project description
NeuroDecKit: A Comprehensive MI-EEG Decoding Toolbox
NeuroDecKit is a modular and extensible MATLAB toolbox for Motor Imagery Electroencephalography (MI-EEG) decoding, featuring comprehensive algorithm integration and flexible pipeline construction capabilities.
🚀 Key Features
Comprehensive Algorithm Ecosystem
NeuroDecKit systematically integrates algorithms across nine functional components:
| Module | Methods Count | Representative Algorithms |
|---|---|---|
| Spectral Filtering | 2 | Butterworth, Chebyshev |
| Channel Selection | 3 | Correlation-based, CSP weights, Riemannian distance |
| Spatial Filtering | 3 | CSP, RSF, Laplace |
| Data Alignment | 4 | EA, RA, RPA, None |
| Feature Extraction | 8 | CSP, CSSP, RCSP, DSP, MDM, FgMDM, TSM, CTSSP |
| Feature Selection | 6 | ANOVA, MIC, PCA, LASSO, RFE, None |
| Feature Alignment | 5 | Z-score, MMD, MEKT, MEFA, None |
| Classification | 7 | LDA, SVM, LR, KNN, DTC, GNB, MLP |
| End-to-End Models | 5 | SBLEST, RKNN, RKSVM, TRCA, DCPM |
| Deep Learning | 11 | sCNN, dCNN, FBCNet, EEGNet, Tensor-CSPNet, Graph-CSPNet, LMDA-Net, EEGConformer, LightConvNet, IFNet, MSVTNet |
| Ensemble Learning | 3 | Voting, Boosting, Stacking |
Advanced Transfer Learning Framework
NeuroDecKit features a sophisticated transfer learning system with:
- 6,000+ configurable transfer learning pipelines
- Multi-level domain adaptation: Data-level and feature-level alignment
- Comprehensive transfer scenarios: Cross-session, Cross-subject & Cross-dataset
Flexible Pipeline Construction
- 300+ non-transfer learning pipeline configurations
- Modular design for easy algorithm combination
- Extensible architecture for custom method integration
📊 Experimental Results
Experimental Protocols
NeuroDecKit supports multiple experimental paradigms to evaluate algorithm generalization:
🔄 Cross-Session Validation
- Training: All data from first experimental session
- Testing: All data from second experimental session
- Objective: Evaluate temporal stability and session-to-session transfer
👥 Cross-Subject Validation (LOSO)
- Training: All subjects except one (source domain)
- Testing: Left-out subject (target domain)
- Objective: Evaluate intersubject generalization and domain adaptation
🧬 Cross-Dataset Validation
- Training: All data from one dataset (source domain)
- Testing: All data from another dataset (target domain)
- Objective: Evaluate cross-dataset generalization and domain adaptation
Benchmark Performance
Detailed results available in:
BNCI2014-001 (BCI Competition IV-2a)
BNCI2015_001
Pan2023 Dataset
Shin2017A Dataset
🤝 Related Research Resources
We express our gratitude to the open-source community, which facilitates the broader dissemination of research by other researchers and ourselves. The coding style in this repository is relatively rough. We welcome anyone to refactor it to make it more efficient. Our model codebase is largely based on the following repositories:
-
A widely used machine learning library in Python that provides simple and efficient tools for data mining and data analysis.
-
An open science project aimed at establishing a comprehensive benchmark for BCI algorithms using widely available EEG datasets.
-
An open-source non-invasive brain-computer interface platform.
-
A Python library focused on Riemannian geometry methods for EEG signal classification. pyRiemann provides a suite of tools for processing and classifying EEG signals in Riemannian space.
-
Contains several deep learning models such as EEGNet, ShallowConvNet (sCNN), and DeepConvNet (dCNN), designed specifically for EEG signal classification. Braindecode aims to provide an easy-to-use deep learning toolbox.
-
provides several deep learning models such as EEGConformer, LightConvNet, and MSVTNet for EEG signal classification.
📄 License
This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file neurodeckit-0.2.0.tar.gz.
File metadata
- Download URL: neurodeckit-0.2.0.tar.gz
- Upload date:
- Size: 169.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26c3062ef8ff221046e5eba463d61e959465db5fa5ecb2c80400a63dba489b98
|
|
| MD5 |
92b4a5dd1bc05001f6cfba3555f25292
|
|
| BLAKE2b-256 |
914fabcc42ca4647c78559448a3de5db77a1b5ce155f5fd1de5749740d7df683
|
Provenance
The following attestation bundles were made for neurodeckit-0.2.0.tar.gz:
Publisher:
publish.yml on PLC-TJU/NeuroDecKit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
neurodeckit-0.2.0.tar.gz -
Subject digest:
26c3062ef8ff221046e5eba463d61e959465db5fa5ecb2c80400a63dba489b98 - Sigstore transparency entry: 712619910
- Sigstore integration time:
-
Permalink:
PLC-TJU/NeuroDecKit@71662e8ee33c0d53104bf69f6937671351d40313 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/PLC-TJU
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71662e8ee33c0d53104bf69f6937671351d40313 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file neurodeckit-0.2.0-py3-none-any.whl.
File metadata
- Download URL: neurodeckit-0.2.0-py3-none-any.whl
- Upload date:
- Size: 210.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a35a2fceed657fe1f2eddfbdad3731bab40bf11e050c4ddf0b918451dfa0fdae
|
|
| MD5 |
416d3f73fe30f57676db9c5432e99fb2
|
|
| BLAKE2b-256 |
3940e8959ea94207a205f75d22b6321e401aa43190b2321e3c8e723fc9565586
|
Provenance
The following attestation bundles were made for neurodeckit-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on PLC-TJU/NeuroDecKit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
neurodeckit-0.2.0-py3-none-any.whl -
Subject digest:
a35a2fceed657fe1f2eddfbdad3731bab40bf11e050c4ddf0b918451dfa0fdae - Sigstore transparency entry: 712619913
- Sigstore integration time:
-
Permalink:
PLC-TJU/NeuroDecKit@71662e8ee33c0d53104bf69f6937671351d40313 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/PLC-TJU
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71662e8ee33c0d53104bf69f6937671351d40313 -
Trigger Event:
workflow_dispatch
-
Statement type: