LA4VLA — Learning to Act without Seeing

LA4VLA: Learning to Act without Seeing via Language-Action Pretraining · 2026 · PDF 核对 + GitHub 发布状态核对

速览
问题诊断
LA-33K数据
构造流水线
模型与范式
训练细节
代码状态
部署复现
实验结果
鲁棒性分析
与LAP/CLAP
自测

一句话结论

LA4VLA 的核心不是“多造 33K 数据”,而是提出一个训练范式:先让 policy 在没有视觉输入的情况下学习 language-conditioned action priors,再接回视觉做 VLA。它要解决的是标准 VLA 训练中视觉 token 太强、语言动作监督太弱,导致模型依赖视觉捷径而不是听指令。

最强结论:MixPT / LA-VLA 让 LA4VLA-1B 在 MetaWorld、LIBERO、真机任务和视觉噪声场景中系统提升。真机平均成功率从 no-pretrain 38.3% 提升到 MixPT 83.3%。
可靠性说明PDF 原文核对代码状态核对综合判断:PDF 来自 /home/chenzhiyuan/projects/paper/2026-LA4VLA/LA4VLA.pdf;论文首页项目页 https://github.com/MINT-SJTU/LA4VLA 已克隆到 /home/chenzhiyuan/projects/LA4VLA,当前只有 README 标题,未发布实质代码。本页代码部分明确区分“已发布代码”与“按论文可复现的模块设计”。

速览卡片

内容
核心瓶颈标准 VLA 训练把 dense visual-action supervision 和 sparse language instruction 绑定在一起;视觉 token 数量多、变化密集,语言信号容易被稀释。
核心方法从 DROID 轨迹切出 atomic language-action episodes,去掉视觉,只保留 instruction + state + action trajectory 进行 LA pretraining。
数据LA-33K:从 9,560 个 DROID episodes 生成 56,899 候选,人工验收保留 33,116 个 atomic LA episodes。
模型LA4VLA-1B:InternVL3-1B + flow matching action head。
训练范式Base、LA、VLA、LA-VLA、MixPT 五种路线;MixPT/LA-VLA 效果最好。
实验MetaWorld 87.53,LIBERO 96.28,真机 MixPT 83.3,视觉噪声 MixPT 70.0。
代码截至本次核对,官方 GitHub 为空壳仓库;无法做真实逐行代码映射。
33,116
最终 LA episodes
87.53%
MetaWorld MixPT 平均
83.3%
真机 MixPT 平均成功率

LA4VLA 的问题诊断:VLA 容易“看图走捷径”

标准 VLA 数据是 (visual observation, language instruction, state) → action。问题是视觉每帧都变、token 多、与动作有强相关;语言 instruction 通常只有一句,且在整段轨迹中不变。于是模型可能学到“看到这个局面就做这个动作”,但没有真正学“这句语言如何约束动作”。

信号标准 VLA 中的地位风险
视觉高维、dense、每步变化、token 多模型依赖视觉场景捷径,遇到相机/背景/目标变化就不稳。
语言低频、稀疏、常常整条轨迹同一句语言动作关系被视觉动作关系淹没。
state低维但和动作强相关可能进一步替代语言,变成 state-action matching。
论文的关键设问:能不能把 action learning 暂时从视觉主导的 VLA 训练中解耦出来,让模型先学语言如何约束动作?这就是 “Learning to Act without Seeing”。

诊断实验:换视觉,看动作是否还听语言

论文设计四种输入条件:原始视觉、去视觉、视觉不对齐、视觉冲突。保持 instruction 不变,替换或遮掉视觉,检查预测轨迹方向是否仍跟随语言。

输入条件含义诊断目的
(L, V)原始 instruction + 原始视觉标准 VLA 表面上是否动作正确。
(L, ∅)instruction + masked visual去掉视觉后还会不会按语言方向走。
(L, Ṽ)instruction + 不匹配视觉检查动作是否随视觉变化而偏移。
(L, V−)instruction + 冲突方向视觉强测模型到底听语言还是听视觉。

结果显示:标准 VLA 在原始视觉下看似能跟随指令,但视觉被移除/替换/冲突时,动作方向显著偏移。这为 LA pretraining 提供了动机。

LA-33K 是什么

LA-33K 不是重新采集的新机器人数据,而是从已有 DROID demonstration 中重构出的 atomic language-action 数据。每个 episode 不含视觉输入,只有 vision-agnostic instruction、robot states 和对应 action trajectory。

阶段EpisodesFramesFrames/Ep
Original VLA episodes9,5602,751,615287.83
VLM-generated LA candidates56,8992,551,10244.84
Final human-verified LA episodes33,1161,524,99046.05

