【华科X地平线】DiffusionDrive:端到端截断扩散模型

论文: https://arxiv.org/pdf/2411.14499

代码: https://github.com/hustvl/DiffusionDrive

0. 摘要

最近,扩散模型作为一种强大的生成式技术,已经出现在机器人策略学习领域,能够建模多模态动作分布。利用其进行端到端自动驾驶的能力是一个有前景的方向。然而,机器人扩散策略中的众多去噪步骤以及交通场景更加动态、开放世界的特性,对于实时速度下生成多样化驾驶动作构成了巨大挑战。

为了应对这些挑战,我们提出了一种新颖的截断扩散策略,该策略结合了先前的多模态锚点,并截断了扩散计划,使模型能够从锚定的高斯分布中学习去噪,直至多模态驾驶动作分布。此外,我们设计了一种高效的级联扩散解码器,以增强与条件场景上下文的交互。我们提出的模型DiffusionDrive,在去噪步骤上比原始扩散策略减少了10倍,仅用2步就实现了卓越的多样性和质量。在以ResNet34为骨干网络的规划导向NAVSIM数据集上,DiffusionDrive在没有额外装饰的情况下达到了88.1 PDMS,创下了新记录,同时在NVIDIA 4090上以45 FPS的实时速度运行。在具有挑战性的场景上的定性结果进一步证实,DiffusionDrive能够稳健地生成多样化且合理的驾驶动作。

1. 创新点

  • 截断扩散策略(Truncated Diffusion Policy):DiffusionDrive提出了一种新颖的截断扩散策略,该策略结合了先验的多模式锚点,并截断了扩散进程。这使得模型能够从锚定的高斯分布学习去噪到多模驾驶动作分布,显著减少了去噪步骤,从20步减少到仅需2步,提高了效率。
  • 多模态动作分布的建模:该模型能够直接从高斯分布中采样多模态物理上合理的动作,通过迭代去噪过程,这在机器人领域是一个强大的生成决策策略。
  • 高效的级联扩散解码器(Efficient Cascade Diffusion Decoder):设计了一种基于Transformer的高效级联扩散解码器,增强了与条件场景上下文的交互,提升了轨迹重建的质量。

不同端到端方案对比

2. DiffusionDrive模型框架

2.1 截断扩散策略

DiffusionDrive模型的核心在于其截断扩散策略,该策略通过结合先验的多模锚点和截断扩散时间表,显著减少了模型在推理时所需的去噪步骤。这一创新使得模型能够在保持实时性能的同时,生成高质量的多模态驾驶行为。

  • 去噪步骤的优化:传统的扩散模型在生成轨迹时需要大量的去噪步骤,这不仅增加了计算负担,也限制了模型在实时应用中的可行性。DiffusionDrive通过截断扩散时间表,将去噪步骤从20步减少到仅需2步,实现了10倍的效率提升。这一改进不仅减少了计算量,也使得模型能够快速适应动态变化的交通环境。

  • 实时性能的实现:在NVIDIA 4090 GPU上,DiffusionDrive能够以每秒45帧的速度运行,满足了自动驾驶实时性的需求。这一性能的提升,得益于模型在去噪步骤上的优化,使得模型能够在极短的时间内生成驾驶决策。

2.2 多模式锚点与高斯分布

DiffusionDrive模型的另一个关键特点是其对多模式锚点和高斯分布的运用,这使得模型能够更好地捕捉驾驶行为中的不确定性和多样性。

  • 锚定高斯分布:DiffusionDrive模型从围绕先验锚点的锚定高斯分布开始去噪过程,而不是从标准高斯分布开始。这种方法允许模型从这些锚点学习去噪到期望的驾驶策略,从而更好地模拟人类驾驶员的行为模式。

  • 多模态动作分布的建模:通过截断扩散策略,DiffusionDrive模型能够有效地从锚定的高斯分布中学习去噪到多模驾驶动作分布。这一过程不仅提高了模型的表达能力,也使得模型能够生成更多样化的驾驶行为。

  • 模式多样性的提升:在NAVSIM数据集上,DiffusionDrive实现了88.1 PDMS的成绩,显著超过了之前的方法。这一成绩的提升,部分归功于模型在多模态动作分布上的建模能力,使得模型能够生成更多样化且合理的驾驶轨迹。

