【理想汽车中科院】基于模仿学习的端到端自动驾驶数据缩放规律

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

项目: https://github.com/ucaszyp/Driving-Scaling-Law

0. 摘要

端到端自动驾驶范式因其可扩展性而最近吸引了大量关注。然而,现有方法受到现实世界数据规模有限的制约,这阻碍了对端到端自动驾驶相关扩展规律的全面探索。为了解决这一问题,我们从各种驾驶场景和行为中收集了大量数据,并针对现有的基于模仿学习的端到端自动驾驶范式进行了扩展规律的广泛研究。具体来说,我们收集了来自23种不同场景类型的大约400万个演示,总计超过30,000小时的驾驶演示。我们在严格的评估条件下,在1,400个多样化驾驶演示中进行了开环评估和闭环仿真评估(开环1,300个,闭环100个)。通过实验分析,我们发现:(1)驾驶模型的性能与训练数据量呈现出幂律关系;(2)长尾数据量的小幅增加可以显著提高对应场景的性能;(3)适当扩展数据使模型能够在新场景和动作中实现组合泛化。我们的结果强调了数据扩展在提高模型在多样化自动驾驶场景中的泛化能力中的关键作用,确保了在现实世界中的安全部署。

1. 创新点

  • 大规模真实世界数据集的构建:该研究收集了约400万次不同驾驶场景和行为的演示,总计超过30,000小时的驾驶视频,覆盖23种不同的场景类型。这是端到端自动驾驶领域中少见的大规模、多样化的真实世界数据集,为深入研究数据扩展规律提供了基础。

  • 数据扩展规律的探索:研究团队探索了端到端自动驾驶模型的轨迹拟合能力与训练数据量之间的幂律关系,发现模型性能与训练数据量之间的关系符合幂律分布。这一发现揭示了数据量对模型性能的显著影响,为自动驾驶模型的训练和优化提供了重要的指导。

  • 长尾数据对性能的影响:研究指出,长尾数据量的少量增加可以显著提高相应场景的性能。这一点对于提高模型在罕见或特殊场景下的性能具有重要意义,增强了模型的泛化能力。

2. 相关工作

2.1 端到端自动驾驶技术

端到端自动驾驶技术近年来取得了显著进展,这种技术范式通过直接从原始传感器数据到驾驶决策的优化,减少了传统自动驾驶系统中模块间的数据丢失和误差累积。研究表明,端到端系统在感知和规划的联合特征优化方面具有优势,能够实现更高效的计算和更好的性能表现。例如,TransFuser和InterFuser等模型通过融合不同传感器信息,增强了在复杂场景下的鲁棒性和性能。此外,TCP模型仅使用单目相机就实现了卓越的性能,展现了端到端方法在资源利用上的高效性。然而,这些研究受限于真实世界数据的规模,限制了对端到端自动驾驶扩展规律的探索。

2.2 模仿学习在自动驾驶中的应用

模仿学习作为自动驾驶系统中的关键技术,通过学习人类驾驶员的行为来训练自动驾驶模型。在自动驾驶中,模仿学习通常涉及学习人类驾驶员的操作,如转向、加速、减速等决策过程。通过模仿学习,自动驾驶系统可以在没有明确奖励信号的情况下学会驾驶。研究表明,模仿学习能够显著提高自动驾驶模型的泛化能力,尤其是在数据稀缺的场景中。例如,通过在城市驾驶数据上训练的策略,在挑战性场景中的鲁棒性得到了显著提升。模仿学习与强化学习的结合,进一步提高了驾驶策略的安全性和可靠性,减少了最困难场景下的安全事件。

2.3 数据缩放律在其他领域的研究

数据缩放律在自然语言处理和计算机视觉等领域已经显示出其重要性,为模型提供了显著的泛化能力。在机器人技术领域,尤其是机器人操作中,数据缩放律的研究揭示了策略泛化性能与环境和物体数量之间的幂律关系。研究表明,环境和物体的多样性比演示的绝对数量更重要,一旦每个环境或物体的演示数量达到一定阈值,额外的演示效果有限。这些发现为自动驾驶领域提供了宝贵的洞见,即通过适当的数据扩展,可以提高模型在新环境和新动作中的泛化能力。此外,大型语言模型(LLM)的微调研究也表明,LLM模型缩放对微调的益处大于预训练数据缩放,而PET参数缩放通常效果不佳。这些跨领域的研究结果为自动驾驶中的数据缩放律提供了有力的参考和启示。

