File size: 1,714 Bytes
1cf1854
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
---
library_name: braindecode
tags:
- braindecode
- STEEGFormer
- eeg
- foundation-model
license: mit
---

# STEEGFormer (largeV2)

ViT-MAE EEG foundation model — braindecode port of **ST-EEGFormer** (largeV2 variant).

## Provenance

- **Weights ported from:** [LiuyinYang1101/STEEGFormer](https://github.com/LiuyinYang1101/STEEGFormer),
  release [`ST-EEGFormer-largeV2`](https://github.com/LiuyinYang1101/STEEGFormer/releases/tag/ST-EEGFormer-largeV2)
  (asset `large_weights_only_210.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 |
|---|---|---|---|---|---|
| largeV2 | 1024 | 24 | 16 | 16 | 256 |

This variant uses a **256-slot** channel vocabulary (further pre-trained on HBN for the EEG 2025 Foundation Challenge). Name-based mapping via `chs_info` works for standard electrodes; pass `chan_pos_idx` explicitly for the HBN montage / non-standard channels.

## Usage

```python
from braindecode.models import STEEGFormer

model = STEEGFormer.from_pretrained(
    "braindecode/STEEGFormer-largeV2",
    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