跳转至

视觉-语言-动作模型(VLA)

视觉-语言-动作模型(Vision-Language-Action,VLA)把视觉观测、语言条件或语言预训练表征与动作预测结合起来。对自动驾驶而言,关键问题是如何把“理解道路”转化为有坐标、时间与执行约束的驾驶行为。本节聚焦动作接口、训练数据与闭环验证;语言规划方法见基于 VLM 的决策与规划。

1. VLM、VLA 与端到端驾驶的关系

路线 典型输出 语言的作用 需要验证的能力
视觉语言模型(VLM) 描述、问答、语义标签 输入、输出或预训练监督 场景理解与证据一致性
VLM 辅助规划 行为建议、代价或约束 辅助独立规划器 建议是否被正确转换和执行
VLA 动作序列或可供控制器执行的轨迹 指令条件、推理表征或训练监督 语义接地、动作有效性与闭环表现
端到端驾驶 轨迹或车辆控制量 可以没有语言 传感器到行为的联合优化效果

这些类别存在交集。端到端模型不一定是 VLA,VLA 也不一定每次都生成一段自然语言解释。介绍某个系统时,应明确语言是在训练、在线条件输入还是运行时推理中发挥作用,不能只根据产品名称判断架构。

“前方应当减速”是一条语义建议;“未来三秒的速度和位置序列”才具有可检查的动作含义。即便动作是轨迹而不是油门、制动,整个系统仍需要跟踪控制器与执行器模型。

2. 从多模态输入到动作

一个驾驶 VLA 的抽象接口为:

\[ \hat{A}_t = \pi_\theta(I_{t-k:t}, z_{t-k:t}, c_t),\qquad \hat{A}_t = (a_t, a_{t+1}, \ldots, a_{t+H-1}) \]

其中 \(I\) 是带时间与相机标定信息的图像历史,\(z\) 是自车状态及系统可用的其他观测,\(c_t\) 是导航或语言条件,\(H\) 是输出时域。模型可使用其他传感器;“视觉”不意味着接口只能接收图像。

典型处理顺序是:多视角与时序编码 → 多模态融合 → 动作解码 → 有效性检查 → 轨迹跟踪或控制执行 → 新观测。有效性检查还应考虑动作到达时的状态,避免把对旧画面正确的轨迹用于已变化的交通环境。

2.1 动作表示的选择

表示 示例 优势 工程代价
离散动作 Token 将转角、加速度或轨迹坐标量化 可复用序列预测训练方式 量化误差、序列长度、解码顺序影响时延
连续轨迹回归 自车坐标下的位置、航向与速度 接口明确,易接传统控制器 多种合理行为可能被平均,需处理多模态输出
生成式动作头 通过扩散或流匹配采样轨迹 可表达多种可行未来 采样成本、随机性与候选选择需评估
底层控制序列 转向、油门、制动 直接连接执行接口 对车辆参数、执行延迟和训练分布更敏感

以上是设计选项,不能据此推断所有 VLA 都采用相同动作头。横向比较时需要统一预测时域、采样间隔、控制器和车辆参数。

2.2 动作块与滚动执行

一次输出多个未来动作称为动作分块(Action Chunking)。系统通常只执行前一小段,再根据新观测重新预测。较长动作块能减少模型调用,但会增加对旧观测的依赖;较短动作块则提高计算和调度负担。

接口至少要定义坐标原点、单位、动作时间戳、轨迹有效期、更新频率,以及两次预测之间如何衔接。不能把“预测未来五秒”误解为“五秒内无需再看道路”。

2.3 显式推理与隐式表征

显式语言推理便于检查模型是否关注到关键对象,但增加输出长度;隐式动作预测可以减少文字解码开销,但需要其他诊断手段。两者都应以实际动作验证。自然语言解释可能只是与决策相关的描述,不能单独作为真实因果过程的证明。

2.4 动作头如何训练与解码

离散化动作时,需要保存训练时的量化区间与反归一化参数。以均匀划分的标量动作 \(u\in[u_{\min},u_{\max}]\) 为例,将区间分为 \(B\) 个桶,每个桶宽度为 \(\Delta u=(u_{\max}-u_{\min})/B\);解码为桶中心时,区间内的量化误差不超过 \(\Delta u/2\)。这一界限不包含越界裁剪、预测错误和动作执行误差。直接增加桶数也有代价:类别更稀疏,动作序列可能更难学习。