这使语言监督从“整条长轨迹一句话”变成“短 atomic segment 一句局部动作指令”,语言-动作对齐密度显著提高。

动作类别

上下文类别含义
Object manipulationgrasp / place / lift / lower / transport / wrist_rotate / reorient围绕抓取物体后的移动、放置、举起、旋转等。
Contact interactionpush / pull / press不一定抓住物体,而是通过接触改变物体或按钮状态。
Free-space motionmove / rotate_free / reorient_free空手自由空间移动和姿态调整。
LA4VLA 的 instruction 要刻意 vision-agnostic:描述动作类型、方向、持有状态,但避免外观、材质、场景等视觉捷径。

数据构造流水线

DROID long demo
video + state + action
keyframe hints
static/gripper transition
Qwen-3-VL-Plus
segmentation proposal
human verification
score ≥ 2
LA-33K
no visual input

关键模块 1:Keyframe detection

LA4VLA 先从 robot state 里抽 temporal hints:低运动量区间通常是对齐、抓取、放置、阶段切换;夹爪 open/close 变化通常是 grasp/release。

state trajectory s[1:T]
 ├─ remove gripper channel
 ├─ compute arm-state difference Δs
 ├─ Savitzky-Golay smoothing + normalization
 ├─ detect static intervals by adaptive threshold
 └─ detect gripper transition by before/after window mean

论文默认:Savitzky-Golay window 7、poly order 3;static threshold ratio 0.5;window size 5;gripper threshold 0.8;transition window n=3。

关键模块 2:Qwen-3-VL-Plus segmentation prompt

VLM prompt 包含:原始任务描述、多视角视频帧、keyframe cues、动作词表、primitive definitions、类别规则、JSON schema。VLM 输出 segment 列表:

[
  {
    "subaction": "lift",
    "instruction": "lift the object upward while holding it",
    "start": 3.50,
    "end": 5.00
  }
]

视频按 2 FPS 采样、resize 到 224×224;多视角时每个 view 有文字标签。VLM 只在数据构造阶段用视觉,最终 LA dataset 不保留视觉。

关键模块 3:人工验收

分数含义是否保留
0严重错位或没有 meaningful atomic action丢弃
1有相关运动但边界/标签/语言太噪丢弃
2基本正确,有小瑕疵保留
3边界、标签、语言都高质量保留

最终保留率 58.2%,双标注子集 Krippendorff’s α = 0.7794。论文还给出成本:处理 1/10 DROID 即 9,560 episodes,Qwen-3-VL-Plus 消耗约 44.29M input tokens 和 3.385M output tokens。

为什么必须人工验收

LA4VLA 的数据质量风险主要来自三类错配:边界错、动作标签错、语言描述错。VLM 可以给出结构化 JSON,但如果 segment 跨越两个 primitive,或者 instruction 写了对象外观/身份,LA pretraining 就会把错误语言-动作关系灌进 policy。

错误类型例子对训练的伤害
Over-segmentation一个 grasp 被切成 align / close / lift 的碎片但边界不稳定动作太短或缺少完整物理效果,policy 学到局部噪声。
Merged primitivetransport + place 合成一个 segmentinstruction 难以对应单一动作,降低 language-action 对齐密度。
Wrong primitive把 press 标成 push接触语义错,影响 downstream 按钮/开关类任务。
Scene-specific language“move to the red cup on the left”违反 vision-agnostic 设计,重新引入视觉捷径。
因此 LA4VLA 的数据贡献不只是 33K 数量,而是“VLM proposal + human verification + vision-agnostic wording”共同保证 LA pretraining 的监督是干净的。

模型:LA4VLA-1B

论文使用 LA4VLA-1B:InternVL3-1B backbone + flow matching action head。LA pretraining 时视觉输入被 mask,模型根据 instruction + robot state 预测 action trajectory;VLA 或 downstream fine-tune 时恢复视觉输入。

LA batch:
  instruction + robot state + masked visual
      └─► InternVL3-1B representation
          └─► flow-matching action head
              └─► action trajectory

VLA batch:
  image + instruction + robot state
      └─► same VLA policy
          └─► action trajectory
LA4VLA 的核心不是“永远不看视觉”。它是先不看视觉学语言动作先验,再在下游 VLA 中接回视觉做 object localization 和 scene grounding。

五种训练范式