综上所述,DiffusionDrive模型通过其截断扩散策略和对多模式锚点与高斯分布的运用,不仅提高了模型的实时性能,也增强了模型在模拟复杂驾驶行为中的多样性和准确性。这些特性使得DiffusionDrive在端到端自动驾驶领域具有显著的优势和潜力。

3. 模型性能优化

3.1 去噪步骤的减少

DiffusionDrive模型在性能优化方面取得了显著进展,特别是在减少去噪步骤上。传统的扩散模型在生成轨迹时需要大量的去噪步骤,这不仅增加了计算负担,也限制了模型在实时应用中的可行性。DiffusionDrive通过截断扩散时间表,将去噪步骤从20步减少到仅需2步,实现了10倍的效率提升。

  • 效率提升的量化:在减少去噪步骤的同时,DiffusionDrive保持了生成轨迹的多样性和质量。实验结果表明,DiffusionDrive在仅有2步去噪的情况下,实现了与20步去噪相当的性能,这在计算资源和时间上都大大减少了开销。具体来说,与传统扩散模型相比,DiffusionDrive在去噪步骤上减少了90%,同时在NAVSIM数据集上达到了88.1 PDMS的高分,这一成绩比之前的方法提高了3.5 PDMS。

  • 模式多样性的保持:尽管去噪步骤大幅减少,DiffusionDrive仍然能够保持驾驶行为的多模态特性。通过从锚定的高斯分布中采样,模型能够在较少的步骤中捕捉到驾驶行为的不确定性和多样性。这种策略不仅提高了效率,也确保了模型生成的轨迹在实际驾驶场景中的适用性和合理性。

3.2 实时速度的实现

DiffusionDrive模型的另一个关键性能优化是其实时速度的实现。在NVIDIA 4090 GPU上,DiffusionDrive能够以每秒45帧的速度运行,满足了自动驾驶实时性的需求。

  • 硬件加速:DiffusionDrive的实时性能得益于其优化的模型结构和高效的计算策略。通过减少去噪步骤和优化模型的并行处理能力,DiffusionDrive能够在高性能GPU上实现快速的推理过程。这种硬件加速使得模型能够在极短的时间内生成驾驶决策,为自动驾驶系统提供了强有力的支持。

  • 算法优化:除了硬件加速外,DiffusionDrive还通过算法优化实现了实时速度。模型采用了高效的级联扩散解码器,增强了与条件场景上下文的交互,同时在每个去噪步骤中迭代细化轨迹重建。这种级联机制不仅提高了轨迹预测的准确性,也加快了模型的推理速度。

  • 实际应用的验证:DiffusionDrive在nuScenes数据集上的开放环评估中,展现了其在保持高效率的同时,降低了L2误差并减少了碰撞率。这些结果表明,DiffusionDrive不仅在理论上具有实时性能,而且在实际应用中也能提供快速且准确的驾驶决策。

4. 与现有技术的比较

4.1 与其他端到端自动驾驶模型的性能对比

在自动驾驶领域,端到端模型的性能比较是一个关键的研究课题。DiffusionDrive模型在多个维度上与其他端到端自动驾驶模型相比展现出显著的优势。

  • 性能指标对比:DiffusionDrive模型在NAVSIM数据集上达到了88.1 PDMS的成绩,这一成绩显著超过了现有的端到端自动驾驶模型。例如,VADv2模型在相同数据集上的成绩为86.5 PDMS,而HydraMDP-V8192-W-EP模型的成绩为86.5 PDMS。DiffusionDrive通过直接从人类示范中学习并在没有后处理的情况下推理,实现了1.6 PDMS的提高,同时保持了45 FPS的实时速度。

  • 计算效率对比:DiffusionDrive模型通过截断扩散策略,将去噪步骤从20步减少到2步,实现了10倍的效率提升。这一改进使得DiffusionDrive在计算资源和时间上的开销大大降低。相比之下,传统的扩散模型在生成轨迹时需要大量的去噪步骤,这不仅增加了计算负担,也限制了模型在实时应用中的可行性。

  • 模式多样性对比:DiffusionDrive模型在模式多样性上也展现出优势。通过从锚定的高斯分布中采样,DiffusionDrive能够在较少的步骤中捕捉到驾驶行为的不确定性和多样性。这种策略不仅提高了效率,也确保了模型生成的轨迹在实际驾驶场景中的适用性和合理性。相比之下,基于词汇表的方法通常受限于固定数量的锚点,难以适应未知或罕见的驾驶场景。

  • 实时性能对比:在实时性能方面,DiffusionDrive模型在NVIDIA 4090 GPU上能够以每秒45帧的速度运行,满足了自动驾驶实时性的需求。这一性能的提升,得益于模型在去噪步骤上的优化,使得模型能够在极短的时间内生成驾驶决策。相比之下,其他模型可能需要更多的计算资源和时间来生成决策,限制了它们在实时应用中的可行性。

  • 开放环评估对比:在nuScenes数据集的开放环评估中,DiffusionDrive模型展现了其在保持高效率的同时,降低了L2误差并减少了碰撞率。具体来说,DiffusionDrive比VAD模型快1.8倍,L2误差低20.8%,碰撞率低63.6%。这些结果表明,DiffusionDrive不仅在理论上具有实时性能,而且在实际应用中也能提供快速且准确的驾驶决策。