3. 方法论

3.1 数据收集与预处理

为了深入研究模仿学习基础上的端到端自动驾驶的数据扩展规律,我们收集了约400万次不同驾驶场景和行为的演示,总计超过30,000小时的驾驶视频。这些数据涵盖了23种不同的场景类型,包括城市道路、高速公路、复杂天气条件等,确保了数据的多样性和全面性。

数据预处理方面,我们首先对原始传感器数据进行清洗,去除异常值和噪声,以提高数据质量。随后,我们将数据标注为不同的驾驶行为和场景,以便于模型学习。此外,我们还对数据进行了归一化处理,使得模型能够在统一的数据尺度上进行训练,增强模型的泛化能力。

3.2 模仿学习框架构建

基于收集的数据,我们构建了一个模仿学习框架,该框架能够直接从人类驾驶员的行为中学习驾驶策略。框架的核心是一个深度神经网络,它接受原始传感器数据作为输入,并输出驾驶决策。我们采用了端到端的训练方法,通过最小化人类驾驶员行为和模型输出之间的差异来训练模型。

在框架构建过程中,我们特别关注模型的可扩展性和泛化能力。为此,我们引入了数据增强技术,通过对原始数据进行旋转、缩放、裁剪等操作,生成更多的训练样本,以提高模型对新场景的适应性。同时,我们还采用了迁移学习策略,将预训练的模型作为起点,进一步在特定场景上进行微调,以加速模型的收敛并提高性能。

3.3 实验设计与评估指标

为了评估模型性能和数据扩展规律,我们设计了一系列实验,并选择了严格的评估指标。实验分为开环评估和闭环仿真评估两部分,共计1,400次不同的驾驶演示(开环1,300次,闭环100次)。

开环评估主要关注模型预测轨迹与专家轨迹之间的差异,我们采用了平均绝对误差(MAE)和均方根误差(RMSE)作为主要指标,以量化模型预测的准确性。闭环仿真评估则更注重模型在实际驾驶环境中的表现,我们采用了驾驶安全性、效率、导航准确性、规则遵守和舒适度五个维度的综合评分,以全面评估模型的驾驶性能。

此外,我们还引入了长尾数据集的评估,以研究数据量增加对长尾场景性能的影响。通过对比不同数据量下模型在长尾场景中的表现,我们旨在揭示数据扩展对模型泛化能力的具体影响。

4. 实验结果与分析

4.1 驾驶模型性能与训练数据量关系

实验结果表明,驾驶模型的性能与训练数据量之间存在显著的幂律关系。具体来说,随着训练数据量的增加,模型的轨迹拟合能力得到了显著提升。

  • 开环性能分析:在开环评测中,模型拟合专家轨迹的性能与训练数据量之间的关系符合幂律分布。如图5(a)所示,随着训练数据量的增加,模型性能呈现出快速增长的趋势,这表明数据量的增加对于提升模型的轨迹拟合能力具有重要作用。通过线性拟合,我们发现在数据量较少时,模型性能的提升速度较快,而在数据量达到一定规模后,性能提升的速度逐渐放缓。

  • 闭环性能分析:与开环性能不同,闭环性能的提升并非完全遵循幂律关系。如图5©所示,在200万次数据量时,闭环性能出现了明显的拐点,之后随着数据量的增加,性能提升的速度逐渐放缓。这可能意味着在闭环条件下,模型的性能受到其他因素的影响,如环境的复杂性、模型的泛化能力等。

4.2 长尾数据对性能的影响

长尾数据量的增加对模型性能有着显著的正面影响。在保持数据总量不变的情况下,我们逐步增加了两种数据量少、模型表现差的长尾场景的数据数量,并评估了模型在这些场景中的轨迹拟合能力。

  • 长尾数据扩增实验:如表3所示,当长尾数据量扩增至约4倍时,模型在相应场景的性能提升了约20%至30%。这一结果表明,针对性地增加长尾场景的数据量,可以显著提升模型在这些场景中的性能,从而提高模型的整体泛化能力。

4.3 数据缩放对模型泛化能力的影响

