星空体育以星空体育为核心,带来高效便捷的体验。 - 星空体育

让人类交出方向盘:特斯拉FSD十三年的冒险、争议与进化 - 篮球新闻

星空体育

今年9月,特斯拉Cybercab在美国德州奥斯汀正式投入商业运营,这款车型取消了方向盘与脚踏板,仅提供两个座位。马斯克表示,这象征着未来交通的形态。

今年5月中旬,Cybercab仍处于测试阶段,未对公众开放。经过数月测试,这款车达到了一个新的节点:截至9月22日,特斯拉在德州登记的Robotaxi车队总数已增至476辆,其中Cybercab有67辆,其余409辆仍是配备方向盘的Model Y。

目前,特斯拉为Cybercab设置了安全措施,包括远程操作员干预、星链网络支持,以及乘客可用的一键紧急避险按钮。按下Emergency Stop后,车辆会立即发出靠边停车请求,并自动接通Robotaxi专属客服。

但FSD的进步并非一帆风顺,过去十几年间,丑闻、诉讼与质疑始终伴随其左右。供应商关系破裂、自研芯片、算法重写,硬件上线前还在推翻重来,团队内部甚至出现过瞒报与欺诈。与此同时,软件团队一直抱怨算力不足、人员短缺,却在极致的成本控制中,被推向极端的技术路线。

从供应商的“黑盒”转向自研芯片,一套需要30万行代码的系统精简到2000行,FSD究竟是如何炼成的?硬件与软件在13年演进中经历了哪些波折?而当方向盘真的被移除,车队开始扩张,最棘手的挑战又是什么?

起步:狂热埋下的隐患

Mobileye的黑盒(Hardware 1.0)

2013年,已经成立10年的特斯拉,开始决定涉足自动驾驶,最初希望合作的公司是谷歌。

但谷歌的高精地图结合激光雷达的方案成本过高,不符合马斯克的第一性原理。同时,谷歌主张一步到位,直接实现L4,而马斯克则认为应先推出L2,再迭代至L4,为此双方分道扬镳,也让自动驾驶领域诞生了两条路线,并争论至今。

然而,特斯拉当时的状态连生存都颇为艰难,更不用说自研,最现实的路径就是先找现成的供应商,于是他们选择了Mobileye。

2014年10月,特斯拉发布了Autopilot Hardware 1.0。全车的硬件非常基础:仅1个前置摄像头、1个前置毫米波雷达,外加12个超声波传感器。芯片是Mobileye的EyeQ3,频率500MHz、内存256MB,放在如今显然不够看。

Kerry刘向科 前特斯拉AI硬件开发高级经理 早期车规技术的局限性很大,这是一个不得不采用的方案,因为没有其他选择。

Kerry在特斯拉工作近12年,参与了能源、自动驾驶、机器人等多个项目,负责AI相关的硬件开发。他告诉硅谷101,FSD 13年的研发过程中充满了曲折的故事。

2015年,Autopilot软件正式上线。虽然只能实现车道保持、自适应巡航等基础功能,但对于当时的车主来说,这已经非常惊艳。要知道,那时大部分车甚至还没标配定速巡航。

车主们开始在网上分享体验:有人在车里吃汉堡,有人在副驾睡觉,把Autopilot当成了“无人驾驶”。马斯克不仅没有制止,甚至鼓励这种狂热,而隐患就此埋下。

2016年5月7日,佛罗里达州一辆Model S撞上了正在左转的拖挂货车,车主当场身亡。事故原因在于辅助驾驶系统没有识别出货车。

此前Mobileye早就警告过马斯克,禁止驾驶员双手离开方向盘,但并未被重视,这次事故成了双方彻底谈崩的催化剂。

为什么只是“催化剂”呢?这里我们先来说说,特斯拉第一代Autopilot是怎么做的。

自动驾驶主要分为3个流程:感知、规划、执行。 特斯拉与Mobileye合作时,感知部分算法完全由Mobileye垄断,规划与控制由特斯拉自己主导。

