自动驾驶的世界模型:综述

自动驾驶的世界模型:综述

image

附赠自动驾驶学习资料和量产经验:链接

24年3月澳门大学和夏威夷大学的论文“World Models for Autonomous Driving: An Initial Survey”。

在快速发展的自动驾驶领域,准确预测未来事件并评估其影响的能力对安全性和效率至关重要,对决策过程至关重要。世界模型已经成为一种变革性的方法,使自动驾驶系统能够合成和解释大量的传感器数据,从而预测潜在的未来场景并弥补信息差距。本文对自动驾驶世界模型的现状和未来进展进行了初步回顾,涵盖了它们的理论基础、实际应用以及旨在克服现有局限性的正在进行的研究工作。


世界模型的架构旨在模仿人脑的连贯思维和决策过程,集成了几个关键组件:

  1. 感知模块:这个基本元素充当系统的感官输入,类似于人类的感官。它采用先进的传感器和编码器模块,如变分自动编码器(VAE)[16,17,18]、掩码自动编码器(MAE)[19,20]和离散自动编码器(DAE)[21,14],将环境输入(图像、视频、文本、控制命令)处理和压缩为更易于管理的格式。该模块的有效性对于准确感知复杂动态环境至关重要,有助于详细了解模型的后续预测和决策。

  2. 记忆模块:记忆模块的作用类似于人类河马(hippo)区,它对记录和管理过去、现在和预测的世界状态及其相关成本或回报至关重要[1]。它通过重放最近的经历来支持短期和长期记忆功能,这一过程通过将过去的见解融入未来的决策来增强学习和适应[22]。该模块综合和保留关键信息的能力对于深入了解一段时间内的环境动态至关重要。

  3. 控制/动作模块:该组件直接负责通过动作与环境进行交互。它评估当前状态和世界模型提供的预测,确定旨在实现特定目标的最佳动作顺序,例如最小化成本或最大化回报。该模块的复杂性在于它能够集成感官数据、记忆和预测见解,从而做出明智的战略决策,应对现实世界场景的复杂性。

  4. 世界模型模块:在体系结构的核心,世界模型模块执行两个主要功能:估计当前世界状态的任何缺失信息和预测环境的未来状态。这种双重能力使系统能够生成其周围环境的全面预测模型,考虑不确定性和动态变化。通过模拟潜在的未来场景,该模块使系统能够主动准备和调整其策略,反映人类认知中的预测性和适应性思维过程。

这些组成部分共同形成了一个强大的框架,使世界模型能够模拟类似于人类的认知过程和决策。通过集成这些模块,世界模型实现了对其环境的全面和预测性理解,这对于开发能够以前所未有的复杂度在现实世界中导航和交互的自主系统至关重要。

如图是智体的世界模型框架:

image

递归状态空间模型(RSSM)

RSSM[24]是Dreamer世界模型系列中的一个关键模型,旨在促进纯粹在潜在空间内的前向预测。这种创新的结构使模型能够通过潜在状态空间进行预测,其中过渡模型中的随机路径和确定性路径在成功规划中发挥着关键作用。

如图展示了三个时间步长的潜动力学模型示意图。该模型最初观察两个时间步长,然后预测第三个时间步长。在这里,随机变量(圆形)和确定性变量(方形)在模型的体系结构中相互作用——实线表示生成过程,而虚线表示推理路径。图(a)中的初始确定性推理方法揭示了由于其固定性质,其在捕捉各种潜在未来方面的局限性。相反,考虑到其固有的不可预测性,图(b)中的完全随机方法在跨时间步长的信息保持方面提出了挑战。

RSSM的创新之处在于它将状态战略性地分解为图(c)中的随机和确定性分量,有效地利用了确定性元素的预测稳定性和随机元素的自适应潜力。这种混合结构确保了强大的学习和预测能力,适应了现实世界动态的不可预测性,同时保持了信息的连续性。通过将RNN的优势与**状态空间模型(SSM)**的灵活性相结合,RSSM为世界模型建立了一个全面的框架,增强了它们预测未来状态的能力,同时兼顾了精度和适应性。