连续回归避免了量化,但单一均方误差目标可能将“向左绕行”和“向右绕行”平均为穿过障碍物的轨迹。可采用多候选轨迹、意图条件化或生成式动作头表达多种可能,再通过可部署的选择器评估可行性。离线用真实未来挑选最优候选得到的分数,应标明是上界分析;车辆运行时无法使用这样的选择器。

流匹配(Flow Matching)提供了一种连续生成方式:学习从噪声动作块到示范动作块的变换。简化的线性插值目标为:

\[ A_\tau=(1-\tau)\epsilon+\tau A^*,\qquad \mathcal{L}_{\mathrm{FM}}= \mathbb{E}\left[\left\|v_\theta(A_\tau,\tau\mid o,c)-(A^*-\epsilon)\right\|^2\right] \]

其中 \(A^*\) 是专家动作块,\(\epsilon\) 是同维噪声,\(\tau\in[0,1]\) 是生成过程的时间,不是车辆行驶时间。推理时从噪声出发,数值积分学习到的向量场得到动作块。\(\pi_0\) 展示了视觉语言基座与流匹配动作生成结合的机器人研究路线;上式用于说明方法,不代表所有模型都采用同一插值或训练配置。\(\pi_0\) 论文

动作生成器的采样步数、候选数与选择器耗时都应计入推理预算。比较两种动作头时,建议同时报告相同预算下的闭环表现与实际延迟,避免将更多采样算力带来的收益全部归因于架构。

2.5 多视角与时序接地

单帧图像难以区分停在路边的车辆和正在并入车道的车辆。多帧输入可以提供运动线索,但历史帧越多,计算与缓存开销越大。下面几项应纳入模型和数据接口设计:

设计点 需要保留的信息 可定位问题的实验
相机身份与标定 视角编号、内外参、标定版本 遮蔽单相机,检查侧向目标相关失败
时序编码 采集时间、帧间隔、自车运动 改变帧间隔,检查速度理解是否退化
图像压缩 小目标、交通灯和远处可通行区域 分辨率或视觉 Token 数量扫描
历史缓存 当前路线、指令版本、场景重置标记 切换任务后检查是否沿用旧意图

缺帧不能用重复旧帧悄悄替代而不提供时间信息,否则模型可能将“没有新观测”误解为“目标没有运动”。应将缺失标记与实际时间戳一起处理,并用与部署一致的丢帧模式做评测。

3. 从机器人 VLA 到驾驶 VLA

下面选取公开研究用于说明不同接口和证据类型,不作为产品能力排名。

工作 研究对象与方法 对驾驶的启发 证据边界
OpenVLA(2024) 用视觉语言基座与机器人示范学习操作策略 语言与动作对齐、适配新任务 机器人操作结果不能直接证明道路驾驶能力
\(π_0\)(2024) 视觉语言基座结合流匹配动作生成的机器人策略 连续动作块与生成式解码 操作任务证据不代表车辆控制与道路安全验证
LMDrive(2023 预印本) 融合多模态传感器与自然语言指令的闭环驾驶框架,提出 LangAuto 指令跟随必须与闭环执行共同评价 仿真条件下的结果不等同于道路泛化
EMMA(2024) 将轨迹、感知对象与道路图等输出放入统一语言表示 探索多任务共享与轨迹语言化 论文中的任务指标不能单独证明车端实时部署能力

迁移时必须重新处理动作空间与动力学:机械臂的末端位姿和夹爪动作,与车辆曲率、速度和制动并不等价。驾驶还涉及高速运动、多参与者响应、交通规则与长时间连续执行。可迁移的是表征与训练思路,控制接口和评测证据需要重新建立。

4. 数据构建与训练流程

4.1 一条样本应包含什么

数据项 示例 质量检查
历史观测 多相机视频、自车速度、可用导航 时间对齐、标定一致、无未来帧混入
语言条件 “经过路口后靠右停车” 参照物清楚、时序条件可判断
专家动作 未来轨迹或控制序列 坐标正确、车辆可执行、标注时刻明确
辅助标签 信号灯状态、让行对象、风险描述 有观测证据,区分事实与推断
元数据 日志、城市、天气、来源、接管事件 可追踪、可分组划分、可审计

