--- library_name: braindecode license: mit pipeline_tag: feature-extraction tags: - braindecode - DIVER-1 - ieeg - seeg - eeg - foundation-model - pytorch_model_hub_mixin --- # DIVER-1, 0.1 s Tiny (iEEG) The released encoder of [Han et al. (2025)](https://arxiv.org/abs/2512.19097), the iEEG encoder DIVER-1-0.1s Tiny (patches of 0.1 s at 500 Hz, pretrained on intracranial recordings), 12.7M parameters, converted to [`braindecode.models.DIVER1`](https://braindecode.org/stable/generated/braindecode.models.DIVER1.html). Source: `weights/ieeg_pretrained_weights.pt` of [DIVER-Project/DIVER-1](https://github.com/DIVER-Project/DIVER-1/tree/25638eb38ef297b582ab79ae1c96260f57c155b3), sha256 `b812093779fb5cf1b76e18f8307df4136b67b008b6cd94c6be75fa286a87864c` (the GitHub LFS object is no longer served; the same file is in the authors' [Google Drive folder](https://drive.google.com/drive/folders/1Wmv36jifjE0Jj6noGOFFsqRzK-4xnj1b)). Conversion casts the bfloat16 tensors to float32, renames them and drops the pretraining-only mask token and reconstruction heads; `convert_diver1_weights.py` in this repository reproduces it. Encoder features match the official model to 0.0e+00 in float32 on CPU, for intracranial and scalp channels, with muP attention scaling (`mup_attention=True`). ## Usage Resample to 500 Hz and pass the electrode positions in `chs_info` (metres, as in MNE). The channel kinds set the modality: SEEG, ECoG and DBS are intracranial, EEG is scalp. ```python import torch from braindecode.models import DIVER1 model = DIVER1.from_pretrained( "braindecode/DIVER-1-0.1s-tiny", chs_info=raw.info["chs"], n_times=500, n_outputs=2 ) logits = model(torch.randn(8, len(raw.ch_names), 500)) ``` `n_times` must be a multiple of 50. The saved geometry is 6 channels and 500 samples; the encoder does not depend on it, so pass your own montage, `n_times` and `n_outputs` when loading. ## Limitations These files hold the encoder only; the release has no classification head. Braindecode initializes the head on load, so it needs fine-tuning, as in the paper's protocol (`scripts/finetune_neuroprobe.sh`). The check above covers float32 CPU encoder features, not downstream accuracy, GPU kernels or mixed precision. ## Citation ```bibtex @article{han2025diver, title={DIVER-1: Scaling intracranial EEG foundation models for transferable representations}, author={Han, Danny Dongyeop and Gwon, Yonghyeon and Lee, Ahhyun Lucy and Lee, Taeyang and Lee, Seong Jin and Choi, Jubin and Lee, Sebin and Bang, Jihyun and Lee, Seungju and Park, David Keetae and Yoo, Shinjae and Chung, Chun Kee and Cha, Jiook}, journal={arXiv preprint arXiv:2512.19097}, year={2025} } ``` ## License The weights are released by the DIVER Project under the MIT licence (`LICENSE`). Braindecode's code is BSD-3-Clause.