《战胜HSD的 可能还是 HSD》
————摸底HSD v2.0 有感[泪奔][泪奔]
前段时间深入体验了HSD最新的版本【V2.0】,如果用主观评价来,就是全方面的【夯】,热刀切黄油般的【爽】感
自带推背感的AD你见过? 油门到底的AD你见过?【后者开玩笑[yeah]】
世界模型和强化学习的直接作用让我们有理由相信,HSD V2.0 进入了端到端智驾的模型二阶段,这个意义可以直接相当于FSD V12到V13的跳跃。(不知道@地平线苏箐 有没有像Sam一样感受到原子弹爆炸,瘫坐椅子上 🐶)
⭐细分指标来看⭐
①:减少了端到端模型的延迟;
②:提升了模型整体的感知范围;
③:提高了模型整体输出的鲁棒性;
【这篇文章先不讲体验和功能的细节,用另一个视角试图探讨HSD v2.0如何让各个维度体验有显著提升的情况下,不出现端到端模型跷跷板的现象】
❓❓❓
这里就要去重新解释一下AD领域端到端模型是怎么训练的?或者简单说怎么才能训练出一个和人类驾驶一样兼顾驾驶效率和舒适性的VA的端到端模型❓
这里VA【视频数据进-控制信号出】的端到端模型大家已经很熟悉,甚至已经有很多头部驾驶辅助的玩家广泛的在使用各种参量尺寸的模型去控车。
但是目前VA模型存在的三个维度的不足仍然很难解决🤔:
Ⅰ:模型行车的居中性和稳定性;
Ⅱ:模型的近视眼情况【感知范围不够远】;
Ⅲ:模型遇到博弈可能存在撤回动作【无论是后处理还是模型本身的撤回动作】
那么HSD v2.0 是如何去解决ⅠⅡⅢ这三个不足点的呢?
这里给出的解法是⭐:
①:用世界模型生成高质量合成数据去弥补真实数据的不足;
②:用强化学习【RL】让模型在对齐人类优秀驾驶习惯的同时提升模型对自车对他车影响的闭环预测能力;
③:重构端到端模型降低模型延迟,提升反应速度【不愧是自研芯片,欸地平线其实是一个芯片公司[卡皮巴拉]】;
④:引入高维语言理解,提升模型“感知”范围;
📚好了我们铺垫完了,正文开始[不愧是你]
首先我们先建立起统一的认识:🤔
端到端模型【VA】,本质上是一个以视觉信号为主进,通过一个大的神经网络最后输出【轨迹、操作动作 etc..】,所以影响端到端模型的能力上限最本质的是高质量的数据集【这里我们经常说端到端模型是模仿式学习,也就是学习了大量真实、仿真生成的人类驾驶视频数据clips,然后模型慢慢习得了我们是怎么开车的】
而数据规模和数据质量都会严重的影响到模型的基础能力,这个无论是在学术圈还是工程圈都已经验证过了,甚至千万级Clips数据只要有几万数据漂移就会影响到模型整体的偏好。因此数据是非常重要的,但是随着驾驶车队数据的搜集,其实更多搜集到的还是正常开车的数据。如果我们在训练模型的时候,丢进去的只有正常开车的视频片段,模仿学习的模型是很难学到那些0.01%场景分布比例的长尾场景。
这里简单地说,端到端模型可以很好的预测、处理99%以上的场景,但是只用真实数据,很难实现99.99%【这里数据只是一个虚指】场景的优秀处理,而传统的解决方案可能会通过一个rule based 或者小模型的方式进行后处理。甚至有时候会有ADAS来兜底。
⭐所以,简单来说没有好的数据就没有好的端到端模型,那么HSD是如何做的?
①:因为HSD v1.6、和其他家的端到端方案已经验证了数据规模效应【Scaling Law】,那么后面其实要去覆盖的是长尾场景的高质量数据。HSD v2.0 在模型炼丹的过程中加入了大量由世界模型合成的高质量长尾场景数据去覆盖最后的0.01%。
这里,我有一个很直接推测🤔,苏箐总应该已经发现仅靠堆正常行车数据对于模型能力提升不明显了,相较于这个数据的匹配特别是那些长尾场景数据的加入是在v2.0 阶段更重要的点。
⭐那么,只有好的数据集【包括但不限于数据规模、质量和比例】就一定会有好的端到端模型么?
②:答案是否定的,炼过丹的小朋友都知道[哆啦A梦吃惊]。因为基于模仿学习的模型,先天就容易让输出的轨迹分布在趋于居中的分布【简单说,居中不变道就是一个统计最优解,而且训练数据里面也是变道场景少,直行场景多,剩下的损失函数之类的就暂不提】。而且因为是模仿学习【敲重点,模仿学习能更好的学会相关性,而很难学会因果性】。
所以,HSD v2.0 在模型训练的时候大幅度加入了RL【强化学习】这个处理。简单讲一下,RL就是设置好合适的奖励函数【比如说,学习如何进行安全的变道】。
简单解释一下RL 去学习一个安全变道能力【构建一个分层的奖励函数】:
第一层,安全的硬约束【不能碰撞】,要求所有情况下都要优先满足;
第二层,变道的目标任务,需要在限定时间内进入目标车道【开始变道给分,变道成果给很多奖励分】;
第三层,舒适和效率【保持合适的速度给奖励分,急加速急减速扣奖励分】
模型为了要拿到奖励函数最高的分数,通过一个个、一类一类场景考试的方式【RL】,就能逐步学习这类场景能力上的因果关系。
直观体验就是:HSD v2.0 在很多场景轨迹的稳定性有大幅度提升,该变道就变道、不该变道就不变道。而且从轨迹线观察,HSD v2.0 甚至能最远显示7秒左右的稳定轨迹线长度。
⭐:有了高质量数据集和RL,就有一个好的端到端模型了吗?答案还是否定的~因为这里还有两个物理维度的限制:Ⅰ:单车感知能力范围受限,Ⅱ:模型响应有延迟?【前面三和四我一起回答了~】
这里我分别从这两个角度去简单阐述一下:
Ⅰ:无论我们用激光雷达、摄像头还是其他传感器,都有单车的感知能力上限存在。比如说FSD用了“光子”进来提高感知的敏感度?HSD v2.0 现阶段引入了一个我期待很久,很难做但是终于做出来的功能。
VLM2.0,我们姑且称它是VLM2.0,HSD 现在可以直接去读导航的文本,我这里简单举个例子。我们人类开车 听到高德“前方右转,请走右侧两车道”,有脑子的大家都会优先去走右侧两车道,省的去路口“加塞”。
但是让VA的端到端模型去理解很难,因为从某些意义上说VA的模型只有“眼睛”没有“耳朵”呀,听不懂导航语音啊。
在这里v2.0通过重新训练了自带的VLM模型,引入了新的接口。让VLM去读导航的语言信息,比如说“前方拥堵建议走左侧两车道”,这个文本token 可以直接转成VA这个大的端到端模型能听懂的指令,进而直接提前进行高效的选道。
直观体验就是,我一听到高德和我说要变道,或者优选走哪个车道HSD v2.0 就马上触发开始准备往正确车道上“吸过去”,大大减少了复杂路口的困难“加塞”博弈。
这几天我反复测了,VLM2.0 这个正确率奇高无比【好奇这个多模态基模是怎么搞出来的,LLM幻觉不存在了吗hhh】
所以HSD V1.6 用VLM1.0 解决了潮汐、可变、公交车道等等需要用理解真实世界的特殊驾驶场景;而HSD v2.0 的VLM2.0 直接让模型去理解地图、导航,大大提升了模型的“感知”范围;
Ⅱ:就算我们的感知范围很远,如果我们模型反应很慢【启动LLM深度思考模式开车,那一定是天天撞车】,这也是为什么AD很难,因为反应要快要准。在这里HSD v2.0 做了很多家都不愿意做的事情。重构了部分代码,让整个模型延迟减少了20%以上。这个领域涉及到了我知识的盲区【客观承认自己的不足】,我用Kimi去研究了一下,kimi和我说主要得益于地平线自己就是芯片公司,通过自己的工具链去压榨J6P的性能贡献部分延迟缩短。
直观反馈就是:几乎每个红绿灯路口都能跟上甚至超过人类老司机的起步,然后绝大多数路况都能顶着限速跑。实际体验1小时的通勤道路甚至能快过高德预估时间❗❗❗然后遇到堵车经常能出现200米超3个车,那种“游刃有余,从从容容”的感觉来了原来“连滚带爬、跌跌撞撞”的感觉没了。
而且得益于,模型的低延迟,给动态博弈提供了更大的空间,见缝超车的能力重新回来了,现在HSD V2.0的效率简直就是V1.6的好几倍。
古法撰写,一下子写了这么多,而且是一气呵成【老编辑家的基本素养】,其实还是因为HSD v2.0优化是如此的精准。这里我重新捋一下,如何做好一个好的端到端模型?或者说如何做出来一个优秀的AI人类驾驶司机?
①:覆盖的场景要广;②反应要快;③:预测要远,理解因果;④:要有眼睛还要有耳朵【语言】;
HSD v2.0 :
Step1:用世界模型生成高质量长尾数据,覆盖更广的场景,给基础模型能力打好基地【成本最高、最难的基本功】
Step2:用RL让模型理解真实世界,明白交互因果,提升模型能力上限【极度依赖研发能力】
Step3:给端到端模型换一个新脑子【是芯片公司了不起啊,压榨J6P潜力+重构代码】
Step4:给端到端模型装眼睛和通识能力【VLM1.0 to VLM2.0 学会读懂地图】
HSD v2.0本质上其已经不是一个狭义的VA端到端模型范式,而是地平线在尝试先去理解“高质量人类”是怎么开车,然后再去训练一个超越“高质量人类”开车的全新的模型。
这也是我最后取得标题《战胜HSD的 可能还是 HSD》[捂嘴哭]@余凯_地平线民工
强,是真的强❗
润,也真TM润❗
试完HSD v2.0 的我瘫坐在了椅子上🐶
#地平线正式发布HSDV2.0##HSD新版本重构端到端上限#
