Controlled Evaluation of EEG Foundation Models: Random Initialisation, Band-Power and Validation-Selected Probes
Organizations: Modulabs, Seoul, Republic of Korea
Abstract
EEG foundation models report downstream gains, yet their protocols seldom include three controls. These are the same encoder untrained, spectral features fitted on the same data, and a layer picked without looking at test scores. We therefore evaluate five publicly released EEG foundation models and an in-house JEPA-style model under one protocol with all three controls and several seeds, on five benchmarks and four added task families. The controls change the reading in three ways. First, picking the probed layer by its test score raises the layer-wise peak by an average of +0.034 and reverses the peak-versus-output gap in 9 of 36 cells. Second, with the layer picked on validation, random initialisation matches or beats pretraining for half of the models on sleep and emotion, and no model beats a five-band log-power baseline on emotion or motor imagery. Third, after full fine-tuning only 5 of 30 pairs gain beyond twice their seed spread, and the one clear loss of -0.290 AUROC persists under matched learning rates. From these results we draw four reporting practices, and we release every cell for re-analysis.
Figures & tables
| Dataset | Task | classes | train / val / test | metric | split |
|---|---|---|---|---|---|
| APAVA | Alzheimer’s disease vs control | 2 | 347 / 157 / 159 | AUROC | fixed, four test subjects |
| BCI IV 2a | motor imagery | 4 | 2,880 / 1,152 / 1,152 | accuracy | fixed, subjects 1–5 / 6–7 / 8–9 |
| Lee2019 | motor imagery | 2 | 2,080 / 520 / 2,600 | AUROC | fixed, within-subject halves |
| TUSL | slowing vs other | 2 | 12,187 / 1,050 / 1,503 | AUROC | subject-disjoint, per seed |
| TUAB | abnormal vs normal | 2 | 12,866 / 3,192 / 3,942 | AUROC | subject-disjoint, per seed |
| Method | APAVA | BCI IV 2a | Lee2019 | TUSL | TUAB |
|---|---|---|---|---|---|
| EEGNet | 0.723 0.197 | 0.482 0.042 | 0.796 0.046 | 0.535 0.035 | 0.863 0.009 |
| FBCSP | — | 0.260 | 0.599 | — | — |
| Band power | 0.951–0.985 | 0.484–0.491 | 0.733–0.743 | 0.645–0.690 | 0.853–0.855 |
| Best model, fine-tuned | 0.959 EEGPT | 0.351 CBraMod | 0.848 CBraMod | 0.758 CBraMod | 0.874 LaBraM |
| Model | APAVA | BCI IV 2a | Lee2019 | TUSL | TUAB | mean ( /5) |
|---|---|---|---|---|---|---|
| CBraMod | +0.010 0.141 | +0.052 0.030 | +0.237 0.030 | +0.147 0.141 | +0.034 0.012 | +0.096 (5) |
| LaBraM | +0.143 0.166 | +0.047 0.041 | +0.057 0.054 | +0.059 0.075 | +0.061 0.008 | +0.073 (5) |
| EEGPT | +0.018 0.045 | +0.003 0.040 | 0.005 0.014 | +0.154 0.119 | 0.004 0.010 | +0.033 (3) |
| LUNA | 0.290 0.035 | +0.041 0.085 | +0.084 0.058 | 0.049 0.157 | +0.004 0.009 | 0.042 (3) |
| LuMamba | +0.026 0.030 | 0.032 0.044 | +0.002 0.008 | 0.052 0.110 | +0.012 0.012 | 0.009 (3) |
| In-house (JEPA) | +0.091 0.042 | +0.061 0.022 | +0.013 0.010 | +0.072 0.091 | 0.017 0.009 | +0.044 (4) |
Appendix figures & tables17 assets
Supplementary material from the paper’s appendix.
Appendix
| Model | Hugging Face repository | File | Revision |
|---|---|---|---|
| EEG-OmniJEPA (ours, REVE 25k) | not released | ckpts/step_025000_weights_only.pt | 9567ab6053 |
| LaBraM-Base | braindecode/labram-pretrained | model.safetensors | 0563b6c626 |
| CBraMod | braindecode/cbramod-pretrained | model.safetensors | 584cdc4159 |
| LUNA-Base | PulpBio/LUNA | LUNA_base.safetensors | 999c1af0fd |
| LuMamba LeJEPA-only | PulpBio/LuMamba | LuMamba_LeJEPAOnly_128slices.safetensors | fd3da57e34 |
| EEGPT-Base | braindecode/eegpt-pretrained | model.safetensors | e41cb3ae2c |
| Model | pretrained rate | fed rate | pretrained window | fed window |
|---|---|---|---|---|
| CBraMod | 200 | 200 | 30 | 5 |
| LaBraM | 200 | 200 | 256 one-second patches | 15 |
| EEGPT | 256 | 250 | 4 | 4 |
| LUNA | 256 | 256 | 5 | 5 |
| LuMamba | 256 | 256 | 5 | 5 |
| Item | Value |
|---|---|
| Sampling rate / window | 200 Hz, five seconds, common-average reference, band-pass and notch filtering |
| Bandpower baseline | log band power in five bands (0.5–4, 4–8, 8–13, 13–30, 30–75 Hz) per channel, then the same probe |
| Linear probe | mean-pool over tokens, standardise on the training split, L2 logistic regression ( , at most 3000 iterations) |
| Stage selection | argmax of the validation metric over stages; test metric reported at that stage |
| Full fine-tuning | each model’s own head; learning rate 5e-5 (pretrained) / 5e-4 (random-init); up to 50 epochs, batch 32; best-validation epoch reported |
| Seeds | 5 (original benchmarks) or 3 (added tasks); population std throughout |
| Signal | 0–1 Hz | 1–4 Hz | 4–8 Hz | 8–13 Hz | 13–30 Hz | 30–75 Hz |
|---|---|---|---|---|---|---|
| Input | 37.4 | 29.0 | 6.3 | 7.5 | 6.9 | 12.7 |
| Front-end as released | 91.2 | 7.2 | 0.8 | 0.3 | 0.3 | 0.1 |
| Same filters, in samples | 0.2 | 9.4 | 16.0 | 20.4 | 18.6 | 34.9 |
| Model | pretrained | random-init | ||||
|---|---|---|---|---|---|---|
| APAVA | BCI IV 2a | Lee2019 | APAVA | BCI IV 2a | Lee2019 | |
| CBraMod | +0.110 (+0.000) | +0.003 (+0.042) | 0.013 (+0.041) | +0.011 (+0.041) | 0.004 (+0.020) | +0.006 (+0.007) |
| LaBraM | 0.113 (+0.181) | 0.001 (+0.014) | 0.018 (+0.041) | +0.000 (+0.000) | 0.010 (+0.010) | +0.007 (+0.000) |
| EEGPT | +0.073 (+0.191) | 0.006 (+0.023) | +0.019 (+0.000) | +0.015 (+0.024) | 0.007 (+0.016) | 0.008 (+0.014) |
| LUNA | +0.023 (+0.062) | 0.016 (+0.021) | +0.000 (+0.018) | 0.023 (+0.128) | +0.023 (+0.000) | 0.000 (+0.007) |
| LuMamba | 0.139 (+0.145) | 0.016 (+0.036) | +0.009 (+0.000) | 0.002 (+0.020) | 0.007 (+0.007) | +0.000 (+0.002) |
| Model | ERP P300 (AUROC) | Sleep 5-cl. (bal. acc.) | Emotion 8-cl. (macro-F1) | MI within-subj. (acc.) | ||||
|---|---|---|---|---|---|---|---|---|
| pre / rand | pre / rand | pre / rand | pre / rand | |||||
| CBraMod | 0.768 / 0.703 | +0.065 | 0.596 / 0.461 | +0.135 | 0.165 / 0.139 | +0.027 | 0.344 / 0.288 | +0.057 |
| LaBraM | 0.742 / 0.684 | +0.058 | 0.527 / 0.479 | +0.048 | 0.168 / 0.136 | +0.032 | 0.354 / 0.301 | +0.052 |
| EEGPT | 0.588 / 0.641 | 0.052 | 0.552 / 0.584 | 0.033 | 0.151 / 0.154 | 0.003 | 0.278 / 0.379 | 0.100 |
| LUNA | 0.615 / 0.568 | +0.046 | 0.568 / 0.593 | 0.024 | 0.165 / 0.174 | 0.008 | 0.316 / 0.344 | 0.028 |
| LuMamba | 0.628 / 0.581 | +0.047 | 0.565 / 0.601 | 0.035 | 0.162 / 0.167 | 0.005 | — | — |
| Model | ERP P300 | Sleep 5-cl. | Emotion 8-cl. | MI within-subj. | ||||
|---|---|---|---|---|---|---|---|---|
| pretrained | random-init | pretrained | random-init | pretrained | random-init | pretrained | random-init | |
| CBraMod | 0.768 0.000 | 0.703 0.006 | 0.596 0.011 | 0.461 0.024 | 0.165 0.006 | 0.139 0.011 | 0.344 0.000 | 0.288 0.011 |
| LaBraM | 0.742 0.000 | 0.684 0.011 | 0.527 0.017 | 0.479 0.023 | 0.168 0.013 | 0.136 0.004 | 0.354 0.000 | 0.301 0.014 |
| EEGPT | 0.588 0.000 | 0.641 0.005 | 0.552 0.012 | 0.584 0.022 | 0.151 0.006 | 0.154 0.006 | 0.278 0.000 | 0.379 0.003 |
| LUNA | 0.615 0.000 | 0.568 0.017 | 0.568 0.009 | 0.593 0.004 | 0.165 0.001 | 0.174 0.008 | 0.316 0.000 | 0.344 0.011 |
| LuMamba | 0.628 0.000 | 0.581 0.005 | 0.565 0.011 | 0.601 0.011 | 0.162 0.002 | 0.167 0.007 | — | — |
| Model | Dataset | mean-pool final | attention final | |
|---|---|---|---|---|
| LUNA | APAVA | 0.905 | 0.886 0.035 | 0.019 |
| LUNA | BCI IV 2a | 0.326 | 0.309 0.003 | 0.017 |
| LUNA | Lee2019 | 0.556 | 0.523 0.009 | 0.033 |
| In-house (JEPA) | APAVA | 0.631 | 0.562 0.004 | 0.069 |
| In-house (JEPA) | BCI IV 2a | 0.286 | 0.275 0.017 | 0.011 |
| In-house (JEPA) | Lee2019 | 0.506 | 0.499 0.004 | 0.007 |
| Model | APAVA | BCI IV 2a | Lee2019 |
|---|---|---|---|
| CBraMod | 0.017 0.021 | 0.015 0.006 | +0.004 0.001 |
| LaBraM | +0.039 0.013 | 0.005 0.018 | 0.021 0.001 |
| EEGPT | 0.132 0.009 | 0.019 0.012 | 0.003 0.004 |
| LUNA | 0.044 0.006 | 0.019 0.019 | 0.026 0.002 |
| LuMamba | 0.044 0.002 | 0.007 0.009 | 0.026 0.002 |
| In-house (JEPA) | 0.036 0.006 | 0.026 0.002 | 0.001 0.004 |
| Model | Dataset | chosen LR | tuned | canonical | penalty |
|---|---|---|---|---|---|
| CBraMod | APAVA | 5e-5 | 0.883 | 0.883 | +0.000 |
| BCI IV 2a | 2e-5 | 0.440 | 0.363 | +0.077 | |
| Lee2019 | 1e-4 | 0.837 | 0.840 | 0.003 | |
| LaBraM | APAVA | 2e-5 | 0.932 | 0.951 | 0.019 |
| BCI IV 2a | 2e-5 | 0.319 | 0.309 | +0.010 | |
| Lee2019 | 1e-4 | 0.634 | 0.578 | +0.055 |
| Learning rate (pretrained / random-init) | pretrained | random-init | |
|---|---|---|---|
| 5e-5 / 5e-4 (asymmetric, main matrix) | 0.663 0.052 | 0.935 0.044 | 0.272 |
| 2e-5 / 2e-5 | 0.763 0.078 | 0.947 0.023 | 0.184 |
| 5e-5 / 5e-5 | 0.663 0.052 | 0.950 0.027 | 0.287 |
| 1e-4 / 1e-4 | 0.824 0.059 | 0.948 0.028 | 0.124 |
| Model | Dataset | 10% | 25% | 50% | 100% |
|---|---|---|---|---|---|
| CBraMod | APAVA | +0.136 0.067 | +0.052 0.036 | +0.083 0.022 | +0.185 0.000 |
| CBraMod | BCI IV 2a | +0.048 0.012 | +0.037 0.027 | +0.024 0.008 | +0.009 0.000 |
| CBraMod | Lee2019 | +0.010 0.007 | +0.013 0.013 | +0.013 0.012 | +0.016 0.000 |
| LaBraM | APAVA | +0.149 0.097 | +0.151 0.062 | +0.074 0.017 | +0.067 0.000 |
| LaBraM | BCI IV 2a | +0.030 0.026 | +0.009 0.013 | +0.022 0.024 | +0.036 0.000 |
| LaBraM | Lee2019 | 0.005 0.012 | +0.023 0.013 | +0.027 0.011 | +0.037 0.000 |
| Model | cross peak | cross final | within peak | within final |
|---|---|---|---|---|
| CBraMod | 0.300 | 0.297 | 0.344 | 0.329 |
| LaBraM | 0.327 | 0.328 | 0.354 | 0.369 |
| EEGPT | 0.281 | 0.287 | 0.278 | 0.305 |
| LUNA | 0.311 | 0.326 | 0.316 | 0.311 |
| In-house (JEPA) | 0.338 | 0.289 | 0.370 | 0.273 |
| both-pos | frozen-only | fullft-only | both-neg | mixed | |
|---|---|---|---|---|---|
| 0.005 | 17 | 3 | 2 | 1 | 7 |
| 0.01 | 14 | 3 | 1 | 0 | 12 |
| 0.02 | 12 | 3 | 0 | 0 | 15 |
| Model | APAVA | BCI IV 2a | Lee2019 | TUSL | TUAB |
|---|---|---|---|---|---|
| CBraMod | 0.900 / 0.846 | 0.343 / 0.294 | 0.545 / 0.514 | 0.778 / 0.684 | 0.861 / 0.788 |
| LaBraM | 0.989 / 0.852 | 0.343 / 0.306 | 0.566 / 0.511 | 0.754 / 0.607 | 0.850 / 0.774 |
| EEGPT | 0.831 / 0.941 | 0.307 / 0.343 | 0.531 / 0.576 | 0.740 / 0.642 | 0.821 / 0.836 |
| LUNA | 0.991 / 0.951 | 0.331 / 0.329 | 0.574 / 0.564 | 0.663 / 0.617 | 0.838 / 0.846 |
| LuMamba | 0.981 / 0.958 | 0.332 / 0.305 | 0.570 / 0.583 | 0.647 / 0.655 | 0.842 / 0.851 |
| In-house (JEPA) | 0.638 / 0.623 | 0.338 / 0.332 | 0.708 / 0.702 | 0.698 / 0.671 | 0.717 / 0.717 |
| Quantity | Value | Source (repository path:line) |
|---|---|---|
| raw-EEG probe, Lee2019 (v5 stage diagnostic) | 0.599 | docs/supplementary/experiment_results_summary.md:44 |
| v5 encoder-output probe (channel mixer) | 0.509 | docs/supplementary/experiment_results_summary.md:47 |
| v5 mixer query std at start | 0.020 | docs/_v1/history.md:322 |
| v5 mixer query std after 45K steps | 0.023 | docs/_v1/history.md:322 |
| steps over which the query std stayed flat | 45K | docs/_v1/history.md:322 |
| v5 run stopped | 55K | docs/_v1/history.md:322 |
EEG Foundation Models
Electroencephalography (EEG) foundation models learn reusable representations of brain signals for transfer across people, tasks, and recording setups.
See all 101 papers