Mobileye提供的是典型的“黑盒(Black Box)”模式,摄像头捕捉到画面后,直接输入到Mobileye的EyeQ3芯片中,计算结果后,再传递到规划层。

匿名 前自动驾驶资深从业者 这可能也是当时双方分裂的原因。因为双方强行定义了一个接口,而接口之下,Mobileye的内容是黑盒,不提供给特斯拉。这非常阻碍特斯拉的开发,因为有时候你想跨越或更改这个接口,却没有控制权。

所以,真正让特斯拉和Mobileye分手的原因,是因为合作不畅。此后,特斯拉开始一手独揽算法部分,硬件系统也有了新的合作商,但市场却不买账了。

临时救场的英伟达(Hardware 2.0)

2016年10月,距离事故仅5个月,特斯拉发布了Hardware 2.0。这次传感器从1个摄像头变成8个,芯片从Mobileye换成了Nvidia Drive PX2。别看摄像头数量变多了,但在当时的作用并不大。

匿名 前自动驾驶资深从业者 我认为8个摄像头可能是为未来准备的。如果未来想实现全自动驾驶,就不可能只有前向摄像头。但在当时,如果只是取代Mobileye的功能,未必需要动用这么多算力,去处理每个摄像头的信息。

不过很快,特斯拉内部发现Hardware 2.0存在缺陷,于是在发布10个月后,又推出了Hardware 2.5,这两者的核心区别就是冗余。

因为Hardware 2.0是特斯拉第一次用英伟达的方案,当时英伟达也并没有专门针对辅助驾驶做芯片,所以在结构上,就是一个SoC,再外挂一个GPU。

但问题是,马斯克当时已经在推全自动驾驶了,得考虑一个很现实的问题:万一芯片坏了怎么办?得需要有备用方案。所以到了2.5,特斯拉多加了一个GPU作为冗余,这就是特斯拉FSD双芯片架构的雏形。

与此同时,特斯拉也在6个月内,通过自研替代了Mobileye的算法部分,还新推出了FSD(Full Self-Driving,全自动驾驶),意味着和以前大不一样,但初期表现却没有预期中那样顺利。

匿名 前自动驾驶资深从业者 Mobileye已经迭代了很多年,即使技术相对落后,各方面也还是比较完善。一个新团队从0到1开始做,初期出现各种问题,我认为完全可以理解。

不过英伟达芯片也只是个过渡方案,接下来特斯拉FSD才真正开始发力。

Hardware 3.0:芯片传奇

FSD芯片:18个月的奇迹

2019年4月,特斯拉发布了Hardware 3.0,用自研的AI3芯片替换掉了英伟达芯片。其实采用自研芯片是迟早的事,早在与Mobileye合作时,特斯拉就开始布局这条路,我们先把时间拨回到2016年。

1月,马斯克挖来了芯片设计界的传奇人物Jim Keller,他在AMD设计了K7、K8架构,在苹果设计了A4、A5芯片,又回到AMD研发了Zen架构,后来还去了英特尔。

2月,Peter Bannon也加入特斯拉,履历同样硬核:加入特斯拉前就有了近40年的计算系统设计经验,曾在苹果、英特尔、PA Semi等公司任职,领导了苹果A4到A9处理器的开发。

在这两名芯片大神的带领、以及三星团队的帮助下,第一款FSD芯片AI3,只花了18个月就设计出来了,并在2017年12月首次流片成功,整个过程非常顺利。

Kerry刘向科 前特斯拉AI硬件开发高级经理 当时甚至第一次流片出来,这个芯片基本上就没有毛病了,最后只是做了少量修改,做了第二版后就开始量产,后面没有再改过了,所以Hardware 3算是一个非常成功的芯片。无论在英特尔、AMD,还是其他公司,处理器芯片能够一次流片做好的,都是凤毛麟角。很多芯片第一次流片后,甚至无法开机。而且当时特斯拉采用的14纳米制程,也相对成熟。

这款自研芯片的一大优势,就是性能强。相比Hardware 2.5采用的英伟达Pascal芯片,AI3不仅神经网络算力提升了5倍以上,在其他各项参数上都有显著提升。

