AutoVLA论文阅读笔记
论文:https://arxiv.org/pdf/2506.13757
代码:
1、为什么要做这个研究(理论走向和目前缺陷) ?
之前的vla模型要么结构复杂,要么梯度断连,自回归式的输出路点虽然优雅,但是llm天然不太适合这种精确数值计算,实际的输出轨迹不可行。
2、他们怎么做这个研究 (方法,尤其是与之前不同之处) ?
把连续轨迹通过k-disk离散为一个个动作token,就可以用llm decode同时输出语言token和动作token。SFT阶段监督有两类,只有动作监督和同时兼有动作和思考监督,赋予模型快思考和慢思考的能力。RFT阶段用GRPO微调模型,奖励函数同时考虑思维链长度和轨迹好坏,使得模型能够自适应决定快思考和慢思考。
3、发现了什么(总结结果,补充和理论的关系)?
效果不错,模型结构优雅,但是耗时严重且吃显存。
摘要
借助llm的世界知识和推理能力可以提升端到端自动驾驶表现效果。但是现有的vla模型经常会有这几个问题,1)输出的轨迹物理上是不可执行,2)模型结构过滤复杂,3)简单场景却进行长思考。本文提出的AutoVLA把思考和动作生成统一到自回归式输出的端到端模型中,输入是视觉输入和文本引导,输出就直接是思考过程和规划结果。通过把连续的轨迹离散为一个个的动作token,这样就可以整合到语言token中了。训练时,通过sft赋予了模型两种思考模式:1)快思考,及不用显式输出思考内容,直接输出规划token。2)慢思考:显式输出思维链内容和规划的token。为了提高规划的效率,还用了grpo做强化学习后训练,避免模型在简单场景中输出长思考内容。在nuPlan, nuScenes, Waymo, and CARLA的开环和闭环结果表明其性能不错。
1 引言
视觉为主的端到端(VA)模型对训练和部署要求不高,研究已经非常多了,但是VA模型主要还是用模仿学习的方法训练,不具备世界知识,长尾场景处理不好。vla模型利用了vlm的世界知识和推理能力,理论上限更高。
现有的vla模型有如下两个问题:1)用vlm模型以文本的方式直接出waypoints, 但是vlm模型天生对数值任务处理不好,生成的轨迹实际是不可通行的。或者先出个元动作,然后下游再用一个规划器/解码器细化为规划路径,这样就结构复杂了,而且可能会打断端到端优化的链路。2)过度思考或过少思考。简单场景应该直接出动作就行了,复杂场景需要深度思考,但现有的模型没办法平衡。DriveVLM虽然通过快慢系统的方式实现了快执行和慢思考的平衡,但是模型结构不够优化,训练成本也比较大。
AutoVLA通过把连续的轨迹离散为一个个的动作token,这样就可以像语言token一样混在一起输出了。在SFT阶段,模型既收到有思维链监督的真值数据,也有只有规划路径的数据,这样就赋予了模型快思考和慢思考的能力。同时,在RFT阶段,还设计了可变的规划奖励函数利用GRPO优化赋予模型自适应的决定思考的深度,从而平衡路径规划的准确率和效率。
本文主要贡献:1)提出AutoVLA模型,利用了预训练vlm的端到端的模型,可以直接进行策略学习和深度思考,输入是原始图像和语言文本。2)提出利用GRPO进行后训练,赋予模型自适应快思考还是慢思考的能力。3)开环和闭环评估性能都优秀。
2 相关研究
VA: UniAD, VAD, ParaDrive, GenAD, DiffusionDrive
VLA/VLM:大概三个方向,1)把驾驶视为一个问答任务,不输出动作,只做场景描述。2)第二种就是用vlm或vla生成元动作或决策指令, 交给下游的传统规划器或生成式规划器或端到端模型来细化为规划轨迹,这种方法整合比较容易,但是会打断端到端的优化。3)第三种方案是把vlm直接出隐式动作token或最终的规划轨迹,即vla,然而仅仅用一个简单的轨迹解码器(如mlp或GRU)可能会产生实际并不可通行的规划路径,ORION通过引入生成式规划器来解决此问题,但增加了模型复杂度和计算量。
强化学习微调(RFT):RFT可以提升模型的性能和适用性。Gen-Drvie和TrajHF用了RFT来确保生成的轨迹安全且符合人类偏好。RAD用了3DGS来生成场景和RL闭环训练。但其实把RFT用于智驾VLA模型的训练还是比较少的,AlphaDrive虽然用GRPO了增强规划性能并确保训练效率和稳定性,但是仅仅作用于元动作层。本文GRPO后训练赋予模型自适应决定思考的深度的能力。
3 AutoVLA
模型主要有两个组件1)VLM主干网络,输入是图像和文本,自回归输出是思考和动作token。2)物理元动作生成:把之前只生成语言token的llm decode拓展到去生成物理元动作,这些元动作是物理上可以执行的(通过聚类获得的保证),可以被翻译成规划轨迹。
训练AutoVLA主要有两个阶段,1)SFT阶段:标注为GT轨迹+思考内容。2)RFT: 通过任务特定的奖励函数优化规划器性能,从而提高运行效率并最小化不必要的推理。
3.1 框架
模型输入:多帧多视角图像C + 导航指令I + 自车状态S, 具体来说用了自车的左前、前、右前三个相机作为输入,每路相机用最近两秒的4帧输入,即1个当前帧+3个历史帧,导航指令即左转、直行这种,自车状态S包括速度、加速度和历史行为。
基础的VLM模型:qwen2.5-vl-3B
动作分词器:不连续的自车轨迹离散为物理元动作,每个元动作就是短期的位移和方位角变化(D_x, D_y, D_theta),这样就可以把轨迹规划任务转化为next-token预测的任务,构建动作码本是通过k-disk聚类算法实现的(k-disk聚类相对k-means聚类获取动作码本更合适,原因是k-disk使用最小包围圆盘圆心替代 K-Means 的均值向量作为簇代表,可以避免生成物理不自然的中间轨迹。比如:一簇点大部分集中在直行区域,少量点在急转弯,k-means均值会落在直行与转弯中间,生成不真实的漂移动作。而k-disk MED 最小包围圆的圆心在直行簇中心,圆刚好包住转弯离群点,用这个圆心做码本模板,代表基础直行行为,离群仅体现为圆盘半径增大,不污染模板本身)。最终获得了2048个元动作的动作码本。
统一思考和动作:用一个人llm decode既输出语言token,也输出动作token. 并自适应决定是否输出语言token。
3.2 思维链数据
思考的目的主要是理解复杂场景的语义以及动态环境的交互关系。虽然很重要,但是想要获取大规模高质量的驾驶场景思维链数据比较困难,主要原因是1)驾驶场景大多比较简单和重复,2)对于关键信息(如交通灯、车灯)的表达不充分,3)思考过程质量低,比如遇到stop sign就停。
利用qwen2.5-vl-72b模型制备思维链数据,并且保证4项关节内容:详细的场景描述,关键目标的识别,交通参与者的意图,自车驾驶的决策。为了规范思考效果,还把最终的gt轨迹作为引导来生成思维链数据。
有了上述思维链数据制备过程,最终获得45.6k的nuPlan数据和7.2k的waymo数据。还整合了nuScenes和CARLA的DriveLM和VQA数据。
3.3 SFT
除了像标注llm训练是对所有输出token进行监督,还额外对动作token进行监督。
SFT数据中有些简单场景是没有思维链内容只有动作监督的,所以上述公式就有可能对仅有动作的样本进行更大权重的监督了,故此对动作token的损失计算单独计算权重,并且如果有思维链内容,也要整体赋予一个新的权重。
3.4 RFT
RFT确保自适应决定是否进行深度思考。用了GRPO微调,可以稳定训练,提升收敛速度。此外,同一场景下进行多模态规划天然就比较适合GRPO优化。
给定场景输入query q (包含:图像,自车状态,导航指令),从旧的策略中采样G个候选输出,通过归一化组相对优化A获得当前策略模型,目标函数:
大概逻辑就是计算每个输出的优势,然后clip到一定范围内,然后考虑每个输出的优势 更新当前策略模型,同时利用新策略模型的相对SFT出来的模型(一直不变)的kl散度控制更新幅度。
每个输出的优势利用一个奖励函数计算,同时考虑驾驶奖励(nuPlan使用PDMS,考虑安全,舒适,效率等。waymo用ADE)和思维链的奖励。思维链的奖励考虑了思维链的长度作为奖励函数。
4 实验
4.1 实验设置
数据集:真实场景和仿真数据都有。真实场景:nuPlan 120小时驾驶数据,8路摄像头。Waymo 111.7小时,8路摄像头。nuScenes: 1000段城市场景数据,6个摄像头。CARLA 50w帧数据,6路摄像头。此外,还用上了针对nuScenes和CARLA数据制作的思维链数据(DriveLM).
Benchmarks: 开环评估:NAVISIM,PDMS指标;nuScenes 使用L2距离作为评估指标,Waymo使用RFS评估指标。闭环评估:Bench2Drive,指标SR, DR等。
实现细节:每个动作token对应0.5秒的运动,预测未来5秒的动作变化,即输出10个token。SFT阶段训5个epoch,学习率0.00001,FSDP训练策略。8卡L40s,每张卡bs1,累计四个step后梯度回传更新,相当于bs32。SFT损失设置lamda_a =1, lamda_cot = 40,说明在有思维链的数据中损失权重更大。RFT阶段,LoRA微调,微调6000steps。
4.2 主要结果
数据规模实验:nuPlan和nuScenes的实验均表明,在数据规模效果比较小的时候,只有动作监督放到效果更好,当数据规模够大(大于100k)时,有cot监督的数据效果更好。
RFT性能:
慢思考模式很耗时,如下表所示。
故此,用了RFT来增强模型自适应思考的能力,实验表明RFT是的PDMS指标提升,性能也有大幅提升(耗时降低66.8%),GRPO的group size越大越好。
nuPlan 实验结果:
best-of-N是指输出的6条规划轨迹使用oracle打分器选出的最优的那个。
Waymo E2E Performance:
CARLA闭环性能:Bench2Drive benchmark
4.3 消融实验
文本式路点输出:对比动作token和文本化的路点:
动作分词方法:RT-1, FAST以及K-disk。RT-1方法对车辆动力学模型比较敏感,而很多数据是只有轨迹的,FAST需要比较大的码本效果才比较好。综合来看k-disk分词效果最好。
5 结论
统一思考和动作在同一个llm decoder中输出,SFT使模型同时支持快思考和慢思考,RFT使模型自适应决定是快思考还是慢思考。
局限:模型跑的tai慢(1hz),且显存消耗巨大。