image

联合嵌入预测架构(JEPA)

JEPA[1]通过关注表示空间而不是直接、详细的预测,标志着预测建模的范式转变。如图所示,抽象输入( ) 和target目标( ) 采用双编码器转换为表示( 和 ), 并利用一个潜变量( )预测,JEPA在效率和准确性方面实现了显著的飞跃。该模型擅长滤除噪声和不相关信息,专注于预测任务的本质。潜变量( ) 管理不确定性的战略性使用进一步细化了模型的重点,使其能够更精确地预测抽象结果。通过优先考虑相关特征并包含预测任务的固有不确定性,JEPA不仅简化了预测过程,还确保了结果的相关性和可靠性,为复杂环境中的预测建模树立了新标准。

image


如表所示,世界模型在不同的环境中展示了无与伦比的性能,尤其是在游戏中,它们的功能得到了显著展示。在雅达利100k排行榜的竞争格局中,世界模型占据主导地位,前五名中有四名由这些创新架构占据[15,31,14,32,33]。其中,EfficientZero通过显著提高基于图像的强化学习中的采样效率而脱颖而出,利用MuZero的基本原理,在短短两小时的训练内实现人类可比的游戏熟练度[34]。在《我的世界》游戏中,DreamerV3标志着一个里程碑,成为自主开采钻石的首个模型,这一壮举在没有利用人工生成的数据或预定义的学习课程的情况下完成。这一成就归功于其对Symlog预测的新颖使用,通过使用静态symlog转换,促进了模型在不同环境尺度上的适应性[26,35]。相反,HarmonyDream在世界模型学习中引入了一种动态的损失尺度化方法,通过规模、维度和训练动态的复杂平衡来优化多任务学习效率[33]。DreamerV3的symlog转换与HarmonyDream的动态损失调整进行协同集成,有可能进一步提升世界模型的性能和多功能性。

image

image

image

image

image

基于图像的联合嵌入预测架构(I-JEPA)[29]说明了一种在不依赖手工数据增强的情况下学习高度语义图像表示的方法。I-JEPA使用抽象表示预测丢失的目标信息,有效地消除了不必要的像素级细节。这使模型能够学习更多的语义特征,通过对世界抽象表示的自监督学习,实现对不完整图像的更准确分析和完成。除了图像之外,该架构还通过基于音频的联合嵌入预测架构(A-JEPA)[28]展示了高可扩展性,在多个音频和语音分类任务上设置了新的最先进的性能,优于依赖外部监督预训练的模型。

在机器人操作中,如Fetch[36]、DeepMind Control Suite[37]和Meta-World[38],Latent Explorer Achiever(LEXA)[27]通过想象力同时训练探索者和实现者,在40项机器人操作和运动任务中优于以前的无监督方法。此外,在这些任务中,L3P[39]设计了一种新算法来学习分散在目标空间中的潜地标,在三种机器人操作环境中实现了学习速度和测试时间泛化的优势。谷歌团队创新性地将世界模型的概念应用于机器人导航任务,利用它们来获取周围环境的信息,并使AI智体能够预测其行为在特定环境中的后果。Pathdreamer[40]在机器人导航中的实现利用世界模型增强了环境意识和预测规划,通过创新地使用3D点云进行环境表示,显著提高了导航成功率。此外,SafeDreamer[41]将基于拉格朗日的方法集成到Dreamer框架中,用于安全强化学习,证明了高性能、低成本安全应用的可行性。

世界模型的快速训练能力,以DayDreamer的真实世界机器人学习效率为例,与传统方法形成鲜明对比,突出了这些模型在加速学习过程和提高性能方面的变革潜力[42,43]。

虚拟场景和视频生成成为关键应用,SORA和Genie在这一领域取得了领先进展。SORA能够根据不同的提示,制作连贯、高清晰度的视频,这是朝着模拟复杂世界动态迈出的重要一步。尽管SORA在物理交互模拟方面面临挑战,但其一致的3D空间表示突出了其作为基础世界模型的潜力[44]。Genie的交互式环境生成虽然在视频质量上不如SORA先进,但引入了用户驱动的世界操纵的新维度,得以一窥世界模型在创建沉浸式可控虚拟现实方面的未来应用[45]。

