Commit 1bdca61b 1bdca61b27b73bfc95c8a25d4c6765b0a0485777 by cnb.bofCdSsphPA

Capture the finished bucket benchmark and handoff state for the next session

Constraint: Avoid staging datasets, smoke artifacts, /tmp outputs, and caches
Rejected: Delay handoff until larger semantic buckets exist | User asked for immediate delivery and resumability now
Confidence: high
Scope-risk: narrow
Directive: Treat toy prefix buckets as a methodology baseline, not a product conclusion
Tested: Verified /tmp/ab_smoke_bucketed_smoke/report.json and bucket_report.json outputs; reviewed targeted git diff
Not-tested: No new training or benchmark execution in this documentation-only checkpoint
1 parent c1a22cbb
...@@ -46,24 +46,23 @@ ...@@ -46,24 +46,23 @@
46 46
47 - 小样本真实 FMA smoke 下,多策略都可能接近满分,不能据此定默认策略。 47 - 小样本真实 FMA smoke 下,多策略都可能接近满分,不能据此定默认策略。
48 - cap48 规模下结果对 seed 敏感。 48 - cap48 规模下结果对 seed 敏感。
49 - 当前已知两轮 cap48 聚合里: 49 - cap64 当前单 seed 下 `hybrid` 更强。
50 - `high_energy` 稳定性更强 50 - bucket toy smoke 已完成完整汇总,并出现不同 bucket 的不同 winner。
51 - `hybrid` 上限更高但波动更大 51 - 默认策略决策应基于 multi-seed + bucket/style-aware aggregate,而不是单次跑分。
52 - 默认策略决策应基于 multi-seed aggregate,而不是单次跑分。
53 52
54 ## 5. 当前续跑优先级 53 ## 5. 当前续跑优先级
55 54
56 1. 完成/确认 `cap48 top2 seed=999` 结果 55 1. 将 toy prefix bucket 升级为语义 bucket
57 2. 汇总 3-seed aggregate。 56 2. 补 cap64 multi-seed aggregate。
58 3. 更新: 57 3. 更新:
59 - `docs/open-dataset-workflow.md` 58 - `docs/open-dataset-workflow.md`
60 - `docs/session-handoff.md` 59 - `docs/session-handoff.md`
61 - `docs/CHANGELOG.md` 60 - `docs/CHANGELOG.md`
62 4. 提交并推送。 61 4. 提交并推送。
63 5. 下一轮再推进: 62 5. 下一轮再推进:
64 - cap64 benchmark 63 - 工业级 hard negative / confusion bucket
65 - bucket/style-aware benchmark 64 - `hybrid` 波动收敛
66 - 工业级 hard negative / confusion 集设计 65 - 更接近商用的数据集组合评测
67 66
68 ## 6. 高风险注意事项 67 ## 6. 高风险注意事项
69 68
......
1 ## 2026-06-02 bucket/style-aware benchmark 汇总完成 checkpoint
2
3 完成项:
4 - 已确认 bucket/style-aware benchmark 的完整 `report.json` 生成完成。
5 - 已确认两个最小 bucket 都已完成并各自产出 `bucket_report.json`
6 - 已把“bucket 基线已可运行”推进为“bucket 基线已有完整汇总结果”。
7
8 最终结果(toy bucket smoke, seed=42):
9 - `prefix_000_a`:winner=`hybrid`
10 - `prefix_000_b`:winner=`high_energy`
11 - aggregate:
12 - `hybrid``bucket_runs=2, mean_top1=1.0, mean_topk=1.0, mean_num_queries=4.0`
13 - `high_energy``bucket_runs=2, mean_top1=1.0, mean_topk=1.0, mean_num_queries=3.5`
14
15 结论:
16 - 这个最小 bucket smoke 再次证明:当前不存在单一全局默认策略。
17 - bucket winner 已经出现分化,后续必须转向更有语义的 bucket(风格 / 结构 / hard-case),而不是继续只看单一 cap 分数。
18 - 现阶段可稳定对外表述为:
19 - `high_energy` 在 cap48 三 seed 聚合下更稳
20 - `hybrid` 在 cap64 单 seed 下更强
21 - bucket 基线已能解释“不同子集出现不同 winner”的现象,但当前 bucket 仍只是 toy prefix bucket
22
1 ## 2026-06-02 bucket/style-aware benchmark 基线落地 checkpoint 23 ## 2026-06-02 bucket/style-aware benchmark 基线落地 checkpoint
2 24
3 完成项: 25 完成项:
......
...@@ -82,3 +82,20 @@ cd /workspace/acr-engine ...@@ -82,3 +82,20 @@ cd /workspace/acr-engine
82 - 已补齐 cap64 最终结果:`hybrid=0.875``high_energy=0.625`,winner=`hybrid` 82 - 已补齐 cap64 最终结果:`hybrid=0.875``high_energy=0.625`,winner=`hybrid`
83 83
84 - 已新增 `acr-engine/scripts/ab_smoke_bucketed.py`,并完成首个 bucket 的 smoke 验证。 84 - 已新增 `acr-engine/scripts/ab_smoke_bucketed.py`,并完成首个 bucket 的 smoke 验证。
85
86
87 - 已补齐 bucket/style-aware smoke 的完整汇总:
88 - `prefix_000_a` winner=`hybrid`
89 - `prefix_000_b` winner=`high_energy`
90 - aggregate 层面两者 `mean_top1=1.0`,但 `hybrid` `mean_num_queries` 更高。
91
92 ## 最新待办(重启后直接接手)
93
94 1. 把 toy prefix bucket 升级为更有业务意义的 bucket:
95 - 高能段主导
96 - 重复副歌明显
97 - 节拍规整
98 - 混淆样本 / hard negative
99 2. 继续补 cap64 multi-seed,而不是只保留单 seed。
100 3. 在 bucket 基线下继续优化 `hybrid` 波动,而不是过早锁定全局默认策略。
101 4. 保持“文档更新 -> changelog -> commit -> push”的阶段节奏。
......
...@@ -18,19 +18,18 @@ ...@@ -18,19 +18,18 @@
18 18
19 ## 当前卡点 19 ## 当前卡点
20 20
21 ### 卡点 1:seed=999 benchmark 未完成 21 ### 卡点 1:还没有单一全局默认策略
22 22
23 当前最新状态: 23 当前最新状态:
24 - `hybrid` reference index 已完成 24 - cap48 三 seed 聚合:`high_energy` 更稳
25 - `hybrid` 已完成评测:`top1=0.875 / topk=1.0 / num_queries=24` 25 - cap64 单 seed:`hybrid` 更强
26 - `high_energy` 已完成评测:`top1=0.9167 / topk=1.0 / num_queries=24` 26 - bucket toy smoke:两个 bucket 分别出现不同 winner
27 -`report.json` 已落盘,winner=`high_energy` 27 - 因此当前不能把某一个策略写死为“全局最优”
28 - cap48 三 seed aggregate 已可使用
29 28
30 待检查 29 真正待做
31 - `/tmp/ab_smoke_seg_cap48_top2_seed999/report.json` 30 - 增加更有语义的 bucket
32 - `/tmp/ab_smoke_seg_cap48_top2_seed999/hybrid/fma_reports_smoke/eval.json` 31 - 补 cap64 multi-seed
33 - `/tmp/ab_smoke_seg_cap48_top2_seed999/high_energy/fma_reports_smoke/eval.json` 32 - 继续降低 `hybrid` 波动
34 33
35 ### 卡点 2:工作区噪音很大 34 ### 卡点 2:工作区噪音很大
36 35
...@@ -38,14 +37,14 @@ ...@@ -38,14 +37,14 @@
38 37
39 ## 建议接手顺序 38 ## 建议接手顺序
40 39
41 1. 检查进程是否仍在运行。 40 1. 先从 [session-handoff.md](./session-handoff.md)[open-dataset-workflow.md](./open-dataset-workflow.md) 读取当前结论。
42 2. 如果完成,计算 3-seed aggregate。 41 2. 优先把 toy prefix bucket 升级为语义 bucket。
43 3. 回写结论到: 42 3. 继续补 cap64 multi-seed。
43 4. 回写结论到:
44 - [open-dataset-workflow.md](./open-dataset-workflow.md) 44 - [open-dataset-workflow.md](./open-dataset-workflow.md)
45 - [session-handoff.md](./session-handoff.md) 45 - [session-handoff.md](./session-handoff.md)
46 - [CHANGELOG.md](./CHANGELOG.md) 46 - [CHANGELOG.md](./CHANGELOG.md)
47 4. 单独提交文档。 47 5. 单独提交文档,再进入下一轮 benchmark。
48 5. 再继续下一轮 benchmark。
49 48
50 ## 推荐检查命令 49 ## 推荐检查命令
51 50
...@@ -64,3 +63,14 @@ test -f /tmp/ab_smoke_seg_cap48_top2_seed999/report.json && cat /tmp/ab_smoke_se ...@@ -64,3 +63,14 @@ test -f /tmp/ab_smoke_seg_cap48_top2_seed999/report.json && cat /tmp/ab_smoke_se
64 - cap64 已完成,结果:`hybrid=0.875`, `high_energy=0.625` 63 - cap64 已完成,结果:`hybrid=0.875`, `high_energy=0.625`
65 - cap64 winner=`hybrid` 64 - cap64 winner=`hybrid`
66 - 下一 session 应优先进入 bucket/style-aware benchmark 65 - 下一 session 应优先进入 bucket/style-aware benchmark
66
67
68 ## 当前最关键的新事实
69
70 - bucket/style-aware benchmark 的完整汇总已经生成:`/tmp/ab_smoke_bucketed_smoke/report.json`
71 - `prefix_000_a` winner=`hybrid`
72 - `prefix_000_b` winner=`high_energy`
73 - aggregate:
74 - `hybrid``mean_top1=1.0, mean_num_queries=4.0`
75 - `high_energy``mean_top1=1.0, mean_num_queries=3.5`
76 - 这意味着 bucket baseline 已经可以作为后续“解释不同子集 winner 分化”的最小工程基础。
......
...@@ -109,3 +109,11 @@ flowchart LR ...@@ -109,3 +109,11 @@ flowchart LR
109 ```bash 109 ```bash
110 /usr/local/miniconda3/bin/python acr-engine/scripts/ab_smoke_bucketed.py --dataset fma --input-dir data/raw/fma_small_audio --bucket-config /tmp/cap64_bucket_test.json --work-root /tmp/ab_smoke_bucketed_smoke --default-subset-size 4 --query-duration 8 --train-epochs 1 --batch-size 2 --device cpu --strategies high_energy hybrid --max-test-queries 4 --seed 42 --output-json /tmp/ab_smoke_bucketed_smoke/report.json 110 /usr/local/miniconda3/bin/python acr-engine/scripts/ab_smoke_bucketed.py --dataset fma --input-dir data/raw/fma_small_audio --bucket-config /tmp/cap64_bucket_test.json --work-root /tmp/ab_smoke_bucketed_smoke --default-subset-size 4 --query-duration 8 --train-epochs 1 --batch-size 2 --device cpu --strategies high_energy hybrid --max-test-queries 4 --seed 42 --output-json /tmp/ab_smoke_bucketed_smoke/report.json
111 ``` 111 ```
112
113
114 当前已验证的最小结果:
115 - `prefix_000_a` winner=`hybrid`
116 - `prefix_000_b` winner=`high_energy`
117 - aggregate 层面两者 `mean_top1` 都是 `1.0`
118
119 因此 bucket benchmark 的当前意义不是“选出唯一赢家”,而是为后续语义 bucket / hard-case bucket 提供一个可复用执行框架。
......
...@@ -357,4 +357,13 @@ cd acr-engine ...@@ -357,4 +357,13 @@ cd acr-engine
357 - `high_energy`: `3 / 1.0 / 1.0` 357 - `high_energy`: `3 / 1.0 / 1.0`
358 - winner: `hybrid` 358 - winner: `hybrid`
359 359
360 当前第二个 bucket 仍在运行中,因此完整 bucket 汇总仍待补齐。 360 完整 bucket 汇总现已完成:
361 - `prefix_000_a` winner=`hybrid`
362 - `prefix_000_b` winner=`high_energy`
363 - aggregate:
364 - `hybrid``mean_top1=1.0, mean_topk=1.0, mean_num_queries=4.0`
365 - `high_energy``mean_top1=1.0, mean_topk=1.0, mean_num_queries=3.5`
366
367 当前结论:
368 - bucket baseline 已经能稳定复现“不同子集会选出不同 winner”。
369 - 下一步不是继续做 prefix toy bucket,而是升级到更有业务意义的 bucket。
......
...@@ -219,6 +219,20 @@ ...@@ -219,6 +219,20 @@
219 - `cap48 top2 seed=999` 已完成,三 seed aggregate 已可计算。 219 - `cap48 top2 seed=999` 已完成,三 seed aggregate 已可计算。
220 - 工作区存在大量数据与模型产物,当前只建议精确提交文档文件。 220 - 工作区存在大量数据与模型产物,当前只建议精确提交文档文件。
221 221
222 ## 0.5 当前 bucket/style-aware 基线结论
223
224 完整 bucket 汇总已完成:
225 - 汇总文件:`/tmp/ab_smoke_bucketed_smoke/report.json`
226 - `prefix_000_a`:winner=`hybrid`
227 - `prefix_000_b`:winner=`high_energy`
228 - aggregate:
229 - `hybrid``mean_top1=1.0, mean_topk=1.0, mean_num_queries=4.0`
230 - `high_energy``mean_top1=1.0, mean_topk=1.0, mean_num_queries=3.5`
231
232 当前解释:
233 - toy bucket 已经足够证明“不同子集可出现不同 winner”。
234 - 但它仍不是业务语义 bucket,因此只能作为方法学基线,不能当成最终产品结论。
235
222 ### 最新验证证据(2026-06-02 18:21 UTC 左右) 236 ### 最新验证证据(2026-06-02 18:21 UTC 左右)
223 - `hybrid` 的 reference index 已完成: 237 - `hybrid` 的 reference index 已完成:
224 - `refs_done=48 / refs_total=48` 238 - `refs_done=48 / refs_total=48`
...@@ -240,10 +254,11 @@ ...@@ -240,10 +254,11 @@
240 - `hybrid``mean_top1=0.8750, min=0.7917, max=0.9583, stdev=0.0680` 254 - `hybrid``mean_top1=0.8750, min=0.7917, max=0.9583, stdev=0.0680`
241 255
242 ### 最优先待办 256 ### 最优先待办
243 1. 跟进 bucket/style-aware benchmark 的完整 `report.json` 257 1. 把已完成的 toy bucket baseline 升级为语义 bucket(风格 / 结构 / hard-case)
244 2. 对比 cap48 与 cap64 的不一致现象,补充分规模结论。 258 2. 对比 cap48 与 cap64 的不一致现象,补充分规模结论。
245 3. 继续优化 `hybrid`,重点降低波动并提升 hard case 稳定性。 259 3. 继续补 cap64 multi-seed,而不是只保留单 seed。
246 4. 在 bucket 基线下继续提交与推送。 260 4. 继续优化 `hybrid`,重点降低波动并提升 hard case 稳定性。
261 5. 在 bucket 基线下继续提交与推送。
247 262
248 ### 续跑时不要做的事 263 ### 续跑时不要做的事
249 - 不要 `git add .` 264 - 不要 `git add .`
......