综上所述,DiffusionDrive模型在性能、计算效率、模式多样性、实时性能以及开放环评估等多个方面均优于现有的端到端自动驾驶模型,展现了其在自动驾驶领域的潜力和优势。

5. 实验结果与分析

5.1 NAVSIM数据集上的表现

在NAVSIM数据集上的实验结果表明,DiffusionDrive模型在端到端自动驾驶领域取得了突破性的性能。以下是模型在该数据集上的具体表现:

  • PDMS得分:DiffusionDrive在NAVSIM数据集上实现了88.1的PDMS得分,这一成绩显著超过了之前的最佳算法。与VADv2相比,DiffusionDrive的PDMS得分高出了7.2,而与HydraMDP算法模型相比,高出了5.1。这些数据直接证明了DiffusionDrive在规划质量上的优越性。

  • 计算效率:DiffusionDrive通过截断扩散策略,将去噪步骤从20减少到2,实现了10倍的效率提升。这种效率的提升使得模型在NVIDIA 4090 GPU上能够以每秒45帧的速度运行,满足了自动驾驶实时性的需求。

  • 锚点数量的减少:DiffusionDrive将锚点数量从8192个减少到20个,减少了400倍,这不仅减轻了计算负担,也提高了模型的泛化能力。

5.2 定性结果展示

定性结果进一步证实了DiffusionDrive模型在生成多样化且合理的驾驶动作方面的能力。以下是模型在NAVSIM数据集上的定性表现:

  • 多模态轨迹生成:DiffusionDrive生成的多模态轨迹不仅多样性高,而且质量优良。在具有挑战性的场景中,模型生成的前10条得分最高的轨迹与真实轨迹非常相似,显示出模型在模拟复杂驾驶行为方面的强大能力。

  • 车道变换和交通灯交互:在直行和车道变换行为中,DiffusionDrive能够与交通灯进行交互,并在停车线处正确停车。这表明模型能够理解和预测交通环境中的其他代理行为,以及如何在遵守交通规则的同时进行驾驶决策。

  • 左转和右转行为:在左转和右转场景中,DiffusionDrive展示了与周围代理的复杂交互,包括车跟随和超车行为。这些行为的准确模拟对于自动驾驶系统的安全性和效率至关重要。

  • 碰撞避免:在复杂的交通场景中,DiffusionDrive能够有效地避免碰撞,即使是在突出显示的前10条得分轨迹中,相邻的低得分轨迹也能够与周围的代理进行交互,以有效避免碰撞的发生。

综上所述,DiffusionDrive模型在NAVSIM数据集上的实验结果和定性分析表明,该模型不仅在量化指标上取得了优异的成绩,而且在模拟真实驾驶行为的多样性和复杂性方面也展现出了强大的能力。这些结果为DiffusionDrive在端到端自动驾驶领域的应用提供了有力的支持。

6. 总结

6.1 模型创新点回顾

DiffusionDrive模型在端到端自动驾驶领域实现了显著的技术创新。该模型首次引入了截断扩散策略,通过结合先验的多模锚点和高斯分布,显著减少了去噪步骤,从而在保持实时性能的同时,提高了驾驶决策的多样性和质量。DiffusionDrive模型在NAVSIM数据集上达到了88.1 PDMS的高分,这一成绩不仅刷新了记录,也证明了模型在模拟复杂驾驶行为中的有效性。

6.2 性能优势分析

