BaRISTA, coords scale
The released BaRISTA encoder of Oganesian, Hashemi and Shanechi
(2025) for the coords spatial scale,
converted to
braindecode.models.BaRISTA.
Source: pretrained_models/chans_chans.ckpt at revision
83b27375eba60e9eba9da4e7dd8fb283baace376,
sha256 400eeacc0697004cb81c9ecf754859da184ffeea40afc8ee7b5930c3b997e1d0. Conversion renames tensors and fuses the released gated
projections into the single projection this port uses; convert_barista_weights.py
in this repository reproduces it. Encoder tokens match the released forward
equations to 5.6e-06 in float32 on CPU.
Training data
The data that shaped these weights. The ids are the datasets: field of this card,
which braindecode reads into model.card_data.datasets when you call
from_pretrained (MOABB class names for MOABB datasets, OpenNeuro / NEMAR
accessions, Hub ids otherwise). nm/on ids are datasets on NEMAR
(on = NEMAR's copy of the OpenNeuro dataset with the same number). Rows marked
private: are data the authors did not release; they are not in datasets:.
datasets: id |
Dataset | Stage | Modality |
|---|---|---|---|
nm000253 |
Brain Treebank: large-scale intracranial recordings from naturalistic language stimuli (Wang et al., NeurIPS 2024 D&B; 10 subjects, 26 movie sessions, ~43.5 h sEEG) | pretraining | iEEG |
- masked latent token reconstruction, 'coords' spatial scale; 17 of 26 sessions, 2 validation and 7 test sessions held out
- Sources: arXiv:2512.12135 (NeurIPS 2025) Section 4.1; arXiv:2512.12135 Section 4.1; https://github.com/ShanechiLab/BaRISTA/blob/83b27375eba60e9eba9da4e7dd8fb283baace376/README.md.
Usage
Supply the montage of each batch as spatial_indices, an (n_chans, 3) tensor of grid coordinates in [0, 200):
import torch
from braindecode.models import BaRISTA
model = BaRISTA.from_pretrained("braindecode/BaRISTA-coords", n_chans=64, n_outputs=2)
logits = model(torch.randn(8, 64, 6144), spatial_indices=torch.randint(0, 200, (64, 3)))
The saved geometry is 64 channels and 6144 samples at 2048 Hz, the
pretraining window. Mean pooling makes the encoder independent of both, so pass
your own n_chans, n_times and n_outputs when loading.
Limitations
These files hold the encoder only, as does the release. Braindecode
initializes the classification head on load, so it needs fine-tuning, as does
the learned read-out of the paper's protocol (pooling="learned"), which was
never released. The check
above covers float32 CPU encoder tokens, not downstream accuracy, GPU kernels or
mixed precision.
Citation
@inproceedings{oganesian2025barista,
title={BaRISTA: Brain Scale Informed Spatiotemporal Representation of Human Intracranial Neural Activity},
author={Oganesian, Lucine L. and Hashemi, Saba and Shanechi, Maryam M.},
booktitle={Advances in Neural Information Processing Systems},
year={2025}
}
License
Copyright (c) 2025 University of Southern California. Educational, research and
non-profit use only; commercial use requires an agreement with the USC Stevens
Center for Innovation. See NOTICE.txt and the original licence.
Cite Braindecode
If you use this braindecode port in scientific work, cite the software on Zenodo, doi:10.5281/zenodo.17699192, and the original model and datasets cited above.
@software{braindecode,
author = {Aristimunha, Bruno and
Guetschel, Pierre and
Wimpff, Martin and
Gemein, Lukas and
Rommel, Cedric and
Banville, Hubert and
Sliwowski, Maciej and
Wilson, Daniel and
Brandt, Simon and
Gnassounou, Théo and
Paillard, Joseph and
{Junqueira Lopes}, Bruna and
Sedlar, Sara and
Moreau, Thomas and
Chevallier, Sylvain and
Gramfort, Alexandre and
Schirrmeister, Robin Tibor},
title = {Braindecode: toolbox for decoding raw electrophysiological brain data
with deep learning models},
url = {https://github.com/braindecode/braindecode},
doi = {10.5281/zenodo.17699192},
publisher = {Zenodo},
license = {BSD-3-Clause},
}
- Downloads last month
- 1,439