为什么提升这么大呢?因为这是专为自动驾驶场景设计的芯片,和之前通用芯片架构完全不同。

芯片算力不能光看纸面上的参数,像英伟达的芯片,因为是通用的,里面会包含线程调度、内存访问、分支预测等等任务,在执行神经网络任务时,实际利用率很难跑上去。而特斯拉定制的芯片,专为实际任务场景做了优化,有效利用率能达到80%,相比通用芯片提升了50%。

Peter Bannon 前特斯拉硬件负责人 2016年,确实还没有从零开始设计的神经网络加速器。当时大家都在自己的CPU、GPU,或者DSP上增加指令,让它们更适合做推理,但没有人真正从底层开始,专门为此做设计。所以,我们决定自己来做。

就在AI3即将量产的节骨眼上,Jim Keller离开了特斯拉,由Peter Bannon接手整个硬件团队。别急着为特斯拉担心,因为在业内看来,Jim的离开早已注定。

Kerry刘向科 前特斯拉AI硬件开发高级经理 我跟Jim Keller的一些朋友聊过这件事情,大家的反馈是,Jim Keller是一个非常喜欢做从0到1的工作的人,他不喜欢做从1到10的事情。他之前在苹果还是在AMD,都是把芯片从无到有做出来,然后在这个芯片做出来之前,他就会走。我想这可能也是为什么,他愿意来特斯拉的原因,因为特斯拉要做芯片这件事情,在当时就属于从0到1的事。

虽然AI3芯片的开发过程很顺利,但鲜有人知的是,在整套Hardware 3.0量产前的三个月,特斯拉内部连轴转到几乎崩盘,而原因竟然是因为马斯克的“抠搜”。

Kerry刘向科 前特斯拉AI硬件开发高级经理 马斯克不喜欢招人,就算到今天,FSD和机器人相关的软件团队,人数一直很少。他们既要支持还在量产的Hardware 2.5,又要编写Hardware 3的软件,人手明显不足。 没有配套软件,很多产品、芯片的测试和功能验证就无法开展。我印象很深,当时硬件团队只能自己拼凑软件,写一些指令来模拟软件团队的功能,再自己运行、自己测试。 量产前三个月,马斯克说,必须开始推进Hardware 3了。这时,软件团队只剩下三个月,而我们硬件团队还要配套测试,所以相当于几乎没给我们时间。于是,当时他们写出一部分软件,我们就跟着做相应测试。那是我在特斯拉最忙的三个月,基本没有休息。

供应商的周旋与冲突

用上自研芯片后,主要带来了2个好处:成本优势和主动权,这背后还有两个与供应商之间的周旋与冲突。

先说说第一个,众所周知,马斯克一直都非常在意成本,而Kerry一项很重要的工作,就是通过各种手段,逼迫供应商降价。

Kerry刘向科 前特斯拉AI硬件开发高级经理 TI(德州仪器),是非常大的车规芯的供应商。2018年,我们整个车上每年要用大量TI的芯片。而2018年年底的时候,特斯拉都差点破产了,所以当时成本的压力非常非常的大。因此公司提出了,希望TI把特斯拉用的所有的芯片全部降价。 TI一直不肯答应。但当时车规芯片的利润水平很高,平均利润甚至能达到50%至55%。于是,我把这套TI芯片全换成了ADI同等功能的芯片。更换芯片的方案需要硬件和软件团队做大量测试、开发,但我认为必须换,就推进了。

TI没想到我们真会更换。这套芯片对他们很重要,占了很大一部分营收额。他们就开始求我们,也找了我的老板,连CEO都来问,能不能不换,是否还有其他办法。采购部门就直接把降价表发给他们,表示只要表上的芯片全部降价,我们就改回来。 TI和我们僵持了几个星期,最后同意了。当时一年大约能节省2000万美元,对马斯克来说,这是很大的一笔成本下降,他还特地发信感谢我们。

其次,在主动权方面,特斯拉除了前面提到的,因为Mobileye黑盒算法吃过亏,就连与英伟达的合作,也有些冲突,一方面因为英伟达的芯片并不是专为自动驾驶设计的。

