封面:机器人实验台上的抓取试验
封面为 AI 生成的示意插图(内容由AI生成),非论文原图

机器人的「故障」信号,其实早就藏在世界模型的脑子里

FARM:冻住主干、只加 3.4 万个参数,把在线失效监控从「新建」变成「读取」

论文:arXiv:2609.11445(cs.RO)· 2026-09-10 · 中科院自动化所 & 哈工大 · 代码已公开

想象一台在客户现场干活的机械臂。它抓了十次,成功了七次,剩下三次失败的方式各不相同:拿错了物体、卡住不动、把杯子放歪了。

你当然希望系统能当场知道自己要出事了,而不是等你事后翻录像。但做在线失效监控通常意味着:要么找代理信号间接推断风险,要么专门训一个监控模型。

9 月 10 日发布在 arXiv、来自中科院自动化所与哈尔滨工业大学团队的 FARM,给出了第三种答案:不用新增监控模型——失效信号其实早就藏在机器人世界模型的「脑子里」。

论文速览

标题:FARM: Reading Failure Signals from the Internal Predictive States of a Frozen Robotic World Model
作者:Haoran Pei, Mingrui Luo, Senbao Wang, Haoran Lv, Jie Guo, Sheng Zhong, Ruixi Ci
单位:Institute of Automation, Chinese Academy of Sciences(中科院自动化所);Harbin Institute of Technology(哈工大)
编号:arXiv:2609.11445(cs.RO)· 2026-09-10
代码:github.com/HaoranPei-casia/FARM

一、问题问得很巧:失效信息是「要加的」还是「已有的」?

论文把问题拆成一句话:机器人世界模型的内部预测状态里,是不是已经包含了可以直接解码出来的失效信息?

这个提问方式很关键。如果答案是「是」,那失效监控就不再需要一套独立系统,而只需要一个极轻的读出层;如果答案是「否」,那就得老老实实训监控模型。FARM 用一组很克制的实验来回答它。

二、方法:冻住主干,只训 33,985 个参数

FARM 的全部「新增」只有一件事:在冻结的 VLA-JEPA 预测状态之上,训练一个 33,985 参数的监督式读出层。它输出两样东西:

世界模型这边,编码器(V-JEPA2)、预测器(VLA-JEPA)和状态提取路径全部保持不变——不重训、不加控制模块、不动主干。

机器人执行轨迹(仿真任务 + 四类真机群体) 预训练机器人世界模型 VLA-JEPA 编码器、预测器、状态提取路径全部冻结 不重训、不加控制专用模块 内部预测状态(可直接取用的 token 张量) FARM 读出层:33,985 个参数 监督式轻量读出,是整个方法唯一被训练的部分 逐步失效分数 因果轨迹风险 · 在世界模型状态就绪后,平均只增加 0.2256 ms(P99 0.2393 ms) · 检测器单独吞吐约 4,432.8 步/秒 · 主干不动 → 固定读出可跨策略、跨平台复用 · 只给部分因果历史时,也能提前判别失效
图 1 FARM 的结构:冻结的机器人世界模型 + 一个 3.4 万参数的读出层(示意图由 AI 生成,内容由AI生成)

三、实验分四步,把「凭什么成立」逐条堵死

  1. 先证明信息真的在状态里。七折交叉(五折 out-of-fold)在七个源任务上取得 85.68 / 88.59 的 Pooled AUROC / AUPRC。因为只有读出层拿到失效标签,这就直接说明:判别能力来自冻结状态本身。
  2. 再排除「只是低阶统计量」的解释。作者对比了七种预定义低阶统计量(全局均值、标准差、RMS 幅度、时间 token 均值变化、终端范数、token 方差等)以及一个把它们全用上的 7 维逻辑回归。WM 状态读出优于两者,也优于其他候选提取位置——说明它的优势不止是「隐藏状态的粗略统计」。
  3. 再做同口径多任务对比。在匹配的 10 任务基准上,FARM 在 15 个基线中拿下全部四项 Seen 指标第一,相对最强的 SAFE-MLP 在宏平均上高出 +5.42 / +4.88 AUROC / AUPRC 个百分点。而在严格未见任务上,零样本表现最好的并不是 FARM(是 STAC-Single),FARM 只排在 SAFE-MLP / LSTM 之上——这一点论文没有藏着。
  4. 最后上真机。在四种真实部署组合上测固定读出层的迁移与「只调读出」的适配。
真机组合(轨迹数)零样本 · 扩展集零样本 · 核心集仅读出适配
PIPER X / VLA-JEPA(100)90.91 / 93.2072.73 / 90.1195.73 / 97.80
PIPER X(497)84.70 / 79.1341.35 / 35.4398.48 / 98.41
SO-101 / Eval-RL(70)69.85 / 68.4657.80 / 42.7682.88 / 73.06
Franka(778)55.89 / 55.8251.58 / 54.6675.78 / 74.31

表 1|真机 AUROC / AUPRC(%),数据来自论文 Table IV。窄屏可横向滑动。

这张表信息量很大:跨策略、跨平台、跨相机、跨视觉域时,固定读出层的零样本迁移并不均匀——PIPER X 的某些组合能到 90+,Franka 上则只有 55 左右;但只要允许只用目标域的少量轨迹调一下读出层(Adapt-35 设定:每个任务每个外折 35 条带标签轨迹),四项聚合指标就全面领先,PIPER X 甚至冲到 98.48 / 98.41。论文把这总结为:残余的任务语义偏移,可以被这个轻量读出层吸收掉。

还有一个工程上很关键的细节:因果的部分历史。只看到 25% 的执行历史时判别力已经不错,到 75% 时 Pooled AUROC/AUPRC 只比完整历史低 1.78 / 1.27 个点——意味着不必等到一条轨迹跑完才报警。延迟上,在世界模型状态已经就绪的前提下,FARM 平均只增加 0.2256 ms CUDA 时间(P99 0.2393 ms),检测器单独吞吐约 4,432.8 步/秒。

概念插图:机械臂在实验台上抓取物体的瞬间
图 2 概念示意:失效分数在异常出现的那一刻抬升——「卡住」「拿错」「放歪」都能被同一条监控链路捕捉(插图由 AI 生成,内容由AI生成)

四、它真正的价值:把监控变成「复用」而不是「新建」

五、冷静看:四个限制

六、一句话总结

失效这件事,世界模型其实早就「知道」了——我们只是之前没问它。

如果你在做具身智能的部署,会把这种「读出式监控」接进自己的系统吗?欢迎在评论区聊聊。

本文基于该论文的 arXiv HTML 版正文(含方法、实验设置、Table III / Table IV 与结论)整理,未引用论文原图;数值均来自论文,判断部分由本助手给出。文献:Haoran Pei, Mingrui Luo, Senbao Wang, Haoran Lv, Jie Guo, Sheng Zhong, Ruixi Ci. FARM: Reading Failure Signals from the Internal Predictive States of a Frozen Robotic World Model. arXiv:2609.11445, 2026.

编辑备注(供发布时选用,不属于正文)

  1. 机器人的「故障」信号,其实早就藏在世界模型的脑子里
  2. 只加 3.4 万个参数:一篇论文把失效监控做成了「读取」而不是「新建」
  3. 0.2256 毫秒换一次在线失效预警,这笔账怎么算
  4. 拿错、卡住、放歪:一条读出层怎么同时看住三种失败
  5. 冻结主干 + 轻量读出:世界模型状态还能这样复用
内容由AI生成