用完整视频生成训练解释时,标注器可能看到未来行人或后续交通灯变化。若把这些信息写进模型当前时刻可见的指令,就产生未来信息泄漏。应限制条件标注的可见时间范围,并将仅用于离线监督的标签与在线输入隔离。更多数据流程见数据标注与闭环。

4.2 分阶段训练

  1. 多模态适配:建立视觉特征、道路语义和导航条件之间的对应关系,检查多视角与时序信息是否保留。
  2. 动作监督学习:用驾驶示范学习轨迹或控制。离散动作可用交叉熵,连续轨迹可用回归损失,生成式动作头按其目标训练。
  3. 闭环纠偏:在仿真中收集偏离专家轨迹后的状态,通过专家重新标注、困难场景采样或奖励优化改善恢复行为。
  4. 部署适配:压缩或蒸馏后重新评测动作质量、时延和长尾退化,而不是仅检查语言问答能力。

示意性的联合目标为:

\[ \mathcal{L} = \lambda_a \mathcal{L}_{\mathrm{action}} + \lambda_l \mathcal{L}_{\mathrm{language}} + \lambda_c \mathcal{L}_{\mathrm{constraint}} \]

各项是否使用取决于模型设计。轨迹平滑或碰撞惩罚可作为训练信号,但损失降低不构成运行时约束必然满足的保证。还应检查语言任务是否挤占动作学习容量,以及模型是否忽略指令、仅靠视觉和路线先验完成任务。

4.3 语言增益要通过消融确认

在相同数据划分和近似算力预算下,对比有语言、无语言、同义改写与错误条件。仅删除语言后得分下降,可能只是接口分布发生变化;需要合理训练的无语言基线,以及同场景下真正要求不同动作的指令对,才能分析语言的贡献。

4.4 纠偏数据:从行为克隆到 DAgger

行为克隆(Behavior Cloning,BC)在专家访问过的状态上拟合动作。部署时一个小误差就可能让车辆进入示范中没有出现过的状态,后续误差随闭环反馈累积。仅增加专家正常驾驶里程,不一定能补齐这些恢复状态。

数据集聚合(Dataset Aggregation,DAgger)的核心是让策略访问状态,再请专家为这些状态提供动作标签,将新数据加入训练集。它针对的是策略诱导的分布变化,而不仅是增加数据量。Ross 等人的原始论文

在仿真驾驶中,可按以下流程实现这一思路:

  1. 用专家示范训练初始策略,并冻结一组独立验证场景。
  2. 在训练场景运行当前策略,保存偏离路线、延迟让行和控制振荡前后的观测与状态。
  3. 由经过验证的专家规划器或人工审查给出恢复轨迹;专家应从策略实际到达的状态出发,不能直接粘贴原日志轨迹。
  4. 对无法恢复、已碰撞或专家求解失败的片段单独标记,不伪造“正常驾驶”标签。
  5. 混合原始示范与新纠偏数据,控制场景采样权重后重新训练,再检查正常驾驶与恢复能力是否同时改善。

专家可以使用仿真真值生成离线标签,但学生的输入仍应遵守部署接口。若专家利用了学生不可能观测到的信息,应分析标签是否可学习,例如完全遮挡的行人尚未显现时,学生无法仅凭当前画面复现专家的精确时机。

4.5 强化学习与奖励失配

在有可靠仿真反馈时,可用强化学习(Reinforcement Learning,RL)优化长期回报,例如任务完成、效率与舒适性。下面是设计示意,并非推荐的通用权重:

\[ r_t=w_p\Delta s_t-w_c\mathbf{1}_{\mathrm{collision}} -w_o\mathbf{1}_{\mathrm{offroad}}-w_j\|j_t\|^2 \]

其中 \(\Delta s_t\) 是沿目标路线的进度,\(j_t\) 是加加速度。仅有这些项仍不充分:过大的碰撞惩罚可能鼓励原地不动,单纯奖励进度可能鼓励切弯或越界,过重的舒适性惩罚又可能抑制必要制动。

因此,应将训练奖励与评测指标分开保存,明确终止条件、折扣因子、超时行为和交通规则约束。每次调整奖励,都应检查策略是否利用了仿真漏洞或评分漏洞;最终测试场景不能继续用于奖励调参。

4.6 一个可执行的消融计划

