跳转至

Not All Features Are Created Equal: A Mechanistic Study of Vision-Language-Action Models

日期: 2026-03-19
arXiv: 2603.19233
代码: Action Atlas
领域: 机器人 / 多模态VLM
关键词: VLA, 可解释性, 稀疏自编码器, 激活注入, 机器人操作

一句话总结

对 6 种 VLA 模型(80M-7B)进行大规模机械可解释性研究(39.4万+ rollout),发现视觉通路主导动作生成、语言敏感性取决于任务结构而非模型设计、多通路架构呈现 expert 编码运动程序 / VLM 编码目标语义的一致性分工。

研究背景与动机

  1. 领域现状: Vision-Language-Action (VLA) 模型将视觉、语言和运动控制整合到统一架构中,实现端到端机器人策略。RT-2、OpenVLA、π0.5 等模型快速发展并被广泛采用。

  2. 现有痛点: VLA 模型是黑盒——当机器人出现异常行为时,无法诊断是视觉理解错误、语言指令被忽略还是运动执行失败。已有研究发现 VLA 在轻微扰动下崩塌(97%→0%),但缺少跨架构的系统性机械分析来解释为什么。

  3. 核心矛盾: VLA 号称融合了视觉、语言和动作,但实际是否真正使用了语言指令?还是只是在复现视觉-运动先验?

  4. 切入角度: 将 LLM 可解释性技术(激活注入、SAE、线性探针)迁移到 VLA 领域,在 6 个架构上进行大规模系统验证。

  5. 核心 idea: 通过激活注入和反事实提示实验,揭示 VLA 内部的因果关系——哪些通路真正驱动行为,语言何时有用何时被忽略。

方法详解

整体框架

四种分析技术统一应用于 6 个模型: 1. 激活注入: 记录成功 episode 的激活,注入到不同条件的 episode 中,观察行为变化 2. 反事实提示: 替换文本提示(空、否定、错误对象),观察任务成功率变化 3. 稀疏自编码器 (SAE): 将层激活分解为稀疏可解释特征,共训练 424 个 SAE 4. 线性探针: 测试动作信息是否可从中间层线性解码

关键设计

  1. 激活注入实验:

    • 做什么:建立视觉通路 vs 语言通路的因果关系
    • 核心思路:记录正常 episode 的层激活 \(\{\mathbf{H}^{A,(\ell)}\}\),在不同条件下替换 → 空提示注入(测试视觉主导性)、跨任务注入(测试运动程序绑定)、同场景注入(测试目标选择)
    • 关键发现:在 π0.5 上,空提示 + 注入基线激活恢复 0.999 余弦相似度和 73-77% 成功率——视觉通路完全主导行为
  2. 逐 Token SAE 处理:

    • 做什么:正确提取 VLA 中的可解释特征
    • 核心思路:用 TopK 稀疏 SAE(k=64)在层激活上训练,但发现必须逐 token 处理——mean-pooling 在大多数架构上导致灾难性失败(π0.5: 96%→8%)
    • 设计动机:VLA 的动作 token 序列包含接近、操作、终止等异质时间阶段,mean-pooling 破坏了这种时间结构。但 X-VLA 是例外——其 soft-prompted 动作 token 产生更均匀的表示,mean-pooling 反而更好
  3. 跨架构系统验证:

    • 做什么:确认发现的普遍性而非架构特殊性
    • 涵盖 6 个模型:π0.5 (3B, flow matching), OpenVLA-OFT (7B, L1 regression), X-VLA (1B), SmolVLA (450M), GR00T N1.5 (3B), ACT (80M, 无语言)
    • 规模:394,000+ rollout episodes, 424 个 SAE, 82+ 操作概念

实验关键数据

发现 1: 视觉通路主导行为

模型 基线成功率 空提示无注入 空提示+视觉激活注入
π0.5 77-92% 0% 73-77% (恢复)
OpenVLA-OFT 90-100% 14% -
X-VLA 90-100% 0% (置零任一层) -
GR00T 83-93% 0-3% (DiT 层) -

π0.5 仅注入第 0 层激活就恢复 0.997 余弦相似度——任务关键信息在第一层就已编码

发现 2: 语言敏感性取决于任务结构