这项全面的研究强调了世界模型的非凡多功能性和前沿性,说明了在推动游戏、机器人、虚拟环境生成等领域创新方面的基础作用。这些模型的能力与动态适应和多领域泛化的融合预示着人工智能的新时代,在这个时代,世界模型不仅可以作为特定任务的工具,还可以作为更广泛的探索、学习和发现的平台。


下面介绍自动驾驶的世界模型工作。

作为世界模型应用的一个新兴前沿,自动驾驶领域为利用这些先进的计算框架带来了独特的挑战和机遇。尽管人们对自动驾驶的兴趣与日俱增,但将世界模型融入自动驾驶主要围绕着场景生成、规划和控制机制展开,这些领域已经成熟,可以进行探索和创新。

如图是自动驾驶流水线的世界模型框架:

image

自动驾驶场景生成

自动驾驶中的数据获取遇到了巨大的障碍,包括与数据收集和注释相关的高昂成本、法律约束和安全考虑。通过自我监督学习范式,世界模型能够从大量未标记的数据中提取有价值的见解,以具有成本效益的方式提高模型性能,从而提供了一个有前景的解决方案。世界模型在驾驶场景生成中的应用尤其值得注意,因为它有助于创建各种逼真的驾驶环境。这一能力大大丰富了训练数据集,使自动驾驶系统具有在罕见和复杂的驾驶场景中导航的鲁棒性。

GAIA-1[54]代表了一种自主生成人工智能模型,能够使用视频、文本和动作输入创建逼真的驾驶视频。Wayve创业公司让GAIA-1接受来自英国城市的大量真实世界驾驶数据进行训练,学习并理解了驾驶场景中的一些真实世界规则和关键概念,包括不同类型的车辆、行人、建筑和基础设施。它可以基于几秒钟的视频输入来预测和生成后续的驾驶场景。值得注意的是,生成的未来驾驶场景与提示视频没有密切联系,而是基于GAIA-1对世界规则的理解。以自回归transformer网络为核心,GAIA-1预测以输入图像、文本和动作tokens为条件的未来图像tokens,然后将这些预测解码回像素空间。GAIA-1可以预测多种潜在的未来,并根据提示(例如,不断变化的天气、场景、交通参与者、车辆动作)生成不同的视频或特定驾驶场景,甚至包括其训练集之外的动作和场景(例如,强行进入人行道)。这证明了它理解和推断训练集中所没有驾驶概念的能力。在现实世界中,由于这种驾驶行为的风险性,很难获得数据。驾驶场景生成允许模拟测试,丰富数据组成,增强复杂场景中的系统能力,并更好地评估现有驾驶模型。此外,GAIA-1生成连贯的动作,并有效地捕捉3D几何结构的视角影响,展示了其对上下文信息和物理规则的理解。

DriveDreamer[52]也致力于驾驶场景生成,与GAIA-1不同之处在于它是在nuScenes数据集[68]上训练的。它的模型输入包括高清地图和3D边框等元素,可以更精确地控制驾驶场景的生成和更深入的理解,从而提高视频生成质量。此外,DriveDreamer可以生成未来的驾驶行为和相应的预测场景,帮助决策。

ADriver-I使用当前视频帧和历史视觉动作对作为多模态大语言模型(MLLM)[69,70]和视频潜扩散模型(VDM)[71]的输入。MLLM以自回归方式输出控制信号,其用作VDM预测后续视频输出的提示。通过连续的预测周期,ADriver-I在预测世界中实现了无限驾驶。

从大语言模型的成功中汲取灵感,WorldDreamer[64]将世界建模视为一种无监督的视觉序列建模挑战。它利用STPT将注意集中在时空窗口内的局部patches上。这种注意促进了视觉信号的动态学习,并加速了训练过程的收敛。尽管World Dreamer是一款通用的视频生成模型,但它在生成自动驾驶视频方面表现出了非凡的性能。