数据缩放对模型的泛化能力有着重要影响。通过在不同规模的数据上训练模型,并在新场景中评估其性能,我们发现适当的数据缩放可以显著提升模型的泛化能力。

  • 组合泛化实验:如图6所示,当训练数据量从5万增加到200万时,模型在两个测试场景(高速绕行和路口待转)中的轨迹与其他场景之间的误差迅速缩小。特别是在高速场景上,模型的表现甚至超过了参与训练的其他场景。这一结果表明,随着训练数据量的增加,模型能够更好地泛化到新场景中。

  • 可视化分析:图7中的可视化分析进一步证实了数据缩放对模型泛化能力的影响。使用200万个示例训练的模型在未见过的高速绕行和路口待转场景中,展现出与专门训练的模型相媲美的性能。这表明适当的数据缩放不仅提高了模型在训练场景中的表现,也增强了模型对新场景的适应性和鲁棒性。

5. 讨论

5.1 数据缩放律对自动驾驶技术的影响

数据缩放律在自动驾驶技术中的影响是深远的。我们的研究结果表明,驾驶模型的性能与训练数据量之间存在显著的幂律关系。这一发现意味着,通过增加训练数据量,可以显著提升自动驾驶模型的轨迹拟合能力,从而提高自动驾驶的安全性和可靠性。

  • 性能提升:随着训练数据量的增加,模型在开环和闭环条件下的性能均得到了提升。特别是在开环条件下,模型的轨迹拟合能力随着数据量的增加而快速增长,这一趋势在数据量较少时尤为明显。而在闭环条件下,虽然性能提升的速度在200万次数据量时出现拐点,但整体而言,数据量的增加仍然对性能有积极影响。
  • 泛化能力增强:数据缩放律不仅影响模型在训练场景中的表现,还对模型在新场景中的泛化能力有重要影响。我们的实验结果表明,随着训练数据量的增加,模型在未见过的高速绕行和路口待转场景中的表现显著提升,甚至超过了参与训练的其他场景。这表明适当的数据缩放可以显著提升模型的泛化能力,使其能够更好地适应新环境和新动作。

5.2 数据分布对模型性能的影响

数据分布对模型性能的影响同样不容忽视。我们的研究发现,长尾数据量的增加对模型性能有着显著的正面影响。在保持数据总量不变的情况下,针对性地增加长尾场景的数据量,可以显著提升模型在这些场景中的性能。

  • 长尾数据的重要性:长尾数据,即那些在数据集中出现频率较低的场景和行为,对模型的泛化能力尤为重要。我们的实验结果表明,当长尾数据量扩增至约4倍时,模型在相应场景的性能提升了约20%至30%。这一结果强调了在数据收集和训练过程中,对长尾数据的关注和增加的必要性。
  • 数据分布的优化:为了进一步提升模型性能,未来的研究可以探索更优的数据分布策略。例如,通过分析不同场景和行为的数据分布,可以确定哪些场景需要更多的数据支持,从而有针对性地收集和增加这些场景的数据量。此外,还可以探索数据增强技术,通过对原始数据进行变换和合成,生成更多的训练样本,以改善数据分布。

5.3 数据缩放律对未来研究的启示

数据缩放律的发现为未来自动驾驶领域的研究提供了重要启示。首先,它强调了大规模、高质量数据集在自动驾驶模型训练中的重要性。其次,它指出了数据多样性和分布对模型泛化能力的影响,为未来的数据收集和模型训练提供了指导。

  • 数据集构建:未来的研究可以基于数据缩放律的发现,构建更大规模、更多样化的自动驾驶数据集。这不仅需要收集更多的驾驶场景和行为数据,还需要关注数据的质量和分布,确保数据集能够全面覆盖自动驾驶可能遇到的各种情况。
  • 模型训练和优化:在模型训练和优化方面,数据缩放律提示我们可以通过对训练数据量的增加来提升模型性能。同时,也需要探索更有效的数据利用策略,如数据增强、迁移学习等,以提高模型的泛化能力和适应性。
  • 泛化能力评估:未来的研究还需要开发更全面的评估方法,以量化模型在新场景和动作中的泛化能力。这包括对模型在未见过的环境下的表现进行评估,以及对模型在面对新任务和新指令时的适应性进行测试。通过这些评估,可以更好地理解数据缩放律对自动驾驶模型泛化能力的影响,从而为自动驾驶技术的安全部署提供更有力的支持。

6. 结论与未来工作

6.1 研究总结

