论文: 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模型的成功为未来自动驾驶技术的研究提供了新的方向。其截断扩散策略和多模锚点的运用,为处理复杂、多模态决策问题提供了新的解决方案。此外,模型在实时性能和计算效率方面的优化,为自动驾驶系统的商业化和实际部署奠定了基础。未来的研究可以在此基础上进一步探索模型的可扩展性、鲁棒性以及在更广泛场景中的应用潜力。
推荐阅读
- 端到端理论与实战
- 动手学轨迹预测
- 动手学运动规划
- 动手学行为决策
- 强化学习入门笔记