今年各家顶会接收列表放出来的时候,有个名字反复出现:某研究院自动驾驶团队。2025年这支团队一口气放出了十几篇高水平工作,覆盖端到端决策、世界模型、仿真评测、安全验证,圈内人调侃说他们把自动驾驶的每个环节都“卷”了一遍。这篇盘点想把这支团队这一年做的事情拆开讲清楚:他们到底在解决什么问题、用了什么思路、哪些成果可以直接借鉴。不管你是刚入门的研究生、正在选方向的工程师,还是关心自动驾驶落地的产品经理,这篇文章都值得花十分钟读完。
1. 年度工作全景:一个自动驾驶学术团队在忙什么
1.1 一个团队一年能产出多少:五条主线一次看清
先说结论,这支团队2025年的工作不是零散打点,而是沿着一条清晰的逻辑线铺开:数据从哪来、模型怎么学、验证怎么算。梳理下来大致有五条主线:
| 主线方向 | 代表问题 | 产出形态 |
|---|---|---|
| 端到端决策 | 传感器输入直接出控制指令,减少中间模块堆叠 | 学术论文 + 开源基线 |
| 世界模型与仿真 | 用生成式方法构造罕见路况,补齐穷举不完的场景 | 仿真平台 + 数据集 |
| 视觉-语言-动作融合 | 让模型理解“前方施工绕行”这类文字指令并执行 | 多模态模型与评测Benchmark |
| 安全评测体系 | 解决“平均指标好看、极端场景翻车”的评估失真问题 | 测试集构建方法与风险指标 |
| 高效部署 | 把大模型压缩到车载算力能跑的水平 | 轻量化结构 + 蒸馏工具链 |
单看任何一条线都不算稀奇,但把这五条线串起来,你会发现团队真正的野心:搭建一套从数据到部署的全链路自动驾驶研究闭环。学术界能做出这种体系感的团队不多,多数组是“深耕一个点”,能在多个点上同步推进且保持方法论一致的,确实值得认真研究。
1.2 从研究方向看团队的方法论底色
看团队的工作,我最大的感受是他们特别强调“问题定义”的准确性。用他们自己的话说,就是“先搞清楚你的模型在什么假设下成立”。比如做端到端决策,他们明确区分了两种能力:在分布内数据上学策略,和在分布外数据上做泛化。这两种能力对数据、模型结构、评测指标的要求完全不同,混在一起谈只能得出似是而非的结论。
这种思路直接影响了他们的实验设计。你会发现他们很多论文里都有一张“失效模式分析表”,专门列出模型会在什么情况下失效、失效的边界在哪里。相比之下,很多工作把注意力集中在刷高平均分上,对边界条件避而不谈。后者在学术上很容易写故事,但做产品落地的人一看就知道,真正卡住量产的不是平均性能,恰恰是那些没人说清楚的失效边界。团队愿意在这块下功夫,大概率是因为成员里既有纯学术背景的,也有从工业界回炉重造的,这个构成决定了他们不太愿意做自娱自乐的研究。
2. 端到端决策:从“模块拼装”到“单模型通吃”
2.1 为什么今年大家集体转向端到端
传统自动驾驶pipeline是感知、预测、规划、控制各自独立的“串联流水线”——前一级输出给后一级,中间靠人工定义接口。这套体系的优点是模块清晰、每个环节都能单独调试,缺点也很致命:信息在接口中不断丢失。举例来说,感知模块会把障碍物框成矩形,但矩形框丢掉了很多连续信息,比如一辆卡车实际的运动姿态、它轮子压过的路面边界。预测模块基于这种有损的输入做推理,规划模块再基于预测结果计算轨迹,到最后一步,误差早就累积到不可控的程度。
端到端模型试图绕过这个问题:传感器原始数据进,控制指令出,中间所有表示由网络自己学习。好处是信息损失最小化、联合优化全局一致性、开发周期缩短;代价是可解释性变差、调试困难、对数据质量极度敏感。团队2025年的工作正是在这个矛盾点上做文章。
2.2 团队拿出的方案:条件模仿学习与可微风险场
团队在端到端方向最有代表性的工作,可以概括为“带风险感知的条件决策模型”。它的核心设计分三层:
第一层是“环境嵌套编码”。把激光雷达点云投影成BEV特征,同时把高清地图信息叠加进去,形成带结构化先验的鸟瞰特征。这一步的意义是让模型天然知道“道路在哪里”,而不是纯粹从数据里猜。
第二层是“条件轨迹生成”。设计了一个基于条件变分自编码器的生成头,不是直接输出一条确定性轨迹,而是输出多条候选轨迹以及对应的置信度。这个设计很聪明:现实中驾驶本身就是多模态的,前方没车时可以直行也可以轻微变道,强行输出单条轨迹会逼着模型取平均值,结果就是一条哪边都不靠的轨迹。
第三层是“可微风险场校正”。对每条候选轨迹,计算它与周围障碍物的带权距离、碰撞时间、道路边界余量,组合成一个风险标量,再用softmax做风险加权。由于整个风险场计算过程是可微的,模型可以端到端训练,让轨迹生成器主动避开高风险区域。
这个架构用一句话总结:让模型先学会“想”出候选方案,再学会“挑”出安全方案,最后才谈得上踩油门打方向盘。
2.3 想复现端到端方案?先跨过这三道坎
第一道坎是数据。端到端模型动辄需要几十万甚至上百万个有效片段,而且每个片段需要包含完整的传感器原始数据与驾驶员动作。这意味着你要有一套可靠的数据采集车,GPS/IMU标定、相机与激光雷达时间同步、方向盘的转角扭矩记录,任何一环有偏差,训练出来的模型都有看不见的“暗伤”。
第二道坎是评测。端到端模型最容易被问的问题就是“你怎么知道它学对了”。团队的做法是叠加多维指标:闭环仿真里的任务完成率、开环条件下的轨迹偏差、人为设计的对抗场景通过率。单纯看其中任何一个指标都会被带偏,必须组合使用。
第三道坎是过拟合。端到端模型很容易把训练集的“捷径”记住,比如在某个路段看到特定颜色的车就踩刹车。对这个问题,团队的一个实操技巧是刻意在训练集中加入大量“硬负样本”——视觉上相似但行为完全不同的场景,逼模型学习真正的因果关联而不是表面相关性。这个方法听起来简单,真正做起来需要对数据分布有足够的敏感度。
3. 数据闭环与仿真:让模型见过没开过的路
3.1 仿真环境该怎么做才“可信”
自动驾驶行业常说一句话:路测是必要但不充分的验证手段。为了让车见过足够多的“没开过的路”,仿真平台就成了必需品。但很多仿真器做得“看起来逼真”,模型在里面表现很好,一上真车就崩。问题出在哪里?团队认为有三个关键一致性没有做好。
第一是传感器一致性。很多仿真器渲染的是“理想传感器”的输出,图像锐利、点云干净、无噪点。真实摄像头有运动模糊、镜头畸变、过曝和欠曝,激光雷达有回波噪声与丢点。如果模型在仿真里学到的特征分布和真实世界差得很远,迁移到真车时性能打折在所难免。团队在自建的仿真环境里专门做了一个“传感器退化模型”,给渲染图像加噪点、模糊、随机光照扰动,让模型学会在恶劣但真实的输入下做判断。
第二是物理一致性。车辆动力学模型太粗糙的话,仿真里能跑的轨迹在真车上根本执行不了。团队的做法是用真实车辆采集的转向、油门、制动响应曲线做动力学标定,而不是用理想化的自行车模型。
第三是交互一致性。仿真里的其他交通参与者必须是“活的”,会插队、会让行、会犯错误,而不是沿固定轨迹巡游。他们把真实路采数据里的驾驶员行为统计出来,构建了一个行为决策模型库,让虚拟交通体具备类似人类驾驶员的风险偏好分布。
3.2 自动标注与场景挖掘的实操流程
有了仿真平台,下一步就是怎么让它服务训练。团队实践下来比较可落地的一套流程是这样的:
真实道路采集原始数据,按触发策略保存片段。触发策略很关键,不能只看传感器数据突变,还要结合地图上下文,例如“前方有分流路口”“近期事故多发路段”“能见度下降”这些条件都值得触发采集。
利用预训练感知模型做自动粗标注,把2D检测框、深度估计、车道线结果先跑一遍。对置信度低的区域,引入人工复核。这里有个经验:人工复核不要看全部结果,只看模型“拿不准”的部分,能把人力成本压缩到原来的十分之一以下。
把标注数据和原始传感器包按场景切块入库,每一段打上场景标签。标签体系建议按“天气-光照-道路类型-动态障碍物行为”四层来建,宁可细一点也不要粗,后期检索的灵活性完全取决于标签粒度。
对稀缺场景做生成式扩充。把真实场景里的背景用神经辐射场或3D高斯泼溅重建出来,然后在上面叠加不同的天气、光照、车道线磨损状态。由于背景来自真实场景,保真度比纯手工建模高很多。
把扩充后的场景注入训练集,同时放进仿真平台做闭环测试。建议新注入的长尾数据占比控制在总训练集的10%到30%之间,太多会造成灾难性遗忘,太少则起不到增强效果。
这套流程落地后,团队报告的稀缺场景覆盖数量相比纯路采方案提升了一个数量级以上。核心不是某一项技术多先进,而是把采集、标注、生成、评测串成了一条流水线,让数据不再是“一次性资源”,而是可以持续再生的资产。
3.3 实操中的两个反直觉发现
第一个发现:仿真里的“简单场景”往往比“复杂场景”更值得做。团队早期把精力放在让仿真器复现极端复杂的立交桥场景上,后来发现大部分模型性能瓶颈反而出在普通场景的罕见组合上。比如一个晴天路口的后方车辆快速逼近、前车突然刹停、同时存在横穿行人,这种“三件事同时发生”的场景才是真正的高危组合。复杂场景只是把某个单一因素拉满,真实世界的高风险往往来自多个中等风险因素叠加。
第二个发现:仿真训练最怕分布不一致,而不是绝对精度不足。同样的模型,训练时用的虚拟图像和白天的真实图像各占一半,在夜晚路测的效果比单纯用夜间数据训练还好。因为虚拟图像提供了一种“结构化的先验”——道路几何、目标大小、相对速度这些信息在仿真里是绝对准确的,真实数据再帮模型校正纹理与光照分布。两者结合反而起到类似“课程学习”的效果,由易到难、由抽象到具体。
4. 评测与安全验证:防止“看起来很强,上路就翻车”
4.1 平均指标为什么不可信
现在很多自动驾驶团队汇报成绩时喜欢说“平均接管率每百公里0.5次”“平均碰撞率降低40%”。这些数字听着提气,但在安全工程里没太大意义。原因很简单:极端场景的发生频率极低,平均指标会被大量正常场景稀释。举个夸张的例子,如果一辆车在99.9%的场景里表现完美,但只要遇到逆光+横穿行人+路面湿滑就必然失控,平均碰撞率照样可以低到小数点后三位,可你敢坐这辆车吗?
团队在评测体系上花了大量篇幅做一件事:把测试场景按风险等级和发生概率分层,每一层单独算指标,而不是混在大池子里取平均。
4.2 分层评测体系的搭建思路
实践中最有参考价值的是下面这套分层评测框架:
| 层级 | 场景特点 | 建议指标 | 合格线参考 |
|---|---|---|---|
| L1 常规场景 | 天气良好、交通有序 | 任务完成率、乘坐舒适度 | ≥99.9% |
| L2 轻微扰动 | 小雨、轻度拥堵、车道缓变 | 平均决策时延、车道保持偏离度 | ≥99.5% |
| L3 高风险场景 | 暴雨、施工区、非机动车穿行 | 无碰撞率、安全边际余量 | ≥99.9%,且不允许“擦边过” |
| L4 对抗场景 | 传感器失效、恶意遮挡、极端交互 | 最小风险状态进入成功率 | 100%,一次失败即不达标 |
从这张表可以看出,L4层级的指标不是“好一点”的问题,而是“有没有资格上路”的门槛问题。团队特别强调“一次失败即不达标”的评判逻辑,因为对抗场景的目标就是逼迫系统进入最小风险状态,比如靠边停车或者减速到安全范围。如果在这类场景里失败,说明系统的安全兜底逻辑存在漏洞,靠提高平均分掩盖不了。
4.3 如何设计自己的测试集与门禁机制
如果你也想搭建一套类似的评测体系,按照团队的做法,只需要四步:
第一步,场景聚类与难度标定。从路采数据里按场景标签聚成簇,再用规则+人工共同标定每个簇的难度系数。这一步需要领域知识,但别完全依赖人工经验,可以结合数据分布密度做修正。
第二步,设定分层指标与最小通过率。按上面表格的结构,给每一层定硬指标。注意指标要可量化、可复现、不受随机种子影响。
第三步,构建回归测试集。把历史上导致系统发生严重错误的所有场景都锁进一个“回归测试集”,任何模型改动提交前必须跑一遍。团队踩过的坑是早期回归集太小,模型反复修改后在新场景上表现很好,但老问题悄悄复发。
第四步,把评测结果接入CI流程。模型训练的每一次提交都自动触发分层评测,产出报告单。报告单不只显示总通过率,还要显示每个失效场景的具体log,方便定位问题。团队后来甚至把报告单直接渲染成网页挂在内部看板上,成员每天上班第一件事就是看前一天夜间全量回归的结果。
这套体系最大的价值,不是某一层指标设计得多巧妙,而是把“安全问题”从灵机一动的直觉判断,变成了有边界的、可追踪的工程流程。
5. 从论文到开源:团队协作与沉淀的实操经验
5.1 代码开源与发布节奏怎么定
看团队的GitHub仓库和论文发布时间线,会发现一个很明显的规律:几乎每一篇论文发布时,对应的基础代码、预训练模型、Demo演示视频就同步放出来了。这个“论文即产品”的节奏在学术界并不普遍。很多团队发论文后代码要么“coming soon”拖半年,要么只给不可跑的断头代码。这支团队之所以能做到同步开源,背后有一整套协作规范:
代码评审走严格的双人复核制。每个PR必须有一个非作者成员做代码评审,重点看两处:数据读取路径是否与论文描述一致、随机种子和评测脚本是否完整。跑不通的代码算提交失败。
实验记录强制绑定。每一次实验必须记录随机种子、数据集版本、模型权重哈希、训练耗时,这些信息最终会汇总成一份“可复现清单”挂在每个版本的发布页面。这个习惯在早期看起来费工夫,但等到大规模调参时会省下无数互相扯皮的时间。
发布节奏采用“里程碑式”推进。每期工作不是一次性放出一大堆模型,而是每个月一个Release:月中旬放代码和轻量模型,月底放加大版模型和完整数据集。这种节奏方便社区用户逐步反馈问题,也避免了一股脑发布导致Issue爆炸。
5.2 学术写作与工程实现的平衡
学术团队最容易踩的坑是论文里吹得天花乱坠,代码里一堆硬编码和实验死角。团队的做法是把“可复现性”当成论文的一部分来写。他们在每篇论文里都有一节“实现的坑”,专门记录训练中遇到的反直觉现象。比如某次训练发现增大batch size会显著恶化轨迹平滑度,排查后确认是因为信息损失函数的值域被batch内平均所掩盖。这种记录看似零碎,但对复现者来说比任何超参数说明都管用。
工程和学术的另一个矛盾点是时间分配。团队的经验是给工程任务留出不低于40%的精力预算。具体到节奏上,论文实验全部做完、开始写作的那一刻,就同步启动代码整理和开源文档编写。写作与整理代码并行,看似拖慢了出稿速度,实际是在倒逼团队把逻辑理清——一个连代码都理不清的实验,论文逻辑往往也经不起推敲。
5.3 跟着这类团队学习:三类人可以怎么用这份成果
研究生阶段的新手,可以直接从他们的开源代码库起步。建议关注两个重点:数据处理pipeline和训练时的日志设计。数据处理里藏着大量对领域问题的理解,训练日志里包含调参时的权衡取舍,这两块比模型结构更值得精读。
工业界算法工程师,可以重点参考他们的评测体系。把分层评测的表格抄回去,对照自己项目的数据分布,先看有没有明显的层间失衡。大部分项目团队对安全性的讨论都停留在“加一些对抗样本训练”,远没有到分层构建验证体系的阶段。
准备创业或立项的同学,可以把团队的方向选择当作一份“行业路线图”来读。端到端、数据闭环、安全验证、高效部署这四个方向,未来三年会持续有需求,现在切入任何一个细分都没毛病。
6. 常见问题与避坑记录:从边缘到真实场景的实操汇总
6.1 仿真数据训练后,真实道路表现反而变差怎么办
这是最容易遇到的一个坑。仿真数据加入训练后,模型在闭环评测里表现提升,但一上真车就各种犹豫不决。团队排查后发现,问题出在传感器噪声分布不匹配——仿真器里加的噪声是独立的,真实传感器噪声则与车速、温度、路面材质相关。解决方法是把传感器退化模型换成“噪声注入网络”,用对抗训练的方式让仿真噪声逼近真实噪声分布。从这个案例可以得出一个教训:仿真训练的核心目标不是让模型适应仿真环境,而是让仿真环境主动向真实世界“对齐”。
6.2 端到端模型的“幻觉刹车”怎么排查
团队成员在一次路测中遇到一个诡异问题:车辆在空旷路段频繁轻微刹车,看起来就像在防备不存在的障碍物。第一反应是模型过拟合,看训练数据后发现,数据里确实存在大量“右前方有灌木丛但系统把灌木的影子误判为行人”的样本。模型学会了防灌木丛,但把这种反应泛化到了所有路边阴影。
排查流程分两步:先做注意力热力图,看模型在刹车时注意力集中在图像哪些区域;再做输入剪枝测试,把图像某个区域遮住看输出变化。定位到是阴影区域后,训练时对这类样本做标签修正,剪掉“误判阴影”的监督信号,问题才会消失。这种问题在纯开环评测里几乎发现不了,必须有闭环路测配合。
6.3 评测集扩充后,模型越改越差怎么处理
评测集越做越多,回归测试越来越长,这是好事,但也会带来一个麻烦:模型为了同时满足大量历史评测场景,被迫在参数空间里找“四处兼顾”的解,结果每一类场景都平庸。团队给出的应对策略是“分阶段微调+冻结骨干”:在主干模型不变的前提下,按场景类别训练多个“适配头”。这样新增评测场景时,只需在对应适配头上做增量更新,不会冲刷掉已经训练好的主干特征。
另一个经验是给回归测试集设置“有效期”。不是所有历史场景都值得永远跑,有些场景已经远低于当前模型能力上限,留在回归集里只会白白增加训练时间。团队的做法是每季度做一次难度重新评估,把过于简单或语义重复的场景移出回归集,挑选更有区分度的新场景替补。
6.4 学代码时最容易忽略的配置问题
如果你打算复现他们的工作,建议先完整读一遍仓库里的Dockerfile和requirements.txt。这个团队在环境一致性上做了大量功课,但同样存在依赖版本冲突的历史包袱。踩过最多的坑是CUDA、PyTorch和tensorrt版本不匹配,导致后端的模型转换工具跑不起来。团队在文档里也给了建议:训练阶段用PyTorch官方镜像,部署阶段用TensorRT专用的容器,不要在同一个环境里混装两套工具链。这个建议看起来简单,实际操作中能帮你省下不下十个调试夜。
写在最后
我个人观察了这支团队一整年的产出,最大的体会是:他们做的每件事都牢牢锁定“可落地”三个字。数据闭环、端到端决策、安全评测、开源工具链,没有一个是停留在PPT层面的概念,每一个都能直接拿去做实验、复现、训练和部署。如果你是刚刚进入这个领域的人,建议从他们的开源评测工具入手,先把自己手里的模型用这套标准打一遍分,你会发现大量之前完全没意识到的问题。如果要说有什么值得继续关注的方向,我觉得他们接下来大概率会在“多模态大模型驱动的驾驶决策”上继续加码,语言指令和驾驶行为的对齐问题,会是一个至少持续三年的研究热点。