Kerry刘向科 前特斯拉AI硬件开发高级经理 即使到今天,英伟达最新的Thor(索尔)这类芯片,也仍然是通用芯片。马斯克不希望被任何一家公司牵着鼻子走,更不希望被局限在特定功能或算力框架之内。

另一方面则是英伟达团队配合度不高,这点对马斯克来说是更加无法容忍的。

Kerry刘向科 前特斯拉AI硬件开发高级经理 2017年,有些车辆返修的事件,我们怀疑主板温度过高,因为英伟达的芯片里有温度传感器,我们就提出,能否把温度显示出来。这是一个很简单的事情,只需要写几行代码的驱动。英伟达和我们来来回回,光扯皮就扯了差不多一礼拜。之后又问我们要钱,说开通这个新功能需要付费,而且还要再等一个礼拜。三行代码就能解决的事情,已经折腾了快半个月,这样的合作模式很难继续推进。英伟达也有其他核心产品,所以在2017年,车载的业务很难做,效率非常低。

讲完这些小故事,我们再回到Hardware 3.0硬件上。它有个很大的问题是,虽然在2016年设计时,专为当时常用的卷积神经网络(CNN)做了优化,但谁都没想到,一年后,也就是2017年,出现了一篇改变整个AI史的论文——《Attention Is All You Need》。

软件跃迁:Transformer的前夜

Andrej Karpathy加入

2017年6月,谷歌发布了Transformer开山论文,后面启发了OpenAI,诞生了ChatGPT。与此同时,一个30岁的年轻人,却离开了OpenAI,他就是Andrej Karpathy。

与Mobileye决裂后,特斯拉急需从零开始自研基于深度学习的视觉感知系统。彼时的马斯克还担任着OpenAI的联席董事长,在见识到Andrej的能力后,马斯克决定邀请他加入特斯拉,并直接向自己汇报。

Andrej Karpathy 特斯拉前人工智能高级总监 实际上,是马斯克主动联系了我。他找我的时机非常合适,那时候,我真的开始有些坐不住了。我觉得我能做这件事,我有能力在这里作出贡献。

Karpathy的加入,不仅为特斯拉带来了技术上的创新,更重要的是,当时特斯拉的自动驾驶正处于低谷,急需一位领头人来吸引更多人才。

匿名 前自动驾驶资深从业者 他是AI和机器学习领域的标志性人物,所以我认为,他加入后最大的作用是招聘。如果没有他,对刚毕业的顶尖AI人才来说,为什么要去一家车厂?但有了Andrej,这些人可能就有了理由,因为很多人都上过他的课。

随后,特斯拉在2018年到2021年间,对算法部分的“感知”模块进行了一次次升级。接下来我们尽量用通俗的语言,讲讲其中的四大升级点。

四大升级

还记得自动驾驶的三大模块吗?也就是感知-规划-执行,相关的基础知识我们在之前的文章中有详细介绍,感兴趣的小伙伴们可以点击图片跳转阅读。

而Karpathy加入的第一件事,就是用神经网络重构“感知”模块。

他提出将车道线检测、车辆识别、行人感知这些基础任务,都交给深度学习模型。通过海量数据训练,让系统自己识别环境,这样面对从未见过的路况,神经网络依然能做出合理判断。

这又带来了另一个问题,系统又要识别车辆、行人,还要看懂红绿灯、锥桶、减速带、施工标志等等,如果每个任务都跑一个独立的神经网络,不仅代码量会非常大,车载的算力也不够用。

这就要说到第二个升级点,HydraNet架构。

它的设计思路是,让所有任务,共用一个底层的特征提取网络(Backbone),只在最顶端分叉出不同的“任务头”,也就是“Head”。这样的话,多个摄像头、多个识别任务,都能共享同一个算力底座。就像一棵树,树干是共享的算力底座,树枝是不同的识别任务,各长各的叶子,但共享养分。

HydraNet不仅提升了计算效率,更重要的是,它能针对不同的识别任务单独做微调,不会影响其他的任务表现。

