Task metadata
| Field |
Value |
| Task ID |
E07 |
| Category |
Evaluation |
| Priority |
High |
| Complexity |
Medium |
| Est. days |
2 |
| Blocked by |
M10 |
Features / method
Canonical missing-modality rerun with bootstrap confidence intervals and persisted per-example predictions.
Description
results/missing_modality.json carries its own caveat: the numbers are point estimates transcribed from the E02 evaluation, with bootstrap CIs pending a canonical rerun. Per-example predictions were never saved, which is why CIs could not be computed after the fact.
Rerun scripts/evaluate_missing_modality.py against the canonical fused checkpoint from M10 and fix that properly.
Steps:
- Score the canonical fused checkpoint under all three conditions (
full, echo_dropped, ecg_dropped) on the manifest test split.
- Persist per-example predictions alongside the aggregate metrics, not just the summary numbers.
- Compute bootstrap CIs for MAE and EF<=40% AUROC in every condition.
- Regenerate the degradation curve figure (E02) from the new predictions.
- Record the masking strategy used, and resolve the open decision in TECHNICAL.md 11 (zero-out vs learned null token vs branch dropout) with the reason written down.
Acceptance criteria:
results/missing_modality.json replaced with a run that includes CIs and a provenance field naming the checkpoint, embedding source, seed, and device.
- Per-example predictions written to disk and reusable by E08, E09, and E10 without rescoring.
- Degradation curve regenerated from real predictions.
- No transcribed numbers anywhere in the output.
Task metadata
E07Features / method
Canonical missing-modality rerun with bootstrap confidence intervals and persisted per-example predictions.
Description
results/missing_modality.jsoncarries its own caveat: the numbers are point estimates transcribed from the E02 evaluation, with bootstrap CIs pending a canonical rerun. Per-example predictions were never saved, which is why CIs could not be computed after the fact.Rerun
scripts/evaluate_missing_modality.pyagainst the canonical fused checkpoint from M10 and fix that properly.Steps:
full,echo_dropped,ecg_dropped) on the manifest test split.Acceptance criteria:
results/missing_modality.jsonreplaced with a run that includes CIs and a provenance field naming the checkpoint, embedding source, seed, and device.