OpenMHC Benchmark
Wearable & mobile health benchmark on MyHeartCounts. Track 1 (predictive tasks) predicts weekly health outcomes — demographics, medical risk, vitals, mental well-being, and lifestyle — from 168-hour sensor embeddings. The generative tasks operate on the raw signals: Track 2a (imputation) reconstructs masked daily, minute-level signals, and Track 2b (forecasting) predicts future hourly signals. Each method is ranked by skill score vs a track baseline, computed live from the per-user evaluation substrate.
Track 1 · Predictive Tasks
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Demo. ↑ | Medical ↑ | Vitals ↑ | Mental ↑ | Lifestyle ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | LSM-2 | Wearable Foundation Models | 2.2 | +15.1 | +13.4 | +41.1 | -1.8 | +22.2 | +0.7 | +13.4 | 0.0 | OpenMHC team |
| 2 | XGBoost | Statistical Models | 3.5 | +11.6 | +8.3 | +46.9 | -1.4 | +13.6 | -8.5 | +7.3 | 0.0 | OpenMHC team |
| 3 | MultiRocket | Statistical Models | 3.7 | +7.1 | +4.6 | +27.7 | -4.5 | +5.6 | +0.2 | +6.6 | 0.0 | OpenMHC team |
| 4 | Linear (baseline) | Statistical Models | 4.4 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 5 | WBM | Wearable Foundation Models | 4.8 | +3.3 | -0.1 | +22.2 | -2.0 | +6.6 | -7.5 | -2.8 | 62.8 | OpenMHC team |
| 6 | GRU-D | Supervised Neural Models | 4.9 | +3.1 | +0.0 | +18.2 | -6.2 | +10.5 | -3.9 | -3.3 | 0.0 | OpenMHC team |
| 7 | Chronos-2 | Time-Series Foundation Models | 6.0 | -3.4 | -5.6 | +6.2 | -9.6 | -7.1 | -7.6 | +0.9 | 0.0 | OpenMHC team |
| 8 | Toto | Time-Series Foundation Models | 6.5 | -5.0 | -7.8 | -0.9 | -7.6 | -4.5 | -9.2 | -2.6 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Demo. ↑ | Medical ↑ | Vitals ↑ | Mental ↑ | Lifestyle ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | LSM-2 | Wearable Foundation Models | 2.3 | +14.3 | +13.4 | +23.4 | +5.4 | +21.5 | +4.2 | +17.0 | 0.0 | OpenMHC team |
| 2 | XGBoost | Statistical Models | 3.6 | +8.3 | +8.3 | +21.9 | +4.5 | +11.3 | -3.4 | +7.3 | 0.0 | OpenMHC team |
| 3 | MultiRocket | Statistical Models | 3.7 | +7.6 | +4.6 | +11.1 | +0.7 | +7.8 | +8.2 | +10.2 | 0.0 | OpenMHC team |
| 4 | WBM | Wearable Foundation Models | 4.5 | +4.7 | -0.1 | +12.5 | +2.3 | +8.8 | -0.9 | +0.7 | 62.8 | OpenMHC team |
| 5 | GRU-D | Supervised Neural Models | 5.2 | +3.0 | +0.0 | +8.0 | +0.1 | +7.4 | -1.4 | +1.1 | 0.0 | OpenMHC team |
| 6 | Chronos-2 | Time-Series Foundation Models | 5.3 | -2.7 | -5.6 | -7.5 | +1.3 | -9.2 | -3.3 | +5.4 | 0.0 | OpenMHC team |
| 7 | Linear (baseline) | Statistical Models | 5.6 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 8 | Toto | Time-Series Foundation Models | 5.7 | -2.8 | -7.8 | -13.7 | +0.4 | -0.9 | -2.5 | +2.8 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Demo. ↑ | Medical ↑ | Vitals ↑ | Mental ↑ | Lifestyle ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | LSM-2 | Wearable Foundation Models | 2.2 | +14.0 | +13.4 | +40.7 | -0.5 | +23.2 | +2.5 | +4.1 | 0.0 | OpenMHC team |
| 2 | XGBoost | Statistical Models | 3.5 | +11.6 | +8.3 | +49.9 | -0.7 | +15.5 | -7.5 | +0.8 | 0.0 | OpenMHC team |
| 3 | MultiRocket | Statistical Models | 4.3 | +5.7 | +4.6 | +32.6 | -2.4 | +5.4 | -2.8 | -4.3 | 0.0 | OpenMHC team |
| 4 | GRU-D | Supervised Neural Models | 4.4 | +2.8 | +0.0 | +20.4 | -4.4 | +13.5 | +0.3 | -16.1 | 0.0 | OpenMHC team |
| 5 | Linear (baseline) | Statistical Models | 4.4 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | WBM | Wearable Foundation Models | 5.0 | -0.1 | -0.1 | +23.3 | -1.3 | +4.9 | -10.9 | -16.5 | 62.8 | OpenMHC team |
| 7 | Chronos-2 | Time-Series Foundation Models | 5.7 | -5.6 | -5.6 | +5.0 | -10.1 | -5.5 | -6.0 | -11.2 | 0.0 | OpenMHC team |
| 8 | Toto | Time-Series Foundation Models | 6.4 | -7.8 | -7.8 | -0.6 | -7.7 | -5.3 | -9.3 | -16.3 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Demo. ↑ | Medical ↑ | Vitals ↑ | Mental ↑ | Lifestyle ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | LSM-2 | Wearable Foundation Models | 2.4 | +20.6 | +13.4 | +54.5 | +4.9 | +24.5 | +0.1 | +18.9 | 0.0 | OpenMHC team |
| 2 | XGBoost | Statistical Models | 3.3 | +14.6 | +8.3 | +56.3 | +3.4 | +18.1 | -16.9 | +12.1 | 0.0 | OpenMHC team |
| 3 | MultiRocket | Statistical Models | 4.0 | +12.3 | +4.6 | +39.9 | +10.3 | +8.8 | -6.3 | +8.6 | 0.0 | OpenMHC team |
| 4 | GRU-D | Supervised Neural Models | 4.7 | +5.2 | +0.0 | +19.1 | +2.7 | +12.7 | -5.8 | -2.8 | 0.0 | OpenMHC team |
| 5 | Linear (baseline) | Statistical Models | 4.9 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | WBM | Wearable Foundation Models | 5.5 | +1.5 | -0.1 | +22.8 | -3.6 | +8.7 | -18.5 | -1.9 | 62.8 | OpenMHC team |
| 7 | Toto | Time-Series Foundation Models | 5.5 | -2.1 | -7.8 | +26.2 | -7.9 | -14.7 | -17.8 | +3.9 | 0.0 | OpenMHC team |
| 8 | Chronos-2 | Time-Series Foundation Models | 5.8 | -3.5 | -5.6 | +23.8 | -9.6 | -19.7 | -18.6 | +6.7 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Demo. ↑ | Medical ↑ | Vitals ↑ | Mental ↑ | Lifestyle ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | LSM-2 | Wearable Foundation Models | 2.2 | +13.4 | +13.4 | +32.9 | -3.4 | +22.5 | +1.0 | +14.1 | 0.0 | OpenMHC team |
| 2 | XGBoost | Statistical Models | 3.5 | +10.0 | +8.3 | +37.3 | -3.9 | +13.9 | -6.1 | +8.6 | 0.0 | OpenMHC team |
| 3 | MultiRocket | Statistical Models | 4.1 | +4.6 | +4.6 | +14.6 | -7.2 | +6.3 | +0.7 | +8.4 | 0.0 | OpenMHC team |
| 4 | WBM | Wearable Foundation Models | 4.5 | +2.9 | -0.1 | +18.8 | -2.5 | +5.9 | -5.7 | -1.9 | 62.8 | OpenMHC team |
| 5 | Linear (baseline) | Statistical Models | 5.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | GRU-D | Supervised Neural Models | 5.2 | +0.0 | +0.0 | +4.1 | -7.9 | +9.0 | -2.4 | -2.6 | 0.0 | OpenMHC team |
| 7 | Toto | Time-Series Foundation Models | 5.7 | -0.4 | -7.8 | +14.8 | -8.2 | +0.8 | -7.8 | -1.4 | 0.0 | OpenMHC team |
| 8 | Chronos-2 | Time-Series Foundation Models | 5.7 | -0.5 | -5.6 | +12.8 | -10.4 | -1.8 | -5.1 | +2.0 | 0.0 | OpenMHC team |
Metric legend — Track 1 predicts weekly health outcomes from 168-hour sensor embeddings; scores are computed vs the Linear baseline.
R (Average Rank) — mean cross-method rank across the outcome tasks; 1 = best (lower is better).
S (Skill Score) — category-balanced % improvement over Linear across tasks (per-task AUPRC / Spearman / Pearson, paired-bootstrap mean); higher is better.
S_worst (Worst-subgroup skill) — the method's lowest skill score across the four demographic cohorts (age <40 / 40+, female / male): its performance for the worst-served subgroup; higher is better.
Demo. / Medical / Vitals / Mental / Lifestyle — per-category skill on that outcome group's tasks (Demographics; Medical Conditions & Risk; Vitals & Blood Biomarkers; Mental Well-Being; Sleep & Lifestyle), category-balanced like S.
Fallback — % of test predictions substituted by the Linear baseline when the method produced no valid output (lower is better).
Source: MyHeartCounts/OpenMHC-leaderboard-data.
Cohort — the selector above recomputes R, S, and the per-category skills within one demographic cohort (a near-median age split at 40, or sex); the count above each table is the cohort's evaluated users. S_worst is the minimum cohort skill across the four cohorts, so it reads the same in every view. Cohorts are smaller than the full population, so scores are noisier; tasks without enough users (or degenerate within the cohort) drop from the aggregates.
Track 2a · Imputation
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Semantic ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Single-day imputation | ||||||||||||
| 1 | LSM-2 (daily) | Neural | 3.8 | +61.4 | +59.4 | +40.0 | +31.4 | +90.0 | +94.9 | +30.2 | 0.0 | OpenMHC team |
| 2 | Linear | Statistical | 7.0 | +21.5 | +20.0 | +4.5 | +9.8 | +62.6 | +56.5 | -0.8 | 0.0 | OpenMHC team |
| 3 | BRITS | Neural | 7.8 | +6.8 | +0.4 | +18.8 | -28.5 | +39.0 | +28.0 | -5.7 | 0.0 | OpenMHC team |
| 4 | DLinear | Neural | 8.2 | -5.7 | -11.5 | +29.3 | -5.1 | -11.1 | +58.2 | -45.9 | 0.0 | OpenMHC team |
| 5 | LOCF (baseline) | Statistical | 8.4 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | Temporal mode | Statistical | 10.0 | -6.2 | -12.2 | +46.5 | -0.7 | -13.9 | -69.4 | -11.8 | 0.0 | OpenMHC team |
| 7 | Temporal mean | Statistical | 10.4 | -31.2 | -41.7 | -30.7 | -18.4 | +59.9 | -2.1 | -93.0 | 0.0 | OpenMHC team |
| 8 | Mode | Statistical | 10.6 | -27.3 | -31.5 | +46.5 | -0.8 | -380.7 | -69.4 | -12.0 | 0.0 | OpenMHC team |
| 9 | TimesNet | Neural | 10.9 | -66.0 | -79.1 | +9.6 | -18.6 | -216.2 | +0.4 | -103.2 | 0.0 | OpenMHC team |
| 10 | FEDformer | Neural | 11.3 | -53.7 | -64.1 | +28.9 | -14.6 | -214.6 | -53.7 | -67.7 | 0.0 | OpenMHC team |
| 11 | Mean | Statistical | 13.4 | -119.7 | -133.1 | -36.3 | -25.5 | -380.7 | -69.4 | -149.8 | 0.0 | OpenMHC team |
| Long-context imputation (≥ 7×1440 time steps) | ||||||||||||
| 1 | LSM-2-Sparse (7-day) | Neural | 3.3 | +64.7 | +63.1 | +41.0 | +34.6 | +92.2 | +95.7 | +34.6 | 0.0 | OpenMHC team |
| 2 | LSM-2 (7-day) | Neural | 5.5 | +46.9 | +44.4 | +16.7 | +19.0 | +85.6 | +90.6 | +8.7 | 0.0 | OpenMHC team |
| 3 | Pers. temp. mean | Statistical | 9.1 | -7.7 | -13.5 | +1.1 | -5.9 | +58.9 | +15.7 | -49.5 | 0.0 | OpenMHC team |
| 4 | DLinear (7-day) | Neural | 9.5 | -28.3 | -36.7 | +19.9 | -2.7 | -40.0 | +22.9 | -69.5 | 0.0 | OpenMHC team |
| 5 | Pers. mode | Statistical | 10.5 | -26.1 | -29.4 | +46.6 | +1.8 | -383.1 | -69.4 | -10.5 | 0.0 | OpenMHC team |
| 6 | Pers. mean | Statistical | 13.3 | -114.1 | -120.8 | -4.1 | -12.6 | -437.7 | -140.0 | -132.5 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Semantic ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Single-day imputation | ||||||||||||
| 1 | LSM-2 (daily) | Neural | 3.9 | +60.8 | +59.4 | +39.8 | +31.2 | +90.1 | +95.2 | +27.2 | 0.0 | OpenMHC team |
| 2 | Linear | Statistical | 6.9 | +21.7 | +20.0 | +4.0 | +9.4 | +62.2 | +59.2 | -1.4 | 0.0 | OpenMHC team |
| 3 | BRITS | Neural | 7.7 | +7.6 | +0.4 | +21.1 | -24.9 | +40.4 | +32.8 | -7.7 | 0.0 | OpenMHC team |
| 4 | DLinear | Neural | 8.1 | -5.4 | -11.5 | +29.5 | -3.2 | -15.4 | +64.1 | -50.0 | 0.0 | OpenMHC team |
| 5 | LOCF (baseline) | Statistical | 8.3 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | Temporal mode | Statistical | 10.1 | -6.5 | -12.2 | +46.5 | +1.1 | -21.4 | -60.3 | -12.6 | 0.0 | OpenMHC team |
| 7 | Temporal mean | Statistical | 10.5 | -35.2 | -41.7 | -29.3 | -17.0 | +58.8 | -0.9 | -105.3 | 0.0 | OpenMHC team |
| 8 | Mode | Statistical | 10.6 | -27.3 | -31.5 | +46.5 | +1.6 | -410.5 | -60.3 | -12.5 | 0.0 | OpenMHC team |
| 9 | TimesNet | Neural | 10.8 | -66.5 | -79.1 | +10.6 | -16.9 | -216.9 | +12.4 | -112.3 | 0.0 | OpenMHC team |
| 10 | FEDformer | Neural | 11.2 | -56.1 | -64.1 | +29.0 | -12.9 | -233.6 | -43.3 | -74.2 | 0.0 | OpenMHC team |
| 11 | Mean | Statistical | 13.4 | -123.8 | -133.1 | -34.6 | -23.7 | -410.5 | -60.3 | -160.6 | 0.0 | OpenMHC team |
| Long-context imputation (≥ 7×1440 time steps) | ||||||||||||
| 1 | LSM-2-Sparse (7-day) | Neural | 3.4 | +64.0 | +63.1 | +40.3 | +33.6 | +91.9 | +95.9 | +31.9 | 0.0 | OpenMHC team |
| 2 | LSM-2 (7-day) | Neural | 5.6 | +45.5 | +44.4 | +14.9 | +18.1 | +86.0 | +90.9 | +3.4 | 0.0 | OpenMHC team |
| 3 | DLinear (7-day) | Neural | 9.4 | -28.8 | -36.7 | +20.3 | -1.8 | -45.1 | +30.6 | -74.6 | 0.0 | OpenMHC team |
| 4 | Pers. temp. mean | Statistical | 9.4 | -13.5 | -13.5 | -3.5 | -8.4 | +56.0 | +16.8 | -61.0 | 0.0 | OpenMHC team |
| 5 | Pers. mode | Statistical | 10.5 | -25.7 | -29.4 | +46.5 | +3.7 | -413.2 | -60.3 | -10.1 | 0.0 | OpenMHC team |
| 6 | Pers. mean | Statistical | 13.3 | -119.1 | -120.8 | -8.0 | -13.4 | -467.4 | -119.1 | -143.1 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Semantic ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Single-day imputation | ||||||||||||
| 1 | LSM-2 (daily) | Neural | 3.8 | +61.4 | +59.4 | +40.0 | +31.7 | +89.9 | +94.7 | +31.0 | 0.0 | OpenMHC team |
| 2 | Linear | Statistical | 7.0 | +21.5 | +20.0 | +5.1 | +10.3 | +62.8 | +55.3 | -0.5 | 0.0 | OpenMHC team |
| 3 | BRITS | Neural | 7.9 | +5.6 | +0.4 | +16.3 | -32.2 | +37.7 | +26.9 | -5.8 | 0.0 | OpenMHC team |
| 4 | DLinear | Neural | 8.2 | -6.5 | -11.5 | +28.9 | -7.1 | -8.5 | +55.0 | -45.3 | 0.0 | OpenMHC team |
| 5 | LOCF (baseline) | Statistical | 8.5 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | Temporal mode | Statistical | 10.0 | -6.8 | -12.2 | +46.3 | -3.2 | -9.4 | -74.2 | -12.5 | 0.0 | OpenMHC team |
| 7 | Temporal mean | Statistical | 10.3 | -29.5 | -41.7 | -32.1 | -19.9 | +61.0 | -1.2 | -88.5 | 0.0 | OpenMHC team |
| 8 | Mode | Statistical | 10.6 | -28.1 | -31.5 | +46.3 | -3.6 | -364.6 | -74.2 | -12.7 | 0.0 | OpenMHC team |
| 9 | TimesNet | Neural | 11.0 | -66.9 | -79.1 | +8.6 | -20.6 | -214.0 | -6.3 | -101.2 | 0.0 | OpenMHC team |
| 10 | FEDformer | Neural | 11.3 | -53.6 | -64.1 | +28.5 | -16.6 | -204.3 | -59.9 | -66.3 | 0.0 | OpenMHC team |
| 11 | Mean | Statistical | 13.5 | -118.9 | -133.1 | -38.1 | -27.5 | -364.6 | -74.2 | -146.6 | 0.0 | OpenMHC team |
| Long-context imputation (≥ 7×1440 time steps) | ||||||||||||
| 1 | LSM-2-Sparse (7-day) | Neural | 3.2 | +64.9 | +63.1 | +41.3 | +35.6 | +92.3 | +95.5 | +35.1 | 0.0 | OpenMHC team |
| 2 | LSM-2 (7-day) | Neural | 5.4 | +47.5 | +44.4 | +18.2 | +20.1 | +85.4 | +90.4 | +10.8 | 0.0 | OpenMHC team |
| 3 | Pers. temp. mean | Statistical | 8.9 | -4.3 | -13.5 | +4.0 | -3.9 | +61.7 | +18.0 | -45.4 | 0.0 | OpenMHC team |
| 4 | DLinear (7-day) | Neural | 9.5 | -28.7 | -36.7 | +19.5 | -4.0 | -36.9 | +18.8 | -68.8 | 0.0 | OpenMHC team |
| 5 | Pers. mode | Statistical | 10.6 | -27.2 | -29.4 | +46.3 | -0.4 | -366.8 | -74.2 | -11.8 | 0.0 | OpenMHC team |
| 6 | Pers. mean | Statistical | 13.4 | -112.2 | -120.8 | -1.8 | -12.2 | -420.2 | -147.6 | -129.9 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Semantic ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Single-day imputation | ||||||||||||
| 1 | LSM-2 (daily) | Neural | 3.9 | +59.4 | +59.4 | +38.4 | +31.5 | +89.4 | +94.7 | +25.2 | 0.0 | OpenMHC team |
| 2 | Linear | Statistical | 7.0 | +20.0 | +20.0 | +5.6 | +10.8 | +63.6 | +55.2 | -5.1 | 0.0 | OpenMHC team |
| 3 | BRITS | Neural | 7.9 | +0.4 | +0.4 | +15.0 | -33.7 | +37.1 | +23.6 | -15.4 | 0.0 | OpenMHC team |
| 4 | DLinear | Neural | 8.1 | -11.5 | -11.5 | +27.2 | -4.5 | -15.4 | +57.0 | -58.6 | 0.0 | OpenMHC team |
| 5 | LOCF (baseline) | Statistical | 8.3 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | Temporal mode | Statistical | 10.2 | -12.2 | -12.2 | +45.7 | -4.6 | -20.5 | -82.0 | -19.2 | 0.0 | OpenMHC team |
| 7 | Temporal mean | Statistical | 10.6 | -41.7 | -41.7 | -35.6 | -19.6 | +55.0 | -6.6 | -113.9 | 0.0 | OpenMHC team |
| 8 | Mode | Statistical | 10.6 | -31.5 | -31.5 | +45.7 | -2.9 | -365.9 | -82.0 | -17.1 | 0.0 | OpenMHC team |
| 9 | TimesNet | Neural | 11.0 | -79.1 | -79.1 | +6.2 | -19.1 | -207.4 | -18.9 | -125.6 | 0.0 | OpenMHC team |
| 10 | FEDformer | Neural | 11.4 | -64.1 | -64.1 | +26.6 | -16.6 | -206.4 | -66.5 | -86.2 | 0.0 | OpenMHC team |
| 11 | Mean | Statistical | 13.4 | -133.1 | -133.1 | -41.9 | -26.4 | -365.9 | -82.0 | -175.1 | 0.0 | OpenMHC team |
| Long-context imputation (≥ 7×1440 time steps) | ||||||||||||
| 1 | LSM-2-Sparse (7-day) | Neural | 3.2 | +63.1 | +63.1 | +40.3 | +35.8 | +91.7 | +95.3 | +30.5 | 0.0 | OpenMHC team |
| 2 | LSM-2 (7-day) | Neural | 5.4 | +44.4 | +44.4 | +18.0 | +22.4 | +84.0 | +89.6 | +3.8 | 0.0 | OpenMHC team |
| 3 | Pers. temp. mean | Statistical | 8.9 | -10.8 | -13.5 | +6.0 | -1.0 | +55.4 | +4.8 | -54.1 | 0.0 | OpenMHC team |
| 4 | DLinear (7-day) | Neural | 9.6 | -36.7 | -36.7 | +17.6 | -3.4 | -48.0 | +20.5 | -86.8 | 0.0 | OpenMHC team |
| 5 | Pers. mode | Statistical | 10.4 | -29.4 | -29.4 | +45.7 | +1.1 | -368.0 | -82.0 | -14.4 | 0.0 | OpenMHC team |
| 6 | Pers. mean | Statistical | 13.2 | -120.8 | -120.8 | +0.1 | -9.0 | -429.7 | -165.7 | -146.3 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Semantic ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Single-day imputation | ||||||||||||
| 1 | LSM-2 (daily) | Neural | 3.9 | +62.1 | +59.4 | +40.7 | +31.5 | +90.3 | +95.0 | +32.1 | 0.0 | OpenMHC team |
| 2 | Linear | Statistical | 7.0 | +21.8 | +20.0 | +4.2 | +9.5 | +61.9 | +57.1 | +0.3 | 0.0 | OpenMHC team |
| 3 | BRITS | Neural | 7.7 | +9.3 | +0.4 | +20.3 | -26.8 | +40.7 | +28.4 | -1.6 | 0.0 | OpenMHC team |
| 4 | DLinear | Neural | 8.2 | -3.8 | -11.5 | +29.9 | -4.8 | -9.4 | +58.8 | -42.0 | 0.0 | OpenMHC team |
| 5 | LOCF (baseline) | Statistical | 8.4 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 6 | Temporal mode | Statistical | 9.9 | -3.4 | -12.2 | +47.1 | +0.7 | -10.4 | -65.4 | -7.9 | 0.0 | OpenMHC team |
| 7 | Temporal mean | Statistical | 10.3 | -27.5 | -41.7 | -30.0 | -17.8 | +62.8 | -1.2 | -86.6 | 0.0 | OpenMHC team |
| 8 | Mode | Statistical | 10.6 | -25.2 | -31.5 | +47.1 | +0.2 | -392.2 | -65.4 | -8.9 | 0.0 | OpenMHC team |
| 9 | TimesNet | Neural | 10.9 | -62.5 | -79.1 | +10.3 | -18.1 | -222.5 | +5.6 | -97.0 | 0.0 | OpenMHC team |
| 10 | FEDformer | Neural | 11.2 | -50.3 | -64.1 | +29.8 | -13.5 | -220.6 | -49.3 | -61.6 | 0.0 | OpenMHC team |
| 11 | Mean | Statistical | 13.4 | -116.5 | -133.1 | -35.5 | -24.9 | -392.2 | -65.4 | -143.3 | 0.0 | OpenMHC team |
| Long-context imputation (≥ 7×1440 time steps) | ||||||||||||
| 1 | LSM-2-Sparse (7-day) | Neural | 3.4 | +65.3 | +63.1 | +41.5 | +34.3 | +92.2 | +95.8 | +36.2 | 0.0 | OpenMHC team |
| 2 | LSM-2 (7-day) | Neural | 5.6 | +47.7 | +44.4 | +16.4 | +18.2 | +86.1 | +91.0 | +10.0 | 0.0 | OpenMHC team |
| 3 | Pers. temp. mean | Statistical | 9.2 | -6.1 | -13.5 | +0.0 | -7.2 | +60.5 | +19.0 | -47.0 | 0.0 | OpenMHC team |
| 4 | DLinear (7-day) | Neural | 9.4 | -25.8 | -36.7 | +20.3 | -2.1 | -37.5 | +23.5 | -64.5 | 0.0 | OpenMHC team |
| 5 | Pers. mode | Statistical | 10.6 | -24.4 | -29.4 | +47.1 | +2.2 | -394.5 | -65.4 | -7.9 | 0.0 | OpenMHC team |
| 6 | Pers. mean | Statistical | 13.4 | -112.2 | -120.8 | -5.0 | -13.2 | -445.7 | -131.8 | -128.7 | 0.0 | OpenMHC team |
Metric legend — scores are computed live vs the LOCF (last-observation-carried-forward) baseline.
R (Average Rank) — mean cross-method rank across all masking-scenario × channel tasks; 1 = best (lower is better).
S (Skill Score) — overall % reduction in reconstruction error vs LOCF (paired per-user geometric mean across tasks); higher is better.
S_worst (Worst-subgroup skill) — the method's lowest skill score across the four demographic cohorts (age <40 / 40+, female / male): its performance for the worst-served subgroup; higher is better.
Activity / Physio. / Sleep / Workout — per-category skill on that sensor group's channels (activity = steps, distance, flights; physiology = heart rate, active energy; sleep = asleep / in-bed; workout = the 10 workout-type channels).
Semantic — skill on the three structured-gap masking scenarios (sleep gap, workout gap, intensity failure).
Fallback — % of imputed values substituted by the LOCF baseline when the method produced no valid output (lower is better).
Source: MyHeartCounts/OpenMHC-leaderboard-data.
Cohort — the selector above recomputes R, S, and the per-category skills within one demographic cohort (a near-median age split at 40, or sex); the count above each table is the cohort's evaluated users. S_worst is the minimum cohort skill across the four cohorts, so it reads the same in every view. Cohorts are smaller than the full population, so scores are noisier; tasks without enough users (or degenerate within the cohort) drop from the aggregates.
Track 2b · Forecasting
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Chronos-2 (fine-tuned) | Foundation Model | 3.6 | +37.6 | +34.9 | +30.7 | +26.9 | +63.9 | +17.0 | 0.0 | OpenMHC team |
| 2 | Chronos-2 (zero-shot) | Foundation Model | 4.2 | +36.4 | +34.1 | +30.5 | +26.5 | +62.3 | +14.8 | 0.0 | OpenMHC team |
| 3 | SegRNN | Deep Learning | 4.4 | +34.6 | +33.4 | +25.4 | +20.8 | +68.2 | +2.5 | 0.0 | OpenMHC team |
| 4 | DLinear | Deep Learning | 4.6 | +35.9 | +33.8 | +25.0 | +16.5 | +71.5 | +5.5 | 0.0 | OpenMHC team |
| 5 | Toto (fine-tuned, ctx4096) | Foundation Model | 4.7 | +30.9 | +28.7 | +29.5 | +26.1 | +46.1 | +18.8 | 0.0 | OpenMHC team |
| 6 | Toto (zero-shot, ctx4096) | Foundation Model | 5.5 | +26.8 | +24.6 | +29.2 | +6.8 | +50.5 | +11.9 | 0.0 | OpenMHC team |
| 7 | MixLinear | Deep Learning | 5.7 | +29.2 | +27.7 | +23.4 | +13.4 | +64.6 | -7.2 | 0.0 | OpenMHC team |
| 8 | AutoETS | Statistical | 7.1 | +14.3 | +11.7 | +0.6 | -26.8 | +37.6 | +31.4 | 0.0 | OpenMHC team |
| 9 | AutoARIMA | Statistical | 7.6 | +5.9 | +4.1 | -1.8 | -9.0 | +7.0 | +24.0 | 0.0 | OpenMHC team |
| 10 | Seasonal Naive (baseline) | Statistical | 7.7 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Chronos-2 (fine-tuned) | Foundation Model | 3.7 | +34.9 | +34.9 | +29.6 | +25.7 | +63.6 | +5.8 | 0.0 | OpenMHC team |
| 2 | SegRNN | Deep Learning | 4.2 | +34.4 | +33.4 | +25.2 | +18.4 | +68.2 | +4.7 | 0.0 | OpenMHC team |
| 3 | Chronos-2 (zero-shot) | Foundation Model | 4.3 | +34.1 | +34.1 | +29.3 | +25.3 | +61.9 | +6.4 | 0.0 | OpenMHC team |
| 4 | Toto (fine-tuned, ctx4096) | Foundation Model | 4.6 | +31.4 | +28.7 | +28.6 | +25.5 | +47.5 | +20.5 | 0.0 | OpenMHC team |
| 5 | DLinear | Deep Learning | 4.7 | +33.8 | +33.8 | +24.6 | +13.1 | +70.6 | +0.3 | 0.0 | OpenMHC team |
| 6 | Toto (zero-shot, ctx4096) | Foundation Model | 5.6 | +24.6 | +24.6 | +28.0 | +4.7 | +49.1 | +7.6 | 0.0 | OpenMHC team |
| 7 | MixLinear | Deep Learning | 5.6 | +27.7 | +27.7 | +23.1 | +9.8 | +64.7 | -11.4 | 0.0 | OpenMHC team |
| 8 | AutoETS | Statistical | 7.1 | +11.7 | +11.7 | -1.7 | -25.6 | +36.3 | +25.3 | 0.0 | OpenMHC team |
| 9 | Seasonal Naive (baseline) | Statistical | 7.5 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| 10 | AutoARIMA | Statistical | 7.6 | +4.1 | +4.1 | -1.7 | -10.3 | +5.0 | +20.6 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Chronos-2 (fine-tuned) | Foundation Model | 3.4 | +40.3 | +34.9 | +31.5 | +27.7 | +64.2 | +28.3 | 0.0 | OpenMHC team |
| 2 | Chronos-2 (zero-shot) | Foundation Model | 4.1 | +38.7 | +34.1 | +31.3 | +27.3 | +62.8 | +23.8 | 0.0 | OpenMHC team |
| 3 | SegRNN | Deep Learning | 4.5 | +34.3 | +33.4 | +25.6 | +22.4 | +68.2 | -1.3 | 0.0 | OpenMHC team |
| 4 | DLinear | Deep Learning | 4.5 | +38.0 | +33.8 | +25.3 | +18.8 | +72.2 | +12.7 | 0.0 | OpenMHC team |
| 5 | Toto (fine-tuned, ctx4096) | Foundation Model | 4.8 | +30.6 | +28.7 | +30.1 | +26.5 | +45.5 | +17.3 | 0.0 | OpenMHC team |
| 6 | Toto (zero-shot, ctx4096) | Foundation Model | 5.4 | +28.1 | +24.6 | +30.1 | +8.2 | +51.6 | +14.2 | 0.0 | OpenMHC team |
| 7 | MixLinear | Deep Learning | 5.7 | +31.3 | +27.7 | +23.7 | +15.6 | +64.6 | +2.0 | 0.0 | OpenMHC team |
| 8 | AutoETS | Statistical | 7.1 | +16.6 | +11.7 | +2.4 | -27.7 | +38.4 | +36.9 | 0.0 | OpenMHC team |
| 9 | AutoARIMA | Statistical | 7.7 | +7.8 | +4.1 | -2.0 | -8.2 | +10.0 | +27.1 | 0.0 | OpenMHC team |
| 10 | Seasonal Naive (baseline) | Statistical | 7.9 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Chronos-2 (fine-tuned) | Foundation Model | 3.7 | +37.1 | +34.9 | +32.5 | +26.6 | +64.2 | +11.7 | 0.0 | OpenMHC team |
| 2 | SegRNN | Deep Learning | 4.1 | +37.8 | +33.4 | +26.2 | +23.4 | +70.2 | +11.2 | 0.0 | OpenMHC team |
| 3 | Chronos-2 (zero-shot) | Foundation Model | 4.3 | +36.2 | +34.1 | +32.3 | +26.2 | +62.7 | +11.0 | 0.0 | OpenMHC team |
| 4 | DLinear | Deep Learning | 4.6 | +36.8 | +33.8 | +25.6 | +19.9 | +72.9 | +1.5 | 0.0 | OpenMHC team |
| 5 | Toto (fine-tuned, ctx4096) | Foundation Model | 4.7 | +28.7 | +28.7 | +31.6 | +26.6 | +46.1 | +4.6 | 0.0 | OpenMHC team |
| 6 | Toto (zero-shot, ctx4096) | Foundation Model | 5.4 | +27.9 | +24.6 | +31.4 | +7.0 | +51.4 | +13.0 | 0.0 | OpenMHC team |
| 7 | MixLinear | Deep Learning | 5.5 | +31.7 | +27.7 | +24.1 | +16.7 | +64.6 | +2.6 | 0.0 | OpenMHC team |
| 8 | AutoETS | Statistical | 7.1 | +13.3 | +11.7 | +2.8 | -23.0 | +38.5 | +23.2 | 0.0 | OpenMHC team |
| 9 | AutoARIMA | Statistical | 7.7 | +4.5 | +4.1 | -0.5 | -8.8 | +11.8 | +13.9 | 0.0 | OpenMHC team |
| 10 | Seasonal Naive (baseline) | Statistical | 7.8 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
| # | Method | Type ▾ | R ↓ | S ↑ | S_worst ↑ | Activity ↑ | Physio. ↑ | Sleep ↑ | Workout ↑ | Fallback ↓ | Submitter |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Chronos-2 (fine-tuned) | Foundation Model | 3.5 | +37.3 | +34.9 | +29.9 | +26.9 | +63.7 | +17.1 | 0.0 | OpenMHC team |
| 2 | Chronos-2 (zero-shot) | Foundation Model | 4.2 | +36.2 | +34.1 | +29.8 | +26.5 | +62.1 | +15.4 | 0.0 | OpenMHC team |
| 3 | SegRNN | Deep Learning | 4.4 | +33.4 | +33.4 | +25.3 | +19.5 | +67.7 | -1.3 | 0.0 | OpenMHC team |
| 4 | DLinear | Deep Learning | 4.6 | +35.7 | +33.8 | +25.0 | +14.9 | +71.3 | +6.3 | 0.0 | OpenMHC team |
| 5 | Toto (fine-tuned, ctx4096) | Foundation Model | 4.7 | +31.6 | +28.7 | +28.8 | +25.8 | +46.1 | +23.0 | 0.0 | OpenMHC team |
| 6 | Toto (zero-shot, ctx4096) | Foundation Model | 5.5 | +26.2 | +24.6 | +28.3 | +6.3 | +49.9 | +11.8 | 0.0 | OpenMHC team |
| 7 | MixLinear | Deep Learning | 5.7 | +28.1 | +27.7 | +23.2 | +11.7 | +64.5 | -11.0 | 0.0 | OpenMHC team |
| 8 | AutoETS | Statistical | 7.1 | +14.0 | +11.7 | -0.0 | -27.3 | +36.4 | +32.5 | 0.0 | OpenMHC team |
| 9 | AutoARIMA | Statistical | 7.6 | +5.9 | +4.1 | -2.2 | -9.2 | +5.6 | +25.8 | 0.0 | OpenMHC team |
| 10 | Seasonal Naive (baseline) | Statistical | 7.7 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | OpenMHC team |
Metric legend — scores are computed live vs the Seasonal Naive baseline (24-hour-ahead forecasting; MAE on continuous channels, AUROC on binary).
R (Average Rank) — mean cross-method rank across channel tasks; 1 = best (lower is better).
S (Skill Score) — overall category-balanced % reduction in forecast error vs Seasonal Naive (paired per-user geometric mean); higher is better.
S_worst (Worst-subgroup skill) — the method's lowest skill score across the four demographic cohorts (age <40 / 40+, female / male): its performance for the worst-served subgroup; higher is better.
Activity / Physio. / Sleep / Workout — per-category skill on that sensor group's channels (activity = steps, distance, flights; physiology = heart rate, active energy; sleep = asleep / in-bed; workout = the 10 workout-type channels).
Fallback — % of forecasts substituted by the Seasonal Naive baseline when the model produced no valid output (lower is better).
Source: MyHeartCounts/OpenMHC-leaderboard-data.
Cohort — the selector above recomputes R, S, and the per-category skills within one demographic cohort (a near-median age split at 40, or sex); the count above each table is the cohort's evaluated users. S_worst is the minimum cohort skill across the four cohorts, so it reads the same in every view. Cohorts are smaller than the full population, so scores are noisier; tasks without enough users (or degenerate within the cohort) drop from the aggregates.
Submit your model
Add a method by opening a pull request on the
OpenMHC leaderboard dataset
that adds your per-user evaluation substrate
(<track>/<method>.parquet) plus a small
<method>.meta.json sidecar. Produce the substrate by running the OpenMHC
eval with output_dir=…; the maintainers recompute the skill,
rank, and worst-subgroup scores from it. See the
step-by-step submission guide
for the exact file schema.