第三个升级点,是从“看图片”转向“看视频”。

特斯拉的早期的感知模块,更像一个图像识别系统:摄像头拍下一张照片,通过CNN算法,依次识别哪里有辆车、哪里有个行人、哪里有车道线。

但现实世界是连续变化的。比如,一辆小汽车被驶过的大巴暂时遮挡后,摄像头在某些时刻可能无法直接看到它,系统就需要结合前后时刻的信息,继续判断这个目标是否仍然存在、以及它可能在哪里。

所以特斯拉团队让系统从“看图片”转向了“看视频”,利用时序信息(Temporal Information),学习连续几秒钟发生了什么,并预测物体的运动轨迹或行为趋势,这样系统就拥有短暂的记忆能力。

第四个升级点,是Transformer加持的鸟瞰图视角,也就是BEV。

过去,每个摄像头更多是在各自完成识别任务,互相之间没有多少交流,比如左摄像和右摄像头都识别到了一辆车,但系统并不清楚这是不是同一辆。

现在,系统开始融合8个摄像头的信息,再通过空间变换和多视角融合技术,并结合Transformer的交叉注意力机制(Cross-Attention),把这些信息统一投射到同一个俯视坐标系中,最终构建出完整的2.5D空间模型。

匿名 前自动驾驶资深从业者 BEV并不是特斯拉独有的创新,可能更多来自整个学界。随着研究经费增加,学界一直在推进相关研究,也出现了一些关于多传感器融合的成果。

有了这四大升级,到2021年,特斯拉的感知模块开始真正理解整个道路环境,但马斯克又突然决定,移除车上所有的雷达,这可苦了软件团队,一下进入了“作战模式”。

移除雷达

虽然马斯克很早就说过,自动驾驶只需要摄像头就够了,在特斯拉内部看来,移除雷达也确实会带来一定的优势。比如过去融合多传感器的信息时,会对算法带来额外的负担,同时因为多了额外的硬件,还会增加后期维护的工程量等等。但2021年5月,马斯克决定移除车上所有雷达时,还是让大伙觉得这个时间点很突然。

你可能问,是不是因为内部团队早就做好了测试?或者技术已经足够成熟了?我们刚开始也这么认为,但Kerry告诉我们,真实原因其实非常现实,就是供应链问题。

Kerry刘向科 前特斯拉AI硬件开发高级经理 当时是因为疫情,毫米波雷达供不上货。我们的供应商是Continental(德国大陆集团),后来双方好像谈崩了。 疫情期间,很多供应商都无法正常供货。这种核心供应商一旦供不上,采购团队就会把问题上报给马斯克,让他直接与供应商的CEO通话。有些供应商很配合,有些则不配合,可能觉得我们的采购量不够大,或者有更重要的客户。这类不配合的供应商,基本上都被拉黑了。 马斯克直接说,既然你不给,那我也不谈了,直接不要了。

在此之前,**马斯克早已催促过软件团队尽快

星空体育

上一页

星空体育以足球新闻为核心,带来高效便捷的体验。
星空体育

下一页

想了解更多篮球新闻相关内容,尽在星空体育。
星空体育

星空体育围绕热门赛事不断创新,回应用户的真实需求。

精选赛事中心内容,星空体育与你一同发现更多精彩。

2 评论

  • 星空体育
    星空体育专注覆盖足球、篮球等主流赛事,实时更新赛程与结果。,为用户提供专业可靠的体验。
    2017年2月28日 - 晚上8点07分

    围绕每场比赛提供专业看点分析与数据解读。,星空体育持续打磨更优质的服务。

    回复
    • 星空体育
      李明辉
      2017年2月28日 - 晚上8点22分

      关于比赛数据页面的优化,上次讨论中提到的案例可以完美展示如何通过关键词和内容拓展来扩大受众。如果那是一个体育比分网站的页面,转化数据一定会非常惊人。(星空体育)

      回复

星空体育深耕首页集中展示当日重点赛事,方便快速浏览。领域,用心服务每一位用户。