Skip to content

世界模型与生成式视频评估

把 2 到 N 段生成视频锁帧对齐到同一时钟上,请标注者标出世界开始不成立的那一帧,再标注是哪一条物理性质被破坏。

同一场景的若干段视频,锁帧对齐在同一条时间轴上。标注者找出每一段推演开始不成立的那一帧,说明原因,选出优胜者;若该场景带有干预设定,还要判断这种分歧是否由该干预所致。 随后 Potato 会报告标注者们对于断裂发生在何处是否一致。

可运行示例:examples/agent-traces/world-model-rollouts/

断点优于评分

给一段生成视频的"物理合理性"打 5 分中的 3 分,得到的是一个无法核查、无法定位、也无法据以修复任何东西的数字。

而"一个时间点加一个类别"三者都能做到:

  • 可核查。 研究者可以打开第 47 帧亲眼看看。
  • 可定位。 这次失败在张量中有确切位置,而不只是一个分数。
  • 可比较。 两位标注者的答案是数轴上的两个点,因此真正的机遇校正一致性统计量在此适用。

视频生成基准会报告 FVD 与胜率。没有一个会报告产出这些胜率的人类之间是否彼此一致,这意味着它们都无法把模型差异与标注者噪声区分开。

配置

yaml
annotation_schemes:
  - annotation_type: rollout_evaluation
    name: rollout_review
    description: "Where does each rollout stop making sense?"
    streams:
      - {field: real,  name: "Recording", role: real}
      - {field: gen_a, name: "Model A"}
      - {field: gen_b, name: "Model B"}
    fps: 25
    layers: [violations, preference, counterfactual]
    blind: true
    shuffle: true
    require_clean: true
    violation_types:
      - {name: object_permanence, description: "An object vanishes, or appears, with nothing causing it."}
      - {name: interpenetration,  description: "Two solid objects pass through each other."}
      - {name: gravity_violation, description: "Something floats, falls upward, or stands unsupported."}

请显式声明 fps,否则输出中会略去帧号,而不是去猜。

稳定的盲测与乱序

各面板可以按标注者进行盲测与乱序,并且乱序是稳定的,以标注者与条目为种子。同一位标注者第二次查看同一条目时,顺序与第一次一致;若每次都重新随机,这一点就会被破坏。

require_clean: true 让"没有断裂"成为一个明确的动作,而不是一个空答案。没有它,一段没有任何标记的推演与一段根本没被审阅过的推演无法区分。

断点一致性是一条扫描曲线

一致性以三种方式报告:检测(他们是否找到了断裂)、定位(是否标在了同一位置)、类别(是否给出了相同的名称)。匹配容差以扫描曲线而非单一数字呈现。

这并不是为了细节而堆细节。0.25 秒下的一致性和 2 秒下的一致性是两种不同的断言,只报告一个阈值,等于允许读者去挑选支持自己结论的那一个。

它在生态中的位置

与之可比的工作是各类基准——VBench、WorldModelBench、Physics-IQ——以及众包评审小组。它们提供指标与参考协议;Potato 提供的是一件可以反复执行此类协议中人工环节、并测量其信度的仪器。两者互补,把某个基准的推演结果导入 Potato,是采集这些基准据以验证的人工数据的一种合理做法。

相关内容