范式训练流程目的
Base不预训练,直接 downstream fine-tune衡量 downstream 数据本身能学到多少。
LALA-33K 去视觉预训练 → downstream fine-tune单独检验 language-action prior。
VLALA-33K-V 带视觉预训练 → downstream fine-tune比较标准视觉-语言-动作预训练。
LA-VLALA-33K → LA-33K-V → downstream fine-tune先学动作语言,再接视觉 grounding。
MixPTLA-33K 与 LA-33K-V 混合预训练 → downstream fine-tune在一个阶段同时保留 LA prior 与视觉 grounding。

训练目标与数据格式

论文没有开源训练代码,但从方法描述可恢复核心训练接口。LA-format batch 与 VLA-format batch 的区别只在视觉是否可用。

# LA-format batch
{
  "instruction": "transport the object to the right while holding it",
  "state": robot_state[t0:t1],
  "images": MASKED_OR_EMPTY,
  "actions": action_trajectory[t0:t1]
}

# VLA-format batch
{
  "instruction": same atomic instruction,
  "state": robot_state[t0:t1],
  "images": original visual observations,
  "actions": action_trajectory[t0:t1]
}

Action head 是 flow matching,因此训练形式可写成:对真实 action trajectory 加噪,模型预测从噪声到真实动作的 velocity field。

xτ = (1-τ)a + τϵ,   target = ϵ - a 或 a - ϵ,取决于实现约定

如果要复现,最小模块应包括

  1. segmentation module:从 state 检测 keyframes,并调用 VLM 生成 JSON segment proposal。
  2. verification/cleaning module:人工或半自动质检,保留 score ≥ 2 的 segments。
  3. LA dataset builder:把 retained segment 写成 instruction/state/action,不写入 image。
  4. LA-33K-V builder:同一 segment 恢复原始 visual observations。
  5. policy trainer:支持 Base/LA/VLA/LA-VLA/MixPT 五种 schedule。
  6. robustness evaluator:视觉噪声、视觉移除、视觉冲突和真实任务 success。
这些模块是论文可复现所需的“实现分解”,不是官方代码事实。官方 GitHub 当前未提供这些实现。

训练日程建议:如何验证论文主张

阶段要训练什么验收指标为什么必要
Stage 0Base downstream-onlyMetaWorld/LIBERO/真机 baseline success没有这个无法说明预训练有用。
Stage 1LA-only pretrainingdirection-following under masked visual;downstream success验证“无视觉也能学动作先验”。
Stage 2VLA-only pretraining同样 downstream success证明 LA 不是简单因为多训了一次。
Stage 3LA-VLA sequential是否超过 LA/VLA验证先验再 grounding 是否更稳。
Stage 4MixPT是否在 MetaWorld/real/robustness 最好验证混合预训练是否更实用。
Stage 5Visual perturbation / conflict eval噪声、masked、conflict 下 success 与方向指标直接支撑“减少视觉捷径”。

官方代码状态

项目页本地克隆路径核对结果
github.com/MINT-SJTU/LA4VLA/home/chenzhiyuan/projects/LA4VLA当前只有 README.md,内容为标题 # LA4VLA;未见数据构造、模型、训练、评测代码。
因此本页不能像 LAP/DiT4DiT 那样做真实代码逐行印证。下面的“代码设计”是根据论文方法反推的复现骨架,用于指导实现,不等同于官方代码。

可复现代码骨架

la4vla/
  data/
    keyframe_detector.py      # state trajectory -> static / gripper events
    vlm_segmenter.py          # Qwen-3-VL-Plus prompt -> JSON segments
    verify_segments.py        # human score / filtering / agreement
    build_la33k.py            # retained segments -> LA-33K
    build_la33k_v.py          # retained segments + images -> LA-33K-V
  models/
    la4vla_policy.py          # InternVL3-1B + flow matching action head
    action_head.py            # noisy action -> velocity field
  train/
    train_base.py
    train_la.py
    train_vla.py
    train_lavla.py
    train_mixpt.py
  eval/
    eval_metaworld.py
    eval_libero.py
    eval_real_xarm6.py
    eval_visual_perturb.py

核心伪代码:MixPT

for batch in dataloader_mix(LA_33K, LA_33K_V):
    if batch.format == "LA":
        images = mask_or_empty(batch.images)
    else:
        images = batch.images

    cond = model.encode(images, batch.instruction, batch.state)
    noisy_action, target_velocity, tau = flow_sample(batch.actions)
    pred_velocity = action_head(cond, noisy_action, tau)
    loss = mse(pred_velocity, target_velocity)
    update(loss)

这段伪代码抓住 LA4VLA 的训练本质:同一策略同时看到“无视觉 LA 监督”和“有视觉 VLA 监督”。

如果我们自己实现,关键接口应该长什么样

