自动驾驶一段式端到端:四个工程真问题与技术解法
从模块化流水线的结构性瓶颈出发,系统拆解端到端一段式自动驾驶落地的四个工程真问题:可解释性、长尾 OOD、奖励定义、训练稳定性,并以 SFT→RLHF→GRPO 训练范式作为解法主线,结合无保护左转场景做阶段对比。
自动驾驶一段式端到端:四个工程真问题与技术解法
一段式端到端把感知-预测-规划压进一个可微函数,消除了模块间的信息瓶颈;但代价以另一种形式出现——在「学会开」之后。
1. 背景:为什么是一段式
模块化自动驾驶通常组织为感知 → 预测 → 规划 → 控制的级联流水线,模块间通过检测框、占据栅格、轨迹点等人工接口传递信息。这种设计的工程收益是清晰的:各模块可独立开发、验证与替换,失效时易于在模块边界归因。
但级联结构存在两个结构性问题:
- 信息瓶颈:中间表征为适配接口而被压缩,下游模块无法访问上游的连续特征(如「该车辆正在加速」的隐式状态)。
- 目标错位:感知优化检测指标(mAP、召回),规划优化舒适度与安全性,缺乏一个对「最终驾驶质量」负责的统一目标;误差沿链路累积且无全局修正。
一段式端到端用一个策略网络替代整条链路:
其中 为时序传感器观测(多视角图像、LiDAR 点云、高精地图), 为规划轨迹或控制信号。以 UniAD、VAD 等为代表的工作将感知、预测、规划统一到共享的 Transformer 表征中,本质上是对「开得好」这一单一目标做端到端联合优化。
本文讨论一段式落地时的四个工程真问题:可解释性、长尾 OOD、奖励定义、训练稳定性,并以近期 VLA 模型的训练范式(基座 + SFT + RLHF + GRPO)作为解法主线。
2. 问题一:可解释性与失败归因
模块化系统的可解释性是接口级的:每个模块输出结构化中间结果,失效时可在模块边界定位(感知漏检 → 查感知;轨迹异常 → 查规划)。
一段式模型的决策路径是端到端的隐式映射,输入像素直接到轨迹。其可解释性降级为行为级:
- 当出现异常决策(如非预期转向),难以反推是由特定障碍物、光照条件还是模型策略偏好导致;
- 责任边界模糊,给法规符合性与安全论证(safety case)带来额外成本;
- 量产前的失效挖掘(failure mining)无法依赖「看框」,需要更系统的触发样本定位手段。
缓解方向包括:约束模型输出可解释的中间表征(occupancy、注意力热力图、语义子目标),在闭环仿真中回放以定位触发条件,以及影子模式(shadow mode)与人工驾驶并行采集差异样本。核心结论是:一段式将「接口可解释」替换为「行为可解释」,后者工程成本更高,但不可或缺。
3. 问题二:长尾与分布偏移(OOD)
端到端模型的性能上限由训练分布决定。真实驾驶的长尾场景(非常规博弈、施工区、极端天气、传感器异常)在数据采集中的占比极低,模型在分布外(OOD)输入上容易出现系统性失效。
模块化系统通常有规则层兜底(如感知失效时进入保守停车)。一段式一旦在 OOD 区域输出错误策略,失效是沿着整个链路传播的,缺乏显式安全阀。
这也解释了为何模仿学习(SFT)之后通常需要接对齐阶段:纯行为克隆只复现训练集分布,对未见过的高风险情形缺乏「更差」的显式认知,无法主动规避训练分布之外的危险。
工程补法:
- 大规模闭环仿真(CARLA、Waymax 等)与 NeRF / 合成数据生成长尾样本;
- 对抗式挖掘(adversarial mining)主动搜索模型弱点;
- 横向安全监督与 fallback 策略作为最后一层保障。
4. 问题三:奖励从何而来——从行为克隆到偏好对齐
SFT 在端到端驾驶中等价于行为克隆(Behavior Cloning):在专家演示数据集 上最大化专家动作的对数似然。
它解决了「基础驾驶能力」:遵循交通规则、跟车、车道保持。但其能力天花板来自三个已知局限:
- 暴露偏差(exposure bias):训练时以真值状态为条件,推理时以自身历史输出为条件,分布偏移随时刻累积;
- 保守倾向:为最小化损失,模型倾向于训练集中最「安全」的常见模式,表现为低通行效率;
- 单模态与拟人度不足:专家演示难以覆盖所有合理驾驶风格,输出不够平滑或不符合乘客预期。
「驾驶质量」本身是多目标属性:安全性、舒适性(横向 / 纵向加速度、jerk)、通行效率、规则符合性。这些无法由单一轨迹真值编码,因此需要 RLHF(基于人类偏好的强化学习) 将主观评价转化为可优化信号。
典型流程:
- 收集人类对模型输出的偏好标注(pairwise 比较或更细粒度打分);
- 训练奖励模型(Reward Model) 拟合人类偏好;
- 以 为信号做策略优化,最大化期望折扣奖励。
# 多目标奖励的常用加权形式
def reward(trajectory, scene):
r_safety = safety_score(trajectory, scene) # 碰撞风险、TTC 余量
r_comfort = comfort_score(trajectory) # 加速度、jerk 惩罚
r_effic = efficiency_score(trajectory, scene) # 通行效率、低速惩罚
return w_s * r_safety + w_c * r_comfort + w_e * r_effic
需注意**奖励黑客(reward hacking)**风险:若某一子目标(如效率)权重过高或奖励模型过拟合,策略可能以牺牲安全为代价刷高分。这是 RLHF 阶段的核心工程难点,通常通过奖励模型正则化、多目标约束与安全护栏缓解。
5. 问题四:强化学习如何稳定训练——GRPO
RLHF 的策略优化面临两类挑战:
- 连续动作空间(轨迹)下,模式坍塌(mode collapse) 风险高,策略易退化为局部低风险动作;
- 经典 PPO 需额外训练价值网络(Critic)估计优势函数,显存与算力近乎翻倍,且在高维连续空间中价值估计方差大。
GRPO(Group Relative Policy Optimization) 用组内相对基线替代 Critic:
对给定场景 ,从当前策略采样一组轨迹 ,计算各自奖励 ,用组内均值与标准差构造归一化优势:
# GRPO 组内优势估计(示意)
rewards = [reward(traj_i, scene) for traj_i in group] # G 条轨迹
mean_r = mean(rewards)
std_r = std(rewards) + 1e-6
advantages = [(r - mean_r) / std_r for r in rewards] # 组内相对优势
策略更新以相对优势为权重,无需价值网络。关键在于引入对参考策略 (通常为 SFT 模型)的 KL 约束,防止为追求奖励而偏离安全基线:
KL 项充当训练期的安全带:允许策略为更高奖励优化,但限制其偏离参考策略的幅度,从而在「提升驾驶质量」与「不破坏安全底线」之间取得平衡。对轨迹生成这类连续、高维、易学飞的任务,GRPO 在稳定性与样本效率上通常优于 PPO。
6. 场景分析:无保护左转
以城市道路无保护左转(对向直行车流、周边行人与非机动车)为例,观察不同训练阶段模型的行为差异:
| 阶段 | 模型行为特征 | 主要局限 |
|---|---|---|
| 基座(多模态大模型) | 融合多视角与地图,输出候选轨迹 | 未习得驾驶先验 |
| SFT | 习得跟车、让行、找空当 | 倾向过度保守,对向来车即长时停车,通行效率低 |
| RLHF | 在奖励信号下权衡安全与效率,缩短无效等待 | 依赖奖励模型质量,存在奖励黑客风险 |
| GRPO | 组内比较稳定收敛,KL 约束抑制危险偏移 | 需合理设置组大小与 |
该场景集中体现了前述问题:纯 SFT 的保守性(问题二 / 三)需通过对齐阶段纠正,而对齐阶段的稳定性(问题四)依赖 GRPO 的组内基线与 KL 约束。
7. 总结
一段式端到端解决了模块化的信息瓶颈与目标错位,但将工程代价转移到四个维度:
- 可解释性:从接口级降为行为级,归因与责任界定成本上升;
- 长尾 OOD:性能由训练分布决定,缺乏显式安全阀;
- 奖励定义:多目标驾驶质量需经 RLHF 转为可优化信号,且面临奖励黑客;
- 训练稳定性:连续动作空间易学飞,需 GRPO + KL 约束兜底。
SFT → RLHF → GRPO 这一范式,本质上回答同一问题:如何让一段式模型「具备基础驾驶能力」「对齐人类驾驶质量」且「训练稳定」。
开放问题仍多:当端到端模型引入显式推理(链式思考、世界模型),可解释性能否在工程上被重新找回?这留待后续讨论。