DiffusionDrive模型的性能优势主要体现在以下几个方面:

  • 实时性能:模型能够在NVIDIA 4090 GPU上以每秒45帧的速度运行,满足了自动驾驶实时性的需求。
  • 计算效率:与传统扩散模型相比,DiffusionDrive将去噪步骤从20步减少到2步,实现了10倍的效率提升。
  • 模式多样性:模型通过从锚定的高斯分布中采样,有效捕捉了驾驶行为的不确定性和多样性,提高了轨迹生成的适用性和合理性。
  • 泛化能力:通过减少锚点数量,模型减轻了计算负担,并提高了对未知或罕见驾驶场景的适应能力。

6.3 实验结果的验证

在NAVSIM数据集上的实验结果和定性分析进一步证实了DiffusionDrive模型的有效性。模型不仅在量化指标上取得了优异的成绩,而且在模拟真实驾驶行为的多样性和复杂性方面也展现出了强大的能力。特别是在多模态轨迹生成、车道变换、交通灯交互以及碰撞避免等方面,DiffusionDrive模型均表现出色。

6.4 对未来研究的启示

DiffusionDrive模型的成功为未来自动驾驶技术的研究提供了新的方向。其截断扩散策略和多模锚点的运用,为处理复杂、多模态决策问题提供了新的解决方案。此外,模型在实时性能和计算效率方面的优化,为自动驾驶系统的商业化和实际部署奠定了基础。未来的研究可以在此基础上进一步探索模型的可扩展性、鲁棒性以及在更广泛场景中的应用潜力。

推荐阅读

  • 端到端理论与实战
  • 动手学轨迹预测
  • 动手学运动规划
  • 动手学行为决策
  • 强化学习入门笔记

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS 5.0应用开发——Ability与Page数据传递

【高心星出品】 文章目录 Ability与Page数据传递Page向Ability传递数据Ability向Page传递数据 Ability与Page数据传递 基于当前的应用模型,可以通过以下几种方式来实现UIAbility组件与UI之间的数据同步。 使用EventHub进行数据通信:在基类Context中提供…

【unity框架开发10】从零手搓一个UI管理器/UI框架,自带一个提示界面,还有自带DOTween动画效果(2024/10/10修改补充)

最终效果 文章目录 最终效果前言UI组件和布局的基础使用UI管理器1、新增UI面板层枚举2、初始化2.1、用代码创建画布2.2、用代码创建UI面板的父物体层2.3、代码添加EventSystem物体 3、ShowPanel显示面板方法4、HidePanel隐藏面板的方法5、CloseUI关闭界面的方法6、UI界面基类 测…

智能指针【C++11】

文章目录 智能指针std::auto_ptr std::unique_ptrstd::shared_ptrstd::shared_ptr的线程安全问题std::weak_ptr 智能指针 std::auto_ptr 管理权转移 auto_ptr是C98中引入的智能指针,auto_ptr通过管理权转移的方式解决智能指针的拷贝问题,保证一个资源…

Win11 24h2 不能正常ensp

Win11 24h2 不能正常ensp 因为Win11 24h2的内核大小更改,目前virtualbox在7.1.4中更新解决了。而ensp不支持5.2.44之后的virtualbox并已停止维护,不再进行5.2.44修复,virtualbox 5.2.24的ntdll文件sizeofimage问题,此问题导致ens…

使用GO--Swagger生成文档

概述 在前后端分离的项目中,后端配置swagger可以很好的帮助前端人员了解后端接口参数和数据传输。go-swagger 是一个功能全面且高性能的Go语言实现工具包,用于处理Swagger 2.0(即OpenAPI 2.0)规范。它提供了丰富的工具集&#x…

沃德云商协系统微信小程序PHP+Uniapp

“多组织”的云服务平台,打造总商会、总协会、总校友会、工商联等多组织无障碍沟通合作平台,让各大分会、各大分校友会、分组织实现轻松管理,线上宣传展示、商机挖掘、会员管理、会员服务、跨界交流等, 借助沃德云商协平台系统,让…

网站打开速度测试工具:互联网优化的得力助手

在信息飞速流转的互联网时代,网站如同企业与用户对话的窗口,其打开速度直接关乎用户体验,乃至业务的成败。所幸,一系列专业的网站打开速度测试工具应运而生,它们宛如幕后的技术侦探,精准剖析网站性能&#…

shell脚本实战案例

文章目录 实战第一坑功能说明脚本实现 实战第一坑 实战第一坑:在Windows系统写了一个脚本,比如上面,随后上传到服务,执行会报错 原因: 解决方案:在linux系统touch文件,并通过vim添加内容&…

