作者 | 鲁大师
出品 | 汽车电子与软件
前言
自动驾驶从业者们众所周知的是在这一年多的时间里,端到端方案算是火出了天际,完全不亚于deepseek这样的AI大模型的热度。由于一些契机,最近对端到端自动驾驶方案进行了一番较为广泛但并不深入的调研,得到了一些收获,今天在这里整理出来跟大家分享。至于文章的标题与其说是“研究”,不如说是搬运或着收集。
端到端方案的优劣势
开门见山,我们先直接来看看端到端方案的优缺点。
优势:
1)可以将感知、预测和规划集合到一个可以联合训练的模型中。
2)整个系统,包括其中间特征,都是针对最终目标进行优化。
3)共享了主干网络,提高了计算效率。
4)数据驱动的优化任务可以通过扩展训练数据不断优化提升系统能力。
劣势:
1)“端到端”并不是一个特别大的模型,比如理想汽车的“端到端”方案其实在一个Orin-x上就能跑通,并且有大量的rule-based兜底。
2)“端到端”并非万能,其“黑盒”特性决定了无法通过简单而明确可解释的规则约束系统的安全边界,存在安全性挑战。
3)模型能力评测从模拟环境到真实环境,系统的适应能力和泛化能力有待更广泛的验证。
对端到端方案有了解的人可能很好理解上面提到的这些优缺点,但是对于不了解的人来说可能会有一些疑问,例如:什么叫共享了主干网络?为什么它能提高了计算效率?“黑盒”特性是咋回事儿?等等一些问题。所以希望接下来的内容能回答这些问题。
当前主流方案
首先我们一起来看看各家的方案是怎么样的?按照惯例我们还是主要介绍“主流”的、走的比较“靠前”(声量比较大的)的几家企业的方案。
总的来看,目前的端到端自动驾驶方案分为两种:全局式(一段式)和分段式(两段式),其中全局式端到端思路清晰,研发成本远低于分段式,无需任何人工标注数据集,依赖谷歌、META、阿里和OpenAI等开发的多模态大模型,代表有Waymo的EMMA,直接输入视频,没有骨干网,核心就是多模态大模型。
分段式的感知阶段仍然使用传统的CNN骨干网提取特征,在路径规划阶段使用端到端,性能虽然不如全局式,但部署成本比全局式端到端要低。分段式端到端的代表有UniAD。
UniAD的主体结构分为特征提取、特征转换、感知模块、预测模块、规划模块。多组 query 实现了全栈 Transformer 的端到端模型,包含四个基于transformer解码器的感知和预测模块,以及最后的规划器。
多视角图像通过BEVFormer特征提取,获得BEV特征B。(可用其他BEV方案、多帧、多模态融合)
TrackFormer中,通过track queries的可学习嵌入,从B中查询物体的信息来进行检测和跟踪。
MapFormer中,使用map queries从B中查询道路元素(例如车道和分隔线)的信息,并执行地图的全景分割。
MotionFormer捕获B+物体+地图之间的交互信息(作为k和v),并预测每个物体的未来轨迹,由于场景中每个物体的行动可能会对其他物体产生重大影响,该模块为所有考虑的物体做出联合预测。
同时,设计了一个自车查询,以明确地对自车进行建模,并与其他物体交互。
OccFormer使用BEV特征B作为查询,物体motion信息作为k和v,并且预测物体未来occupancy的情况。
最后,Planner使用来自MotionFormer的表达性自车查询来预测规划结果,并通过避开OccFormer预测的占用区域来避免碰撞。
Planner利用来自MotionFormer的自车查询来预测规划结果,并将其自身远离OccFormer预测的占用区域,以避免碰撞。
采用一段式端到端的成本非常高,需要大量算力投入;相对来看,分段式端到端目前投入的成本还是比较低的。另外,从稳定性方面来说,目前,分段式的端到端可能更加符合人们的预期。因为人机共驾和无人驾驶车辆、人工驾驶车辆还会长期共存,如果落地效果不够拟人、与他人行为不一致的话,可能就非常麻烦,所以还需要加入规则化的约束。
另外,从稳定性方面来说,目前,分段式的端到端可能更加符合人们的预期。因为人机共驾和无人驾驶车辆、人工驾驶车辆还会长期共存,如果落地效果不够拟人、与他人行为不一致的话,可能就非常麻烦,所以还需要加入规则化的约束。
但是从长期来说,一段式的端到端是终极目标,也应该是更长期的目标。
目前,在国内,各家的端到端思路,最多也就从感知端到预测决策端,最终的控制执行模块,依然由工程师的手写规则来兜底。
2.1 理想
2.1.1 模型架构
理想提出的端到端“One Model”结构,输入端是传感器信息,输出端是行驶轨迹。
基于快慢系统系统理论形成自动驾驶算法架构的原型。“系统1”由端到端模型实现,具备高效、快速响应的能力。端到端模型接收传感器输入,并直接输出行驶轨迹用于控制车辆;“系统2”由VLM视觉语言模型实现,其接收传感器输入后,经过逻辑思考,输出决策信息给到“系统1”。双系统构成的自动驾驶能力还将在云端利用世界模型进行训练和验证。
2.1.1.1 端到端模型
端到端模型的输入主要由摄像头和激光雷达构成,多传感器特征经过CNN主干网络的提取、融合投影至BEV空间。为提升模型的表征能力,理想汽车还设计了记忆模块,兼具时间和空间维度的记忆能力。在模型输入中,理想汽车还加入车辆状态信息和导航信息,经过Transformer模型的编码,与BEV特征共同解码出动态障碍物、道路结构和通用障碍物并规划出行车轨迹。
作为「快系统」的端到端模型所对应的通常为文字弹窗,为驾驶员实时提供导航、交规、效率、博弈等执行逻辑和动作。
2.1.1.2 VLM视觉语言模型
VLM视觉语言模型的算法架构由一个统一的Transformer模型组成,将Prompt(提示词)文本进行Tokenizer(分词器)编码,并将前视相机的图像和导航地图信息进行视觉信息编码,再通过图文对齐模块进行模态对齐,最终统一进行自回归推理,输出对环境的理解、驾驶决策和驾驶轨迹,传递给端到端模型辅助控制车辆。
VLM模型可以识别路面平整度、光线等环境信息,提示端到端模型控制车速,确保驾驶安全舒适。此外,VLM模型具备更强的导航地图理解能力,在主辅路走错的情况下进行判断,并能够识别出当前行驶路线与导航指示不符,从而提供切换导航的建议。同时,VLM模型可以理解公交车道、潮汐车道和分时段限行等复杂的交通规则,在驾驶中作出合理决策。例如,当地面道路凹凸不平时,系统二会向系统一发出降速提醒,并通知驾驶员前方路面状况,以便自动驾驶系统可以更加平稳地通过。在夜间或光线昏暗的场景中,系统二会指导系统一限制速度,以确保驾驶的安全性。
对于「慢系统」VLM 视觉语言模型,理想则为它准备了全新的图文视窗。在特殊场景下,将前方感知到的画面投射到页面内,配合文案讲解模型的思考过程和结果。
在文字弹窗和图文视窗的配合下,无论系统执行何种车控动作,驾驶员都能提前知悉。对于那些初次体验智驾的消费者来说,这种直观的信息展示也有助于迅速建立他们对智能驾驶系统的信任感。
2.1.1.3 世界模型
理想结合了重建仿真和生成仿真两种技术路径,为端到端的测试验证搭建了一个世界模型。
世界模型结合了重建和生成两种技术路径,将真实数据通过3DGS(3D高斯溅射)技术进行重建并使用生成模型补充新视角。在场景重建时,其中的动静态要素将被分离,静态环境得到重建,动态物体则进行重建和新视角生成。此后,再经过对场景的重新渲染,形成3D的物理世界,其中的动态资产可以被任意编辑和调整,实现场景的部分泛化。相比重建,生成模型具有更强的泛化能力,天气、光照、车流等条件均可被自定义改变,生成符合真实规律的新场景,用于评价自动驾驶系统在各种条件下的适应能力。
重建和生成两者结合所构建的场景为自动驾驶系统能力的学习和测试创造更优秀的虚拟环境,使系统具备高效闭环的迭代能力,确保系统的安全可靠。
2.1.2 算力
端到端真正的竞赛在云端,看看各家车企和智驾供应商的算力布局情况:
理想的车端算力分布是:两个一快一慢的系统各占用一块英伟达Orin-X芯片
2.1.3 数据
数据筛选
端到端本质上是模仿学习,目的是学习行驶轨迹,但仅模仿学习的效果有限,因此理想使用模仿学习+强化学习的方案,让模型在犯错的时候被惩罚,模型就会知道什么驾驶行为是错的,训练出来的模型无论是驾驶技巧还是价值观都会非常正确。
理想定义了五星级司机标准,并对用户进行打分,超过 90 分的车主只占 3%,累计筛选了超过 100 万公里的数据,到 2024年底可能超过 500 万公里。训练数据以 20-30s 左右的 Clips 形式存在,记录司机驾驶的完整数据,包括视觉传感、车辆状态、油门刹车等操作信息数据。
除了这个正样本以外,理想的团队还建立了一个错题库,把一些明确不允许的行为纳入错题库中,这些数据也会一并投入到模型的训练过程里。
其实到这里只是建立了一个优质的素材库,但是并不会一股脑把所有片段全部丢进去训练,这是一个循序渐进的过程。现在正在内测的这个版本,是 100-200 万视频片段训练出来的结果,下一个版本会增加到 300 万左右的视频片段。
这里最核心的是如何基于当前的表现下的缺点,找出质量更高的视频片段,提供给模型进行训练。
模型需要的视频片段筛选
通过一些小一点的模型,比如数据挖掘模型、场景理解模型,包括可以通过一些关键词或者场景描述的句子,直接去数据库中查找类似的片段;
对于没有标签的的素材,通过特征提取,看特征本身的相似度;
这个过程中很重的一点就是调整数据的配比,所以每次都会有不同素材配比的模型进行训练,出来之后看那个模型的效果最好,这个也是一个认知、经验积累的过程。
模型超参
加入新的数据后,理想通常会有 5-6 版模型会同时提交训练,然后看哪一版解决了问题。
模型调优
理想在云端构建了世界模型,配合车端的影子模式进行验证,保证模型的正向迭代,一旦通过世界模型的“考试”,立马部署做实车测试,大大加速研发的流程。这里面有常规的正常开的真实数据,也会有一些出错的场景,通过重建技术重建成一个 3D 场景,然后连续测试,在这当中也会有很多安全性测试。还有一些长尾问题,理想会通过世界模型结合生成技术进行场景重建,然后进行测试。
把场景真实重建出来,在这个基础上做泛化,其实重建是给系统一个参考的量。在这个基础上再去做生成,让生成的结果是符合世界规律的,也是符合物理规律的。
考试系统会通过上面这些测试,给新的模型进行评分,理想则会根据评分的结果来判断模型有没有变得更好,是否可以推送到车上。
在这里理想也会通过影子模式来测,必须要时时刻刻记录车辆情况所有的开车数据,后台实时自动回传,数据会自动化的分析,会根据这些数据再进行下一轮的自动迭代训练,然后考试、交付。
2.1.4 存在的问题
根据佐思汽车研究,目前DriveVLM端到端到模型仍处于实验阶段,至少需要5-6年以上才可能实用,One Model投入使用更遥远,主要考虑以下几方面:
1. 单单从碰撞率这个指标看,端到端还不成熟,首先计算碰撞的时候,其他车的未来轨迹都是回放,没有任何交互影响,测试只有3秒,3秒以后呢,单从这一点上讲,这个指标就很不靠谱;
2. 预测的轨迹只是一堆xy坐标,没有考虑自车的yaw angle在未来的变化,计算碰撞的时候也是假设自车的yaw angle永远保持不变,会造成很多错误的碰撞计算;
3. 没有地图约束,碰到路肩road boundary不算碰撞,不会有任何处罚;
4. 部署这种模型,即便是最小的Qwen-VL,参数量仅有97亿,清晰度选择448*448这种最低清晰度,用英伟达Orin做推理运算,每个场景需要0.3秒,也就是3Hz。
2.2 小鹏
小鹏端到端技术方案由三个组成部分:感知大模型XNet、规控大模型XPlanner、大语言模型XBrain。其中,XNet和XPlanner组成“Two Model”端到端架构,通过大语言模型XBrain,提升场景深度理解和泛化能力。
2.2.1 模型架构
2.2.1.1 感知大模型XNet
XNet 是深度视觉感知神经网络,是“静态 XNet”“动态 XNet”与“纯视觉 2K 占用网络”的集成,可以比作智能驾驶的眼睛。基于BEV(鸟瞰图)感知模型,结合端到端架构设计,将摄像头输入数据直接转化为三维空间中的检测结果。与传统方案不同,XNet系统在设计时减少了大量人工规则,直接通过端到端模型完成感知和规划任务。其中“静态 XNet”可以对感知到的数据进行实时 3D 建图,使智驾系统摆脱掉对高精地图的依赖,提高智驾系统的适应能力;“动态 XNet”则具有对周边环境和交通参与者的行为进行预测与博弈的能力,并给出合理的决策,能够处理复杂的交通情况,提高驾驶的安全性和舒适性;“纯视觉 2K 占用网络”通过摄像头信息的分析,来构建 3D 体素来规划出空间内被占用和未被占用的路线,对现实世界中的可通行空间进行 3D 高真实度还原。深度视觉感知神经网络 XNet 融合行业最高精度的纯视觉占据网络,实现动态BEV、静态BEV、占据网络三网合一,具备理解限时车道的时间观念和读懂ETC/人工车道等内容的文字理解能力,能够对现实世界环境的重建更为精准,同时预测能力和行驶规划的能力也会更强,汽车感知范围提升 2 倍,面积可达 1.8 个足球场大小,能精准识别 50 个以上目标物。
XNet采用多相机多帧的方式,把来自每一个相机的视频流,直接注入到一个大模型的深度学习网络里,进行多帧时序前融合,输出BEV视角下的动态目标物的4D信息(如车辆,二轮车等的大小、距离、位置及速度、行为预测等),以及静态目标物的3D信息(如车道线和马路边缘的位置)。
每张输入的摄像头图像经过网络骨干(backbone)和网络颈部(neck,具体来讲是BiFPN网络)后生成图像空间的多尺度特征图。
这些特征图经过XNet最关键的部分—BEV视图转换器(BEV view transformer)后,形成BEV下的单帧特征图。
不同时刻的单帧特征图在BEV视角下,根据自车的位姿进行时空融合,形成BEV下的时空特征图。
这些时空特征图是进行BEV解码推理的基础,在时空特征图后接两个解码器,完成动态XNet和静态XNet的结果解码和输出。动态结果包括pose、size、velocity等,静态结果包括boundary、mark line等。
2.2.1.2 规划大模型XPlanner
XPlanner 同样基于神经网络,具备长时序、多对象、强推理的特点,能够结合分钟级以上的时序连续分析动机,并依据周边环境信息及时变通,生成最佳的运动轨迹,可以比作智能驾驶的小脑。通过海量“五星司机”的驾驶数据对规划大模型 XPlanner 进行训练,基于数据驱动模式迭代,取代人类手写规则代码,能让智驾系统的驾驶策略向着拟人化进化。效果上,规划大模型XPlanner 能够让小鹏汽车的智驾系统在真实道路体验中减少 50%的前后顿挫、60%的违停卡死以及 40%的安全接管。
2.2.1.3 大语言模型XBrain
XBrain 的能力就是让智驾系统拥有类似人类大脑的学习和理解的能力,以此来赋予智驾系统处理复杂场景甚至未知场景的泛化处理能力,以及对现实世界中宏观逻辑的推理能力。XBrain 侧重于整个大场景的认知,XNet侧重于感知和语义。在 XBrain 的赋能下,小鹏汽车的智驾系统能够清晰地分辨出待转区、潮汐车道、特殊车道甚至是路牌文字,秒懂各种令行禁止、快慢缓急的行为指令,进而做出兼顾安全、性能的拟人驾驶决策,做出兼顾安全和效率的拟人驾驶决策。
2.2.2 算力
基于阿里云智能计算平台,算力可达 600PFLOPS(每秒浮点运算 60 亿亿次)
2.2.3 数据
实车数据
目前已经销售的汽车为小鹏采集真实行车数据提供重要渠道,当出现车端智能辅助驾驶系统处理不好的长尾场景时,车端设置的触发器会定向采集相关数据,这些数据将被传输到云端,经过筛选和标注后用于智能辅助驾驶模型训练。模型训练完后,将被部署到车端以实现更佳的驾驶体验。
仿真数据
生成仿真数据时,是先找到模型的弱势场景,然后对这些场景做数字孪生(digital twin),再在此基础上进行定向修改。具体来说,可以先用4D自动标注从真实场景里提取4D结构化信息—包括动态物体的4D轨迹、和静态场景的3D布局等,然后用渲染引擎对结构化信息进行渲染填充,形成仿真图片。这样,生成的场景就是在模拟真实世界可能发生的场景,保证了“场景真实”。
模型训练
引入Golden Backbone模型,将基础网络能力的提升和模型的发布解耦,实现了训练效率的提升。具体来说,如下图所示,Golden Backbone可以和数据挖掘、自动标注、自动驾驶超算平台等形成一个闭环。在这个环里,只要有持续的数据输入,Golden Backbone的能力就可以持续地得到优化。需要发布模型的时候,只需在Golden Backbone的基础上做一些优化,而无需从头开始训练。
2.3 华为
ADS3.0端到端采用“Two Model”方案
2.3.1 模型架构
2.3.1.1 GOD
感知部分采用GOD(General Object Detection,通用障碍物识别)网络。GOD网络具备识别白名单和异形障碍物的能力,同时能够感知道路结构和场景语义。
GOD 网络的目标是训练成一个基础模型,使车辆能够像人类司机一样灵活应对各种场景,包括上下匝道、障碍物绕行等。该算法框架具备实时的 4D 建模能力,对云端算力和训练数据的需求较高,但它具备通用能力,做到了对算法冗余性的显著提升。
2.3.1.2 PDP
决策规划部分采用PDP(Prediction-Decision-Planning,预测决策规控)网络,实现预测、决策和规划功能。
2.3.1.3 本能安全网络
本能安全网络用于在一些极端的场景下进行安全兜底,保证驾驶员和乘客的生命安全。
2.4 智己
基于智己汽车 & Momenta联合打造的“一段式端到端直觉式智驾大模型”,其已经成为业内首个同时具备L2、L3、L4级智能驾驶量产能力的品牌。
一段式端到端大模型”取消了分模块智驾结构,将感知与规划整合进一个大模型,通过数据飞轮提供的海量优质数据,训练一个完整的神经网络,分析全局信息、隐含信息,学习优秀的人类驾驶行为,从原始数据输入到规划路径输出,形成人脑高级思维的直觉反应。
同时,IM AD智驾大模型还有“安全逻辑网络”来保证直觉决策的安全性,让直觉驾驶的行为既高效、又恰当、更安全。
智己表示,这“一段式端到端直觉式智驾大模型”,拥有行业首创的“长短期记忆模式”独特架构,在将模型训练成本节省10-100倍的同时,大幅提升迭代速度,让产品获得“专家级直觉”。
“一段式端到端大模型”+“安全逻辑网络”凭借“直觉+逻辑”构成了智己宣称的直觉智驾的核心技术底座。
“直觉驾驶”让智能汽车首次拥有综合分析道路环境全局信息,尤其在应对突发状况时,能够“脑补”出看不见、看不全的路况信息,像人类高级思维一样可以做出瞬间预判,既人们通常所说的“直觉”或“下意识反应”;即使在最复杂的交通环境中,都做到真正老司机般“看路开车”的驾驶方式。
2.5 几个结论
结论1:目前端到端方案的实车表现还不如传统算法且仍处于仿真和实验阶段,至少需要5-6年以上才能落地,One Model投入使用更遥远。
结论2:当前端到端没办法进行功能安全开发和设计,换句话说:当前端到端方案的安全性无法保证。
结论3:端到端方案的传感器选型,目前99%都采用纯视觉,只有很少的厂家采用多模方案,如:英伟达。
结论4:端到端的研发成本可比传统方案降低95%左右。
当前已被公布模型架构细节方案对比
模型名称 | 模型架构 | 架构说明 |
UniAD |
| 各个子模块都是基于统一的Transformer结构 |
DriveDreamer |
| |
VAD |
| 各个子模块都是基于统一的Transformer结构 |
DriveVLM |
| 系统1:VAD(各个子模块都是基于统一的Transformer结构) 系统2:VLM |
数据问题
我们知道端到端方案能够真正落地的一个重要的因素就是数据,如何获取高质量、海量、覆盖度高的数据是关键。各家都有各自不同的的方法,例如需要采集优秀的驾驶员数据进行训练;需要通过世界模型合成数据提高corner case覆盖度等。我们可以带着一些问题来看看各家在数据方面是如何做的。
问题:
1. 关于优秀司机的数据是在车端筛选还是云端筛选?
2. 优秀司机考核维度?
3. 基于世界模型生成场景时输入数据是车端源数据还是经过处理(标注等)后的数据?
3.1 特斯拉
特斯拉的数据驱动系统里包含三个主要模块:自动标注;系统仿真;数据引擎。
特斯拉已经建立了一个全面的数据训练流程,涵盖数据采集、数据挖掘、模拟仿真、自动标注、模型训练和部署等环节:
数据收集:特斯拉通过影子模式进行数据收集,这是一种在车辆行驶过程中自动启动的系统。当驾驶员的行为与模型预测不符时,相关数据会被发送回数据中心,用于分析和优化模型。目前,特斯拉已经拥有超过180万辆车辆和13亿英里的驾驶数据。
数据清洗/挖掘:数据清洗和挖掘实际上是数据处理的过程,通常采集的数据包含大量的无用数据,这里需要算法将训练模型所需要的数据提取出来,以实现有效的数据收集,同时修正部分错误数据。这其中对于数据处理的“内功”要求深厚。
仿真模拟:特斯拉的仿真系统创建了一个3D环境,模拟真实世界的场景,包括道路、车辆、行人、路灯和其他周边环境。这种全面的仿真环境使得特斯拉能够生成大量高质量的训练数据。
自动标注:特斯拉已经从过去的2D标注过渡到4D标注体系,即在空间和时间上进行数据标注。数据被划分为称为"clip"的基本单位,并利用自动化系统进行标注。
数据引擎用来高效的采集有价值的数据,也就是有挑战性场景的数据,或者说 corner case 数据。采集的数据被送到自动标注系统快速的生成真值,用来迭代神经网络模型。仿真系统用来测试网络模型,发现其失效的场景,并以此更新数据引擎的采集策略。这样三个模块就形成了一个数据闭环,可以非常快速的迭代和测试神经网络模型。下图为特斯拉数据闭环系统:
影子模式:
影子模式下一次完整的数据闭环过程分为以下几个步骤:
(1)当触发异常时,影子模式会记录异常前后的原始数据,用于后续的分析和校验,这些异常数据,一部分经过清洗,构成了验证集。其他记录下来的数据,通过离线的自动标注算法,生成对应的标签。
(2)混合仿真数据,手动校准的数据,共同构成的训练数据集。
(3)训练集可以用于训练车端的模型,包括占用网络、车道线及障碍物检测以及规划算法。也用来训练离线的模型,包括重建模型、用于自动标注感知模型、没有时间约束的基于优化的规划模型等等。
(4)新的在线算法更新到车端,采集新的数据,回收影子模式中触发的 corner cases, 再用更新好的离线模型自动标注。
下图为影子模式数据流:
3.2 理想
理想汽车在云端建立了数据挖掘、场景理解等多个小模型,用于自动驾驶数据筛选和标注,例如,当发现一个badcase时,这case回来之后,内部有一个“分诊台”系统。一个场景问题上来,会自动分析它应该属于哪一类的场景问题,会给一个模型的分诊建议,然后再拿着分诊建议去找到相类似的场景。其实最终还是回归到需要补充或者替代什么样的数据到我们现在的训练样本里,然后再进行下一步的训练。
模型主要两个方面,一是数据的配方,类似的场景到底要加多少,能把问题解决掉,不同的场景对数据的要求不一样。第二点是模型的超参,加入新的数据后,模型参数如何调整,一般情况下有5至6版模型会同时提交训练,然后看哪一版解决了问题,同时得分也高。
理想构建自动驾驶数据集SUP-AD数据集所用到的数据挖掘和标注方法示意图
具体步骤:
1. 筛选数据
a. 长尾目标挖掘。首先预定义一系列长尾目标类别,比如异形车辆、道路杂物和横穿马路的动物等。然后使用基于CLIP的搜索引擎,从海量自动驾驶数据中,挖掘这些长尾场景。
b. 挑战性场景挖掘。 除了长尾物体外,我们同样对具有挑战性的驾驶场景进行了挖掘。在这些场景的数据中,需要根据不断变化的驾驶条件调整自车(ego vehicle)的驾驶策略。这些场景一般是根据记录的驾驶操作变化得到的,例如急刹车等。
c. 人工检查,为了确保数据质量,所有挖掘出的场景都会经过人工检查,剔除与需求不一致的数据。
2. 关键帧选择
每个挖掘出来的驾驶场景都是一个十几秒视频片段,在这么长的时间跨度中,选取“关键帧”至关重要。在大多数具有挑战性的场景中,关键帧是在需要显著改变速度或方向之前的时刻。根据综合测试,我们选择在实际操作前0.5秒到1秒作为关键帧,以确保改变驾驶决策的最佳反应时间。对于不涉及驾驶行为变化的场景,我们选择与当前驾驶情景相关的帧作为关键帧。
3. 场景标注
对于选取好关键帧后的数据,由一组标注员进行场景标注,包括任务提到的场景描述、场景分析和规划等内容信息。同时为了便于场景标注,我们开发了一个视频标注工具,能够比较方便的针对特定标注内容进行对应的标注和检查。
场景标注内容:
Eweather详细描述天气状况,从晴天到下雪。例如,雨雪等条件要求由于能见度降低和路面附着力减弱而采取更加谨慎的驾驶方式。
Etime包含白天和夜晚驾驶场景之间的时间差异。例如,夜间驾驶由于能见度降低,需要采取谨慎的驾驶策略。
Eroad对道路类型进行分类,包括城市、郊区、农村或高速公路,每种道路类型都具有独特的挑战。
Elane描述车道状况,标识车辆当前所在车道和可能的变道选择。这些信息对于选择车道和进行安全变道至关重要。
关键物体识别
静态属性Cs描述对象的固有属性,如路边广告牌的视觉线索或卡车的超大货物,这些属性对于预防潜在危险并导航至关重要。
运动状态Cm描述对象在一段时间内的动态,包括位置、方向和行为,这些特征对于预测对象的未来轨迹和与自动驾驶车辆的潜在互动至关重要。
特定行为Cb指对象的特殊动作或手势,可能直接影响自动驾驶车辆的下一个驾驶决策。
数据集规模:SUP-AD 数据集包含超过10万个图像和100万个图文对,涵盖了40多个不同的驾驶场景类别,如自动紧急制动(AEB)数据等。
AEB数据:自动紧急制动(AEB)数据。
道路施工:前方有带有警示标志、路障和施工设备的临时工作区。
近距离插入:另一辆车突然闯入自车道。
环形交叉口:车辆在连续环路中行驶的一种交通交叉口类型。
动物穿过马路:动物穿过自车前方的道路。
刹车:自车司机踩刹车。
交通警察:管理和引导交通的交通警察。
阻挡交通灯:一辆大型车辆遮挡了交通信号的可见性。
插入其他车辆:闯入前方另一辆车道。
匝道:连接主干道与支路的弯曲道路。
路上有杂物:路上有各种杂物。
狭窄道路:需要谨慎导航的狭窄道路。
突然出现的行人:行人突然出现在自车前方,需要减速或刹车。
公交车上的人物海报:公交车上贴有海报,可能干扰感知系统。
并入高速:从低速道路驶入高速道路,需要加速。
栅栏门:可升起阻碍道路的栅栏门。
倒下的树木:道路上倒下的树木,需要谨慎导航以避免潜在危险。
复杂环境:需要谨慎导航的复杂驾驶环境。
混合交通:拥挤的场景,汽车、行人和自行车出现在同一条或相邻的道路上。
过河:通过桥梁驾驶穿过河流。
牛羊群:农村道路上有牛羊群,需要小心驾驶以避免引起这些动物的恐慌。
易受伤害的道路用户:在使用道路时更容易受伤害的道路用户,如行人、骑车者和摩托车手。
带有砾石的道路:表面散布着砾石的灰尘道路。
其余的场景类别包括:摩托车和三轮车、交叉口、打伞的人、载车的车辆、载枝的车辆、带管道的车辆、婴儿车、儿童、隧道、下坡道、人行道摊位、雨天、穿越铁轨、无保护的U转弯、下雪天气、大型车辆入侵、落叶、烟花、洒水器、坑洼、翻倒的摩托车、自燃和火灾、风筝、农业机械。
3.3 Waymo
相较于 Tesla,谷歌Waymo的数据闭环平台引入了数据挖掘、主动学习、自动标注等模块,但基本的框架相差无几。获得数据来源后,通过数据标注获得数据真值,其中涉及到数据筛选、挖掘和主动学习,模型优化完成测试后,进行发布或部署。
3.3.1 多模态场景标记
通过将连续帧的场景分解为一系列具有丰富语义和几何信息的场景元素,利用强大的预训练图像模型和3D点云处理网络对每个元素进行编码。
1 图像编码与点像素关联
首先从每个摄像头提取图像特征图,然后利用传感器校准信息将这些特征与3D激光雷达点对应。每个时间步骤有K个摄像头捕获的图像,以及一个包含多个点的3D激光雷达点云。通过预训练的2D图像编码器,得到每个图像的特征图。
2 场景分解
将场景分解为地面、智能体和开放集合物体三种元素。地面元素通过分割模型或算法确定,智能体元素对应于检测到的智能体,开放集合物体包含未分类的其他物体。我们对每种元素进行计数,并将它们分组:
地面元素:划分为10米x10米的不相交区域。
智能体元素:基于已知的感知管道。
开放集合物体元素:通过连通分量分析分组
3 场景元素特征提取
使用神经网络提取场景元素特征。首先,多帧信息被高效压缩,然后输入到特征提取模块,为每个场景元素生成单一特征向量。
高效的多帧数据表示:通过采用跟踪、聚合和下采样策略来减少数据量。开放集合元素通过卡尔曼滤波器跨帧关联,地面元素合并后分块,激光雷达点进行下采样。
网络架构:网络接收跨T帧的图像嵌入、边界框和激光雷达点信息。通过空间-时间融合模块,网络将这些信息整合为每个场景元素的特征向量。这个向量可以输入到运动预测模型的场景编码模块中。
研发关注点
如果需要研发端到端方案,这里给出一些参考,主要包含几个维度:人力资源、硬件资源、重点工作。
4.1 资源投入
公司 | 人员投入 | 部门配置 | 硬件资源 | 资金投入 |
理想
| 200+
| 算法研发组: 感知算法 行为智能(端到端架构、端到端模型、控制模型等) 认知智能(认知模型、云端模型等) 量产研发组: 智能行车 智能泊车 智能安全 | 五千张A100、A800
| 支撑 VIM 和端到端的训练大概需要几十 EFlops 的算力储备,如果做到 L3和 L4 自动驾驶,一年光是训练算力的花销大概为 10 亿美金。
|
蔚来
| 不详 | 大模型部(负责端到端模型的研发工作) 部署架构与方案部(负责和车端相关的整体算法研发.架构设计和功能交付) 时空信息部(负责车端和云端的地图信息相关的算法、模型开发及服务) | 不详
| 不详
|
比亚迪
| 300 | 独立于智驾研发中心之外,专门负责端到端大模型规控算法开发 | 不详 | 计划在未来投入1000亿元用于智能驾驶技术的研发,重点聚焦包括生成式AI、端到端大模型等在内的前沿技术。 |
小鹏
| 不详 | AI 模型开发(主要负责端到端模型开发) AI 应用开发(负责交付) AI 效能开发 | 两千五百张A100、A800
| 已有 7000+张 GPU 卡,小鹏今年将在训练算力上再投入超过 7 亿元。
|
特斯拉
| 200~300
| 芯片设计 100 算法 200
| / | 计划2024年底前对DOJO超算中心投资超10亿美元,目标是总算力提升至10万PFLOPS,相当于约30万块英伟达A100的算力总和。 |
小米
| 不详
| 原有“感知”和“规控”两个二级部门,重组合并为“端到端算法与功能部”,负责量产方案开发,承担城市NOA开通加速的任务 | 不详 | 不详
|
智己 | 不详 | 不详 | 不详 | 不详 |
华为 | 不详 | 不详 | 不详 | 不详 |
4.2 重点关注内容
4.2.1 数据量
训练端到端模型最起码需要几万小时的视频数据,目前规模最大的公开数据集包含大约1200小时数据,这意味着要拿到端到端研发的入场券,自动驾驶公司还必须使用更大规模的非公开数据。
在特斯拉2023年的一次财报会议上,马斯克表示,“我们训练了100万个视频片段(clips),勉强可以工作;200万个clips,稍好一些;300万个clips,就会感到惊喜;训练到1000万个clips,系统的表现就变得难以置信了”。特斯拉Autopilot回传数据的1个Clips普遍被认为是1min的片段,那么入门级别的100万个视频clips大概就是16000小时。
各厂家已公布数据量:
自动驾驶厂家 | 数据量 |
特斯拉 | 2023 年初,特斯拉已向系统输入了 1000 万个经过筛选可供学习的人类驾驶视频;同时特斯拉在全球各地近 200 万辆的车队,每天提供约 1600 亿帧视频用于训练。 |
理想 | 截至2025.1月份,训练数据量达到800万个视频片段(clips) |
小鹏 | 截至2024.9月份,训练数据量达到2000万个视频片段(clips) |
蔚来 | 截至2024.4月份,视频训练量为2000万个clips |
Wayve | 训练数据集包含2019-2023年间在英国伦敦收集的4,700小时、25Hz的专有驾驶数据 |
Wayve可以自己生成海量的近似人工标注的视频数据且成本极低,这些数据可以模拟各种近乎真实的场景,然后用这些数据进行端到端训练。
4.2.2 数据质量
对于端到端自动驾驶来说,其数据质量问题还叠加了更复杂的因素——对人类驾驶员能力的要求。需要一套有效的数据管理和处理流程,仅提取老司机所驾驶的车辆在特定场景下的高质量数据,这也增加了数据获取的难度。
4.2.3 数据分布
数据的分布需要考虑诸多因素,例如环境因素包含各种天气和光线、道路情况。如何调整长尾场景(Corner Case)在训练数据中的分布比例,目前行业还没有一套行之有效的方法论。合成数据可以低成本增加训练数据的规模、泛化场景增加多样性、低成本生成长尾场景。目前,很多企业已经开始通过混合使用合成数据和真实数据来提高系统性能。
以上就是我和我的团队一段时间内调研的初步结果,若能给各位带来些许帮助,将深感荣幸。