EXP-3D-RGBD-DEPTHSPLAT-JEPA-CAP01-TTT-ARKIT-V1:在 TTT 的尺度上限下训练逆向 JEPA,能否改进 TTT
结论:JEPA_CAP01_HARMS_TTT,JEPA_CAP01_HARMS_CACHE。
- P1: 把逆向 JEPA 的训练改在 TTT 最好的尺度上限 0.1 下进行(JC1),它作为 TTT 起点仍然略差于发布权重。ALL AbsRel 为 0.121 对 0.114,差值 −0.0070 [−0.0141, −0.0001],24/0/56,HARMFUL。
- P2: TTT 之前的 7 帧前馈状态明显更差。0.173 对 0.121,差值 −0.0517,5/0/75,HARMFUL。
- 改用上限 0.1 消除了大部分损害:
- 同为逆向 JEPA 训练,上限 0.1 的 TTT 结果比上限 3.0(JBT 的 JA)好得多:0.121 对 0.159,+0.0375,55/0/25,PARTIAL。
- 与 7 帧重投影取几何平均后,JC 与发布权重完全打平(都是 0.116)。
- 剩下的差距来自训练目标本身。
- 训练损失把未覆盖的像素按全深度惩罚,所以奖励的是"覆盖"而不是"精度"。
- 这在两个上限下都一样:JC 把前馈覆盖率从 0.73 推到 0.88,精度则从 0.121 降到 0.173。
- TTT 修回了大部分(0.173 → 0.121,74/0/6),但没有全部修回。
- 结论: 在当前的逆向 JEPA 目标下,"预训练给 TTT 更好的起点"不成立。要让这条路成立,训练目标需要改成奖励被覆盖像素的精度。
说明:
- 预注册: 见 PROTOCOL.md,2026-10-09 06:03:48 锁定,sha256
1b00184e…。设计受 JBT 与 OVERLAP-V1 的结果启发,但锁定早于本实验的任何训练和评估。 - 训练: 沿用 OVERLAP-V1 的配方(目标帧的上下文命中比例 ≥ 0.05),只把尺度上限改为 0.1。只训练一个种子(JC1,20261008),用时 57 分钟,显存 6.2 GB。
- 评估: ARKIT_VAL,80 个扫描、160 个 episode、320 个查询,episode 与 ENSEMBLES-ARKIT、JBT 相同。
- 复用了 ENSEMBLES-ARKIT 的几何封存和发布权重(上限 0.1)的封存,以及 JBT 的 JA、ZS3 封存。
- 6 项复现检查的均值差都是 0。
- TTT 分 3 个分片运行,每个约 1.35 小时,峰值显存 5.1 GB。
- 执行与统计:
- GPU 4 与另一用户的常驻进程共用。分析运行两次,结果逐字节相同。
- 统计单位是场景,bootstrap 10,000 次,种子 20260928,判定用 V2 gate。
训练中的 DEV 读数
DEV 为 ARKit 训练折的 8 个扫描、第 14、15 帧,上限 0.1,只作记录。
| 步数 | 0 | 500 | 1000 | 2000 | 3000 | 4000 |
|---|---|---|---|---|---|---|
| 被覆盖像素 AbsRel / 覆盖率 | 0.214 / 0.19 | 0.318 / 0.26 | 0.326 / 0.27 | 0.324 / 0.28 | 0.324 / 0.27 | 0.323 / 0.27 |
结果(ALL,80 个场景)
| 编号 | 对比(> 0 表示右边更好) | 区域 | 均值 | 95% CI | 好/平/差 | 中位数 | 状态 |
|---|---|---|---|---|---|---|---|
| P1 | ZS_TTT − JC_TTT | ALL | −0.0070 | [−0.0141, −0.0001] | 24/0/56 | −0.004 | HARMFUL |
| P2 | ZS_CACHE − JC_CACHE | ALL | −0.0517 | [−0.0736, −0.0341] | 5/0/75 | −0.029 | HARMFUL |
| S1 | GEO_ZS_TTT − GEO_JC_TTT | ALL | −0.0001 | [−0.0041, +0.0042] | 30/0/50 | −0.001 | NOT_ESTABLISHED |
| S2 | R7 − GEO_JC_TTT | ALL | +0.0048 | [+0.0003, +0.0096] | 47/0/33 | +0.001 | PARTIAL |
| S3 | JC_CACHE − JC_TTT | ALL | +0.0514 | [+0.0372, +0.0689] | 74/0/6 | +0.030 | SUPPORTED |
| S4 | JA_TTT − JC_TTT | ALL | +0.0375 | [+0.0196, +0.0576] | 55/0/25 | +0.015 | PARTIAL |
| S5 | ZS_TTT − JC_TTT | NEAR7 | −0.0105 | [−0.0178, −0.0028] | 18/0/62 | −0.007 | HARMFUL |
| S6 | ZS_TTT − JC_TTT | FAR7 | +0.0013 | [−0.0098, +0.0114] | 43/2/30 | +0.002 | NOT_ESTABLISHED |
ALL 均值与覆盖率:
| 构建器(尺度上限) | CACHE | 覆盖率 | TTT | 覆盖率 | GEO(与 R7) |
|---|---|---|---|---|---|
| ZS(发布权重,0.1) | 0.121 | 0.73 | 0.114 | 0.72 | 0.116 |
| JC(逆向 JEPA,0.1) | 0.173 | 0.88 | 0.121 | 0.84 | 0.116 |
| ZS3(发布权重,3.0) | 0.253 | 0.89 | 0.136 | 0.78 | 0.124 |
| JA(逆向 JEPA,3.0) | 0.266 | 0.97 | 0.159 | 0.87 | 0.133 |
R7(7 帧重投影 + 调和插值)为 0.121。
解读
- 尺度上限解释了 JBT 中的大部分损害,但不是全部。 在 0.1 下训练,TTT 结果从 0.159 改善到 0.121,几乎追上发布权重(0.114);集成之后两者完全相同。
- 训练目标解释了剩下的部分。
- 两个上限下,逆向 JEPA 训练都把前馈覆盖率推高、把精度拉低。
- 原因是训练损失对未覆盖像素按全深度惩罚:只要能把一个像素"覆盖"上,哪怕深度不准,损失也会下降。
- 对补全(JEPA-ARKIT、OVERLAP)来说,这种偏好部分有用,因为覆盖了原本只能靠调和插值的区域。对 TTT 来说,它损害了起点。
- TTT 有很强的修正能力,但修不完。 在 JC 上,TTT 把 0.173 降到 0.121(74/0/6),但没有降到发布权重 TTT 后的 0.114。
- 对 Core B 的含义: 实用配置不变,仍是"发布权重(上限 0.1)+ TTT + 与 7 帧重投影取几何平均"。如果要让逆向 JEPA 为 TTT 服务,训练目标应改为只奖励被覆盖像素的深度精度(例如归一化深度的相对误差),而不奖励覆盖率。
文件
PROTOCOL.md、preregistration.json、frame_role_lock.json(复制自 ENSEMBLES-ARKIT)、reused_seals.jsontraining/hit_shares_TRAIN.json(与 OVERLAP-V1 相同)code/:train_jepa_arkit_overlap.py(与 OVERLAP-V1 相同)及其依赖;- 建目录、锁定、任务与打分脚本。
checkpoints/JC1/(含SHA256SUMS)ds/ARKIT_VAL/JC/:新的 DepthSplat 封存scores/、results/、audit/