Official implementation of the paper: xMAE "Physiology-Aware Masked Cross-Modal Reconstruction for Biosignal Representation Learning"(https://arxiv.org/abs/2605.00973)
.
├── cfg
│ └── xmae.yaml
├── preprocessing
│ └── process.py
├── utils
│ ├── helper_callbacks.py
│ ├── helper_dataloader.py
│ ├── helper_general.py
│ ├── helper_logger.py
│ ├── helper_models.py
│ ├── helper_read_h5.py
│ └── helper_trainer.py
├── model_arch
│ └── xmae.py
├── Dockerfile
├── eval_0_simple_example.ipynb
├── eval_1_pvc.ipynb
├── pretrain.py
├── pvc_10s_synth.h5
├── pvc_10s_synth_metadata.csv
├── README.md
└── xmae_weights_permute.pth
xMAE is built with Python 3.10+ with NVIDIA H200 GPUs; Please follow Dockerfile to replicate the enviroment.
-
We provide the script we used for processing the downloaded dataset in
preprocesing\process.py. You need to update the variablesS3_BUCKETandDOWNLOADED_DATAin the python file. This script includes our full signal preprocessing steps.
python pretrain.py -c xmae -e experiment-name > output.log
-c: reading cfg from cfg/xmae.yaml
-e: saving weights to the folder named experiment-name
eval_0_simple_example.ipynb: a minimal example to build, load xMAE and check its size, etc.eval_1_pvc.ipynb: a notebook to load and linear probe synthetic PVCs.
- We are unable to release weights and data due to industrial policy. Thus,
h5andpthfiles are made-up. - The preprocessing code, and pretrain code should allow interested parties to reproduce xMAE.
*.ipynbcan be seen for quick evaluation pipeline.
If you find this repo or our paper useful, please cite our work
@misc{xmae,
title={Physiology-Aware Masked Cross-Modal Reconstruction for Biosignal Representation Learning},
author={Hao Zhou and Simon A. Lee and Cyrus Tanade and Keum San Chun and Juhyeon Lee and Migyeong Gwak and Megha Thukral and Justin Sung and Eugene Hwang and Mehrab Bin Morshed and Li Zhu and Viswam Nathan and Md Mahbubur Rahman and Subramaniam Venkatraman and Sharanya Arcot Desai},
year={2026},
eprint={2605.00973},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2605.00973},
}