本研究深入探讨了模仿学习基础上的端到端自动驾驶的数据扩展规律,通过大规模真实世界驾驶数据的收集与分析,我们得出以下结论:

  • 数据扩展规律的存在性:研究发现,端到端自动驾驶模型的轨迹拟合能力与训练数据量之间存在显著的幂律关系。这表明数据量的增加可以显著提升模型性能,尤其是在开环条件下。此外,闭环性能在达到一定数据量后提升速度放缓,暗示可能存在“反规模化”效应。

  • 数据量对模型性能的影响:实验结果证实,增加训练数据量可以显著提高模型的轨迹拟合能力。特别是在数据量较少时,模型性能提升速度较快,而在数据量达到一定规模后,性能提升的速度逐渐放缓。

  • 数据扩展对泛化能力的提升:适当的数据扩展能够显著提升模型在新场景和动作中的泛化能力。通过组合泛化实验,我们发现模型能够结合已知信息,实现对新场景的泛化规划。

  • 长尾数据的重要性:长尾数据量的增加对模型性能有着显著的正面影响。针对性地增加长尾场景的数据量,可以显著提升模型在这些场景中的性能,从而提高模型的整体泛化能力。

6.2 未来研究方向

基于本研究的发现,我们提出以下未来研究方向:

  • 闭环性能的深入研究:进一步探索闭环条件下的数据扩展规律,尤其是“反规模化”效应的成因和影响,以优化模型在实际驾驶环境中的表现。

  • 数据分布优化策略:研究更优的数据分布策略,包括数据增强技术和数据收集方法,以改善数据分布,提高模型在长尾场景中的表现。

  • 泛化能力评估方法的开发:开发更全面的评估方法,量化模型在新场景和动作中的泛化能力,包括对模型在未见过的环境下的表现进行评估,以及对模型在面对新任务和新指令时的适应性进行测试。

  • 大规模数据集的构建:构建更大规模、更多样化的自动驾驶数据集,以全面覆盖自动驾驶可能遇到的各种情况,为模型训练提供更丰富的数据支持。

  • 模型训练和优化策略的探索:探索更有效的数据利用策略,如迁移学习、多任务学习等,以提高模型的泛化能力和适应性。

  • 跨领域数据缩放律的应用:研究数据缩放律在自动驾驶领域的应用,结合其他领域的研究成果,如自然语言处理和计算机视觉,为自动驾驶模型的训练和优化提供新的思路和方法。

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

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

相关文章

【工具介绍】可以批量查看LableMe标注的图像文件信息~

在图像处理和计算机视觉领域,LabelMe是一个广泛使用的图像标注工具,它帮助我们对图像中的物体进行精确的标注。但是,当标注完成后,我们常常需要一个工具来批量查看这些标注信息。 今天,我要介绍的这款exe程序&#xf…

链式栈的实现及其应用

目录 一、链式栈结构模型 二、链式栈的实现 2.1创建 2.2压栈 2.3出栈 2.4判断栈是否为空 2.5查看栈顶 2.6释放栈 三、应用 链式栈实际上就是基于链表,压栈和弹栈可分别看作头插和头删,链表尾部就是栈底,头指针就是栈顶指针 一、链式…

day12 接口测试 ——入门→精通→实战(1)

【没有所谓的运气🍬,只有绝对的努力✊】 目录 1、接口测试分类 1.1 内部接口: 1.2 外部接口: 2、目前接口架构设计 2.1、基于SOAP架构, 2.2、基于RPC架构, 2.3、基于RestFul架构, 2.3.1…

程序的调试

一名优秀的程序员也是一名出色的侦探,每一次调试都是尝试破案的过程 目录 前言 一、什么是调试? 二、调试 1.调试是什么 2.基本步骤 三、调试注意事项 1.怎么写出易于调试的代码 assert(断言) const 2.常见错误 总结 前言 主要是怎么调试,调…

FPGA实现GTP光口数据回环传输,基于Aurora 8b/10b编解码架构,提供2套工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目我这里已有的 GT 高速接口解决方案 3、工程详细设计方案工程设计原理框图用户数据发送模块基于GTP高速接口的数据回环传输架构GTP IP 简介GTP 基本结构GTP 发送和接收…

25.DDD数量关系

学习视频来源:DDD独家秘籍视频合集 https://space.bilibili.com/24690212/channel/collectiondetail?sid1940048&ctype0 文章目录 关系型数据库的数量关系领域模型的数量关系实现聚合数量关系聚合内聚合间具体说明代码 数量关系是本质吗?领域对象之…

每天40分玩转Django:Django视图和URL