模型/任务套件 基线 空提示 错误对象
OFT / libero_object 100% 100% 100%
OFT / libero_goal 100% 10% 10%
X-VLA / libero_object 100% 60% 60-90%
X-VLA / libero_goal 94% 10% 4-10%
GR00T / libero_goal 97% 0% 0%

规律:当视觉场景唯一确定任务(libero_object: 每个物体只有一种操作),语言被完全忽略;当多个目标共享场景(libero_goal),语言变得关键。这与模型架构无关,而是任务决定的

发现 3: 跨任务注入揭示空间绑定的运动程序

模型 跨任务注入后成功率 位移偏向源任务
π0.5 2.6% 99.6%
X-VLA 0% 99.8%
OFT ~50% 77.9%
GR00T 0% 57.0%

任务成功率崩塌,但机器人朝向源任务的物体位置移动——VLA 学到的是空间坐标绑定的运动程序,而非抽象的任务表示。

发现 4: 多通路架构的一致性分工

架构 Expert 通路 VLM 通路
π0.5 编码运动程序(注入→主动错误行为) 编码目标语义(注入→被动停滞)
SmolVLA 2× 更大行为位移 (15.8% vs 9.0%) 上下文提供
GR00T DiT 层最敏感(40-80% 成功率下降) VL-SA 层最耐损

SAE 分析

模型 Critical insight
π0.5 Mean-pooling 毁灭:96%→8%,per-token 保持 94%
X-VLA 例外:mean-pooling 反而更好(94-100% vs 92-98%)
所有模型 82+ 操作概念可通过对比选择识别
Kill-switch 70% 编码对象概念(bowl, cabinet)而非运动原语

亮点与洞察

  • "语言只是装饰"的震撼发现:在 π0.5 上 ANOVA 显示提示类别对行为无显著影响(p=0.247),但线性分类器能以 99.3% 准确率识别提示类别——提示被编码了但没被使用。这对 VLA 的实际部署有重大安全影响。
  • 任务结构决定论:语言敏感性不是模型属性而是任务属性。这解释了为什么不同论文对 VLA 语言理解能力的评估结果大相径庭——用的任务不同。
  • 空间绑定运动程序:VLA 不是学到"抓取杯子"的抽象概念,而是学到"移动到坐标 (x,y,z)"的空间程序。这解释了 VLA 在位置扰动下的脆弱性。
  • 故障诊断框架:expert 通路注入产生主动错误 vs VLM 通路注入产生被动停滞——可以用来区分运动错误和目标识别错误。

局限性 / 可改进方向

  • 仿真为主:394K episode 主要在 LIBERO/MetaWorld 仿真中,真实世界验证有限(仅 ACT 在 ALOHA 上测试)
  • 因果推断的局限:激活注入是一种"暴力"干预,可能引入分布外状态,结论需谨慎解读
  • 未涵盖最新模型:缺少 RT-2-X、Octo 等重要 VLA 的分析
  • 建设性建议有限:深刻揭示了问题(视觉主导、语言被忽略),但未提出如何修复它——如何让 VLA 真正使用语言?

相关工作与启发

  • vs Häon et al. (π0 SAE): 之前只在单个架构上做 SAE 分析,本文首次跨 6 个架构验证,发现这些现象是普遍的而非架构特殊的
  • vs Fei et al. (VLA robustness): 他们发现 VLA 在扰动下崩塌(97%→0%),本文用跨任务注入实验揭示了崩塌的机制原因——空间绑定的运动程序
  • 启发:对于当前 VLA 设计的反思——如果视觉已经主导一切,大量的语言预训练是否是浪费计算?

评分

  • 新颖性: ⭐⭐⭐⭐⭐ 首个跨 6 种 VLA 架构的系统性机械可解释性研究,发现深刻且令人惊讶
  • 实验充分度: ⭐⭐⭐⭐⭐ 394K+ episodes、424 SAEs、6 模型、4 基准,规模空前
  • 写作质量: ⭐⭐⭐⭐ 结构清晰,但论文信息量极大,读起来需要耐心
  • 价值: ⭐⭐⭐⭐⭐ 对 VLA 社区有重大警示意义——揭示了当前模型的根本问题