EEGSimpleNet
A simple interpretable classification neural network for EEG data with toolbox for its weights interpretation
Install / Use
/learn @ivsemenkov/EEGSimpleNetREADME
EEGSimpleNet
<div align="center"> <img src="images/architecture_schema.png" alt="EEGSimpleNet Architecture"> <p><em>Architecture of EEGSimpleNet showing the spatio-temporal block, low-pass filter, and output layers. Taken from Artur Petrosyan et al. ecoding and interpreting cortical signals with a compact convolutional neural network. 2021 J. Neural Eng. 18 026019.</em></p> </div>EEGSimpleNet is a simple compact interpretable convolutional neural network architecture presented in Artur Petrosyan et al. ecoding and interpreting cortical signals with a compact convolutional neural network. 2021 J. Neural Eng. 18 026019. This repository provides an implementation of this architecture, code for weights interpretation and a demonstration notebook.
<div align="center"> <img src="images/patterns.png" alt="Spatial and Temporal Patterns"> <p><em>Figure 2: Visualization of learned spatial patterns (topographies) and temporal patterns from the trained model. Taken from Artur Petrosyan et al. ecoding and interpreting cortical signals with a compact convolutional neural network. 2021 J. Neural Eng. 18 026019.</em></p> </div>Repository structue
.
├── images/ # Images for README
├── architecture.py # Module with EEGSimpleNet architecture and its building blocks
├── plot_patterns.py # Module with helper functions that plot patterns
├── demo.ipynb # Demonstration notebook with training and interpretation
├── requirements.txt # Main Python dependencies
├── requirements_demo.txt # Additional Python dependencies to run demo.ipynb
└── README.md # Project documentation
Installation
-
Clone the repository:
git clone https://github.com/ivsemenkov/EEGSimpleNet.git cd EEGSimpleNet -
Create conda environment and activate it
conda create --name EEGSimpleNet python=3.11 conda activate EEGSimpleNet -
Install main dependencies:
pip install -r requirements.txt -
(Optional) If you want to run demo.ipynb also install additional dependencies:
pip install -r requirements_demo.txt
Usage
See demo.ipynb for an example of training EEGSimpleNet on your data and interpreting its weights.
Citation
If you use this code, please cite:
Petrosyan, A., et al. (2021). Decoding and interpreting cortical signals with a compact convolutional neural network. J. Neural Eng., 18(2), 026019.
@article{Petrosyan_2021,
doi = {10.1088/1741-2552/abe20e},
url = {https://dx.doi.org/10.1088/1741-2552/abe20e},
year = {2021},
month = {mar},
publisher = {IOP Publishing},
volume = {18},
number = {2},
pages = {026019},
author = {Petrosyan, Artur and Sinkin, Mikhail and Lebedev, Mikhail and Ossadtchi, Alexei},
title = {Decoding and interpreting cortical signals with a compact convolutional neural network},
journal = {Journal of Neural Engineering}
}
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
