上周和一位做自动驾驶感知的朋友聊天,他提到一个很有意思的现象:团队花了大半年时间把模型精度做到了行业领先水平,但在真实路测中,系统还是会因为一些“非技术因素”出现误判——比如突然横穿马路的行人、不按常理出牌的司机,甚至是路边临时摆放的施工标志。这些场景在训练数据里要么没有,要么分布极不均衡。他的感慨是:“技术指标再漂亮,放到真实世界里还是得重新学做人。”
这让我想起华为智能汽车解决方案BU CEO靳玉志最近的一个判断:L3无法跳过,法律法规完善与用户适应都需要过程。这句话表面看是在说自动驾驶的演进路径,但背后其实指向一个更根本的问题:当我们谈论自动驾驶的“成熟”时,到底在谈论什么?是技术指标的突破,还是整个社会系统(包括技术、法规、用户习惯、基础设施)的协同进化?
从技术人的视角看,L3常常被误解为一个“过渡阶段”——既然L4/L5才是终极目标,为什么还要在L3上耗费精力?但如果你真正参与过自动驾驶系统的研发、测试或部署,就会明白L3的核心价值不在于它比L2“高级多少”,而在于它第一次明确划分了“机器负责”和“人负责”的边界。这个边界划分,恰恰是自动驾驶从实验室走向大规模商用的关键转折点。
1. 为什么L3不是“可跳过”的中间态?
很多人把自动驾驶等级简单理解为线性升级:L1辅助驾驶→L2部分自动化→L3有条件自动化→L4高度自动化→L5完全自动化。这种理解容易产生一个误区:既然最终目标是L4/L5,那么只要技术足够成熟,完全可以直接跳过L3。
但现实世界的技术落地,从来不是简单的版本迭代。L3的核心挑战不是技术难度比L2高多少,而是它引入了“责任切换”这个全新维度。在L2及以下级别,驾驶责任始终由人类驾驶员承担,系统只是辅助工具;到了L4/L5,责任完全由系统(或背后的运营方)承担。而L3处于一个模糊地带:系统在特定条件下全权负责驾驶,但在需要时要求人类接管。
这种责任切换背后是一系列复杂问题:
1.1 技术层面:接管请求的可靠性与时效性
L3系统必须在无法处理场景发生前,提前足够时间向人类发出接管请求。这个“足够时间”到底是3秒、5秒还是10秒?不同场景下是否一样?系统如何判断自己“即将无法处理”?这些问题的解决,需要感知、预测、决策模块的深度融合,而不仅仅是单个模块的性能提升。
更关键的是,接管请求的可靠性直接关系到生命安全。如果系统误判(该请求时未请求,或不该请求时频繁请求),会导致用户对系统失去信任,甚至引发危险。这种可靠性要求,远高于L2系统“提醒驾驶员注意”的级别。
1.2 人机交互层面:如何让用户“适度参与”但不“过度依赖”
L3系统要求用户在系统运行时保持“可接管状态”,但又不需持续监控道路。这种状态本身就很反人性——当你不需要专注做事时,自然容易分心;但突然要求你从放松状态瞬间切换到高度专注的驾驶状态,认知负荷极大。
好的L3系统需要设计一套完整的人机交互机制,让用户既能适度放松,又能快速进入状态。这涉及到交互界面、提醒方式、甚至座椅、方向盘等硬件的反馈设计。这些细节,只能在真实的L3使用场景中逐步优化,无法通过L2或L4的经验直接推导。
1.3 法律与保险层面:责任划分的空白地带
当前大多数国家和地区的道路交通法,是基于“人类驾驶员全程负责”的前提设计的。L3引入的“有条件责任转移”,在法律上存在大量空白:系统负责时发生事故,责任归谁?接管请求发出后人类未及时响应,责任如何划分?系统对“可处理范围”的判断错误导致事故,算技术缺陷还是使用不当?
这些问题的解决,需要技术方案、法律框架、保险产品的协同设计。而这一切,只能通过L3的实际部署来推动。跳过L3,意味着把这些复杂问题直接留给L4,反而会增加L4落地的法律风险。
2. L3是自动驾驶工程的“压力测试场”
从工程角度看,L3阶段暴露的问题,往往是L4系统必须解决但容易被忽视的“边界问题”。我们可以把L3看作一个高保真的测试环境,在这里,技术、用户、法规、基础设施之间的相互作用会以最真实的方式显现。
2.1 数据闭环的完整性验证
L3系统在运行中会遇到大量“边缘案例”(corner cases),这些案例是完善自动驾驶系统的宝贵资源。但如何快速识别、收集、标注、回流这些数据,形成有效的闭环,是更大的挑战。
举个例子,系统在雨天夜晚误判了一个穿深色衣服的行人,这个案例被记录后,需要经过以下流程才能转化为系统改进:
- 场景识别与数据提取(哪些传感器数据相关?)
- 根本原因分析(是感知漏检?预测错误?还是决策保守?)
- 数据标注(需要标注到什么粒度?)
- 模型重新训练与验证
- 更新部署与效果追踪
这个闭环的效率和可靠性,直接决定了系统迭代的速度。L3阶段因为有人类驾驶员作为“安全备份”,可以更大胆地测试这个闭环的各个节点,为L4阶段完全无人值守时的快速迭代积累经验。
2.2 系统安全性的真实检验
理论上,我们可以通过模拟测试、封闭场地测试验证系统的安全性。但现实世界的复杂程度永远超乎想象。L3阶段允许系统在真实道路环境中运行,同时保留人类监督,这种“半开放”的测试模式,能够在控制风险的前提下,收集到最真实的系统表现数据。
特别是那些低概率高风险事件(比如前车掉落异物、道路突然施工、恶劣天气叠加复杂交通流),在模拟测试中很难完整复现,但在真实路测中迟早会遇到。L3阶段遇到这类事件,人类驾驶员可以及时干预避免事故,同时记录下系统的处理过程,为后续优化提供依据。
2.3 用户接受度的逐步培养
用户对自动驾驶的信任不是一蹴而就的,需要循序渐进地建立。L2系统让用户习惯了辅助驾驶功能,L3则进一步培养用户对系统主导驾驶的信任。这个过程中,用户会逐渐理解自动驾驶系统的能力和限制,学会如何与系统协作。
如果直接从L2跳到L4,用户可能因为缺乏过渡经验而对系统产生误解:要么过度信任导致危险,要么完全不信任使系统价值无法发挥。L3作为一个中间阶段,正好提供了必要的适应期。
3. 从L3到L4:关键瓶颈不在技术指标,而在工程可靠性
当我们讨论L4落地时,常常聚焦于技术指标:感知精度达到多少、预测准确率多高、决策是否最优。但这些指标都是在特定数据集或模拟环境下的表现。真正的挑战在于,系统能否在连续运行数万小时、遭遇无数边缘案例后,依然保持稳定可靠。
3.1 长尾问题的量化管理
自动驾驶领域著名的“长尾问题”指的是,虽然大部分驾驶场景相对简单,但那些罕见却危险的场景(长尾)才是决定系统安全性的关键。L3阶段的核心任务之一,就是将这些长尾问题从“未知的未知”变为“已知的未知”,进而转化为“已知的已解”。
具体来说,需要建立一套机制:
- 持续收集真实路测中的边缘案例
- 对案例进行聚类分析,识别出高频边缘场景
- 针对这些场景设计专门的测试用例和解决方案
- 建立度量体系,跟踪长尾问题的解决进度
这个过程本质上是将安全性问题工程化、量化管理。没有L3阶段的大规模路测数据,很难准确评估L4系统还需要解决多少长尾问题。
3.2 失效安全机制的成熟度
L4系统必须能够在任何情况下保证安全,包括系统部分失效的场景。这意味着需要多层冗余设计:传感器冗余、计算单元冗余、电源冗余、通信冗余等。但这些冗余机制如何设计、如何测试、如何验证,需要大量实践经验。
L3系统因为有人类驾驶员作为最终备份,可以逐步验证这些冗余机制的有效性。例如,可以故意模拟某些传感器失效,观察系统如何降级运行,人类如何接管。这些经验对设计真正的L4失效安全机制至关重要。
3.3 OTA更新与版本管理的可靠性
L4系统需要支持大规模、高频率的OTA更新,以快速修复问题、提升能力。但车辆更新与手机更新有本质区别:更新失败或新版本引入严重bug可能导致生命安全风险。因此,需要建立极其严格的测试、灰度发布、回滚机制。
L3阶段是建立这套机制的最佳时机。在保留人类监督的前提下,可以尝试不同的更新策略,观察用户接受度,验证回滚机制的有效性。这些经验对于L4阶段实现“更新不影响安全”的目标不可或缺。
4. 给技术人的实践建议:如何为L3/L4时代做准备?
无论你是算法工程师、软件开发者、测试工程师还是产品经理,自动驾驶技术的演进都会直接影响你的工作方式。以下是一些具体建议:
4.1 算法工程师:从模块优化到系统思维
传统算法研发往往聚焦于单一模块的性能提升:感知模块的mAP越高越好,预测模块的准确率越高越好。但在L3/L4系统中,模块之间的相互影响更为关键。
建议在实践中:
- 多关注模块接口的设计,而不仅仅是模块内部算法
- 参与系统集成测试,了解你的模块在完整系统中的表现
- 学习如何分析复杂场景下的系统级问题,而不仅仅是模块级指标
- 重视可解释性,你的算法决策需要能够向其他模块、甚至向人类驾驶员解释
4.2 软件开发者:重视安全性与可靠性编码
自动驾驶软件对可靠性要求极高,传统的“快速迭代、线上修复”模式不再适用。需要建立新的开发习惯:
- 严格遵循功能安全标准(如ISO 26262)的编码规范
- 重视代码覆盖率测试,特别是边界条件测试
- 学习设计模式下的安全机制(如监控进程、心跳检测、安全状态)
- 参与代码审查时,特别关注异常处理和数据一致性
4.3 测试工程师:构建多层次的验证体系
自动驾驶系统的测试不能依赖单一方法,需要构建模拟测试、硬件在环、封闭场地、真实路测的多层次验证体系。
具体可以:
- 建立基于场景的测试方法论,而不仅仅是功能点测试
- 学习如何设计有效的边缘案例测试用例
- 参与数据闭环建设,帮助团队从路测问题反推测试缺口
- 关注系统性能的长期稳定性,而不仅仅是单次测试结果
4.4 产品经理:平衡技术能力与用户价值
在L3/L4产品定义中,最难的是准确把握技术能力边界,并在此基础上设计有价值的用户功能。
建议:
- 深度参与技术方案讨论,真正理解系统的能力和限制
- 多观察真实用户使用行为,而仅仅依赖市场调研
- 在设计功能时充分考虑退化场景(系统能力下降时如何保证安全)
- 建立合理的用户期望,避免过度承诺导致信任危机
5. 回归本质:自动驾驶是技术,更是社会技术系统
靳玉志说“L3无法跳过”,其实是在提醒我们:自动驾驶的真正挑战不在单一技术点上的突破,而在如何让技术融入现有的社会系统。这个融入过程需要时间,需要迭代,需要各方面的协同进化。
作为技术人员,我们容易陷入技术细节,追求更高的精度、更快的速度、更优的算法。但这些技术指标最终要服务于一个目标:让自动驾驶安全、平滑地成为人类出行的一部分。L3阶段的价值,就在于它提供了一个真实的“融合试验场”,在这里,技术、人、法规、基础设施可以相互磨合,逐步找到平衡点。
下次当你调试一个感知模型或设计一个决策算法时,不妨多想一步:这个改进在真实的L3场景中会如何表现?用户会如何理解系统的行为?如果系统判断错误,接管过程是否顺畅?这种系统级的思考,或许比单纯追求技术指标更有长期价值。
毕竟,最好的技术不是最先进的技术,而是最能融入人类生活的技术。