浅谈端到端(自动驾驶)

一、 引言

端到端是近期非常火的话题,尤其在自动驾驶、具身智能等领域。去年UniAD的发布,给大家普及了端到端的网络设计,带动了行业的发展。产业界,特斯拉FSD Beta V12效果惊艳,近期理想也推出了双系统的E2E自动驾驶系统。一时间,大家都朝着这个方向发展。那端到端是什么?有哪些好处?这里面涉及了哪些技术?今天跟大家聊一聊。

二、什么是端到端

端到端的实现路径并不统一,各家都有自己的定义。一般,对于端到端的定义可分为广义与狭义:

广义上的E2E,强调信息无损传递,不因人为定位的接口而产生信息损耗,可以实现数据驱动的整体优化。

狭义上的E2E,强调一个神经网络模型,即直接从传感器输入映射到规控输出。

下面是比较主流的三种方案:

1. 感知认知模型化

以华为ADS3.0为代表,整个模型分为感知与预决策规划两个阶段,串联二者做训练。感知部分采用GOD网络,预决策规划采用PDP网络实现端到端一张网。

2. 模块化端到端

以上海人工智能实验室的UniAD为代表,将感知预测规划等模块串联在一起,利用跨模块的梯度传导代替人工定义的数据接口,来实现全局优化。

3. 单一大模型

以Wayve的 GAIA-1和 LINGO-2为代表,直接利用一个神经网络模型完成从传感器数据输入到规控指令(轨迹)输出的映射。

三、为什么要端到端

相比传统模块化的自动驾驶架构,端到端的提出解决了什么问题呢?

前文在介绍时说到,端到端强调信息的无损传递。传统的自动驾驶架构通常分为感知、预测、决策、规划与控制等模块,模块间的信息传递主要是通过人工设计的数据接口,这在前期很有效,但现在也逐渐成为瓶颈所在。通过端到端,通过神经网络的原生数据表示,信息高效传递,这也决定了系统的上限会更高。

另外从工程迭代方面讲,传统方案中模块内的算法优化和模块间的系统优化是两个分离的过程,它们相互关联影响系统的性能。采用端到端,将两者统一起来,也会提高整个系统的迭代效率。

四、端到端自动驾驶中的关键技术

1. 基础神经网络架构

现有大模型多以Transformer结构为基础。Transformer是以注意力机制为核心的编解码器结构,其主要结构为注意力、位置编码、残差连接、层归一化模块。Transformer被广泛应用于NLP、CV、RL等领域的大模型中。

2. 大模型预训练与微调技术

预训练是使大模型获得通用知识并加速模型在微调阶段收敛的关键步骤。根据序列建模的方式,语言模型可以分为自回归语言模型自编码语言模型。自回归语言模型使用Transformer的解码器结构,根据前文预测下一个词,从而对序列的联合概率进行单向建模。自编码语言模型则利用Transformer的编码器结构,通过预测序列中的某个词来双向建模序列的联合概率。

微调是指将预训练好的大模型在下游任务中进行调整,使之与具体任务更加适配。微调后的大模型与预训练大模型相比,在下游任务中性能通常大幅提升。随着模型规模不断增大,微调所有参数变得十分困难,因此近年来出现了多种高效微调方法,包括Vanilla Finetune、Prompt Tuning以及Reinforcement Learning from Human Feedback(RLHF)等方法。

3. 模型剪枝与压缩

训练好的大模型需要部署在算力和内存受限的系统上,因此需要对大模型进行剪枝和压缩,减小模型中的冗余结构和信息,使其能够在受限的计算资源上进行快速推理,同时尽量减小对模型精度的影响。大模型的压缩方法主要包括模型剪枝、知识蒸馏和量化

4. 车云协同的数据闭环

由一定规模具有网联功能的车辆进行众包数据采集,数据清洗和筛选之后上传至云控计算平台;利用云控平台的充足算力,生成海量仿真驾驶数据;融合虚实数据进行场景构建,利用自监督学习、强化学习、对抗学习等方法对自动驾驶大模型进行在线迭代优化;所学大模型经剪枝压缩后得到车规级实时模型,并通过OTA方式下载到车载芯片,完成车端驾驶策略的自进化学习。

五、参考

1. 《汽车端到端自动驾驶系统的关键技术与发展趋势》

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 04:08:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 04:08:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 04:08:02       58 阅读
  4. Python语言-面向对象

    2024-07-19 04:08:02       69 阅读

热门阅读

  1. Unlink

    Unlink

    2024-07-19 04:08:02      20 阅读
  2. 扩展你的App:Xcode中App Extensions的深度指南

    2024-07-19 04:08:02       25 阅读
  3. 计算机算法思想

    2024-07-19 04:08:02       13 阅读
  4. ApplicationRunner applicationRunner 是什么?

    2024-07-19 04:08:02       19 阅读
  5. 介绍threadlocal

    2024-07-19 04:08:02       18 阅读
  6. cpu100%排查

    2024-07-19 04:08:02       19 阅读
  7. 黑龙江等保2.0新规

    2024-07-19 04:08:02       25 阅读
  8. 一个菜鸟如何在苹果笔记本上学C语言

    2024-07-19 04:08:02       25 阅读
  9. 中西入门哲学史差异记录

    2024-07-19 04:08:02       20 阅读
  10. GitHub敏感信息扫描工具

    2024-07-19 04:08:02       25 阅读
  11. 7大并发容器种类原理解析与应用

    2024-07-19 04:08:02       21 阅读
  12. mstar 开发环境搭建

    2024-07-19 04:08:02       23 阅读