Add competing-risk evaluation and align ICASSP story

This commit is contained in:
Xin Wang
2026-09-10 11:12:02 +08:00
parent 0abefd6f77
commit 4b7d2c0c20
30 changed files with 3420 additions and 724 deletions

View File

@@ -124,23 +124,29 @@ result.
### Current blocker
`evaluate_floor_state_changes.py` counts a wearer transition anywhere in a
fixed response window. Before this becomes the paper event protocol, add
competing-risk censoring:
`evaluate_floor_state_changes.py` now implements and unit-tests the required
competing-risk attribution: an other-offset response window ends before the
next other onset, and an other-onset yield window ends before the next other
offset. It also supports disjoint training-side threshold calibration, rejects
official-test calibration on Sessions 1--3, reports false-entry/false-stop
counts, and prints auditable timelines.
- an other-offset response window ends at the next other onset;
- an other-onset yield window ends at the next other offset.
Until then, EOT/HOLD, response and yield results are proxy diagnostics, not
semantic event ground truth.
P0 is still not frozen. The remaining blocker is a real-data audit: run the v2
evaluator on saved calibration/test predictions, inspect event timelines and
censoring/invalid counts, independently review sampled events, and freeze the
scenario definitions. These values remain timing-derived behavior proxies,
not semantic EOT/INT or addressee ground truth. See the
[`runbook`](docs/easycom_competing_risk_floor_evaluation.md).
### Next experiment gates
The user has temporarily chosen to run the dense-AP model screen while P0 is
unfinished. This does not relax the paper claim: event numbers remain proxy
diagnostics until competing-risk censoring is fixed.
diagnostics until the v2 attribution, calibration and scenario audit is frozen
on real data.
1. **P0:** fix/freeze event attribution, splits and scenario definitions.
1. **P0:** run and audit competing-risk v2, then freeze event attribution,
calibration, splits and scenario definitions.
2. **P1:** confirm the aggregate/per-person oracle screen over seeds 1--2,
then train a causal visible-person active-speaker/floor-evidence estimator;
compare correct, wrong-person and time-shifted visual inputs.