除了视觉信息,驾驶场景还包括过多的关键物理数据。MUVO[61]利用世界模型框架预测和生成驾驶场景,集成激光雷达点云和视觉输入,预测未来驾驶场景的视频、点云和3D占用网格。这种全面的方法大大提高了预测和产生结果的质量。特别地,结果3D占用网格可以直接应用于下游任务。更进一步,OccWorld[63]和Think2Drive[67]直接利用3D占用信息作为系统输入,预测周围环境的演变并规划自动驾驶汽车的动作。

规划和控制

如图是世界自动驾驶车型的时序概览:

image

除了情景生成,世界模型还有助于在驾驶环境中进行学习、评估潜在的未来以及完善规划和控制策略。例如,基于模型的模仿学习(MILE)[47]采用基于模型的模仿学习方法,从离线数据集中联合学习CARLA中的动力学模型和驾驶行为。MILE采用“广义推理算法”对未来驾驶环境进行理性和可视化的想象和预测,利用想象来补偿缺失的感知信息。这种能力能够规划未来的行动,允许自动驾驶汽车在没有高清地图的情况下运行。在CARLA模拟器中未经经验验证的测试场景中,MILE显著优于最先进的车型,将驾驶分数从46提高到61(相比之下,专家数据分数为88)。MILE的特点是长期和高度多样化的未来预测。MILE使用解码器对预测的未来状态进行解码,展示了在各种场景下的稳定驾驶。

SEM2[48]在RSSM的基础上,引入了语义掩码世界模型,以提高端到端自动驾驶的采样效率和鲁棒性。世界模型的潜状态包含了太多与任务无关的信息,对采样效率和系统鲁棒性产生了不利影响。此外,由于训练数据不平衡,世界模型难以处理意外情况。为了解决这些问题,引入了签字滤波器(signature filter)来提取关键任务特征,并使用过滤后的特征重建语义掩码。对于数据不平衡,使用采样器来平衡数据分布。在CARLA中训练和测试后,SEM2的性能比DreamerV2有了显著提高。

考虑到大多数自动驾驶汽车通常都有多个摄像头,多视图建模也是世界模型的一个关键方面。Drive WM[55]是第一个多视图世界模型,旨在增强端到端自动驾驶规划的安全性。Drive WM通过多视图和时间建模,联合生成多个视图的帧,然后从相邻视图预测中间视图,显著提高了多个视图之间的一致性。此外,Drive WM引入了一个简单的统一条件界面,灵活应用图像、动作、文本和其他条件,简化了条件生成过程。在具有六个视图的nuScenes数据集[68]上进行了训练和验证,Drive WM对预测的候选轨迹进行采样并使用基于图像的奖励函数来选择最佳轨迹。在nuScenes数据集上,使用FID和FVD作为标准,Drive WM超过了所有其他方法,表明预测未来有助于自动驾驶的规划。此外,与GAIA-1一致,Drive WM在不可驾驶区域导航的能力展示了世界模型在处理领域外案例方面的理解和潜力。此外,从Alberto Elfes[72]的开创性工作中获得灵感,UniWorld[57]引入了一种创新方法,利用多帧点云融合作为生成4D占用标签的基本事实。该方法考虑了来自多摄像机系统的图像中存在的时间-空间相关性。通过利用未标记的图像激光雷达对,UniWorld对世界模型进行预训练,显著增强了对环境动力学的理解。当在nuScenes数据集上进行测试时,与依赖单目预训练的方法相比,UniWorld在运动预测和语义场景完成等任务的IoU方面有了显著改进。

TrafficBots[56]也是一种端到端的自动驾驶模型,它更加强调预测场景中单个智体的行为。TrafficBots以每个智体的目的地为条件,采用条件变分自动编码器(CVAE)[73]来学习每个智体的不同个性,从而从BEV的角度促进动作预测。与其他方法相比,TrafficBots提供了更快的操作速度,并且以扩展以容纳更多的智体。尽管TrafficBots的性能可能还无法与最先进的开环策略相媲美,但它展示了闭环策略在行动预测方面的潜力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/587170.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《QT实用小工具·七》CPU内存显示控件

