Publish openmhc-brits-imp
Browse files- .gitattributes +1 -0
- BRITS.pypots +3 -0
- README.md +59 -0
- normalization_stats.json +54 -0
- openmhc_manifest.json +14 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
BRITS.pypots filter=lfs diff=lfs merge=lfs -text
|
BRITS.pypots
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:cbc55cd1d5ec7b237bfc4af7ea17520cc7460c3a94dc46d2527430e4468b1892
|
| 3 |
+
size 755886
|
README.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: openrail
|
| 3 |
+
library_name: openmhc
|
| 4 |
+
pipeline_tag: time-series-forecasting
|
| 5 |
+
tags:
|
| 6 |
+
- openmhc
|
| 7 |
+
- wearables
|
| 8 |
+
- myheartcounts
|
| 9 |
+
- time-series
|
| 10 |
+
- imputation
|
| 11 |
+
---
|
| 12 |
+
|
| 13 |
+
# OpenMHC BRITS
|
| 14 |
+
|
| 15 |
+
Paper-faithful checkpoint for the MyHeartCounts NeurIPS 2026 benchmark.
|
| 16 |
+
Window: daily (1440 minute), 19 sensor channels.
|
| 17 |
+
|
| 18 |
+
Wrapper around a PyPOTS-backed imputer fine-tuned on the MyHeartCounts imputation training split. Reconstructs masked daily sensor windows across 19 channels.
|
| 19 |
+
|
| 20 |
+
## Usage
|
| 21 |
+
|
| 22 |
+
```python
|
| 23 |
+
from openmhc.imputers import BRITSImputer
|
| 24 |
+
import openmhc
|
| 25 |
+
|
| 26 |
+
imp = BRITSImputer.from_release("hf://MyHeartCounts/openmhc-brits-imp")
|
| 27 |
+
results = openmhc.evaluate_imputation(imp, version="xs")
|
| 28 |
+
print(results.summary())
|
| 29 |
+
```
|
| 30 |
+
|
| 31 |
+
Requires the matching optional extra: `pip install 'openmhc[pypots,hf]'`.
|
| 32 |
+
|
| 33 |
+
Pin a specific revision with the `@` suffix once tags are published:
|
| 34 |
+
|
| 35 |
+
```python
|
| 36 |
+
BRITSImputer.from_release("hf://MyHeartCounts/openmhc-brits-imp@v1.0")
|
| 37 |
+
```
|
| 38 |
+
|
| 39 |
+
## Provenance
|
| 40 |
+
|
| 41 |
+
- Origin: W&B artifact `MHC_Dataset/mhc-pypots-brits/brits:v19`
|
| 42 |
+
- Validation: **val MAE 0.0945 (epoch 5)**
|
| 43 |
+
- Architecture hyperparameters are pinned in `openmhc_manifest.json`.
|
| 44 |
+
|
| 45 |
+
## License
|
| 46 |
+
|
| 47 |
+
Released under the OpenRAIL license. See the OpenMHC repository for use
|
| 48 |
+
restrictions tied to the underlying MyHeartCounts data agreement.
|
| 49 |
+
|
| 50 |
+
## Citation
|
| 51 |
+
|
| 52 |
+
```bibtex
|
| 53 |
+
@inproceedings{openmhc2026,
|
| 54 |
+
title = {MyHeartCounts: A wearable health benchmark},
|
| 55 |
+
author = {MyHeartCounts Datasets and Benchmarks team},
|
| 56 |
+
year = {2026},
|
| 57 |
+
booktitle = {NeurIPS Datasets and Benchmarks}
|
| 58 |
+
}
|
| 59 |
+
```
|
normalization_stats.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"means": [
|
| 3 |
+
3.4377125774570993,
|
| 4 |
+
2.4231732062945572,
|
| 5 |
+
0.002984406494767586,
|
| 6 |
+
4.6178514117082745,
|
| 7 |
+
3.4454098862010842,
|
| 8 |
+
1.2636600060041272,
|
| 9 |
+
365.18410085597213,
|
| 10 |
+
0.0,
|
| 11 |
+
0.0,
|
| 12 |
+
0.0,
|
| 13 |
+
0.0,
|
| 14 |
+
0.0,
|
| 15 |
+
0.0,
|
| 16 |
+
0.0,
|
| 17 |
+
0.0,
|
| 18 |
+
0.0,
|
| 19 |
+
0.0,
|
| 20 |
+
0.0,
|
| 21 |
+
0.0
|
| 22 |
+
],
|
| 23 |
+
"stds": [
|
| 24 |
+
13.58474518931735,
|
| 25 |
+
9.920902083109914,
|
| 26 |
+
0.06144717967362629,
|
| 27 |
+
14.910535945404058,
|
| 28 |
+
11.932367157970805,
|
| 29 |
+
0.30518451751903286,
|
| 30 |
+
861.7880860333772,
|
| 31 |
+
1.0,
|
| 32 |
+
1.0,
|
| 33 |
+
1.0,
|
| 34 |
+
1.0,
|
| 35 |
+
1.0,
|
| 36 |
+
1.0,
|
| 37 |
+
1.0,
|
| 38 |
+
1.0,
|
| 39 |
+
1.0,
|
| 40 |
+
1.0,
|
| 41 |
+
1.0,
|
| 42 |
+
1.0
|
| 43 |
+
],
|
| 44 |
+
"channels": [
|
| 45 |
+
0,
|
| 46 |
+
1,
|
| 47 |
+
2,
|
| 48 |
+
3,
|
| 49 |
+
4,
|
| 50 |
+
5,
|
| 51 |
+
6
|
| 52 |
+
],
|
| 53 |
+
"epsilon": 1e-08
|
| 54 |
+
}
|
openmhc_manifest.json
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"spec_version": 1,
|
| 3 |
+
"kind": "brits",
|
| 4 |
+
"checkpoint": "BRITS.pypots",
|
| 5 |
+
"normalization_stats": "normalization_stats.json",
|
| 6 |
+
"arch": {
|
| 7 |
+
"n_steps": 1440,
|
| 8 |
+
"n_features": 19,
|
| 9 |
+
"rnn_hidden_size": 128
|
| 10 |
+
},
|
| 11 |
+
"provenance": {
|
| 12 |
+
"wandb_artifact": "MHC_Dataset/mhc-pypots-brits/brits:v19"
|
| 13 |
+
}
|
| 14 |
+
}
|