自动驾驶领域的发展见证了采用端到端算法框架的方法的快速增长,这些方法利用原始传感器输入来生成车辆运动计划,而不是专注于检测和运动预测等单个任务。与模块化管道相比,端到端系统受益于感知和规划的联合特征优化。由于大规模数据集的可用性、闭环评估以及对自动驾驶算法在具有挑战性的场景中有效执行的需求不断增加,该领域蓬勃发展。
传统的自动驾驶系统采用模块化部署策略,其中感知、预测、规划等各个功能都是单独开发并集成到车载车辆中。规划或控制模块负责生成转向和加速输出,在确定驾驶体验方面发挥着至关重要的作用。模块化Pipeline中最常见的规划方法涉及使用复杂的基于规则的设计,这通常无法有效解决驾驶时发生的大量情况。因此,利用大规模数据并使用基于学习的规划作为可行的替代方案的趋势日益明显。
我们将端到端自动驾驶系统定义为完全可微分的程序,该程序将原始传感器数据作为输入并生成计划或低级控制操作作为输出。图 1 (a)-(b) 说明了经典公式和端到端公式之间的差异。传统方法将每个组件的输出(例如边界框和车辆轨迹)直接输入后续单元(虚线箭头)。相反,端到端范式跨组件传播特征表示(灰色实线箭头)。例如,优化函数设置为规划性能,并通过反向传播(红色箭头)最小化损失,在此过程中任务得到联合全局优化。
图 1:自动驾驶端到端整体概览
本文首次提供了端到端自动驾驶的全面分析,包括高层动机、方法论、基准等。我们提倡的不是单个模块的优化,而是整体设计算法框架的理念,最终目标是实现安全舒适的驾驶。
端到端系统的动机
在经典Pipeline中,每个模型都提供独立的组件并对应于特定的任务(例如交通灯检测)。这样的设计在可解释性、可验证性和易于调试方面是有益的。然而,由于各个模块的优化目标不同,感知中的检测追求平均精度(mAP),而规划则以驾驶安全性和舒适性为目标,整个系统可能不会朝着一个统一的目标,即最终的规划/控制任务。随着顺序过程的进行,每个模块的错误可能会加剧并导致驱动系统的信息丢失。此外,多任务、多模型部署可能会增加计算负担,并可能导致计算使用不佳。
与传统的对应系统相比,端到端自治系统具有多种优势。(a) 最明显的优点是它简单地将感知、预测和规划结合到一个可以联合训练的模型中。(b) 整个系统,包括其中间表示,针对最终任务进行了优化。(c) 共享主干网提高了计算效率。(d) 数据驱动的优化有可能通过简单地扩展培训资源来提供改进系统的新兴能力。
请注意,端到端范式不一定表示只有规划/控制输出的黑匣子。它可以像经典方法一样采用中间表示和输出进行模块化(图 1 (b))。事实上,一些最先进的系统提出了模块化设计,但同时优化所有组件以实现卓越的性能。
本文重点说明了三种流行的范式,包括两种模仿学习框架(行为克隆和逆最优控制)以及在线强化学习。
方法
本文回顾大多数现有端到端自动驾驶方法背后的基本原理。并讨论了使用模仿学习的方法,并提供了两个最流行的子类别的详细信息,即行为克隆和逆最优控制。最后,总结了遵循强化学习范式的方法。
图 2:端到端自动驾驶方法概述
2.1 模仿学习
模仿学习(IL),也称为从演示中学习,通过模仿专家的行为来训练智能体学习最优策略。IL 需要数据集 包含根据专家的政策收集的轨迹,其中每个轨迹都是状态-动作对的序列。IL 的目标是学习代理策略匹配
。IL 的一个重要且广泛使用的类别是行为克隆(BC,Behavior Clone),它将问题归结为监督学习。逆向最优控制(IOC),也称为逆向强化学习(IRL),是另一种 IL 方法,它利用专家演示来学习奖励函数。我们将在以下几节中详细说明这两个类别。
2.2 行为克隆
行为克隆BC 在驾驶任务中的早期应用利用端到端神经网络从摄像头输入生成控制信号。在行为克隆中,将代理策略与专家策略相匹配的目标是通过最小化计划损失来实现的,作为收集数据集上的监督学习问题:。这里,表示一个损失函数,用于测量代理动作和专家动作之间的距离。行为克隆因其简单和高效而具有优势,因为它不需要手工设计的奖励设计,而这对于强化学习至关重要。已有学者提出了进一步的增强功能,例如多传感器输入、辅助任务和改进的专家设计,以使基于 BC 的端到端驾驶模型能够处理具有挑战性的城市驾驶场景。
然而,存在一些与行为克隆相关的常见问题。在训练过程中,行为克隆将每个状态视为独立且相同分布,从而导致一个称为协变量偏移的重要问题。对于一般的IL,已经提出了几种在策略方法来解决这个问题。在端到端自动驾驶的背景下,行为克隆的另一个常见问题是因果混淆,即模仿者利用并依赖某些输入组件和输出信号之间的错误相关性。这个问题已经在中的端到端自动驾驶的背景下进行了讨论。基于模仿学习的端到端自动驾驶的这两个具有挑战性的问题将在后续文段中进一步讨论。
2.3 行为克隆
成本学习方法仍然存在一些挑战。特别是,为了产生更现实的成本,通常会结合高清地图、辅助感知任务和多个传感器,这增加了多模态多任务框架的学习和构建数据集的难度。为了解决这个问题,MP3、ST-P3和 IVMP放弃了先前工作中使用的 HD 地图输入,并利用预测的 BEV 地图来计算交通规则的成本,例如靠近中心线并避免与道路边界发生碰撞。上述成本学习方法显着增强了自动驾驶汽车决策的安全性和可解释性,相信受行业启发的端到端系统设计是真正实现自动驾驶汽车决策的可行方法。
2.4 强化学习
强化学习(RL)是一个通过反复试验进行学习的领域。深度Q网络(DQN)在Atari 2600基准上实现人类级别的控制的成功已经普及了深度强化学习。DQN 训练一个称为批评家(或 Q 网络)的神经网络,该网络将当前状态和操作作为输入,并预测该操作的贴现未来奖励(当随后遵循相同的策略时)。然后通过选择具有最高 Q 值的操作来隐式定义策略。强化学习需要一个允许执行潜在不安全操作的环境,因为它需要探索(例如,有时在数据收集期间执行随机操作)。此外,强化学习比监督学习需要更多的数据来训练。因此,现代强化学习方法通常会跨多个环境并行数据收集。在现实汽车中满足这些要求提出了巨大的挑战。因此,几乎所有在自动驾驶中使用强化学习的论文都只研究了仿真技术。
实际上,强化学习与监督学习相结合已成功应用于自动驾驶。隐式可供性、 GRI都使用监督学习、语义分割和分类等辅助任务来预训练其架构的 CNN 编码器部分。在第二阶段,预训练的编码器被冻结,并使用现代版本的 Q 学习对冻结图像编码器的隐式可供性进行训练。强化学习也已成功用于微调 CARLA 上的完整架构,这些架构是使用模仿学习进行预训练的。
强化学习还被有效地应用于网络可以访问特权模拟器信息的规划或控制任务。本着同样的精神,强化学习已应用于自动驾驶的数据集管理。Roach在特权 BEV 语义分割上训练 RL 方法,并使用该策略自动收集用于训练下游模仿学习代理的数据集。WoR 采用 Q 函数和表格动态规划来为静态数据集生成附加或改进的标签。
该领域未来的挑战是将模拟结果转移到现实世界。在强化学习中,目标被表示为奖励函数,大多数算法要求这些奖励函数是密集的,并在每个环境步骤提供反馈。当前的工作通常使用简单的目标,例如进度和避免碰撞,并将它们线性组合。这些简单化的奖励函数因鼓励冒险行为而受到批评。设计或学习更好的奖励函数仍然是一个悬而未决的问题。另一个方向是开发可以处理稀疏奖励的强化学习算法,从而直接优化相关指标。强化学习可以与世界模型有效结合,当前自动驾驶的 RL 解决方案严重依赖于场景的低维表示。
强化学习已经证明了在空荡荡的街道上的真车上成功学习车道跟随。尽管早期结果令人鼓舞,但必须指出的是,三十年前就已经通过模仿学习完成了类似的任务。迄今为止,还没有报告显示强化学习端到端训练的结果可以与模仿学习相媲美。在与 CARLA 模拟器发布一起进行的直接比较中,强化学习远远落后于模块化Pipeline和端到端模仿学习。这种失败的原因很可能是通过强化学习获得的梯度不足以训练驾驶所需的深度感知架构(ResNet 规模)。RL取得成功的 Atari 等基准测试中使用的模型相对较浅,仅由几个层组成。
标杆管理
自动驾驶系统需要对其可靠性进行全面评估以确保安全。为了实现这一目标,研究人员必须使用适当的数据集、模拟器和指标对这些系统进行基准测试。端到端自动驾驶系统大规模基准测试有两种方法:
(1)模拟中的在线或闭环评估;
(2)人类驾驶数据集的离线或开环评估。
其中需要特别关注更有原则性的在线设置,并提供离线评估的简要总结以确保完整性。
挑战
对于图 1 中所示的每个主题/问题,我们现在讨论相关工作、当前挑战以及有希望的未来趋势和机遇。我们先基于处理不同输入方式和公式相关的挑战开始。然后是关于高效政策学习的视觉抽象的讨论。此外,我们还介绍了学习范式,例如世界模型学习、多任务框架和策略蒸馏。最后,我们讨论阻碍安全可靠的端到端自动驾驶的一般问题,包括可解释性、因果混乱、稳健性和普遍性。
不同的模式具有不同的特征,因此,需要有效融合它们并关注行动关键特征的挑战。这里我们以点云和图像为例来描述各种融合策略。
图3:输入模式和融合策略的示例
4.1 输入方式
4.1.1多传感器融合
尽管早期的工作成功实现了简单的自动驾驶任务,例如使用单目摄像头进行车道跟踪,但这种单一输入模式不足以处理复杂的场景。因此,最近的自动驾驶汽车上引入并配备了各种传感器,如图4所示。
特别是,来自摄像头的RGB图像自然地复制了人类如何感知世界,具有丰富的语义视觉信息;LiDAR 或立体相机提供准确的 3D 空间知识。此外,车速表和 IMU 的速度和加速度等车辆状态以及高级导航命令是指导端到端系统的其他输入线。然而,各种传感器具有不同的视角和数据分布,它们之间的巨大差距给自动驾驶的有效融合、互补带来了巨大挑战。
多传感器融合主要在感知相关领域进行讨论,例如物体检测、跟踪和语义分割,通常分为三类:早期、中、后期融合。端到端自动驾驶算法探索类似的融合方案。早期融合意味着在将感知信息输入特征提取器之前对其进行组合。串联是融合各种输入的常用方法,例如图像和深度、BEV点云和高清地图等,然后使用共享特征提取器对其进行处理。还有在 BEV 上绘制与透视图像相同大小的 LiDAR 点,并将它们组合作为输入。为了解决视图差异,一些工作尝试在 2D 图像上投影点云或通过提前预测图像的语义标签为每个 LiDAR 点附加一个附加通道。另一方面,后期融合方案结合了多模态的多个结果。由于其性能较差,因此讨论较少。
与这些方法相反,中间融合通过单独编码输入,然后在特征级别将它们组合来实现网络内的多传感器融合。通用串联模式也经常被用来融合来自不同模态的特征。最近,有研究采用 Transformers来模拟特征对之间的交互。Transfuser使用两个独立的卷积编码器处理图像和 LiDAR 输入,将每个分辨率的特征与 Transformer 编码器互连,从而产生四阶段特征融合。自注意力层用于传感器Token令牌,关注感兴趣的区域并更新来自其他模式的信息。MMFN 进一步在 Transfurser 之上整合了 OpenDrive 地图和雷达输入。采用单级 Transformer 编码器架构来融合最后一个编码器块之后的各种特征。注意力机制在聚合不同传感器输入的上下文和实现更安全的端到端驾驶性能方面表现出了巨大的有效性。
4.1.2语言输入自动驾驶系统
人类使用视觉感知和内在知识(例如交通规则和所需路线)来驾驶汽车,它们共同形成因果行为。在一些与自动驾驶相关的领域,例如机器人和室内导航(也称为嵌入式人工智能),将自然语言作为细粒度指令来控制视觉运动代理已取得显着进展。
然而,室外自动驾驶任务与室内机器人应用相比,在以下情况下具有不同的特点:
(1)室外环境未知,车辆无法来回探索。
(2)鲜明的锚点标志很少,给语言指令的落地带来了巨大的挑战。
(3)驾驶场景更加复杂,具有连续的动作空间和高度动态的代理。
操纵过程中,安全是重中之重。为了将语言知识融入到驾驶行为中,Talk2Car数据集提供了在室外环境中定位参考对象的基准。Talk2Nav、TouchDown和 Map2Seq数据集引入了使用 Google 街景的视觉语言导航任务。将世界建模为离散连接图,并需要以节点选择格式导航到目标。HAD首先采用人对车的建议,并使用基于 LSTM 的控制器添加视觉接地任务。将自然语言指令编码为高级行为,包括左转、右转、不左转等,并在 CARLA 模拟器中验证他们的语言引导导航方法。后面,相关研究又通过关注文本动作命令来解决低级实时控制问题。最近,CLIP-MC和 LM-Nav 利用 CLIP,受益于大规模视觉语言预训练,从指令中提取语言知识,从图像中提取视觉特征。它们展示了预训练模型的优势,并为使用多模态模型解决复杂的导航任务提供了一个有吸引力的原型。
不同的模式通常会带来更大的视野和感知准确性,但融合它们来提取端到端自动驾驶的关键信息还需要进一步探索。必须在统一空间(例如 BEV)中对这些模式进行建模,识别与政策相关的背景,并丢弃不相关的感知信息。此外,充分利用强大的 Transformer 架构仍然是一个挑战。自注意力层将所有令牌互连以自由建模其感兴趣的领域,但它会产生大量的计算成本,并且不能保证有用的信息提取。感知领域更先进的基于 Transformer 的多传感器融合机制,也在逐步应用于端到端驾驶任务。
4.2 视觉抽象
端到端自动驾驶系统大致分两个阶段实现操纵任务:将状态空间编码为潜在特征表示,然后用中间特征解码驾驶策略。在城市驾驶的情况下,输入状态,即周围环境和自我状态,与视频游戏等常见的政策学习基准相比更加多样化和高维。因此,首先使用代理预训练任务来预训练网络的视觉编码器是有帮助的。这使得网络能够有效地提取对驾驶有用的信息,从而促进后续的策略解码阶段,同时满足所有端到端算法的内存和模型大小限制。此外,这可以提高 RL 方法的样本效率。
视觉抽象或表示学习的过程通常包含某些归纳偏差或先验信息。为了实现比原始图像更紧凑的表示,一些方法直接利用预训练分割网络中的语义分割掩模作为后续策略训练的输入表示。SESR更进一步,通过 VAE 将分割掩码编码为类解缠结表示。另外,预测的可供性指标,例如交通灯状态、速度、车道中心偏移、危险指标和与领先车辆的距离,被用作策略学习的表示。
在观察到分割或可供性作为表示可能会造成人类定义的瓶颈并导致有用信息的丢失后,一些人选择了预训练任务中的中间潜在特征作为有效的表示。ImageNet预训练模型的早期层可以作为有效的表示。采用通过语义分割和/或可供性预测等任务预先训练的潜在表示作为强化学习训练的输入,并取得优异的性能。比如,有在VAE中的潜在特征通过从分割的扩散边界和深度图获得的注意力图来增强,以突出重要区域。或者通过运动预测和深度估计以自我监督的方式在未标记的驾驶视频上学习有效的表示。也有利用一系列先前任务的数据来执行与任务相关的不同预测任务,以获得有用的表示。同时,潜在表示是通过近似来学习互模拟度量,由动态模型的奖励和输出的差异组成。除了这些带有监督预测的预训练任务之外,还采用了基于增强视图的无监督对比学习。进一步将转向角辨别添加到对比学习结构中。
由于当前的方法主要依赖于人类定义的预训练任务,因此学习到的表示不可避免地存在可能的信息瓶颈,并且可能包含与驾驶决策无关的冗余信息。因此,如何在表示学习过程中更好地提取驱动政策的关键信息仍然是一个悬而未决的问题。
4.3 世界模型和基于模型的强化学习
除了更好地抽象感知表示的能力之外,端到端模型对未来做出合理的预测以采取安全的操作也至关重要。在本节中,我们主要讨论当前基于模型的政策学习工作的挑战,其中世界模型为政策模型提供了明确的未来预测。
深度强化学习通常会面临样本复杂度高的挑战,这对于自动驾驶等任务来说尤其明显,因为样本空间很大。基于模型的强化学习(MBRL)通过允许代理与学习的世界模型而不是实际环境进行交互,为提高样本效率提供了一个有前途的方向。MBRL方法显式地对世界模型/环境模型进行建模,该模型由过渡动力学和奖励函数组成,并且代理可以以较低的成本与之交互。这对于自动驾驶特别有帮助,因为像 CARLA 这样的 3D 模拟器相对较慢。
对高度复杂和动态的驾驶环境进行建模是一项具有挑战性的任务。为了简化问题,假设世界是在轨道上的,将过渡动力学分解为非反应性世界模型和自车的简单运动学自行车模型。利用分解世界模型和奖励函数来丰富静态数据集的标签,通过动态编程优化更好的标签。概率序列潜在模型被用作世界模型来降低强化学习的样本复杂性。为了解决学习世界模型潜在的不准确性问题,使用多个世界模型的集合来提供不确定性评估。基于不确定性,世界模型和政策代理之间的想象推出可以相应地被截断和调整。受成功的 MBRL 模型 Dreamer的启发,ISO-Dream考虑环境中的非确定性因素,并将视觉动态解耦为可控和不可控状态。然后,策略在分离状态上进行训练,明确考虑不可控因素(例如其他智能体的运动)。
在原始图像空间中学习世界模型并不适合自动驾驶。预测图像中很容易错过重要的小细节,例如交通信号灯。为了解决这个问题,MILE将世界模型合并到 BEV 语义分割空间中。它将世界建模与模仿学习结合起来,采用Dreamer式的世界模型学习作为辅助任务。SEM2还扩展了 Dreamer 结构,但使用了 BEV 分割图,并使用 RL 进行训练。除了直接使用 MBRL 学习到的世界模型之外,DeRL 将无模型的行动者评论家框架与世界模型结合起来。具体来说,学习的世界模型提供了对当前行为的自我评估,它与评论家的状态值相结合,以更好地了解车辆的表现。
用于端到端自动驾驶的世界模型学习(MBRL)是一个新兴且有前途的方向,因为它大大降低了 RL 的样本复杂性,并且了解世界有助于驾驶。然而,由于驾驶环境高度复杂和动态,仍需要进一步研究来确定需要建模的内容以及如何有效地建模世界。
4.4 带有策略预测的多任务学习
多任务学习(MTL)涉及通过单独的分支/头基于共享表示联合执行多个相关任务。MTL 通过使用单个模型执行多个任务,显着降低了计算成本。此外,相关领域知识在共享模型内共享,并且可以更好地利用任务关系来提高模型的泛化能力和鲁棒性。因此,MTL非常适合端到端的自动驾驶,最终的政策预测需要对当前环境进行全面了解。
与需要密集预测的常见视觉任务相比,端到端自动驾驶预测稀疏信号。这里的稀疏监督给输入编码器提取有用信息以进行决策带来了挑战。对于图像输入,端到端自动驾驶模型中普遍采用语义分割和深度估计等辅助任务。语义分割确保模型获得对场景的高层次理解并识别不同类别的物体;深度估计使模型能够理解环境的 3D 几何形状,并更好地估计到关键物体的距离。通过执行这些任务,图像编码器可以更好地提取有用且有意义的特征表示,以供后续规划。除了透视图像上的辅助任务之外,3D 对象检测对于 LiDAR 编码器也很有用。
随着 BEV 成为自动驾驶的自然且流行的代表,高清地图映射和 BEV 分割等任务被包含在聚合 BEV 空间特征的模型中。此外,除了这些多任务视觉任务之外,还有针对预测视觉可供性,包括交通灯状态、到路口的距离以及到对面车道的距离等。
端到端自动驾驶的多任务学习已证明其在提高性能和提供自动驾驶模型的可解释性方面的有效性。然而,辅助任务的最佳组合以及其损失的适当权重以实现最佳性能仍有待探索。此外,构建具有多种类型的对齐和高质量注释的大规模数据集提出了重大挑战。
4.5 政策蒸馏
由于模仿学习或其主要子类别行为克隆只是模仿专家行为的监督学习,因此相应的方法通常遵循“师生”范式。教师(例如 CARLA 提供的手工制作的专家自动驾驶仪)可以访问周围智能体和地图元素的真实状态,而学生则通过收集的专家轨迹或仅使用原始传感器输入的控制信号来直接监督。这给学生模型带来了巨大的挑战,因为他们不仅必须提取感知特征,还必须从头开始学习驾驶策略。
为了解决上述困难,一些研究提出将学习过程分为两个阶段,即训练教师网络,然后将策略提炼为最终的学生网络。特别是,首先使用特权代理来学习如何直接访问环境状态。然后,他们让感觉运动代理(学生网络)密切模仿特权代理,并在输出阶段进行蒸馏。通过更紧凑的 BEV 表示作为特权代理的输入,它提供了比原始专家更强的泛化能力和监督。该过程如图 5 所示。LAV进一步赋予特权代理预测所有附近车辆轨迹的能力,并将这种能力提炼给使用视觉特征的学生网络。
图 4:政策蒸馏
(a)特权代理通过访问特权真实信息来学习稳健的策略。专家用虚线标记,表明如果特权代理通过 RL 进行训练,则不是强制性的。(b) 感觉运动智能体通过特征蒸馏和输出模仿来模仿特权智能体。
除了直接监督规划结果之外,一些工作还通过在特征级别提取知识来训练其预测模型。例如,FM-Net采用现成的网络,包括分割和光流模型,作为辅助教师来指导特征训练。尽管人们付出了大量的努力来设计更强大的专家并将知识从教师传授给不同级别的学生,但师生范式仍然存在提炼效率低下的问题。正如之前的所有作品所示,视觉运动网络与其特权代理相比表现出巨大的性能差距。例如,特权代理可以访问交通信号灯的真实状态,它们是图像中的小物体,对提取相应特征提出了挑战,这可能会导致学生的因果混乱。因此,如何从机器学习中的通用蒸馏方法中汲取更多灵感来缩小差距是值得探索的。
总结
我们首先讨论端到端自动驾驶系统的动机和路线图。端到端方法可以大致分为模仿学习和强化学习,我们对这些方法进行了简要回顾。我们涵盖闭环和开环评估的数据集和基准。我们总结了一系列关键挑战,包括可解释性、泛化、世界模型、因果混乱等。后续文章我们将接续本文进一步讨论端到端自动驾驶索要面临的一系列挑战。并重点分析其应该接受的未来趋势,帮助读者可以有效的整合数据引擎、大型基础模型和车辆到一切的最新发展。
-- END --
声明:内容源自焉知汽车,文中观点仅供分享交流,不代表本公众号立场,如涉及版权等问题,请您告知,将及时处理!