braindecode/SleepFM
SleepFM — pretrained encoder
Mirror of the official SleepFM encoder checkpoint, re-hosted for stable loading from Braindecode.
SleepFM is a multimodal polysomnography (PSG) foundation model introduced in:
R. Thapa et al., "A multimodal sleep foundation model for disease prediction," Nature Medicine (2026). https://doi.org/10.1038/s41591-025-04133-4
The downstream sleep stager lives in a separate repository, `braindecode/SleepFMStager`, because a Braindecode config.json describes exactly one architecture.
Files
model.safetensors holds the same tensors as model_base/best.pt; only the keys were rewritten (the module. prefix of the distributed training run stripped, and positional_encoding.pe renamed) so that the library needs no remapping code at load time. Loading either way gives bit-identical outputs.
Note that the released encoder is contrastive and carries no classification head: final_layer is randomly initialised and must be fine-tuned.
Usage
from braindecode.models import SleepFM
# Defaults to this repository.
model = SleepFM.from_pretrained(n_chans=4, n_outputs=5, n_times=3840, sfreq=128)
model.eval()Input must be sampled at 128 Hz; the reference patch_size=640 is a 5-second patch at that rate. A channel mask of shape (batch, n_chans) marks missing channels with True.
License & attribution
- License: Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0).
- Copyright (c) 2025 Rahul Thapa.
- Upstream source: https://github.com/zou-group/sleepfm-clinical
These weights are not covered by Braindecode's BSD-3 license and inherit the upstream noncommercial terms. Re-hosted for reproducibility and stable availability only; attribution and the CC BY-NC 4.0 restriction are preserved.