Django视图和URL 一、课程概述 学习项目具体内容预计用时视图基础函数视图、类视图、视图装饰器90分钟URL配置URL模式、路由系统、命名URL60分钟请求处理请求对象、响应对象、中间件90分钟 二、视图基础 2.1 函数视图 # blog/views.py from django.shortcuts import render…

语言模型(序列模型)

终于快要毕业了,乘着还在还在研究室,把最后一章sequence模型也学完吧。 Sequence Model 一:基础知识1:符号的定义2:词典(Vocabulary) 与编码(Encoding) 二:RNN(Recurrent Neural Networks) 循环神经网络1&…

【自然语言处理与大模型】使用llama.cpp将HF格式大模型转换为GGUF格式

llama.cpp的主要目标是在本地和云端的各种硬件上以最小的设置和最先进的性能实现LLM推理。是一个专为大型语言模型(LLM)设计的高性能推理框架,完全使用C和C编写,没有外部依赖,这使得它可以很容易地被移植到不同的操作系…

npm : 无法加载文件 D:\nodejs\npm.ps1

问题描述 npm run serve 启动一个Vue项目,报错如下: npm : 无法加载文件 D:\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/? LinkID135170 中的 about_Execution_Policies。…

线程池+线程安全+常见锁

目录 一、线程池1、日志与策略模式2、线程池设计3、线程安全的单例模式(1)单例模式的特点(2)饿汉实现方式和懒汉实现方式(i)饿汉方式实现单例模式(ii)懒汉方式实现单例模式&#xff…

数据结构6.4——归并排序

基本思想: 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个…

revit转gltf,revit转3dtiles,如何将Revit模型转为3DTiles格式并在Cesiumjs中高效可视化

Revit模型导出gltf、glb与3dtiles有多种方式,但一般的商业工具收费普遍较高:Cesiumlab导出3dTile格式数据,Cesiumlab暂时可试用3天,会员版收费每年800;BimAngleEngine导出3dTile格式数据BimAngleEngine暂时可试用30天&…

可视化建模与UML《部署图实验报告》

一、实验目的: 1、熟悉部署图的基本功能和使用方法。 2、掌握使用建模工具软件绘制部署图的方法 二、实验环境: window11 EA15 三、实验内容: 根据以下的描述,绘制部署图。 网上选课系统在服务器端使用了两台主机,一…

在CentOS中安装和卸载mysql

在CentOS7中安装和卸载mysql 卸载mysql1、查看是否安装过mysql2、查看mysql服务状态3、关闭mysql服务4、卸载mysql相关的rpm程序5、删除mysql相关的文件6、删除mysql的配置文件my.cnf 安装mysql1、下载mysql相关的rpm程序2、检查/tmp临时目录权限3、安装mysql前的依赖检查3、安…

使用ERA5数据绘制风向玫瑰图的简易流程

使用ERA5数据绘制风向玫瑰图的简易流程 今天需要做一个2017年-2023年的平均风向的统计,做一个风向玫瑰图,想到的还是高分辨率的ERA5land的数据(0.1分辨率,逐小时分辨率,1950年至今)。 风向,我分为了16个&…

软考:工作后再考的性价比分析

引言 在当今的就业市场中,软考(软件设计师、系统分析师等资格考试)是否值得在校学生花费时间和精力去准备?本文将从多个角度深入分析软考在不同阶段的性价比,帮助大家做出明智的选择。 一、软考的价值与局限性 1.1 …

Qt绘制仪表————附带详细说明和代码示例

文章目录 1 效果2 原理3 编码实践3.1 创建仪表属性类3.2 设置类属性3.3 绘制图案3.3.1 设置反走样3.3.2 绘制背景3.3.3 重新定义坐标原点3.3.4 绘制圆环3.3.5 绘制刻度线3.3.6 绘制刻度线上的描述值3.3.7 绘制指针3.3.8 绘制指针数值和单位3.3.9 控制指针变化 扩展福利参考 1 效…

vue 纯前端预览pdf,纯前端实现pdf加水印下载文件也带水印,防止pdf下载

效果图 1.pdf预览 原理:主要是利用pdfh5这个插件来完成的 使用方法: 1.页面需要有一个容器例子: 2.下载pdfh5插件 npm install pdfh5 (注意:webpack5之后不会下载polyfill 需要手动下载 所以引入pdfh5的时候会报错) 解决方案:下载 node-polyfill-webpack-plugin npm i…

重生之我在异世界学编程之C语言:深入文件操作篇(上)

大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 函数递归与迭代 引言正文一、为什么要用文件二、文…