SimNeXt-EEG is a compact convolutional network for motor-imagery EEG decoding. It combines a multi-scale temporal front-end, depthwise spatial encoding, two parameter-free attention stages, and a separable temporal refinement block. The configurations reported in the paper hold between 1,314 and 3,380 parameters. The aim is accuracy comparable to larger motor-imagery decoders at a small fraction of their parameter count.
This repository is the reference implementation for:
D. H. Kim and Y.-S. Choi, "SimNeXt-EEG: Compact Motor Imagery EEG Decoding via Parameter-Free Temporal Attention and Separable Refinement," submitted to IEEE Signal Processing Letters, 2026.
The manuscript is under review.
model/simnext_eeg.py holds the whole network. Input is one trial of shape
(batch, 1, channels, 1000), that is 4 s at 250 Hz.
temporal Conv(1->4, k=32) || Conv(1->4, k=80) -> concat -> BN
spatial depthwise Conv(8->16, (C,1)) -> BN -> 1D-SimAM + residual -> ELU -> avgpool(4) -> dropout
refinement depthwise Conv(16, k=16) -> pointwise Conv(16) -> BN -> 1D-SimAM + residual -> ELU -> avgpool(pool2_k) -> dropout
classifier flatten -> linear
1D-SimAM derives its gain analytically from the mean and variance of each temporal
trace, so it holds no learnable weights; the residual around it lets the network
bypass it if the gain is unhelpful. The refinement block is separable, and the two
halves do different jobs: the depthwise stage refines temporal dynamics within each
component, the pointwise stage mixes information across components. A full temporal
convolution in their place couples every pair densely at F2^2 * K_sep weights,
where the factorisation costs F2 * K_sep + F2^2 -- 512 against 4,096 at F2=16,
K_sep=16. That gap is most of what keeps the model in the low thousands.
Measured parameter counts:
| Dataset | Channels | Classes | SD / SI | LOSO |
|---|---|---|---|---|
| BCIC-IV-2a | 22 | 4 | 1,844 | 3,380 |
| BCIC-IV-2b | 3 | 2 | 1,314 | 1,570 |
| OpenBMI | 20 | 2 | 1,586 | 1,842 |
from model.simnext_eeg import SimNeXtEEG
model = SimNeXtEEG(in_channels=22, num_classes=4, pool2_k=32) # 2a, SD/SI
model = SimNeXtEEG(in_channels=22, num_classes=4, pool2_k=8) # 2a, LOSO1D-SimAM adapts SimAM (Yang et al., ICML 2021) to single-channel temporal traces.
The datasets are not redistributed here. Download them and place the files as below.
BCI Competition IV 2a and 2b: https://www.bbci.de/competition/iv/. The competition ships GDF; the loader reads the MATLAB versions.
OpenBMI: Lee et al., GigaScience 8(5):giz002, 2019, doi:10.1093/gigascience/giz002. Fetch the MI recordings from the public repository named in that paper.
data/bci_iv_2a/ A01T.mat A01E.mat ... A09T.mat A09E.mat
data/bci_iv_2b/ B01T.mat B01E.mat ... B09T.mat B09E.mat
data/openbmi/ sess01_subj01_EEG_MI.mat ... sess02_subj54_EEG_MI.mat
pip install -r requirements.txtpython train.py --dataset {2a|2b|openbmi} --protocol {SD|SI|LOSO} --seed N \
[--gpu 0] [--subjects LO:HI] [--band 4,40] [--force]--gpu selects the CUDA device and is applied before torch initialises the
driver. --subjects 1:5 runs a range of subjects and writes its own result file,
so a long run can be split across GPUs and the parts read back separately.
--band affects OpenBMI only. --force overwrites an existing result file
instead of skipping the run.
python evaluate.py [--tag TAG] [--format table|json] [--detail]| Protocol | Test set | Train / validation |
|---|---|---|
| SD | one fold of the session | the other folds, 5-fold |
| SI | session 2 | session 1, 5-fold |
| LOSO | the held-out subject | the other subjects |
The paper is under review. Complete this entry once it is accepted.
@article{kim2026simnext,
title = {SimNeXt-EEG: Compact Motor Imagery EEG Decoding via Parameter-Free
Temporal Attention and Separable Refinement},
author = {Kim, Dae Hyeon and Choi, Young-Seok},
journal = {IEEE Signal Processing Letters},
year = {2026},
volume = {},
number = {},
pages = {},
doi = {}
}Complete comparisons under the session-dependent (SD) setting. Accuracy, Cohen's κ × 100, and weighted F1 are reported as mean ± standard deviation. Paired tests, BH-adjusted q-values, and Cohen's dz are computed from subject-level accuracy differences after averaging repeated folds and the five random seeds as applicable.
| Dataset | Method | Acc. | κ × 100 | wF1 | Sig. | q | dz |
|---|---|---|---|---|---|---|---|
| BCIC-IV-2a | FBCSP-SVM | 35.77 ± 4.71 | 14.35 ± 4.96 | 35.77 ± 3.11 | ** | 0.0002 | +2.63 |
| BCIC-IV-2a | ShallowConvNet | 56.45 ± 0.61 | 41.94 ± 0.82 | 55.95 ± 0.66 | ** | 0.0002 | +2.40 |
| BCIC-IV-2a | EEGNet | 54.46 ± 0.82 | 39.27 ± 1.09 | 53.58 ± 0.91 | ** | 0.0011 | +1.76 |
| BCIC-IV-2a | FBCNet | 70.30 ± 0.32 | 60.41 ± 0.43 | 69.83 ± 0.34 | -- | 0.8942 | +0.05 |
| BCIC-IV-2a | EEGConformer | 60.24 ± 1.22 | 46.99 ± 1.60 | 57.42 ± 1.42 | ** | 0.0011 | +1.72 |
| BCIC-IV-2a | LightConvNet | 53.39 ± 0.94 | 37.86 ± 1.25 | 52.25 ± 1.05 | ** | 0.0006 | +2.02 |
| BCIC-IV-2a | IFNet | 49.99 ± 0.34 | 33.30 ± 0.45 | 48.77 ± 0.37 | ** | 0.0001 | +3.06 |
| BCIC-IV-2a | MSVTNet | 65.55 ± 0.63 | 54.07 ± 0.84 | 64.50 ± 0.85 | * | 0.0105 | +1.14 |
| BCIC-IV-2a | SimNeXt-EEG | 70.80 ± 0.54 | 61.08 ± 0.72 | 70.42 ± 0.56 | Ref. | Ref. | Ref. |
| BCIC-IV-2b | FBCSP-SVM | 61.42 ± 1.91 | 23.68 ± 2.09 | 61.42 ± 1.69 | ** | <0.0001 | +4.10 |
| BCIC-IV-2b | ShallowConvNet | 69.94 ± 0.31 | 39.87 ± 0.62 | 69.47 ± 0.27 | ** | 0.0003 | +2.31 |
| BCIC-IV-2b | EEGNet | 73.62 ± 0.53 | 47.23 ± 1.06 | 73.03 ± 0.72 | ** | 0.0049 | +1.28 |
| BCIC-IV-2b | FBCNet | 68.26 ± 0.29 | 36.52 ± 0.58 | 67.88 ± 0.42 | ** | 0.0001 | +2.77 |
| BCIC-IV-2b | EEGConformer | 69.22 ± 0.48 | 38.45 ± 0.95 | 67.23 ± 0.37 | ** | 0.0004 | +2.17 |
| BCIC-IV-2b | LightConvNet | 72.09 ± 0.65 | 44.19 ± 1.31 | 71.61 ± 0.69 | ** | 0.0026 | +1.50 |
| BCIC-IV-2b | IFNet | 71.40 ± 0.33 | 42.79 ± 0.65 | 71.05 ± 0.35 | ** | 0.0015 | +1.69 |
| BCIC-IV-2b | MSVTNet | 71.69 ± 0.21 | 43.39 ± 0.43 | 70.93 ± 0.13 | ** | 0.0031 | +1.44 |
| BCIC-IV-2b | SimNeXt-EEG | 76.04 ± 0.34 | 52.07 ± 0.69 | 75.87 ± 0.33 | Ref. | Ref. | Ref. |
| OpenBMI | FBCSP-SVM | 60.60 ± 11.73 | 22.43 ± 21.91 | 60.60 ± 11.73 | ** | 0.0001 | +0.63 |
| OpenBMI | ShallowConvNet | 66.19 ± 15.80 | 32.39 ± 31.61 | 64.95 ± 16.78 | -- | 0.0977 | +0.26 |
| OpenBMI | EEGNet | 61.52 ± 17.30 | 23.04 ± 34.60 | 59.23 ± 18.56 | ** | <0.0001 | +0.73 |
| OpenBMI | FBCNet | 66.91 ± 17.96 | 33.82 ± 35.92 | 66.53 ± 17.78 | -- | 0.3215 | +0.14 |
| OpenBMI | EEGConformer | 67.01 ± 17.25 | 34.02 ± 34.50 | 61.95 ± 21.11 | -- | 0.3358 | +0.13 |
| OpenBMI | LightConvNet | 62.45 ± 18.31 | 24.91 ± 36.61 | 60.59 ± 19.51 | ** | <0.0001 | +0.75 |
| OpenBMI | IFNet | 60.62 ± 15.69 | 21.24 ± 31.38 | 58.74 ± 16.67 | ** | <0.0001 | +0.72 |
| OpenBMI | MSVTNet | 68.70 ± 19.08 | 37.41 ± 38.15 | 64.50 ± 22.62 | -- | 0.2993 | −0.12 |
| OpenBMI | SimNeXt-EEG | 67.97 ± 18.02 | 35.94 ± 36.03 | 66.22 ± 19.31 | Ref. | Ref. | Ref. |
Note. The q-values are BH-adjusted p-values within each dataset–protocol family of eight comparisons. * denotes q < 0.05, ** denotes q < 0.01, and
--denotes q ≥ 0.05. † indicates a significant difference favoring the baseline; positive dz favors SimNeXt-EEG.
Complete comparisons under the session-independent (SI) setting. Accuracy, Cohen's κ × 100, and weighted F1 are reported as mean ± standard deviation. Paired tests, BH-adjusted q-values, and Cohen's dz are computed from subject-level accuracy differences after averaging repeated folds and the five random seeds as applicable.
| Dataset | Method | Acc. | κ × 100 | wF1 | Sig. | q | dz |
|---|---|---|---|---|---|---|---|
| BCIC-IV-2a | FBCSP-SVM | 41.55 ± 2.84 | 22.07 ± 3.88 | 41.55 ± 3.29 | ** | 0.0001 | +2.92 |
| BCIC-IV-2a | ShallowConvNet | 57.63 ± 1.10 | 43.51 ± 1.47 | 56.46 ± 1.39 | ** | 0.0001 | +2.65 |
| BCIC-IV-2a | EEGNet | 58.60 ± 1.16 | 44.79 ± 1.55 | 57.70 ± 1.45 | ** | 0.0071 | +1.31 |
| BCIC-IV-2a | FBCNet | 67.91 ± 0.53 | 57.21 ± 0.71 | 66.67 ± 0.61 | -- | 0.1229 | +0.57 |
| BCIC-IV-2a | EEGConformer | 60.05 ± 1.99 | 46.73 ± 2.64 | 57.48 ± 2.89 | ** | 0.0081 | +1.23 |
| BCIC-IV-2a | LightConvNet | 57.33 ± 1.85 | 43.11 ± 2.47 | 56.63 ± 2.13 | ** | 0.0003 | +2.23 |
| BCIC-IV-2a | IFNet | 55.35 ± 1.62 | 40.46 ± 2.16 | 54.71 ± 1.83 | ** | 0.0001 | +3.20 |
| BCIC-IV-2a | MSVTNet | 65.93 ± 1.38 | 54.58 ± 1.85 | 64.26 ± 1.48 | -- | 0.0523 | +0.79 |
| BCIC-IV-2a | SimNeXt-EEG | 70.81 ± 0.49 | 60.80 ± 1.22 | 69.88 ± 1.14 | Ref. | Ref. | Ref. |
| BCIC-IV-2b | FBCSP-SVM | 68.12 ± 1.94 | 36.24 ± 3.01 | 68.12 ± 1.66 | ** | 0.0042 | +1.49 |
| BCIC-IV-2b | ShallowConvNet | 75.05 ± 0.60 | 50.11 ± 1.19 | 73.17 ± 1.22 | ** | 0.0012 | +2.23 |
| BCIC-IV-2b | EEGNet | 79.22 ± 0.86 | 58.43 ± 1.72 | 78.77 ± 1.12 | -- | 0.2048 | +0.46 |
| BCIC-IV-2b | FBCNet | 72.08 ± 0.48 | 44.16 ± 0.97 | 71.76 ± 0.56 | ** | 0.0050 | +1.39 |
| BCIC-IV-2b | EEGConformer | 73.31 ± 0.97 | 46.61 ± 1.93 | 71.97 ± 0.95 | ** | 0.0029 | +1.66 |
| BCIC-IV-2b | LightConvNet | 76.64 ± 1.05 | 53.28 ± 2.10 | 76.14 ± 1.28 | ** | 0.0042 | +1.67 |
| BCIC-IV-2b | IFNet | 77.93 ± 0.69 | 55.86 ± 1.39 | 77.43 ± 1.01 | -- | 0.0792 | +0.70 |
| BCIC-IV-2b | MSVTNet | 77.59 ± 1.29 | 55.17 ± 2.57 | 76.78 ± 1.37 | * | 0.0203 | +1.03 |
| BCIC-IV-2b | SimNeXt-EEG | 80.96 ± 0.31 | 60.38 ± 1.37 | 79.92 ± 0.67 | Ref. | Ref. | Ref. |
| OpenBMI | FBCSP-SVM | 59.79 ± 11.26 | 19.98 ± 22.11 | 59.79 ± 11.26 | ** | 0.0013 | +0.53 |
| OpenBMI | ShallowConvNet | 65.06 ± 14.97 | 30.12 ± 29.93 | 63.34 ± 16.21 | -- | 0.4003 | +0.09 |
| OpenBMI | EEGNet | 61.68 ± 17.13 | 23.36 ± 34.27 | 59.53 ± 18.36 | ** | 0.0013 | +0.51 |
| OpenBMI | FBCNet | 64.95 ± 17.43 | 29.90 ± 34.86 | 64.63 ± 17.15 | -- | 0.3285 | +0.08 |
| OpenBMI | EEGConformer | 64.84 ± 16.92 | 29.69 ± 33.83 | 58.96 ± 22.17 | -- | 0.3091 | +0.10 |
| OpenBMI | LightConvNet | 62.69 ± 17.96 | 25.37 ± 35.92 | 61.40 ± 18.93 | * | 0.0265 | +0.35 |
| OpenBMI | IFNet | 61.17 ± 15.74 | 22.34 ± 31.47 | 59.46 ± 16.68 | ** | 0.0013 | +0.52 |
| OpenBMI | MSVTNet | 68.06 ± 18.48 | 36.11 ± 36.95 | 64.29 ± 22.10 | *† | 0.0388 | −0.32 |
| OpenBMI | SimNeXt-EEG | 66.69 ± 17.30 | 31.37 ± 35.89 | 63.63 ± 19.62 | Ref. | Ref. | Ref. |
Note. The q-values are BH-adjusted p-values within each dataset–protocol family of eight comparisons. * denotes q < 0.05, ** denotes q < 0.01, and
--denotes q ≥ 0.05. † indicates a significant difference favoring the baseline; positive dz favors SimNeXt-EEG.
Complete comparisons under the leave-one-subject-out (LOSO) setting. Accuracy, Cohen's κ × 100, and weighted F1 are reported as mean ± standard deviation. Paired tests, BH-adjusted q-values, and Cohen's dz are computed from subject-level accuracy differences after averaging the five random seeds.
| Dataset | Method | Acc. | κ × 100 | wF1 | Sig. | q | dz |
|---|---|---|---|---|---|---|---|
| BCIC-IV-2a | FBCSP-SVM | 28.40 ± 4.13 | 4.94 ± 2.10 | 28.40 ± 3.08 | ** | 0.0018 | +1.90 |
| BCIC-IV-2a | ShallowConvNet | 47.67 ± 1.16 | 30.23 ± 1.55 | 44.16 ± 1.51 | ** | 0.0046 | +1.54 |
| BCIC-IV-2a | EEGNet | 51.64 ± 1.66 | 35.52 ± 2.22 | 47.43 ± 2.03 | -- | 0.4832 | +0.28 |
| BCIC-IV-2a | FBCNet | 36.17 ± 0.40 | 14.90 ± 0.53 | 28.52 ± 0.58 | ** | 0.0018 | +1.97 |
| BCIC-IV-2a | EEGConformer | 42.22 ± 1.19 | 22.96 ± 1.58 | 37.85 ± 1.34 | ** | 0.0054 | +1.43 |
| BCIC-IV-2a | LightConvNet | 52.49 ± 1.01 | 36.66 ± 1.34 | 49.06 ± 0.79 | -- | 1.0000 | +0.00 |
| BCIC-IV-2a | IFNet | 50.52 ± 1.45 | 34.02 ± 1.93 | 48.32 ± 1.60 | -- | 0.2327 | +0.50 |
| BCIC-IV-2a | MSVTNet | 54.65 ± 0.44 | 39.54 ± 0.58 | 50.76 ± 0.75 | -- | 0.2936 | −0.39 |
| BCIC-IV-2a | SimNeXt-EEG | 52.49 ± 0.51 | 36.65 ± 0.67 | 48.39 ± 0.88 | Ref. | Ref. | Ref. |
| BCIC-IV-2b | FBCSP-SVM | 64.95 ± 1.82 | 29.89 ± 4.13 | 64.95 ± 1.56 | ** | 0.0007 | +2.20 |
| BCIC-IV-2b | ShallowConvNet | 78.32 ± 0.38 | 56.64 ± 0.77 | 78.11 ± 0.43 | -- | 0.5763 | +0.28 |
| BCIC-IV-2b | EEGNet | 79.07 ± 0.12 | 58.15 ± 0.23 | 78.86 ± 0.10 | -- | 0.9269 | −0.03 |
| BCIC-IV-2b | FBCNet | 67.14 ± 0.63 | 34.29 ± 1.25 | 65.94 ± 0.96 | ** | 0.0003 | +2.67 |
| BCIC-IV-2b | EEGConformer | 76.05 ± 1.32 | 52.11 ± 2.64 | 75.52 ± 1.45 | -- | 0.0752 | +0.89 |
| BCIC-IV-2b | LightConvNet | 78.40 ± 0.39 | 56.80 ± 0.77 | 78.08 ± 0.45 | -- | 0.5211 | +0.35 |
| BCIC-IV-2b | IFNet | 77.02 ± 0.31 | 54.04 ± 0.61 | 76.71 ± 0.25 | -- | 0.1729 | +0.65 |
| BCIC-IV-2b | MSVTNet | 78.44 ± 0.50 | 56.88 ± 0.99 | 78.24 ± 0.56 | -- | 0.5872 | +0.23 |
| BCIC-IV-2b | SimNeXt-EEG | 79.02 ± 0.65 | 58.04 ± 1.29 | 78.66 ± 0.64 | Ref. | Ref. | Ref. |
| OpenBMI | FBCSP-SVM | 60.50 ± 8.69 | 21.19 ± 17.12 | 60.50 ± 8.69 | ** | <0.0001 | +2.17 |
| OpenBMI | ShallowConvNet | 74.08 ± 12.49 | 48.16 ± 24.99 | 73.21 ± 13.39 | ** | 0.0003 | +0.57 |
| OpenBMI | EEGNet | 76.86 ± 12.95 | 53.72 ± 25.89 | 76.30 ± 13.58 | -- | 0.1962 | −0.19 |
| OpenBMI | FBCNet | 70.86 ± 15.42 | 41.72 ± 30.84 | 69.66 ± 15.10 | ** | <0.0001 | +1.32 |
| OpenBMI | EEGConformer | 74.35 ± 12.26 | 48.70 ± 24.51 | 73.62 ± 13.05 | ** | 0.0011 | +0.49 |
| OpenBMI | LightConvNet | 78.00 ± 11.66 | 56.00 ± 23.32 | 77.61 ± 12.02 | **† | 0.0011 | −0.50 |
| OpenBMI | IFNet | 75.99 ± 11.59 | 51.97 ± 23.18 | 75.58 ± 11.99 | -- | 0.5739 | +0.08 |
| OpenBMI | MSVTNet | 78.66 ± 11.14 | 57.32 ± 22.28 | 78.25 ± 11.57 | **† | 0.0012 | −0.48 |
| OpenBMI | SimNeXt-EEG | 76.34 ± 13.03 | 52.69 ± 26.05 | 75.66 ± 13.74 | Ref. | Ref. | Ref. |
Note. The q-values are BH-adjusted p-values within each dataset–protocol family of eight comparisons. * denotes q < 0.05, ** denotes q < 0.01, and
--denotes q ≥ 0.05. † indicates a significant difference favoring the baseline; positive dz favors SimNeXt-EEG.
MIT, see LICENSE. The datasets are not covered by it and keep the terms set by their own distributors.