class LAEpisode:
    episode_id: str
    source_demo_id: str
    start_time: float
    end_time: float
    subaction: str
    instruction: str
    states: Tensor[T, state_dim]
    actions: Tensor[T, action_dim]
    images: Optional[Tensor[T, V, H, W, 3]]  # LA: None / VLA: restored
    quality_score: int
    annotator_confidence: int

class LA4VLATrainer:
    def train_la(batch):      # image masked
        return flow_loss(policy(instruction, state, no_image), actions)
    def train_vla(batch):     # image enabled
        return flow_loss(policy(instruction, state, image), actions)
    def train_mixpt(batch):
        return train_la(batch) if batch.format == "LA" else train_vla(batch)

这类接口能把论文中最关键的 LA/LA-33K-V 配对关系保留下来。复现时不建议只保存普通 JSON caption;必须保存 source_demo_id/start/end,否则无法恢复 LA-33K-V 和做 segment-level error audit。

部署链路应如何搭

论文真机平台是 xArm6 + parallel-jaw gripper + 两个 RGB 相机:一个 wrist camera,一个 third-person camera。部署时必须恢复视觉输入,因为下游任务需要定位按钮、书架位置、九宫格杯子位置。

xArm6 camera streams
wrist + third-person
policy input
image + instruction + state
LA4VLA-1B
flow action head
action chunk
robot controller
任务语言条件为什么适合 LA4VLA
Press Button四个按钮中按指定按钮初始视觉类似,目标由语言决定,能测是否听指令。
Place Book把书放入三个书架位置之一目标位置由语言决定,考察空间指令。
Place Drink把饮料放入 3×3 grid 指定格视觉场景相似,语言目标细粒度,考验语言-动作映射。

复现最低要求

  • 需要能记录 action trajectory 与 robot state 的示教系统。
  • 需要把 downstream 任务做成 language-conditioned 多目标任务,否则无法证明语言动作 prior。
  • 需要同时评估 no-pretrain / VLA / LA / MixPT,避免把提升误归因于数据量。
  • 必须做视觉扰动或视觉冲突评测,否则“减少视觉捷径”的主张证据不足。

评测协议矩阵:作者到底测了什么

评测块Benchmark / 平台任务与数据为什么这样测复现状态
方向/操作泛化MetaWorld按 Easy / Medium / Hard / Very Hard 四档报告平均 success。MetaWorld 空间和动作变化更大,用来放大 language-action pretraining 对低层动作先验的收益。官方代码未发布;本地无实质代码可复现。
标准 VLA 仿真LIBEROSpatial/Object/Goal/Long 四套件;报告 suite success。验证 LA pretraining 在主流 VLA benchmark 上也有效,并特别观察 Spatial/Long 这种更依赖方向和阶段的套件。未复现;只做论文核对。
跨架构验证StarVLA把 LA pretraining 迁移到 StarVLA 架构,在 MetaWorld 和 LIBERO 上复测。排除方法只对 LA4VLA-1B / InternVL3-1B 有效,证明训练范式可迁移。本地有 StarVLA 项目,但 LA4VLA 官方训练代码缺失,未跑。
真机语言条件xArm63 个任务:按 4 个按钮之一、把书放入 3 个书架位之一、把饮料放到 9 宫格之一;每任务 20 trials。同一视觉初始场景下只靠语言区分目标,专门测“策略是否真的听语言”,不是靠视觉捷径。未复现;无官方代码/数据。
视觉鲁棒性xArm6 加噪Press Button σ=5、Place Drink σ=15 的高斯视觉噪声测试。检验“先不看图学习 language-action prior”是否降低对视觉捷径的依赖。未复现。
复现注意:LA4VLA 页面中的“代码骨架”是根据论文反推的实现方案,不是官方代码事实;当前克隆仓库只有 README 标题。

仿真实验:MetaWorld 与 LIBERO

模型预训练MetaWorld AvgLIBERO Avg结论
LA4VLA-1BNo69.7392.85无预训练 baseline。
LA4VLA-1BVLA79.7894.40标准有视觉预训练有帮助,但不是最强。
LA4VLA-1BLA83.0095.30去视觉 LA pretraining 优于 VLA pretraining。
LA4VLA-1BLA-VLA86.7596.28LIBERO 最好。
LA4VLA-1BMixPT87.5395.75MetaWorld 最好。

StarVLA 也受益:MetaWorld 从 58.39 提升到 69.91;LIBERO 从 93.70 提升到 94.85,说明 LA pretraining 不是 LA4VLA-1B 特定技巧。

真机实验

