LVLM赋能端到端自动驾驶再上一层楼!地平线联手华科打造Senna算法模型
一、论文导读
在本文中,作者将大视觉-语言模型和端到端自动驾驶相结合,提出了Senna算法框架。通过LVLM生成规划决策,端到端算法预测轨迹的方式,Senna在nuScenes规划任务上实现了SOTA的性能
二、论文研究背景
近年来,端到端智驾算法取得了重大的突破。同时在大规模数据的支持下,端到端方法已展现出卓越的规划能力。此外,大视觉-语言模型已经展现出越来越强大的图像理解和推理能力。通过利用它们的常识和逻辑,大视觉-语言模型可以分析驾驶环境并在复杂场景中做出安全决策。
目前,端到端自动驾驶的常见做法是直接预测未来轨迹或控制信号,而无需决策步骤。但这类做法可能会使模型学习更加困难,同时缺乏可解释性。
为了将大视觉-语言模型与端到端自动驾驶相结合,作者在文章中主要讨论了以下三方面的问题
- 如何将LVLM与端到端自动驾驶进行结合
- 如何设计适合自动驾驶任务的LVLM
- 如何有效的训练用于驾驶的LVLM
三、网络模型结构&技术细节梳理
下图展示了Senna算法模型的整体网络结构
通过上图可以看出,输入的场景信息包括多视角的图像序列、用户指令以及导航命令。用户指令作为prompt输入到Senna-VLM中,而其他指令则同时发送到Senna-VLM以及Senna-E2E中。
Senna-VLM分别将图像和文本信息编码为Image Tokens和Text Tokens,交给LLM进行处理。接下来,LLM生成高级决策,这些决策经由Meta-action Encoder编码为高维向量喂给Senna-E2E。最后Senna-E2E根据场景信息和Senna-VLM生成的元动作特征来预测最终的规划轨迹。
核心创新点一:Senna-VLM模块
Senna-VLM模块主要由四个部分构成,分别是Vision Encoder、Text Encoder、Large Language Model以及Meta-action Encoder。
- Vision Encoder + Driving Vision Adapter:Vision Encoder用于提取输入图像的语义特征,具体采用的是ViT-L/14模型。但随着图像数量较多,会导致Image Tokens的数量也较大。这不仅会减慢VLM训练和推理的速度,还会导致模态坍塌和解码失败的问题。
- Meta-action Encoder模块:该模块用于将LLM输出的高级决策转换为meta-action feature。此外,由于作者使用了一组格式化的元动作集合,Meta-action Encoder使用一组可学习的embedding实现了从元动作到元动作特征的一对一映射。
核心创新点二:Senna-E2E模块
Senna中采用的端到端算法模型为VADv2,该模块的输入包括多视角图像序列、导航命令和元动作特征。此外,Senna-E2E模块主要由三个子模块构成,分别是
- 感知模块:用于实现动态目标的检测以及生成局部的地图
- 运动预测模块:用于实现动态目标的未来轨迹
- 规划模块:通过注意力机制将一组Planning Token与场景特征进行交互预测规划轨迹。同时将Meta-action Encoder模块输出的meta-action feature作为额外的交互token进行轨迹预测
核心创新点三:Driving VLM的训练策略
本文中提出了三阶段的训练策略用于训练Senna-VLM。
- 第一阶段(Mix Pretraining):使用单图像数据训练Driving Vision Adapter模块,同时保持Senna-VLM中其他模块的参数不变
- 第二阶段(Driving Fine-tuning):根据以规划为导向的QA对Senna-VLM进行微调
- 第三阶段(Planning Fine-tuning):仅使用元动作规划QA进一步微调Senna-VLM
总体来说,在第二阶段和三阶段,作者对Senna-VLM的所有参数进行了微调,但Vision Encoder始终保持参数被冻结。
四、实验结果部分
整体实验对比
记录一位智驾感知算法工程师的日常读论文笔记(不定期更新~)