Face2QR:可根据人脸图像生成二维码,还可以扫描,以后个人名片就这样用了!

今天给大家介绍的是一种专为生成个性化二维码而设计的新方法Face2QR,可以将美观、人脸识别和可扫描性完美地融合在一起。 下图展示为Face2QR 生成的面部图像(第一行)和二维码图像(第二行)。生成的二维码不仅忠实地保留…

数据结构---队列(Queue)

1. 简介 队列(Queue)是一种常用的数据结构,它遵循先进先出(FIFO,First In First Out)的原则。这意味着第一个进入队列的元素将是第一个被移除的元素。队列在计算机科学中有着广泛的应用,比如任…

玩游戏没有flash插件的解决方案(No Flash)

一、概述 在网页游戏开发领域,Flash和H5是两种主流的技术。Flash游戏曾经占据主导地位,但随着HTML5技术的发展和浏览器对Flash支持的逐渐减少,H5游戏逐渐成为主流。本教程将详细介绍Flash和H5的区别,并提供将Flash游戏转换为H5游戏…

如何查看电脑的屏幕刷新率?

1、按一下键盘的 win i 键,打开如下界面,选择【系统】: 2、选择【屏幕】-【高级显示设置】 如下位置,显示屏幕的刷新率:60Hz 如果可以更改,则选择更高的刷新率,有助于电脑使用起来界面更加流…

新书速览|循序渐进Node.js企业级开发实践

《循序渐进Node.js企业级开发实践》 1 本书内容 《循序渐进Node.js企业级开发实践》结合作者多年一线开发实践,系统地介绍了Node.js技术栈及其在企业级开发中的应用。全书共分5部分,第1部分基础知识(第1~3章)&#xf…

AUTOSAR AP和CP的安全要求规范(Safety Req)详细解读

一、规范的编制的背景原因 编制该规范的原因 确保系统安全性和可靠性 随着汽车电子系统日益复杂,功能不断增加,对安全性和可靠性的要求也越来越高。该规范为AUTOSAR平台在安全执行、配置、更新、信息交换、数据处理等多方面制定了明确要求,…

数仓技术hive与oracle对比(四)

问题处理 sqoop导入异常 将oracle数据库中的表,用sqoop导入hive时,如果表中字段值含有“,”,会导致导入hive后,每一行所有字段的内容都放在了第一个字段,其他字段均没有值。这是因为hive底层是以文件的形…

流网络等价性证明:边分解后的最大流保持不变

流网络等价性证明:边分解后的最大流保持不变 问题描述证明思路伪代码C 代码实现解释问题描述 在流网络中,证明将一条边分解为两条边所得到的是一个等价的网络。具体来说,假设流网络 $ G $ 包含边 $ (u, v) $,我们以如下方式创建一个新的流网络 $ G’ $: 创建一个新结点 $…

应用案例 | 船舶海洋: 水下无人航行器数字样机功能模型构建

水下无人航行器数字样机功能模型构建 一、项目背景 为响应水下装备系统研制数字化转型及装备系统数字样机建设的需要,以某型号水下无人航行器(Underwater Unmanned Vehicle,UUV)为例,构建UUV数字样机1.0功能模型。针对…

RabbitMQ七种工作模式之简单模式, 工作队列模式, 发布订阅模式, 路由模式, 通配符模式

文章目录 一. Simple(简单模式)公共代码:生产者:消费者: 二. Work Queue(工作队列模式)公共代码:生产者:消费者1, 消费者2(代码相同): 三. Publish/Subscribe(发布/订阅模式)公共代码:生产者:消费者: 四. Routing(路由模式)公共代码:消费者: 五. Topics(通配符模式)公共代码:生…

前端知识1html

VScode一些快捷键 Ctrl/——注释 !——生成html框架元素 *n——生成n个标签 直接书写html的名字回车生成对应的标签 常见标签 span&#xff1a; <span style"color: red;">hello</span> <span>demo</span> span实现&#xff1a; 标题…

Push an existing folder和Push an existing Git repository的区别

Push an existing folder 和 Push an existing Git repository 是在使用 Git 服务&#xff08;如 GitHub、GitLab、Bitbucket 等&#xff09;时两个常见的操作选项。它们的区别主要体现在项目的初始化和版本控制状态上&#xff1a; 1. Push an existing folder 适用场景&#…