| --- |
| library_name: braindecode |
| tags: |
| - braindecode |
| - STEEGFormer |
| - eeg |
| - foundation-model |
| license: mit |
| --- |
| |
| # STEEGFormer (large) |
|
|
| ViT-MAE EEG foundation model — braindecode port of **ST-EEGFormer** (large variant). |
|
|
| ## Provenance |
|
|
| - **Weights ported from:** [LiuyinYang1101/STEEGFormer](https://github.com/LiuyinYang1101/STEEGFormer), |
| release [`ST-EEGFormer-large`](https://github.com/LiuyinYang1101/STEEGFormer/releases/tag/ST-EEGFormer-large) |
| (asset `large_weights_only_196.pth`). |
| - **Upstream license:** MIT. The braindecode wrapper code is BSD-3-Clause. |
| - The pre-trained encoder is loaded faithfully (numerical equivalence verified: |
| pre-encoder bit-exact, post-encoder relative error ~4e-6). The MAE decoder is |
| dropped and the classification head is re-initialised. |
|
|
| ## Architecture |
|
|
| | | embed_dim | depth | num_heads | patch_size | channel vocab | |
| |---|---|---|---|---|---| |
| | large | 1024 | 24 | 16 | 16 | 145 | |
| |
| Channel positions are resolved from electrode names in `chs_info` (145-slot shared montage vocabulary). |
|
|
| ## Usage |
|
|
| ```python |
| from braindecode.models import STEEGFormer |
| |
| model = STEEGFormer.from_pretrained( |
| "braindecode/STEEGFormer-large", |
| n_outputs=4, n_chans=22, n_times=1000, chs_info=chs_info, |
| ) |
| # Encoder features: out = model(x, return_features=True); out["features"] |
| ``` |
|
|
| ## Citation |
|
|
| Yang, L., Sun, Q., Li, A. & Van Hulle, M. M. (2026). *Are EEG foundation models |
| worth it? Comparative evaluation with traditional decoders in diverse BCI tasks.* |
| ICLR 2026. https://openreview.net/forum?id=5Xwm8e6vbh |
|
|