对照实验 保持一致的条件 要回答的问题
合理训练的无语言基线 vs. VLA 数据分区、路线输入、车辆与控制器 语言是否增加有效任务能力
单帧 vs. 历史帧 相机覆盖,报告额外计算成本 时序信息是否改善交互判断
仅正常示范 vs. 加入纠偏数据 基座、评测集、训练预算记录 提升来自恢复能力还是额外训练
不同动作头 预测时域、更新周期、近似推理预算 动作表示与解码的实际收益
原模型 vs. 蒸馏模型 目标硬件、时延计时边界 压缩造成了哪些场景退化

应保存每项实验的训练种子、数据清单、检查点与运行配置。没有某项资源时,缩小问题范围并写清限制,比同时改变模型、数据和仿真配置后给出单一分数更有解释力。

5. 仿真如何支持 VLA 训练与评测

仿真既可生成带动作真值的交互样本,也可暴露模仿学习的分布偏移。两种用途应使用隔离的场景集:训练时可反复挖掘失败案例,最终评测则冻结场景、语言模板与评分规则。

建议采用逐级验证:

阶段 检查内容 不能替代的后续验证
开环检查 格式合法、坐标正确、轨迹误差、指令理解 无法检验动作引起的状态变化
闭环驾驶 完成率、碰撞、越界、停滞、舒适性 依赖仿真动力学和交通模型
语义扰动 同义改写、歧义、冲突、延迟与撤销 不能仅以文本回答是否正确评分
时延与故障注入 推理超时、缺帧、传感器退化 需要目标硬件测量支撑延迟模型
迁移验证 保留地点、不同仿真配置、封闭场地 仿真优势不自动转化为真实道路优势

可复现配置、生成式仿真的边界与语言测试矩阵见闭环仿真与策略评测。评测时应分别报告原始模型行为、保护层干预与系统最终行为,防止保护层掩盖模型缺陷。

6. 部署时的约束与故障处理

VLA 输出进入执行链路前,应检查格式、有限数值、时间有效性、动力学可行性与可通行区域。超时、空输出和轨迹异常必须有明确处理规则;不能假定语言模型总会给出可执行答案。

语言输入也需要区分来源。授权的导航指令、乘客请求和摄像头看到的路牌文字有不同语义;路边广告中的命令式文本不应直接修改任务目标。合法用户指令与现场约束冲突时,应由系统任务与安全策略处理,不能让模型自行绕过约束。

保护层和回退策略同样需要验证,突然制动并非所有场景下的安全解法。部署评测应覆盖旧轨迹保持、重新规划、控制器切换和降级期间的行为连续性。详细工程方法见部署与优化及端到端安全与部署。

7. 贯穿案例:经过路口后靠右停车

设任务发生在仿真园区道路,指令为“通过前方路口后,在右侧指定停车区停车”。地图中已定义合法目标区域,因此本例测试时序理解和执行,不要求模型自行解释当地停车法规。

环节 输入或产物 判定重点
条件接地 指令、路线、可见路口与停车区 区分“路口前”“路口后”和目标区域
时序理解 最近的多视角观测、自车状态 识别是否已越过路口,是否有侧后方来车
动作生成 带时间戳的候选轨迹 轨迹留在可通行区域,并能达到指定终态
滚动执行 新观测、更新后的轨迹 行人出现时重新规划,不盲目执行旧动作块
结果评分 几何状态、速度、事件日志 目标区域内停车、任务完成时间、违规与干预

测试变体可包括将“路口后”改成“路口前”、停车区被占用、指令在通过路口后才到达,以及靠边过程中行人进入目标区域。若停车区不可用,应按预先定义的任务协议记录等待、重新规划或未完成;不能强迫所有场景都以停车成功结束。

失败分析要定位到可观察证据:选错停车区可能是指令接地问题;选对区域但绕行失败可能是规划问题;轨迹正确却发生过冲可能是控制或延迟问题。保存文本、轨迹和执行结果,才能区分这三类失效。

参考资料

  1. Kim et al. — OpenVLA: An Open-Source Vision-Language-Action Model,2024。
  2. Shao et al. — LMDrive: Closed-Loop End-to-End Driving with Large Language Models,2023 预印本。
  3. Hwang et al. — EMMA: End-to-End Multimodal Model for Autonomous Driving,2024。

  4. Black et al. — π₀: A Vision-Language-Action Flow Model for General Robot Control,2024。

  5. Ross et al. — A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning,2011。