← 返回

三、Memory Ablation 设计与结果

共用骨架(输入输出为立项口径, 非实验变量)

  • frozen CLIP-B/16 → 每帧 196 patch token → 线性投影 256 维。
  • writer C16:16 个全局共享 learnable query 对该帧 196 token 做 cross-attention → 16 个摘要 token, 加 log Δt 时间编码。
  • reader(两层):当前帧 196 token self-attention → 以 Q=当前 196 token、K/V=历史 memory(8×16=128 token)做 cross-attention。
  • goal conditioning:goal = 每轨迹一个长程任务文本(frozen CLIP 文本编码, 与上轮同);xattn = 当前 token 以文本 token 为 K/V 做 cross-attention;tri = K/V 为 concat(memory, 文本 token);film = 文本向量做通道缩放偏移。
  • decoder:196 token → 14×14 → 反卷积 → 56×56 heatmap(同上轮分辨率)。
  • loss klamp:空间分布 KL + 5×SmoothL1(top-20 峰值幅度);全零负样本帧走 BCE。
  • Stage A · 五种 frame selection(8 槽位选哪 8 张)

    方法long-term 依据回答的问题
    Recent-8只按 recency(0.5–4s)长程历史是否必要
    Time-82 recent + 6 个 log 时间锚点近密远疏时间覆盖是否有用
    Diverse-8同 bin 内选与已选 memory 最不相似是否应保存不同历史状态
    Retrieve-8同 bin 内选与当前帧最相似是否应 current-conditioned 检索
    OracleDecision-8GT decision frame 占槽task-stage-aware 上界

    实验轮次(严格串行)

  • 第一轮(进行中):loss × conditioning 全笛卡尔网格 —— {klamp, bce_w, qfl, mse} × {xattn, film, tri} 共 12 格。goal = 每轨迹一个长程任务文本(frozen CLIP 文本编码), xattn/tri 的 K/V 为文本 token;decoder 56×56;全量数据(train 890 / seen 50 / unseen 58, task 级切分)。
  • 第二轮:第一轮最优格固定后, 跑 Stage A 五种 selector。
  • 第三轮:memory 定型后做 visual feature(CLIP / DINO / CLIP+DINO)。
  • 第一轮结果 · Loss × Conditioning 12 格终评(固定 512 题, episode bootstrap 95% CI)

    loss × condseen CC [CI]unseen CC [CI]
    klamp_xattn0.311 [0.261, 0.363]0.241 [0.213, 0.269]
    klamp_film0.306 [0.260, 0.358]0.243 [0.217, 0.270]
    klamp_tri0.305 [0.259, 0.354]0.251 [0.224, 0.279]
    bce_w_film0.279 [0.236, 0.324]0.236 [0.206, 0.268]
    bce_w_xattn0.270 [0.229, 0.315]0.228 [0.198, 0.259]
    bce_w_tri0.266 [0.224, 0.313]0.219 [0.189, 0.248]
    qfl_film0.224 [0.188, 0.264]0.191 [0.168, 0.213]
    qfl_xattn0.215 [0.181, 0.253]0.187 [0.164, 0.210]
    qfl_tri0.206 [0.173, 0.243]0.179 [0.157, 0.200]
    mse_film-0.001 [-0.002, -0.001]-0.001 [-0.002, -0.001]
    mse_xattn-0.001 [-0.002, -0.001]-0.002 [-0.002, -0.001]
    mse_tri-0.001 [-0.002, -0.001]-0.002 [-0.002, -0.001]
  • loss 主导且区间可分:klamp > bce_w > qfl, mse 输出坍塌(CC≈0)。
  • 三种 conditioning 在 klamp 下区间几乎重叠, 差异不可分;取 xattn 进入第二轮。
  • 第二轮结果 · Stage A 五种 selector 终评(klamp × xattn 固定)

    selectorseen CC [CI]unseen CC [CI]
    time80.314 [0.266, 0.365]0.244 [0.213, 0.274]
    oracle80.308 [0.261, 0.358]0.249 [0.219, 0.279]
    diverse80.307 [0.260, 0.358]0.240 [0.212, 0.268]
    retrieve80.306 [0.259, 0.357]0.230 [0.202, 0.259]
    recent80.304 [0.259, 0.353]0.251 [0.223, 0.280]
  • 五种 selector 置信区间几乎完全重叠:本轮设定(C16, B=8, 3000 步)下 frame selection 策略未分出差异;recent8(无长程)不落后于长程策略。
  • 全部 run: 全量数据(train 890 / seen 50 / unseen 58, task 级切分), goal = 任务文本, decoder 56×56。
  • 推理可视化(最优 checkpoint · 左 RGB | 中 GT | 右 prediction)

    待第一轮最优 checkpoint 出炉后生成(RGB | GT | prediction)。