作者 | EatElephant,编辑 | 朱世耘
3月中旬,疫情过后终于第一次有机会回到硅谷,并如愿以偿亲身体验了FSD。这一时机的微妙之处在于,我在硅谷的一周正好是FSD V12逐步推送的一周,因此我可以说是刚刚好站在了自动驾驶技术承前启后的节点上,同时体验了V11最后的版本V11.4.9和V12最新发布版本V12.3。
作为极少数既体验过Tesla FSD V11和V12,又体验过国内大量高速,城区,泊车辅助驾驶系统的行业从业者,希望结合V12的测试体验和与V11对比,谈一谈对端到端技术的认知和理解,以及为什么端到端代表着自动驾驶技术的未来。
01、实测特斯拉FSD V12:丝滑、拟人,还有些“聪明”
我在到达硅谷前就往上预订了一辆配备有FSD V11.4.9的Model 3长续航版本。然而由于当时V12还只推送了大概1%左右的美国FSD用户,所以体验V12并不容易。我一直在通过各种互联网和朋友去找借测V12的机会,后来通过互联网和朋友的联系终于在两辆不同的车上亲身体验了V12。
总体来说,一周时间我体验了5辆不同的配备有FSD的车辆,包括在3辆不同的车上体验了V11版本;两辆车上体验了V12版本。后者包括一辆装备HW 4.0的Model Y和一辆装备HW 3.0的Model 3。
V12的体验主要在San Jose市(圣荷西,加州南部城市)进行的,体验了4-5个小时。期间包括:非常接近国内城市市中心的复杂路段;多岔路的机场路,人车混杂和并且有较高的异形减速带;Target和Costco繁忙的停车场,大量车辆与行人需要FSD进行交互;硅谷晚高峰上下高速,超级多车道需要排队、变道,通过立交桥下巨大路口等等。整体感受上,无论是转向控制,还是与其他交通参与者的交流、长尾问题处理等,都非常丝滑、很“像人”。当然,它也有些不够完美的地方。
1、V12的速度与转向控制
V12和V11相比,最显著的提升就是速度和转向控制非常的丝滑平顺。即使是坐在后排,在红绿灯启停以及路口转弯过程中几乎都感觉不到任何顿挫。在速度控制上V12新增的Auto Speed模式使得FSD在速度控制上更加拟人,特别是在繁忙的城市路段使用Auto Speed与使用设定最高限速的模式相比可以获得相对更好的体验。不过V12.3在很多情况下给人感觉速度偏慢,这对于一些习惯快速驾驶的司机或乘客可能会不习惯。与之相比,V11在速度控制上还较为生硬,一旦有机会便会尽可能迅速加速达到设定限速,给人感觉略微机械。特别是在一些社区小路,窄路以及恶劣天气下,这种生硬的速度控制有时候会让即使是我这样有着丰富自动驾驶功能测试经验的从业者也感到一丝丝惊慌感。
2、路上与其他参与者交互
随着体验的渐渐深入就会发现V12采用的端到端训练方法使得V12在一些难以明确用规则描述的场景细节处理上取得了巨大的进步。例如绕行的时机与幅度,是否减速让行以及减速的具体程度等等细节,整体驾驶体验非常拟人,流畅自然。在遇到路边闪双闪的Amazon送货卡车时,V12能够毫不犹豫地判断出对向无车,借道绕行,整个过程流畅自然,毫不迟疑;面对右前方的骑行人的场景,V11会对骑行人过度小心,规划出一条非常离谱的大幅绕行路线。而V12在面对类似情况的时候显然更加从容淡定,绕行幅度非常接近人类驾驶员的选择,速度控制和果断程度也非常合理,并没有异常急刹的情况出现;在直行遇到前方远处左转的车辆时,V11的反应是明显减速。虽然规避了碰撞风险,但是减速幅度很大,有明显顿挫感,会给乘客造成不舒适感觉,还增大了被后车追尾风险。而V12在遇到类似状况时候似乎能够准确判断出前方车辆线路和速度,以一个非常合适的减速让车上乘客几乎无感的同时又留出了足够的安全冗余空间。
在Stanford(斯坦福大学)附近,V11对骑行人过分小心,在红绿灯路口规划了非常诡异的绕行路线,最终导致侵占左侧车空间接管。
3、V12如何掉头、过环岛
此外,V12相对V11还增加了很多新的能力,例如掉头、靠边停车、泊入车位等等,在我亲身体验中就经历了4次掉头,三次成功的靠边停车。
另外V12在环岛和停车场的处理上也比V11要有了显著的提升。环岛前让车与否的决策更加果断,在停车场中与行人的交互变得十分流畅安全,几乎不会有异常状态引起行人异样的反应。甚至有一次在Target停车场,一位行人从我左侧A柱穿行,在我还没有注意到她的情况下,V12就柔和减速完成了一个完美的让行。
美国有很多横向穿行速度较快的无保护转弯,依据美国交通习惯转弯车辆要尽量不影响到高速行驶的其他车辆完成转弯,甚至导致穿行车辆稍微减速的行为也会被鸣笛警告。因此无保护转弯时机的选择就非常重要,也对自动驾驶系统感知距离有着非常严格要求。
在这点上,至少我的几次体验V12表现都比较成功,能够耐心等待时机,并且速度控制也较V11更为优秀。有时候能够不完全刹停,保持蠕行,还能较早进行预加速,保持通行高效。
4、视觉的测距能力
国内一些车企由于配置了前向激光雷达,对尺寸的测量非常精准,在狭窄状态下通行能力十分强悍,甚至超过普通人类司机。这次V12体验中也遇到了美国城市里比较常见的路边停车导致道路过窄,但V12非常果断的从狭窄的道路上和对向会车通过。这一点之前在V11的测试视频里就有发现,所以可能并不算是提升,但是实际体验的时候还是非常惊艳。特别是,考虑到了FSD是纯视觉,对尺寸的把握是纯视觉的弱项,能做到这样窄路果断通行十分不易,而端到端训练至少保持了这样的能力,甚至在通行决策和速度控制上比V11更加优秀一点。
5、长尾场景处理
在长尾Corner Case的处理上V12也有着非常优秀的表现。在San Jose市中心测试过程曾遇到一位将椅子放在滑板上在路中间前后穿行的小哥。FSD准确识别到他的存在并且平稳地减速避免了与其进行近距离交互,最终这个小哥被附近的警车注意到,驱离了路面;测试中还有遇到自车车道有纸壳箱子、轮胎碎片等异形障碍物的场景,这些障碍物车机都没有显示检测结果或者只以Occupancy的形式显示。
但是实际行驶中V12都能够顺利小幅偏移绕行了障碍物,没有发生刮蹭磕碰;最后一段测试由于是在San Jose晚高峰,车流非常密集,高速岔路上也启用了流量控制信号等。这类信号灯是我第一次见到,他们分别有三个红绿灯控制三条汇入车道,三个红绿灯亮暗并不同步,而是根据主路车流情况分别控制红绿。而V12同样可以理解三个红绿灯分别控制的车道,在自己车道红灯时等待,变绿后立即加速汇入主路,毫无迟疑。这说明V12虽然是端到端系统,但对于红绿灯的理解非常细节,可以理解分时控制的灯以及他们控制的具体车道关系并正确应对。
6、V12开始智慧涌现?
上面的情况都证明着FSD V12是一个能力非常强的自动驾驶系统,然而更令人惊讶的是V12一定程度地展现了我认为接近智慧涌现的一些现象。这是让我感觉到V12的广泛发布可能成为自动驾驶的“ChatGPT时刻”的一个重要原因。我们在测试过程中,导航规划了一个路口前掉头的导航路线,中间是一个很宽的Suicide Lane(两个方向左转车辆都会进入的车道)车流密集,且V12目前还不能使用倒车档完成三点掉头,所以在路中间完成掉头十分困难。
试驾时的suiside lane,蓝色为导航路线,绿色为V12自主变动的路线就在接近导航路线给出的掉头位置附近,我们车上的乘客都在等待V12是否能完成这个十分困难的掉头的时候。V12发现了道路右侧有一个很小的路边停车场,他果断违背了导航路线,右转进入停车场之后左转绕出,打算通过右转加左转来代替一个标准掉头动作。虽然最后在停车场出口处V12因为某种原因系统提示接管(后猜测有可能是在停车场出口Suicide Lane是双实线,导致系统觉得无法合法完成动作报接管,这也是我在整个V12体验过程中唯一一次系统原因报接管)。
其实之前早在V12.2的早期版本就有过类似情况,不过亲身经历了这样的驾驶小聪明还是非常的惊喜,也说明了此类情况在如今的V12上已经不是小概率事件。对于目前主流自动驾驶技术来讲,沿着导航路线行驶无疑是规控模块的最主要目标,自行偏离导航的行为几乎不可接受。
然而如果我们从第一性原理上来理解这个情况就会觉得非常合理,老马说过“Physics is the law,everything else is a recommendation(物理学就是定律,其他都是建议)”。V12.2抛开导航抄近路左转,来自X对于驾驶任务来讲,显然行人、车辆、路障、道路边缘这些绝对不该碰撞的物理实体显然就是律法,不可违背。然而导航信息也只是引导你到达目的地的一种提示信息而已,安全到达目的地是第一目标,navigation也只是个recommendation,自然也可以背离导航路线,特别是导航绕远甚至出错的情况下。
7、V12测试总结
当然FSD V12虽然功能十分强大,但还远不是完美的。我的最后一次V12测试大概持续了1小时50分钟左右,由于全程坐在后座,对V12的情况做了更详细的统计。
最终结果如下,除开一些人为原因的接管(如更换目的地等),一共大概有5次接管:1.到达机场靠边停车后继续行驶,有碰撞路边缘风险接管;2. Costco小环岛,车流非常密集,有一辆车辆没有让行环岛内车流,将头探进了环岛,虽然左侧有足够空间,V12并没有表现出足够明确的绕行意图,有碰撞风险,接管;3.前方跟车掉头,前车开始时想左转进入车库,后犹豫改为掉头,V12跟车受到影响,路线不佳,转到了比较接近路边缘的地方,转弯半径不够了,由于无法倒车,无法通过,人工接管;4.掉头改右转进入停车场后左转出来的case,系统报接管;5.Costco停车场,没有到达右转路口,过早右转,犹豫,有撞路沿的趋势,接管。但需要说明的是,整个驾驶体验处于San Jose晚高峰,车流量很大(可能还是达不到国内晚高峰程度),而且刻意找了很多相对困难场景进行测试,所以正常驾驶状态接管率应该会比这更低。总的来说,V12通过端到端训练学习到了非常拟人的驾驶行为,使得其驾驶决策更加合理,符合人类预期。这种符合预期长期来看会给使用者建立起来非常大的对系统的信心,减少了由于谨慎和不信任造成的接管,也有助于让更多大众而不只是偏极客属性的Early Adopter去接受FSD,这对于FSD的普及有着非常重要的意义。当然,也可以看到,虽然V12整体上在功能,体验,拟人性,甚至驾驶智慧上都有了长足的进步,但是由于有些策略更加激进,所以安全的接管也还是不少。随着FSD功能逐渐完善,性能逐渐提升,接下去很可能Tesla自动驾驶的最主要攻关难题就会变成对接管,特别是安全接管的持续打磨优化上了。
02、端到端的系统为什么是自动驾驶技术的未来?
尽管有瑕疵,以及会遇到一些系统无法完美处理的情况,但整体上来看,用户对V12的反馈是十分正面的。Tesla FSD自从2020年10月推送用户以来,一直代表着自动驾驶技术的最前沿,问世之初这种不依赖激光雷达和高精地图,真正的哪里都能开的自动驾驶功能甚至对于行业内的从业者来说都有点匪夷所思。
接下来2021、2022两年,Tesla通过AI Day公布了大量FSD的技术方案,几乎是传道般带火了如今在量产自动驾驶行业里被大家奉为圭臬的数据闭环、共享主干的多头网络、BEV感知,乃至后续的占据网络Occupancy Network。
然而,虽然技术方案领先行业三年以上,但是V12前一直为大家诟病的是:虽然有持续不断的版本更新,每个版本都有详细的Release Note列举该版本更新的重要技术提升,然而用户对FSD的进步体感上却远不如大家预期的明显。但到了V12阶段,这个状况改变。V12号称从相机Photon In,最终决策控制Control Out,但是Release Note却只有短短的几行而已,其中最关键的一句还是V12去掉了FSD传家的30w行C++代码,转而用一个端到端的神经网络模型作为替代。为什么转变为端到端模型的体系,去掉了大量的高质量代码,反而V12性能相比V11产生了巨大的飞跃呢,难道真如老马一贯的理念所说Best part is no part,实际上Best code is no code?
FSD V12版本将城市驾驶技术栈改为端到端训练的神经网络,从而替换掉30w行C++代码相信很多人对神经网络的可解释性、可靠性一直存在怀疑。这无可厚非,毕竟神经网络具体如何工作是设计者也无法透彻了解的。但事实是,自2012年Alexnet将基于人工神经网络的深度学习方法带入公众的焦点之后,渐渐地无论计算机视觉、自然语言处理,甚至AI作为一个整体,几乎全部令人兴奋的成果都来自于数据驱动的神经网络模型。现如今基于数据驱动的大语言模型和以Diffusion Model、Sora为代表的生成式AI效果和能力有多么惊人相信我也无需加以赘述了。
而针对神经网络可控性,安全性为中心人们也在不停地摸索一系列数据驱动的最佳实践方法。因此稍微从宏观一点的视角就能发现,数据驱动的纯粹的端到端技术范式正在不断占领传统代码的生存空间。而这种新的技术范式的出现也成为了AI得以高速发展的关键,可能早晚你都要相信,根据Karpathy软件2.0的理论,是的,“Best code actually is no code”。对不起各位程序员同行,神经网络参数构成的代码确实比我们能够写出更好的代码。从这个角度看,Tesla V12选择全面拥抱数据驱动和端多端的训练,并取得非常显著的性能提升,这一切事实也就不那么让人惊讶了。
实际上Tesla一直在提升其自动驾驶技术栈中端到端的“纯度”。
V10.9后Tesla就将车道线感知的后处理部分代码去掉,改为由模型直接输出车道线实例;而根据AI Day分享的技术方案细节,在传统中由C++编写的规则为主导的规划控制模块中,Tesla也早已经混入了大量Learning Based候选轨迹生成和基于神经网络的决策规划reward model。然而虽然Tesla三年来一直在努力迭代自己的技术方案,虽然Elon一次又一次地宣传某某版本的FSD又引入了多么重大的革新,因此是一个多么革命性的版本,用户对性能提升的体感却一直不明显。
究其原因正是因为Tesla很多技术的迭代更新都针对的是整个技术栈的中上游,即感知、预测等环节。最后最影响用户体感的还是与控制行车功能的决策规划模块,而无论混合了多少数据驱动的端到端元素,这个模块在V12以前还一直是以规则为主的C++代码所主宰。
而当智驾场景越来越复杂,真实世界的情况越来越多变,无论有多少坐在办公室里的顶尖程序员,传统软件规则的复杂度上来后,维护和提升这块代码的综合性能将变得越来越缓慢而昂贵。然而当V12打通了自动驾驶技术栈的最后一个环节,使得整个系统端到端可导,与人类驾驶行为的哪怕一丁点微小误差也会通过梯度反向传播一直传递到整个系统的每一个上游环节,让他们进行自我迭代优化,从而最终使得系统输出的驾驶行为更加拟人,更加自然。而如果把之前通过对上游模块的优化提升用户体验比作隔靴搔痒,那这种对输出端信号的直接优化就毫无疑问达到了直击用户体验灵魂的效果,这样看来V12体验相比之前版本的跨越式提升就变得那么的合理了。除此之外正如通过纯粹的端到端数据驱动诞生了ChatGPT这样让我们第一次感受到了“智能”以及AGI似乎并不那么的遥不可及的产品,那么V12之于自动驾驶我认为可以相当于GPT3甚至GPT3.5之于自然语言处理,它让我第一次感觉了自动驾驶系统也可以正如偏离导航的case中体现的那样聪明,灵活。ChatGPT可以很轻松的通过过去一直被认为不可逾越的图灵测试,然而我们如果有一个驾驶方面的图灵测试,即仅仅通过驾乘感受,乘客几乎无法分辨出到底是AI在开车还是人类司机,那么我认为V12已经很有可能通过这样的驾驶图灵测试了。
03、对FSD后续迭代的一点期待
一个人对V12的体验评价好坏在于其是否享受了技术带来的便利,然而从更宏观的维度上来看,用户整体的体验评价才能更好反映技术本身。那么V12到底是不是真的相对之前的版本产生了巨大的进步呢?我们一起来看看数据统计怎么说。根据Tesla FSD Tracker的统计数字(来自于FSD用户主动上传申报):
各个版本与地点相关的持续性问题的统计数字相比之前版本,V12.3版本在城市每次关键接管前行驶里程这项关键数据上提升巨大。无关键接管行驶里程从大约100多英里提升到了386.7英里。而每个版本与地点相关的持续性问题统计上,12.3.1目前只有4个问题(之前刚发布后的相当长一段时间里这个数字甚至一直是0)。
从统计数字的角度,V12确实是一次巨大的跨越式进步。对于未来展望,由于上面说的V12端到端的技术架构是直接对用户体验最直接的规划控制输出进行优化,我预计FSD V12后,用户能体感到的系统性能将会提升非常快。
从我在硅谷测试后的一周里,V12已经连续推出了V12.3.1和V12.3.2.1两个版本。前者将推送用户范围扩大到了包括加拿大在内的整个北美地区的绝大多数FSD激活用户;后一个版本则更新了用户期待已久的端到端Autopark功能和Smart Summon/Banish功能。似乎确实如预期一样,FSD的迭代进步正在加速。同时,老马最近接连公布了要给北美每一辆车一个月的FSD免费试用机会,还要求为每一位收到Tesla交付车辆的用户提供FSD的试驾体验。可以看出,Elon和Tesla对FSD的信心空前高涨,已经开始大范围推广FSD功能。再结合传闻中最早2024年夏季FSD将进入中国市场,2025年上半年登陆欧洲的消息,FSD似乎有望成为Tesla利润的新的增长极。大力推广FSD不仅有助于提高FSD的购买率,从而提高Tesla的盈利能力,推广FSD甚至还有可能促进新车的销量,毕竟目前为止Tesla仍旧是唯一能够让用户体验到FSD功能的车型。
马斯克要求每辆交付的Tesla都必须让用户去体验下最新的FSD版本根据FSD的迭代速度,我个人预计FSD很快就会Feature Complete(增加倒车档,增加Summon/Banish还有自动泊车,开放中国,欧洲市场)。而下一步,Tesla就必须开始对FSD功能的稳定性、安全性继续努力了,毕竟虽然今天FSD已经能够解决99%的驾驶场景,然而要真正做到无人,做到Robotaxi还必须继续去不断推动FSD朝着小数点后更多的9迈进。到时候单纯的端到端Imitation Learning(没有实际资料表明Tesla FSD V12只使用Imitation Learning,这里只是个人猜测)是否足够,是否需要引入Reinforcement Learning,甚至是大语言模型和生成式AI,亦或是需要重新找回部分规则代码,目前都未可知,只能等待时间给我们答案。
本文作者:EatElephant,算法工程师 知乎链接:https://www.zhihu.com/people/eatelephant