实验定位 V1 完成 / 泛化仍不足
A78 是用户要求的“三个版本”里的第 1 版:把 A77 v2 的回顾诊断规则压进一个小阈值网格,做 leave-one-case-out。训练时只在两个 train case 上用 GT joint 拟合阈值;held-out case 选择时只用 observation features,不看 GT。
结果:A78 LOO 选中 2/3 oracle,mean joint=-0.0010410,比 A66=-0.0009299 稍好,也远强于 A76 post-hoc best=-0.0001506;但仍弱于 A77 retrospective/oracle=-0.0014752。失败点是 gso008 held-out:train split 里没有 visible-recovery 类型样本,规则退回 saturated damp iter1 λ=0.125,而 oracle 是 iter8。
Only 3 active cases have A65 sampler proxy trajectories, so this is a falsification/stability check rather than a publishable generalization result.
实验设计(Image-2 风格)
模块设计(Image-2 风格)
Rule Grid
- late-safe:后期 MV improve 且 final local damage 为 false。
- visible recovery:visible residual 强烈下降,用来保留 recall/coverage-friendly step。
- MV low-spread:MV improve 且 region spread 低。
- saturated fallback:高 damage ratio 时只做第一步阻尼。
LOO Protocol
- 每折 2 个 case 训练阈值,1 个 case held-out。
- 训练目标是 joint score,held-out 选择不使用 GT。
- 和 A66、A77 retrospective、GT oracle、A76 post-hoc 统一对比。
- 重点观察状态类型覆盖,而不是追求 3-case 高分。
实验结果(表格)
policy comparison
| policy | 性质 | mean ΔChamfer | mean ΔF@5 | joint | iters | lambdas |
|---|---|---|---|---|---|---|
| GT joint oracle | GT oracle | -0.0005581 | 0.011463 | -0.0014752 | {'gso_000_input4': 3, 'gso_002_input4': 8, 'gso_008_input4': 8} | {'gso_000_input4': 1.0, 'gso_002_input4': 1.0, 'gso_008_input4': 1.0} |
| A77 v2 retrospective | 回顾诊断 | -0.0005581 | 0.011463 | -0.0014752 | {'gso_000_input4': 3, 'gso_002_input4': 8, 'gso_008_input4': 8} | {'gso_000_input4': 1.0, 'gso_002_input4': 1.0, 'gso_008_input4': 1.0} |
| A78 LOO observation router | LOO held-out | -0.0006138 | 0.005340 | -0.0010410 | {'gso_000_input4': 3, 'gso_002_input4': 8, 'gso_008_input4': 1} | {'gso_000_input4': 1.0, 'gso_002_input4': 1.0, 'gso_008_input4': 0.125} |
| A66 uncertainty damped | 预注册 no-GT | -0.0005518 | 0.004726 | -0.0009299 | {'gso_000_input4': 8, 'gso_002_input4': 8, 'gso_008_input4': 1} | {'gso_000_input4': 1.0, 'gso_002_input4': 1.0, 'gso_008_input4': 0.125} |
| carrier control | 预注册 no-GT | 0.0000000 | 0.000000 | 0.0000000 | {'gso_000_input4': 0, 'gso_002_input4': 0, 'gso_008_input4': 0} | {'gso_000_input4': 1.0, 'gso_002_input4': 1.0, 'gso_008_input4': 1.0} |
LOO held-out details
| held-out | train cases | selected | oracle iter | match | ΔChamfer | ΔF@5 | joint | reason |
|---|---|---|---|---|---|---|---|---|
| gso_000_input4 | ['gso_002_input4', 'gso_008_input4'] | iter3 / λ=1.000 | 3 | 是 | -0.0004159 | 0.000512 | -0.0004568 | LOO route: min region-spread fallback; picked iter003 |
| gso_002_input4 | ['gso_000_input4', 'gso_008_input4'] | iter8 / λ=1.000 | 8 | 是 | -0.0016053 | 0.015600 | -0.0028533 | LOO route: min region-spread fallback; picked iter008 |
| gso_008_input4 | ['gso_000_input4', 'gso_002_input4'] | iter1 / λ=0.125 | 8 | 否 | 0.0001798 | -0.000094 | 0.0001873 | LOO route: saturated damage fallback; damage_ratio=1.000 >= 0.875; lambda=0.125 |
observation-state features
| case | damage ratio | MV improve | late-safe iters | visible recovery min | best MV low-spread | min spread iter |
|---|---|---|---|---|---|---|
| gso_000_input4 | 0.750 | 3 | [] | -0.000147 | 3 | 3 |
| gso_002_input4 | 0.750 | 8 | [8] | 0.000000 | 8 | 8 |
| gso_008_input4 | 1.000 | 5 | [] | -0.007297 | 1 | 1 |
可视化结果
实验结论
- A78 证明 A77 的 observation-state 变量不是完全偶然:LOO joint=-0.0010410,比 A66=-0.0009299 更好。
- 但 A78 也证明 3-case 阈值学习远远不够:gso008 的 visible-recovery 类型在 train split 缺失,held-out 时退回过保守阻尼。
- 这解释了为什么当前还不能说达到 A 类会议标准:我们有机制变量,但缺训练覆盖和真正 sampler implementation。
- V2 的目标应该是扩 observation-state 标签,而不是继续调 3-case 阈值;V3 才能给出“比较大提升”的模型架构版本。
下一步想法
- V2/A79:从 10-case route set 或 Benchmark100 中构造更多 observation-state proxy,尤其补 visible-recovery、late-safe、saturated-damage 三类样本。
- 构造训练标签时不要只用 GT Chamfer,必须联合 F@5/coverage,否则会复现 A66 的 Chamfer-oriented 缺陷。
- V3/A80:提出实际架构:VGGT Observation Encoder + Region Budget Head + TRELLIS.2 sparse/SLat sampler controller。
- 架构版必须支持 per-region/per-vertex λ,而不是 step-level hard route。