Freeze unseen music stress corpus and independently verified gated DTW experiment

This commit is contained in:
karl committed 2026-10-13 18:51:50 +02:00
1 parent 5ab24518b4
commit d27be302c8
14 files changed
+1305 -6

No files matched your search

+33
View File
@@ -36,3 +36,36 @@ VAD report. It preserves all five competitors, no-speech status, original source
intervals and raw ASR logs. `compare.py BASELINE GATED` reports component timing
and segment counts only; it rejects incomplete or invalid pools and does not
score retrieval quality. See the protocol document for actual evidence.
# Separate frozen VAD + DTW comparison
`gated-dtw-policy.json` combines the already frozen Silero source-intersection
decisions with the separately declared base DTW sentence-point contract.
Add `--dtw-sentences` to `gated_asr.py` and select a new output, for example
`.searchi/speech/gated-base-dtw-results-v1.json`. All five source rows remain
mandatory; explicit no-speech rows use unchanged actual frozen VAD evidence and
launch no ASR. Neither relevance labels nor the observed malformed piano output
selects a gate or a window. Original raw Google audio retrieval stays unchanged.
Original raw recognized segments and ordinary token errors remain recorded.
Valid DTW points alone determine the separate aligned candidate times; missing
or invalid points make accepted comparison scoring ineligible.
The combined manifest pins unchanged VAD report/worker, base worker, DTW policy,
DTW helper and ordinary helper hashes. It preserves the old gated policy in
`policy`, with separate `alignment_policy` and `combination_policy` provenance.
Rankers must independently validate both policies and reconstruct every frozen
VAD window and DTW point before inference/scoring. Existing gated base output
is not overwritten. A combination plan or structural tests establish no new
speech recognition or timestamp quality.
Run only after the coordinator freezes the plan and grants the exclusive CPU
slot. Use `--no-gpu --threads 1 --processors 1 --dtw base --no-flash-attn`; the
harness adds these explicitly. The twelve existing speech windows remain
bounded to 30 seconds, 4 MiB raw output and 600 seconds each. Observed gated
base processing previously took about 65 seconds including VAD cost; DTW cost
and memory have not been measured. Native DTW workspace defaults to an additional
128 MiB, which is not a total memory ceiling. Strict parse failures retain bounded
raw bytes and atomically persist incomplete status, then stop instead of skipping
a competitor. No full rerun has established this combined policy.
DTW native logs are retained byte-exact as bounded base64 plus SHA so malformed
recognized bytes in diagnostic stderr cannot cause lossy decoding. Recognized
JSON remains strict UTF-8 and cannot be repaired by this log representation.