预训练Press ButtonPlace BookPlace DrinkAvg
No60.015.040.038.3
VLA50.040.055.048.3
LA85.065.095.081.7
MixPT75.085.090.083.3
真机提升很大,因为这些任务故意让视觉初始场景相似、目标由语言决定。它直接检验“语言是否真的控制动作选择”。

为什么这些实验能支撑主张

实验控制变量被检验的主张
Base vs LA相同 downstream fine-tune,只差是否 LA pretrainLA priors 是否提升策略初始化。
LA vs VLA同源 atomic episodes,一个去视觉,一个带视觉去视觉 language-action 监督是否比标准 VLA 监督更有效。
LA-VLA / MixPT同样数据但 schedule 不同语言动作先验与视觉 grounding 如何组合。
StarVLA 迁移换 VLA 架构效果不是 LA4VLA-1B 架构特化。
真机三任务多目标共享初始视觉,目标由语言指定策略是否真正用语言选择动作。
视觉噪声测试时破坏视觉质量LA pretraining 是否降低对视觉捷径依赖。

这也是我们判断顶会级工作的标准:不仅要有数据构造,还要有清楚的能力定义、训练范式对比、policy success、鲁棒性诊断和跨架构验证。

视觉扰动鲁棒性

论文在 Press Button 和 Place Drink 上加 Gaussian image noise,检验视觉退化时策略是否还能依赖语言动作 prior。

预训练Press ButtonPlace DrinkAvgGain
No40.015.027.5+0.0
VLA20.065.042.5+15.0
LA55.080.067.5+40.0
MixPT65.075.070.0+42.5

表示分析

LA-pretrained policy 在 masked visual input 下,direction-following 指标高:DAR 0.99、DCS 0.85;conflicting state 下仍有 DAR 0.95、DCS 0.80。t-SNE 显示 LA-pretrained 表征按命令方向形成更清晰簇,而 VLA-trained 表征更容易按 state 混成小簇。

这支持论文的机制解释:LA pretraining 让 action-decoding representation 更受 instruction 控制,而不是主要受视觉或 state 控制。

方向跟随指标如何理解

指标直觉含义看什么
DARDirection Agreement Rate预测动作终点是否落在指令指定方向一侧。
DCSDirection Consistency Score动作方向与指令方向的一致程度。
SRSeparation Ratio相反方向指令产生的轨迹是否分开。
SSSeparation Score相反指令在表示/轨迹空间中的可分性。

这些指标不是为了替代 rollout success,而是证明机制:如果 policy 的动作方向在 masked/conflicting input 下仍跟着 instruction 走,那么 downstream 的成功率提升更可能来自语言动作先验,而不是偶然调参。

失败模式与风险

  • LA 数据过粗。如果 atomic segment 仍太长,instruction 会变成小任务描述而不是低层动作描述,语言-动作密度下降。
  • LA 数据过细。如果切得太碎,每段没有完整物理效果,模型学到高频噪声而非 reusable action prior。
  • 视觉完全屏蔽带来定位缺失。LA pretraining 不能替代视觉 grounding;所以 LA-VLA/MixPT 往往比纯 LA 更稳。
  • 人工验收成本。33K 级别能做,扩展到百万级需要更强自动质检或 active verification。
  • 机器人本体差异。DROID 到 xArm6/MetaWorld/LIBERO 有收益,但还不能证明任意本体零样本泛化。

LA4VLA 与 LAP 的本质区别

维度LAPLA4VLA
核心问题VLA action representation 与 VLM 语言分布不对齐视觉监督压过语言动作监督,导致视觉捷径
数据构造从 action chunk 确定性转换 language-actionVLM 切 atomic segments + 人工验证,形成 LA-33K
是否去视觉预训练不是主叙事;LAP 仍是 VLM+action expert 联合训练主叙事:Learning to Act without Seeing
实验重点zero-shot cross-embodiment transferdownstream success + visual robustness + instruction following
代码状态完整开源,基于 OpenPI当前官方仓库未实质发布代码

对 CLAP 的启发

LA4VLA 提醒我们:如果只做 positive language-action,已经很接近 LAP/LA4VLA。CLAP 要发顶会,必须做它们没做的能力:当前动作是否 suitable、哪些 plausible action 当前应该被 reject。

已有工作教模型什么CLAP 可补的空白
LAP正确动作可以如何用语言表达错误但合理的动作为什么不该做
LA4VLA无视觉条件下语言如何约束动作先验有视觉/阶段条件下如何拒绝错目标、错阶段、错方向动作
CLAP应学习 action suitability/rejection必须影响 action selection,而不仅是 offline ranking

自测题