2024最新 | 探索自动驾驶端到端算法模型的鲁棒性研究
2024最新 | 探索自动驾驶端到端算法模型的鲁棒性研究
近年来,随着深度学习技术的快速发展,自动驾驶技术在当今社会变得越来越重要。传统的自动驾驶系统通常包括多个功能子模块,如感知、规划和控制等。然而,这种模块化设计可能会导致累计误差等问题。相比之下,端到端自动驾驶模型通过将原始传感器数据直接映射到驾驶决策上,大大简化了系统的部署和设计过程。然而,这类算法也面临着重大的安全挑战,特别是在复杂和动态的驾驶环境中。
研究背景与挑战
尽管端到端的算法模型展现出了出色的表现性能,但该类算法也面临着重大的安全挑战。复杂和动态的驾驶环境会给模型引入许多的不确定性,使得算法模型容易受到恶意的攻击。虽然目前已经有大量的研究工作集中在探讨自动驾驶系统中各个任务的鲁棒性,特别是感知任务,但这些研究工作更多强调了环境条件和对抗性输入等弱点,这些弱点可能会误导感知系统,从而进一步导致决策上的失误。
此外,尽管端到端自动驾驶模型展现出了卓越的性能、并且具有革命性的创新效果,但学者们对这类算法的鲁棒性研究却非常有限,目前还主要集中在基于回归的模型上,缺乏更全面的自然鲁棒性评估和闭环系统评估。
RobustE2E基准构建
针对上述提到的相关问题,研究团队构建了RobustE2E基准用于深入分析端到端自动驾驶对各种噪声干扰的鲁棒性。研究团队评估了五种传统的对抗性攻击,通过在白盒设置中在任务之间的接口处引入对抗性噪声来引入一种新颖的模块化攻击,并在两个具有代表性的端到端自动驾驶模型的黑盒设置中评估了四大类自然损坏(共17种类型,涵盖五个严重程度级别)。评估从开环模型级别扩展到闭环仿真环境和真实汽车,其中观察到了出现的规划错误。
研究结果表明,即使是最先进的端到端自动驾驶模型,在受到微小扰动的情况下,也会遭遇规划崩溃,其中感知任务的性能会经历最为显著的下降。同时,由于自动驾驶系统中各个子模块之间存在的错误累计效应,会进一步加剧其固有的脆弱性。
模块攻击方法
为了有效评估端到端自动驾驶模型的鲁棒性,研究团队设计了一种新颖的白盒对抗攻击方法,称之为模块攻击。研究团队在端到端的算法模型的管道中注入和优化噪声,具体细节如下:
模块噪声设计
研究团队从输入的原始图像开始,设计一组对抗噪声。噪声被策略性地注入到图像和潜在特征表示中,因此噪声注入的特征选择至关重要。研究团队在发生任务指定信息交换的接口处识别候选特征,即在模块交互接口处从上游模块流向下游模块的所有特征信息都包含在特征中。然后,研究团队通过在模型的计算图中追踪每个候选特征来确定需要扰动的特征集,该特征集合用表示。如果某个特征在后续阶段仍然相关,则将其包含在特征集合中。
研究团队设计了对抗性噪声模板来初始化每一批数据中的噪声,如下所示:
其中,代表张量模板函数用于生成与指定特征具有相同维度和形状的空张量,代表用于填充模板的均匀分布。这些模板是后续噪声初始化和更新的基础。
攻击策略
研究团队假设自动驾驶是一项复杂的智能任务,需要评估整个系统的稳定性,同时考虑每个子模块的漏洞。研究团队在噪声初始化、噪声传播和存储以及迭代更新等方面解释了设计的攻击策略。
研究团队按照模型的推理过程依次初始化每个阶段的噪声。对于集合中的属于阶段的所有特征,相应的对抗噪声模板为。研究团队将噪声模板投影到受特征扰动约束的中作为初始噪声,并聚合阶段的所有特征噪声以获得:
其中表示扩展后跨相关维度的串联操作,表示投影操作。在进行噪声的初始化之后,研究团队得到噪声存储集合。这些扰动在每个处理阶段被策略性地注入到潜在特征表示中。这个注入的过程可以用下面数学公式进行表示:
其中表示具有参数的第个子模块,表示的直接输入特征。模型的状态被统称为,捕捉注入噪声在多个阶段的累积影响。噪声在注入后,噪声将一直被存储直到整个自动驾驶任务完成。然后,研究团队在每个子任务之后制定攻击的目标函数:
其中,与任务的训练损失函数保持一致。为了优化对抗噪声,研究团队采用了基于梯度的方法用于最大化,同时确保不可感知性并且逃避检测机制。
其中表示扰动约束的超参数,同时表示迭代次数。这里,在更新之后,噪声也会被投射回相应特征噪声的中。在每次迭代的过程中,噪声都会传播,直到规划阶段结束并进行相应更新。然后将最终的噪声注入模型以完成模块攻击。
RobustE2E基准测试
研究团队提出了RobustE2E基准,这是一个在一致设置下的用于端到端自动驾驶的综合鲁棒性评估基准。RobustE2E基准为研究人员们提供了一个有价值的工具,可以帮助他们更深入地了解各种扰动对端到端自动驾驶鲁棒性的影响,同时有助于开发更为稳健的算法以及在现实场景中部署可靠、安全的自动驾驶模型。RobustE2E基准测试涵盖对抗稳健性和自然稳健性,考虑了2个端到端自主模型、6种渐进式对抗攻击方法和17种自然破坏类型,并包含闭环案例研究。整个测试基准的整体框架如下图所示:
RobustE2E测试基准整体框架图
鲁棒性评估方法
端到端的自动驾驶模型容易受到现实环境中各类噪声的干扰。研究团队将这些干扰分为对抗性攻击和自然破坏,并利用它们来全面评估端到端自动驾驶模型的稳健性。此外,研究团队还将评估扩展到闭环案例研究。
对抗攻击
为了衡量模型在最坏情况下的鲁棒性,研究团队使用6种白盒对抗攻击作为评估方法。具体来说,研究团队采用、、、、和模块攻击来生成对抗噪声。这些攻击方法的强度和目标各不相同,提供了更全面的评估标准。研究团队对上述六种攻击方法进行了调整,并在两种模型上实施了这些方法。前四种方法对视觉输入施加了轻微的扰动,而模块攻击则在模型推理过程的不同阶段注入了有针对性的噪声。由于没有针对中间特征扰动幅度的经验指导,研究团队选择应用与图像相同的扰动约束。
自然破坏
为了模拟自然破坏的影响,研究团队利用了17种不同的黑盒自然破坏。具体而言,自然破坏可以分为以下四类,同时每种类型的自然破坏的严重程度等级从1到5不等,总共有80种不同的设置方式:
- 噪声:例如高斯噪声、散粒噪声和脉冲噪声
- 模糊:例如玻璃模糊、散焦模糊、运动模糊和变焦模糊
- 天气:例如雾、霜、雪和雨
- 数字失真:例如溅射、对比度、亮度、饱和度、图像压缩和像素化
闭环案例研究
在闭环案例当中研究团队分别研究了模拟环境和实际环境,详细情况如下:
- 模拟环境中的闭环评估:在开环测试中无法衡量对抗性攻击对自动驾驶的系统性影响。因此,研究团队将对抗性攻击扩展到闭环模拟环境。模型的规划结果被转换成控制信号(油门、刹车、转向角),完成驾驶操作并影响模拟器的环境,从而创建一个闭环系统
- 现实世界中的闭环评估:研究团队使用基于英伟达Jetson Nano的自动驾驶汽车JetBot进行了闭环测试,用于展示对抗性噪声对真实自动驾驶系统的潜在危害。研究团队模拟了黑客渗透JetBot软件的场景,从而能够在软件层对端到端模型进行攻击。由于JetBot的硬件限制,研究团队使用了一个简单的端到端回归模型,该模型输出预期坐标,然后转换为车辆控制信号。研究团队进行了有针对性的攻击以模拟恶意劫持,使用输出坐标构建攻击的目标函数,用于向右偏差和加速攻击。
实验结果与评价指标
研究团队的鲁棒性评估实验是在nuScenes数据集上进行的,其中下图的表1和表2分别展示了UniAD和ST-P3算法模型在对抗性攻击和自然破坏下的主要评估结果
UniAD算法模型的鲁棒性评估结果
对于UniAD算法模型而言,跟踪任务的关键指标Amota从较高的平均值0.576大幅下降到0.148。虽然后续模块的性能也有所下降,但程度远小于跟踪模块。地图模块最为稳健,其中最重要的车道IOU指标平均仅下降了5.32%。运动和占用预测的误差较大,即使是出色的建图任务也无法弥补轨迹模块的脆弱性。由于感知和预测误差,最终的规划结果受到很大影响。攻击后,预测轨迹与实际预期轨迹之间的平均L2误差达到1.72米,而原来的为1.08米。在真实道路上,这个距离可能会引发严重的安全事故。
ST-P3算法模型的鲁棒性评估结果
ST-P3的子任务较少,但整体趋势还是比较相似的。感知层的IoU大幅下降了19.69%,最终导致规划L2误差从平均1.58m增加到2.88m。
对比分析
研究团队展示了注入噪声的算法模型和原始算法模型的性能对比。通过上图可以看出,自车的规划路线出现严重错误,例如急转弯导致侵占草坪。此外,该模型在各种任务中都会出错,例如遗漏周围的车辆并错误预测后方静止车辆的动作。
研究团队也在仿真环境中进行了闭环的实验。研究团队汇总了6次实验的平均结果,表明攻击后模型的性能指标从88.175下降到29.545,具体的实验结果如下图所示。
此外,研究团队展示了在模拟仿真环境中的短途路线上的实时噪声注入导致自我车辆在特定位置发生碰撞,并与正常驾驶的帧进行比较。在攻击过程中,车辆摇晃并最终向左转向,与迎面驶来的车辆迎头相撞。
研究团队人工构建了一个测试区域,用于进行真实世界鲁棒性的评估实验,该构建的测试区域包括一条大型外环路和中间的多个交叉路口和T型路口,道路上设有交通信号灯。研究团队在汽车上攻击预训练模型,随机选择汽车的起点,可视化的实验结果如下图所示。可以看出,由于研究团队的攻击,车辆在右转路口转向右侧树林区域。
结论
本文提出了一种针对端到端自动驾驶的新型对抗性攻击,同时构建了RobustE2E基准来评估端到端自动驾驶对各种噪声的鲁棒性。希望这项研究能够提高人们对端到端自动驾驶稳健性问题的认识,并为增强端到端自动驾驶的关键和敏感模块提供宝贵的指导,以促进其在现实世界中的部署。
