EXP-3D-RGBD-DEPTHSPLAT-TTT-ABLATION-V1:TTT 的收益来自学到的基座,还是只来自高斯表示加测试时优化?
本文件即预注册(草稿;锁定时间与哈希见 preregistration.json)。
1. 背景与问题
EXP-3D-RGBD-DEPTHSPLAT-JEPA-TTT-V1 的 Core B(FRESH78,78 个场景)结论:
- TTT 相对只缓存: 在发布版 DepthSplat 对 7 帧 RGB-D 生成的高斯状态上做 100 步测试时优化,ALL AbsRel 从 0.148 降到 0.118(+0.030,73/78 场景变好,SUPPORTED)。
- TTT 相对 7 帧无模型重投影(0.175): 均值好 0.057,但只有 54/78 个场景变好(PARTIAL),收益全部在已测区域(NEAR7)。
那个实验没有回答:这里起作用的是 DepthSplat 学到的先验,还是任何"从测量直接生成的高斯 + 同样的测试时优化"都能做到?换句话说,一个没有网络的高斯状态做同样的 TTT,能否达到同样效果?如果能,那么 TTT 的收益属于经典的逐场景 3DGS 拟合,与"学到的场景状态"无关。
2. 臂(全部在 FRESH78 上,episode、流帧、查询与 V1 完全相同)
- NV(无网络高斯): 每个有效测量像素(256×320 输入网格,与注入 DepthSplat 的测得平面深度相同)对应一个各向同性高斯。
- 位置:沿 DepthSplat 自己的归一化针孔相机的像素中心射线,放在测得深度处。
- 标准差:c × 该深度处的像素足迹(z / 以像素计的焦距)。
- 不透明度:o。
- 颜色:像素 RGB 作为 SH DC 项。
- NV 的臂:
- NV_CTX:3 帧上下文;
- NV_CACHE:3 帧上下文加 4 帧流;
- NV_TTT:在 NV_CACHE 上运行
ds_eval.ttt,目标、参数、基准学习率和步数(100)都与 V1 的 ZS_TTT 完全相同,步长倍数为 m_NV。
- 对照: V1 已封存的 ZS(发布版 DepthSplat)的 CTX、CACHE、TTT(m = 1),以及无模型的 REPROJ7_HARMONIC。直接引用 V1 的封存,不重新计算。
3. 开发阶段(只用 DEV,锁定前;记录见 development/)
- c 的选择: o 固定为 0.95,准则是 DEV 上 NV_CACHE_F7 的 ALL AbsRel 最低。
- 原定网格 {0.5, 1, 2} 选出 0.5(0.1316、0.1517、0.2009),落在网格边界上。
- 于是把网格往下扩展到 {0.0625, 0.125, 0.25}:0.0625 为 0.1233,0.125 为 0.1237,0.25 为 0.1254。
- 到 c ≤ 0.125 已经基本走平。原因是光栅化器给每个投影后的高斯加了 0.3 像素² 的低通,足迹由它决定,c 再小也没有区别。
- 取 c = 0.0625,代表"点状高斯"的极限。各 c 的覆盖率几乎相同(ALL 约 0.79–0.83)。
- m_NV 的选择: 在 c = 0.0625 上从 {1, 3, 10} 中选,准则是 DEV 上 NV_TTT_F7 的 ALL AbsRel 最低。结果为 0.1157、0.1209、0.1608,选 m = 1(
nv_selection.json)。V1 中 ZS 的 m 也是这样在 DEV 上选出来的,所以对两者公平。- 在 c = 0.5 上的同样网格也选出 m = 1:0.1316、0.1507、0.1732。
- DEV 上的开发信号(只作参考,DEV 只有 8 个场景):
- 不做 TTT: NV_CACHE(c = 0.0625)为 0.1233,比 ZS_CACHE(0.1294)好。
- 做 TTT(m = 1): NV_TTT 为 0.1157,ZS_TTT 为 0.1103,ZS 更好。
- c = 0.5 时: TTT 对 NV 的 ALL 没有作用(0.1316 → 0.1316)。NEAR7 变好,FAR7 变差(0.280 → 0.322)。
4. 主检验
主检验用 V2 gate;统计用场景 bootstrap,10,000 次,种子 20260928。
| 编号 | 对比(> 0 表示右边更好) | 区域 | 含义 |
|---|---|---|---|
| P1 | NV_TTT_F7 − ZS_TTT_F7 | ALL | 在同样的 TTT 下,学到的基座是否比无网络高斯更好 |
| P2 | NV_CACHE_F7 − ZS_CACHE_F7 | ALL | 不做 TTT 时,学到的基座是否更好 |
分支:
- LEARNED_BASE_MATTERS: P1 通过。学到的基座在 TTT 之后仍有优势。
- TTT_IS_GENERIC: P1 的 95% CI 跨 0,且 NV_TTT 相对 NV_CACHE 的收益(P3)通过。TTT 的收益不依赖学到的基座。
- NAIVE_BETTER: P1 的 CI 上界 < 0。
- 其余: INCONCLUSIVE。
5. 次要分析(只给标签)
- P3: NV_CACHE_F7 − NV_TTT_F7(ALL),对无网络高斯做 TTT 的收益。
- P4: REPROJ7_HARMONIC − NV_CACHE_F7(ALL),无网络的高斯渲染对比 1 像素 z-buffer 重投影。
- P5: REPROJ7_HARMONIC − NV_TTT_F7(ALL)。
- P6: P1 在 NEAR7 与 FAR7 上的版本。
- 各读出的均值与覆盖率。
6. 已知的事与局限
- 在锁定之前,我已经看过 V1 的 Core B 结果(ZS 各臂与 REPROJ7)。本实验新增的只有 NV 各臂。NV 的设置只在 DEV 上选择,FRESH78 上的 NV 结果在锁定前没有任何计算。
- FRESH78 已被 V1 使用过,本实验不是在新数据上的确认,而是同一队列上的预注册消融。
- 读出与 V1 相同:深度 = (depth_z / α) / cos,只在 α ≥ 0.5 处使用,其余像素用 REPROJ7_HARMONIC。