1、概述 源码放在文章末尾 CPU内存显示控件 项目包含的功能如下: 实时显示当前CPU占用率。实时显示内存使用情况。包括共多少内存、已使用多少内存。全平台通用,包括windows、linux、ARM。发出信号通知占用率和内存使用情况等,以便自行显示…

【xinference】(8):在autodl上,使用xinference部署qwen1.5大模型,速度特别快,同时还支持函数调用,测试成功!

1,关于xinference Xorbits Inference (Xinference) 是一个开源平台,用于简化各种 AI 模型的运行和集成。借助 Xinference,您可以使用任何开源 LLM、嵌入模型和多模态模型在云端或本地环境中运行推理,并创建强大的 AI 应用。 Xor…

UGUI 进阶

UI事件监听接口 目前所有的控件都只提供了常用的事件监听列表 如果想做一些类似长按,双击,拖拽等功能是无法制作的 或者想让Image和Text,RawImage三大基础控件能够响应玩家输入也是无法制作的 而事件接口就是用来处理类似问题 让所有控件都…

ssm018简易版营业厅宽带系统+jsp

营业厅宽带系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本营业厅宽带系统就是在这样的大环境下诞生,其可以帮助管理者在短时间…

库存超卖问题分析

3.5 库存超卖问题分析 有关超卖问题分析&#xff1a;在我们原有代码中是这么写的 if (voucher.getStock() < 1) {// 库存不足return Result.fail("库存不足&#xff01;");}//5&#xff0c;扣减库存boolean success seckillVoucherService.update().setSql(&quo…

C语言文件操作函数详细解说

二进制文件和文本文件 二进制文件就是以二进制的形式写入文件的&#xff0c;人是看不懂的&#xff0c;而文本文件就是以ACSLL码的形式进行保存的。 举个例子&#xff0c;10000这个数字如果保存在二进制文件中就应该是0010 0111 0001 0000 &#xff0c;占四个字节&#xff1b;而…

【随笔】Git 基础篇 -- 分支与合并(九)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

Kubernetes(k8s):部署、使用 metrics-server

Kubernetes&#xff08;k8s&#xff09;&#xff1a;部署、使用 metrics-server 一、metrics-server简介二、部署metrics-server2.1、 下载 Metrics Server 部署文件2.2、修改metrics-server.yaml 文件2.3、 部署 Metrics Server2.4、 检查 Metrics Server 三、使用 Metrics Se…

Windows 上路由、端口转发配置,跨网络地址段

一、背景 有时候我们会遇到这样的场景&#xff0c;一批同一局域网中只有某一台主机带外且系统为windows&#xff0c;局域网中其他非带外的主机要想访问外网&#xff0c;本文将介绍如何配置在带外主机上开启路由及端口转发。 二、配置操作 2.1、带外主机开启路由转发 1&#x…

LeetCode 209 长度最小的子数组(滑动窗口,双指针实现)

给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续 子数组 [numsl, numsl1, ..., numsr-1, numsr] &#xff0c;并返回其长度。如果不存在符合条件的子数组&#xff0c;返回 0 。 示例 1&#xff1a; 输入&…

使用C++调用讯飞星火API的详细指南

正文&#xff1a; 科大讯飞是中国领先的人工智能公司&#xff0c;其讯飞星火API为开发者提供了丰富的接口和服务&#xff0c;支持各种语音和语言技术的应用。下面是使用C接入讯飞星火API的步骤和代码示例。 步骤一&#xff1a;注册账号并创建应用 首先&#xff0c;您需要访问科…

Java 线程的状态

线程状态 操作系统的线程 从上图可以详细分析出线程的五种状态以及状态之间的切换。 1&#xff09;新建状态&#xff08;New&#xff09;&#xff1a;当线程对象对创建后&#xff0c;即进入了新建状态&#xff0c;如&#xff1a;Thread t new MyThread(); 2&#xff09;就绪…