自动驾驶迭代过程:规则驱动→数据驱动→数据+知识驱动
这些规则通常基于对交通规则、道路条件、车辆行为等的深入理解。通过规则指导驾驶:系统使用。
随着自动驾驶任务从单一的感知任务演变为感知和决策综合的多任务,自动驾驶数据模态的多样性和丰富性变得至关重要。仅仅依靠大量收集的数据训练的模型只能是第三人称智能,即从旁观者的角度观察、分析和评估人的行为和表现的人工智能系统。然而自动动驾驶的最终形态将是实现驾驶领域的广义人工智能,这使得从数据驱动范式向知识驱动范式的转变成为自动驾驶进化的必然要求。
知识驱动范式并非完全脱离原有的数据驱动方法,而是在数据驱动方法的基础上增加了知识或常识的设计,如常识判断、经验归纳、逻辑推理等。知识驱动方法需要不断从数据中进行总结,并依靠人工智能体探索环境、获取一般知识,并不是执行预先定义的⼈类规则或从收集的数据中描绘抽象特征。
1. 基于规则驱动
基于规则场景理解:在规则驱动的范式中,自动驾驶系统依赖于专家定义的规则来理解驾驶场景。这些规则通常基于对交通规则、道路条件、车辆行为等的深入理解。
通过规则指导驾驶:系统使用这些规则来做出决策,如路径规划、速度控制和障碍物避让。例如,遇到红灯时停车,或者在特定路段限速行驶。
在自动驾驶刚刚开发的时候,由于这种方法强调逻辑性和确定性,仅仅适用于那些可以明确定义规则的场景。但随着自动驾驶场景增多、道路越来越复杂,基于规则的范式以及不能满足自动驾驶相关技术的需求。
2. 基于数据驱动
驾驶场景建模:数据驱动范式侧重于通过大量数据来学习和模拟驾驶场景。这些数据可能包括传感器数据、驾驶员操作、交通流量、环境条件等。
现实世界推断:通过机器学习算法,系统能够从数据中学习模式,并将其应用于现实世界的驾驶任务。例如,通过分析不同路况下的数据来优化行驶策略。
在这个阶段,尽管数据驱动范式能够处理复杂的和不断变化的环境,但需要大量的训练数据。随着收集的数据量的增长,新极端情况的覆盖可能性降低,能力增强的边际效应会越来越弱。数据驱动的方法只适合少数特定任务的数据集输入和输出,这使得所获得的能力只能处理与收集的数据集密切相关的驾驶场景,而不能推广和扩展到其他新出现的场景。尽管数据驱动方法可以从数据集中提取特征来获得驾驶能力,但单域学习和多域学习都是高维空间中的抽象,泛化能力有限。
数据驱动的方法正逐渐接近其发展瓶颈。在预期的L1至L2的迭代过程中,通过增加传感器数量从L1升级至L2,再通过增加数据量实现L3,并使其适应更多场景,以达到L4甚至L5的级别。然而,实际情况是,尽管在L2阶段通过增加数据量,却似乎遇到了一道难以逾越的障碍,始终只能达到接近L3的L2.999水平,感觉始终存在一个瓶颈。
3.基于数据+知识驱动
知识增强表示空间:知识驱动范式结合了自动驾驶领域的知识和数据。它通过将驾驶场景的信息引入一个知识增强的表示空间,来丰富模型对场景的理解。
泛化知识推导:系统不仅学习场景特定的模式,还试图推导出更泛化的知识,这些知识可以跨不同场景和条件进行应用。
知识反思引导:通过反思和优化其决策过程,以更智能和适应性更强的方式引导驾驶。例如系统可能会使用交通规则的知识来解释和预测其他车辆的行为。
在此阶段知识驱动的方法可以通过对多领域数据的经验进行求和来构建具有通用理解能力的基础模型,从而将驾驶能力空间压缩到低维流形空间。这个空间对应的驾驶场景不仅包括训练时收集的数据,还涵盖了大量未见过的数据,包括大量的极端情况。
知识驱动的范式:知识驱动系统的关键组件如图所示,包括数据集和基准测试的开发,如何构建高质量的环境,以及利用自动驾驶的知识驱动具身智能。
3.1 知识驱动的数据集
下图(a)是传统的数据集和(b)是知识增强的自动驾驶数据集。箭头表示知识增强数据集是通过二次注释从相应的源数据集派生而来的。知识驱动的方法将人类知识和常识融入自动驾驶系统,促进了从现实世界驾驶场景中衍生生的不同驾驶领域之间建立互连。类似于人类只需要在动物园里见过鸵鸟就能认出路上奔跑的鸵鸟,知识驱动的方法通过在其他领域获得的广义场景理解能力,实现对复杂自动驾驶场景的理解和决策推理。知识驱动数据对于自动驾驶技术的发展至关重要,自动驾驶技术依赖海量数据来优化算法模型,以便能够识别和理解道路环境,从而做出正确的决策和行动。
3.2 具身智能的运用
具身智能感知到场景后,尝试理解该场景并制定计划。执行计划后,可能产生两种结果:成功或失败。成功则作为经验保存;失败则需要模型进行反思,并重新生成成功方案,以避免类似事故。这些信息均存储于记忆库中。遇到类似场景时,系统首先查询记忆库,判断是否曾处理过类似情况,并结合当前场景特性和以往经验,做出决策。整个过程要求具身智能具备推理和决策能力。
LLM在帮助具身智能系统理解和感知周围环境、解释复杂的任务描述、制定任务规划、与其他系统模块无缝协作、适应动态环境以及通过自然语言交流促进与人类的社会互动方面发挥着关键作用。自动驾驶可以被视为具身智能领域,而自动驾驶所面临的开放和动态的交通环境需要高度关注系统可靠性和通用性。虽然自动驾驶可以依靠LLM的常识理解和逻辑推理能力,但它们不能完全依赖LLM的输出作为最终决策。因此,采用知识驱动的范式可以通过整合长期学习和知识积累的机制来增强自动驾驶,通过即时反馈和调整促进对环境变化的快速适应。
3.3 构建知识驱动的环境
将知识和数据结合起来构建世界模型,有助于对驾驶环境有一个真实的理解。这种方法强调了不仅仅是数据收集,还包括对数据的深入理解和知识的运用,通过从多个来源收集数据来渲染模拟环境。世界模型的预测能力包括根据当前和过去的场景信息推断其他车辆的相对位置和运动趋势,从而能够对各种行动的潜在影响进行建模,并做出明智的决策。除了预测原始传感器信号之外,世界模型还能在模拟人类对现实世界的思考和理解。
Wayve的GAIA-1的学习表征能力捕获了对未来事件的预测,结合其生成真实样本的能力,增强和加速了自动驾驶技术的训练。GAIA-1允许视频、文本和动作作为提示来生成多样化和逼真的驾驶场景。Wayve通过在真实世界的英国城市驾驶数据的大型语料库上进行训练GAIA-1,其学会理解和理清重要的概念,如静态和动态元素,包括汽车、公共汽车、行人、骑自行车的人、道路布局、建筑物,甚至交通灯。此外通过动作和语言条件反射提供了对自我车辆行为和其他场景特征的细粒度控制。
另外神经渲染技术的出现也能构建知识驱动的环境,如神经辐射场(NeRF)。神经渲染通过隐式表示对目标进行建模,计算渲染结果与真值之间的差异,并使用反向传播来细化表示,最终实现高质量的3D重建和渲染。随着神经渲染技术的引入,它迅速从单目标重建扩展到室内环境、静态场景(BlockNeRF)和动态场景(NeuRAD)中的应用。UniSim实现了前景目标的解耦3D重建,展示了泛化能力和生成新数据的能力。StreetSurf实现了近距离、中距离(街道)和远距离(天空)场景的解耦重建,进一步提高了街景重建的质量。MARS还利用NeRF技术构建了一个自动驾驶模拟引擎。此外,ReSimAD验证了将神经渲染生成的数据应用于感知算法训练所带来的性能改进,证明了高保真传感器模拟的重要性。
数据+知识驱动的自动驾驶是一种革命性的范式,有望突破当前自动驾驶的瓶颈。其中知识驱动强调终身学习、迭代革命和多模态数据的集成,有望提高自动驾驶系统的性能、安全性和可解释性。
4. 主要工作
具体来说,近年来研究者多聚焦于如何让各种生成式技术各显神通,提升仿真各环节的“能力上限”。如:
1)基于世界模型生成高质量的驾驶视频和驾驶策略,在仿真环境中模拟各种复杂场景,提升系统的鲁棒性;
2)通过整合大语言模型,可以生成多视图的自动驾驶视频,充分考虑交通流、道路状况、行人行为等多种因素,实现定制化的交通模拟;
3)从原始传感器数据中提取特征,并生成自动驾驶的规划结果,实现生成式端到端自动驾驶……
4)加强自动驾驶系统的局部语义表示和图像推理能力,使得自动驾驶系统能够更好地理解交通场景中的语义信息,如交通标志、行人意图等,从而提升决策制定的准确性和安全性。
来看一些典型成果的分析。
4.1 DetDiffusion:协同生成模型和感知模型,以增强数据生成和感知
https://arxiv.org/abs/2403.13304
DetDiffusion是一个结合了生成模型和感知模型的框架,旨在提高数据生成和感知的性能。 DetDiffusion的目标是通过感知信息增强图像生成质量,并促进下游感知任务的性能。模型通过在生成过程中提取和利用 感知属性(Perception-Aware Attribute, P.A. Attr)来定制数据增强。感知属性为一种特殊的标记,通过预训练的检测器(如Faster R-CNN或YOLO系列)从图像中提取对象属性,属性包括类别、位置和检测难度,这些属性被设计为特殊的标记,以帮助扩散模型生成与感知模型训练目标更一致的图像。此外,模型通过分割引入了 感知损失(Perception-Aware Loss, P.A. Loss),从而提高了质量和可控性。感知损失是一种新颖的损失函数,利用来自分割头的丰富视觉特征,以实现更精细的图像重建。它结合了掩码损失(mask loss)和dice损失,特别针对感知增强进行优化。
DetDiffusion的编码器使用预训练的Vector Quantized Variational AutoEncoder (VQ-VAE),将原始图像编码到潜在空间。文本编码器使用预训练的CLIP模型将文本条件编码。然后连接一个包含不同尺寸的resnet和transformer网络的UNet,用于生成过程,并通过交叉注意力机制整合条件变量。模型还基于UNet中间特征的分割模块引入分割头,用于生成对象掩码,与标签真实值结合以增强可控性。训练时,首先利用感知属性作为条件输入,通过感知损失进行监督,生成高质量的图像。然后通过优化模型的高维特征空间,使用感知信息进行更准确的图像合成。
结果显示,DetDiffusion在图像质量和与布局的一致性方面超越了现有的图像(L2I)模型,并且在目标检测任务中表现出色,显著提高了检测器的训练性能。生成的图像与真实图像在视觉上高度一致,展现了模型在图像生成方面的高保真度和准确性。
4,2 DriveDreamer:迈向真实世界的自动驾驶世界模型
https://arxiv.org/abs/2309.09777
DriveDreamer是一个为自动驾驶设计的现实世界驱动的世界模型,它能够生成高质量的驾驶视频和驾驶策略。DriveDreamer利用扩散模型(diffusion model)来构建对复杂环境的全面表示,它采用两阶段训练流程,首先让模型理解结构化交通约束,然后赋予模型预测未来状态的能力。第一阶段训练Auto-DM(Autonomous-driving Diffusion Model), 用于模拟和理解真实世界驾驶视频。该阶段以结构化交通信息作为条件输入,包括高清地图(HDMap)和3D盒子(3D box),使用时间注意力层(temporal attention layers)增强生成视频帧的一致性。第二阶段训练ActionFormer,它是用于基于驾驶动作预测未来的交通结构条件。具体为利用门控循环单元(GRU)迭代预测未来的隐藏状态,这些状态随后被解码成未来的交通结构条件。
DriveDreamer模型包括一个条件编码器,用于嵌入不同的条件输入,如参考图像、HDMap、3D盒子和动作。然后通过扩散步骤估计噪声并生成与输入噪声的损失,以优化Auto-DM。最后通过交叉注意力促进文本输入与视觉信号之间的特征交互,使文本描述能够影响生成的驾驶场景属性。训练时通过文本提示动态调整生成视频的风格,例如天气和一天中的时间。还可以通过编码历史驾驶动作和Auto-DM提取的多尺度潜在特征,生成合理的未来驾驶动作。DriveDreamer还可以扩展到多视图图像/视频生成,使用视图注意力层来保持生成内容的一致性。
DriveDreamer模型的创新之处在于其对真实世界驾驶场景的深入理解,引入了Auto-DM和两阶段训练流程,以及能够生成与交通约束高度一致的驾驶视频和基于历史观察的合理驾驶策略。这为自动驾驶的实际应用提供了一个强大的工具,特别是在提高驾驶安全性和效率方面。
4.3 DriveDreamer-2:LLM增强的世界模型,用于多样化的驾驶视频生成
https://arxiv.org/abs/2403.06845
DriveDreamer-2是一个根据用户描述生成用户自定义的驾驶视频,增强了生成视频的多样性和定制化能力。它在DriveDreamer的基础上进行了增强,并整合了大型语言模型(LLM)。DriveDreamer-2首先集成了一个大型语言模型(LLM)接口,用于将用户的查询转换成代理轨迹(agent trajectories)。然后通过HDMap生成器基于轨迹生成遵守交通规则的高清地图(HDMap),作为视频生成的背景条件。文章引入一个统一多视图模型(UniMVM),用于在DriveDreamer框架内生成多视图驾驶视频,统一了视角内和视角间的一致性。通过调整掩码(mask),UniMVM能够实现基于初始帧、前视视频输入以及无需图像输入的视频生成。
模型能够实现定制化交通模拟,即利用构建的功能库对大型语言模型进行微调,使其能够基于用户文本输入生成代理轨迹。并且,HDMap生成器使用扩散模型来模拟道路结构,将之前生成的代理轨迹作为条件输入。DriveDreamer-2能够生成高质量的驾驶视频,其Fréchet Inception Distance (FID)和Fréchet Video Distance (FVD)分数分别为11.2和55.7,相比之前的方法有显著提升。总体来说,DriveDreamer-2的主要贡献在于:(1)它提出了一个使用文本提示生成多样化交通条件的交通模拟管道。(2)引入UniMVM框架提升了生成视频中的时间和空间连贯性。(3)通过大量实验验证了DriveDreamer-2生成多样化定制化视频的能力,并且提升了下游任务的性能。
4.4 GenAD:生成式端到端自动驾驶
https://arxiv.org/abs/2402.11502
文章介绍了一个名为GenAD(Generative End-to-End Autonomous Driving)的框架,旨在通过生成模型直接从原始传感器数据中生成自动驾驶的规划结果,实现生成式端到端自动驾驶(Generative End-to-End Autonomous Driving)。本文探索了端到端自动驾驶的新范式,其中关键是如何根据过去的场景演变预测自我汽车和周围环境,将自动驾驶转变为生成建模问题。文章提出了一个以实例为中心的场景表示(Instance-Centric Scene Representation),首先使用一个场景标记器(scene tokenizer)将周围场景转换为具有地图意识的实例令牌(map-aware instance tokens)。然后通过背景网络提取图像特征,并将它们转换到3D鸟瞰图(BEV)空间。最后使用交叉注意力(cross-attention)和自注意力(self-attention)机制来细化地图和代理(agent)令牌,同时整合实例和地图信息。然后,使用变分自编码器(VAE)学习将真实轨迹映射到高斯分布的潜在空间,以模拟轨迹的不确定性和结构化先验,以进行轨迹先验建模(Trajectory Prior Modeling)。最后,为实现潜在未来轨迹生成(Latent Future Trajectory Generation),采用门控循环单元(GRU)对潜在空间中的实例进行自回归建模,以生成更有效的未来轨迹。
GenAD框架将自动驾驶视为一个生成问题,通过在结构化潜在轨迹空间中采样,并使用学习到的时间模型来生成未来场景,同时执行运动预测和规划。在训练阶段,使用实例分布和真实轨迹分布之间的Kullback-Leibler散度损失来强制分布匹配。在推理阶段,丢弃未来轨迹编码器,根据实例令牌的条件在潜在空间中采样,并使用学习到的时间模型生成未来轨迹。在nuScenes基准测试中进行了广泛的实验,证明了GenAD在基于视觉的端到端自动驾驶中取得了最先进的性能,并且具有高效率。
4.5 MagicDrive:具有多种 3D 几何控制的街景生成功能
https://arxiv.org/abs/2310.02601
文章介绍了一个名为MAGICDRIVE的框架,它是一个用于生成多视角街道视图图像和视频的模型,这些图像和视频可以捕捉精细的3D几何细节和各种场景描述。该框架通过定制的编码策略,实现了对相机姿势、道路地图、3D边界框和文本描述的精确控制。为了实现多样化的3D几何控制,模型需要理解不同相机姿势(Camera Pose)下的视图,包括内部参数(如焦距)和外部参数(如相机在世界坐标系中的位置和旋转)。模型以道路地图作为背景条件,提供了道路的二维网格格式信息,包括道路、人行道、交通标志等。**3D边界框(3D Bounding Boxes)**用于表示场景中对象的位置和尺寸,包括车辆、行人等,每个边界框由其8个角点的坐标定义。
通过定制编码策略提供多样化的 3D 几何控制,包括:(1)场景级编码(Scene-level Encoding):使用模板构建文本提示,并利用预训练的CLIP文本编码器处理文本描述。(2)3D边界框编码(3D Bounding Box Encoding):使用交叉注意力机制对每个边界框进行编码,包括类别标签和边界框位置。(3)道路地图编码(Road Map Encoding):使用额外的编码器分支来处理道路地图信息,实现视图转换和与3D边界框的协同。此外,为了保持不同相机视角之间的一致性,MAGICDRIVE引入了一个交叉视角注意力模块(Cross-View Attention Module)。该模块允许目标视图从其相邻的左侧和右侧视图中获取信息,并通过注意力机制进行信息聚合。在训练时,使用分类器自由引导(Classifier-Free Guidance, CFG)来加强条件引导的影响,简化了在训练中丢弃条件的策略。
实验结果显示,MAGICDRIVE在生成现实感强、与3D注释高度一致的街道视图方面表现出色,可以显著提高BEV分割和3D目标检测任务的性能。MAGICDRIVE框架通过其定制的编码策略和交叉视角注意力模块,实现了对街道视图生成的精确控制,同时保持了多视角之间的一致性,为自动驾驶领域的3D感知任务提供了强大的数据支持。
4.6 CarDreamer:基于世界模型的自动驾驶开源学习平台
https://arxiv.org/abs/2405.09111
CarDreamer是一个为自动驾驶开发和评估基于世界模型(World Model, WM)的强化学习(Reinforcement Learning, RL)算法的开源学习平台。CarDreamer的架构包括三个主要部分:内置任务、任务开发套件和世界模型背骨:(1)**世界模型Backbone(World Model Backbone):**集成了最先进的世界模型,如DreamerV2、DreamerV3和Planning2Explore,使用户能够轻松地再现RL算法的性能。这些模型通过标准的Gym接口与其他组件解耦和通信。(2)内置任务(Built-in Tasks):提供了一系列高度可配置的驾驶任务,这些任务与Gym接口兼容,并配备了经验优化的奖励函数。任务包括变道、超车等,允许在难度、可观察性、观察模态和车辆意图交流方面进行广泛定制。(3)任务开发套件(Task Development Suite):通过API提供了一系列功能,包括API驱动的车辆生成和交通流控制,以及模块化的观察者(Observer)用于轻松收集多模态数据。此外,还有一个可视化服务器,允许用户通过浏览器实时追踪代理驾驶视频和性能指标。
使用DreamerV3作为模型Backbone,在CarDreamer中的不同任务上进行训练和评估。实验结果展示了在不同驾驶任务中WM的性能。文章评估了在不同观察模态(BEV、相机、激光雷达)下,世界模型预测未来状态的能力。实验结果表明,无论观察模态如何,世界模型都能准确预测未来。此外,CarDreamer允许车辆之间进行不同程度的通信,包括视野共享和意图共享。实验结果表明,通信可以显著提高交通的安全性和效率。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)