{{detailStore.author.is_follow?'已关注':'关注'}}
首页推荐
文章
管理
特斯拉:FSD Beta 下一版会更好,「幽灵刹车」慢慢解决
文章

近日,马斯克在推特更新了 FSD Beta 将要更新的细节,其中涉及三个点值得聊聊:

  1. FSD Beta V10.12.2 将在周六向北美 10 万级的测试人员推送。
  2. 下一次更新的 FSD Beta V10.13 中,特斯拉将能够以零地图数据的情况下将汽车开到 GPS 点。
  3. 在 FSD Beta V10.13 中,特斯拉将对十字路口控制进行重大改进,特别是「长无保护左转」。

而这些都表明,特斯拉的算法可能将会迎来一个阶段性的里程碑,纯视觉的自动驾驶方案功能开发逐渐完善。

而就在同一时间,关于特斯拉「幽灵刹车」事件再次发酵。

这就比较有意思,一方面是算法大进步的 FSD Beta 要更新;另一方面是有可能也是因为算法出现的「幽灵刹车」现象。

所以,这两件事可以放在一起,去看特斯拉的纯视觉自动驾驶算法的变化。

01

758 起「幽灵刹车」事件,谁负责

汽车行业的大热门话题里,总有特斯拉的身影,比如这次裁员恐慌,在汽车行业整体艰难的时刻,其他大厂因为业绩下滑「裁员」会是大概率事件。

当特斯拉裁员的消息一出,其当天的股价就跌了 9% 威力可见一斑,而除此之外更为严重的可能是另一则消息。

彭博社爆料:5 月 4 日,美国「国家公路交通与安全管理局(NHTSA」 就给特斯拉发函,要求其在 6 月 20 日之前给大量特斯拉用户,因车辆频频出现「幽灵刹车」给出解释。

报道的细节表示,NHTSA 是 2022 年 2 月份开始调查关于特斯拉前视防撞系统的投诉,两周后另开了相关的「幽灵刹车」投诉调查,即特斯拉车主们普遍反映自家的车会在高速驾驶状态下突然自动刹车。

此调查覆盖了美国境内 41.6 万辆特斯拉 Model 3 和 Model Y。

虽然现在还无因「幽灵刹车」有伤亡的报道,但在短短三个月的调查期间内,此项投诉的数目涨了一倍多:从 2 月的 354 起,涨到 5 月的 758 起。

NHTSA 相关官员称: 『这个速度实在令人惊心,每月几百起「幽灵刹车」投诉,意味着可能还有更多的事件发生后是没有向 NHTSA 投诉的。』

在此消息公布后,特斯拉的股价又应声跌了 6.2%。现在还未确定之后会否有大规模召回等举措。

这里就带了一个新的问题: 为什么特斯拉的自动驾驶技术在升级,而「幽灵刹车」现象却增多了呢?

这就要先搞清楚特斯拉为了做出一套「通用的」Autopilot 系统都做了什么?

随着 2016 年 10 月搭载 Autopilot 2.0 硬件的车型量产,特斯拉不仅确定了以视觉为基础的硬件架构,自研软件的路径,而且其目标也是直指「完全自动驾驶」。

站在如今的时间节点去看 2016 年特斯拉的这个决定,依然会感觉这是一个很激进的做法。因为基于这样的设定特斯拉要完全重新设计软硬件架构。

从硬件架构来讲,特斯拉用 8 颗摄像头完成了整车 360° 纯视觉感知覆盖,有一个细节是,其实在 2016 年的时间节点上,特斯拉更找不到足以支撑这套感知架构算力需要的芯片,为此,特斯拉做了一个大胆的决定: 「自研芯片」。

这就有了 FSD 芯片的出现,2019 年 4 月起北美特斯拉 FSD 芯片的全面量产装车。在 FSD 144 TOPS 高算的支撑下,也才有了 2020 年 Q4 北美 FSD Beta 版的推送。

相比较「自研芯片」,特斯拉自研的算法则是整个 Autopilot 系统的另一个精髓,在软件的开发上,特斯拉有两个比较重要的功能和时间节点,这也是解释「幽灵刹车」最主要的要素。

特斯拉的算法迭代其实是根据它所推送的功能显现出来的,汽车媒体「类星频道」此前梳理过特斯拉「完全自动驾驶」选装包的功能:

  • 自动泊车
  • 自动辅助变道
  • 自动导航辅助驾驶
  • 智能召唤
  • 识别交通信号灯和停车标志并做出反应
  • 在城市街道中自动辅助驾驶

而这些本来是马斯克承诺在 2017 年年底就要实现功能的研发并推送给用户的,但事实上的功能研发和推送节奏是这样的:

  • 2017 年 3 月,特斯拉推送了「自动泊车」和「自动辅助变道」
  • 2018 年 10 月,特斯拉推送了「自动辅助导航驾驶(NoA)」
  • 2019 年 9 月,特斯拉推送了「智能召唤」
  • 2020 年 4 月,特斯拉推送了「识别交通信号灯和停车标志并做出反应」

上面我们说了,在软件的开发上特斯拉有两个比较重要的功能和时间节点,那就是:

  • 功能:智能召唤的推送,以及反向召唤的开发;
  • 时间:2020 年,特斯拉 Autopilot 团队完全重构了系统底层的核心代码。

现在我们都是知道,特斯拉的算法重写了底层代码,但如果从 2016 年去看特斯拉的自研规划,事实上连特斯拉团队的人都不知道他们会在某个时间点讲代码重写。

那是什么样的契机出现呢?

那就是上面所说的,2019 年 9 月 26 日,特斯拉推送了智能召唤功能。而智能召唤和之前最大的区别在于,系统将是基于 8 颗摄像头,不需要高精地图,不需要车道线,仅依靠视觉,将以车辆自身 65 米为半径实现任意形式。

这就很有意思,你会发现除了 65 米的条件限制以外,这个场景其实才真正意义上反映了自动驾驶该有的场景。

这个场景的挑战则是:

  • 狭小空间的物体检测;
  • 行人、车辆、非机动车的无序产于交通;
  • 精准的决策控制和低速的启停速度控制。

那为什么特斯拉不是优化原有功能,而是选择重写算法呢?

在特斯拉 AI Day 上 Andrej 博士做了详细的技术解读,「类星频道」公众号里《特斯拉:雷达都滚粗》一文中详细解读了这一技术:

在智能召唤中,Autopilot 的首要任务是识别并预测不同停车场的路沿,特斯拉开发了一个叫 Occupancy Tracker 的向量空间工具。将全车 8 颗摄像头拍摄的图像(而不是基于时间序列的视频)缝合起来,投射到 Occupancy Tracker 当中。

这带来了两个重大的问题,首先,Occupancy Tracker 是基于 C++ 代码写成的,它本身的迭代及与之相关的参数调节需要大量复杂的手动编程工作。

更致命的问题也许是,手动编程背离了特斯拉致力于通过深度神经网络逐步取代所有手动编写规则的底层研发逻辑,且基于图像缝合的 Occupancy Tracker 效果很差。

举例来说,一旦转到开放道路上,基于图像缝合的路沿预测就出现了重大的偏差,2D 图像中看起来预测得很准确的路沿,投射到 3D 向量空间中偏差巨大,几乎无法作为感知信息输入。根本问题是,2D 图像中的每个像素无法准确地预测深度,并投射到 3D 向量空间中。

当基于图像来进行对象检测时,如果一辆半挂正好从车旁经过,全车 8 颗摄像头中的 5 颗捕捉到这辆车,但由于本质上输入的是图像,而非动态的视频,融合这些摄像头的预测变得极为困难。

这让特斯拉意识到:Occupancy Tracker 本身的方向错了,要对整套算法进行彻底地重构。需要将全车摄像头拍摄的基于时序的所有图像(即视频)输入到到同一个深度神经网络(也就是后来大名鼎鼎的 Bird-Eye View Net)中。

这可以解决前面提到的复杂的手动编程问题,感知性能开始随着深度神经网络的训练不断改进。但如何将摄像头拍摄的视频中的特征准确地投射到向量空间中去,依然是一个复杂的问题。这里 Andrej 拿不同视角的摄像头中的同一个路沿在向量空间中的位置举例。

注意直到这里,特斯拉仍然在焦头烂额地解决视觉感知的挑战。

综合以上分析: 图像空间感知 + 决策层融合并不是一个很好的方案 。

进而直接在向量空间中完成融合和感知可以有效地解决以上问题,这也是 FSD 感知系统的核心思路。

为了实现这个思路,需要解决两个重要的问题:一,如何将特征从图像空间变换到向量空间;二,如何得到向量空间中的标注数据。

特征的空间变换

对于特征的空间变换问题,一般性的做法就是:「利用摄像头的标定信息将图像像素映射到世界坐标系」。

但这有一些条件上的问题,需要有一定的约束,自动驾驶应用中通常采用的是地平面约束,也就是目标位于地面,而且地面是水平的,这个约束太强了,在很多场景下无法满足。

Tesla 的解决方案,核心有三点:

一、通过 Transformer 和自注意力的方式建立图像空间到向量空间的对应关系。简单说就是,向量空间中每一个位置的特征都可以看作图像所有位置特征的加权组合。

当然对应位置的权重肯定大一些,但这个加权组合的过程通过自注意力和空间编码来自动的实现,不需要手工设计,完全根据需要完成的任务来进行端对端的学习。

二、在量产车中,每一辆车上摄像头的标定信息都不尽相同,导致输入数据与预训练的模型不一致。因此,这些标定信息需要作为额外的输入提供给神经网络。

简单的做法是,将每个摄像头的标定信息拼接起来,通过神经网络编码后再输入给神经网络;但更好的做法是将来自不同摄像头的图像通过标定信息进行校正,使不同车辆上对应的摄像头都输出一致的图像。

三、视频(多帧)输入被用来提取时序信息,以增加输出结果的稳定性,更好地处理遮挡场景,并且预测目标的运动。

这部分还有一个额外的输入就是车辆自身的运动信息(可以通过 IMU 获得),以支持神经网络对齐不同时间点的特征图,时序信息的处理可以采用 3D 卷积,Transformer 或者 RNN。

通过以上这些算法上的改进,FSD 在向量空间中的输出质量有了很大的提升。在下面的对比图中,下方左侧是来自图像空间感知 + 决策层融合方案的输出,而下方右侧上述特征空间变换 + 向量空间感知融合的方案。

至此,特斯拉基于注意力机制这样的大神经网络模型,处理视觉数据的能力大幅提升,细心的你已经已经发现了,这里已经没有毫米波雷达啥事了,而 Elon 早在 2020 年 2 月就表达了,3D 标注需要对 Autopilot 底层代码进行完全重写。

事实上我们外界的感知是,到了 2021 年 5 月特斯拉突然宣布北美的新车型不再配备毫米波雷达,这时候我们才恍然大悟,特斯拉已经通过深度神经网络完成对传统规则算法的替换。

讲到这,终于要讲到「幽灵刹车」了,此前 Andrej 博士说过,毫米波雷达在实际 的应用中非常容易误报。而这些误报的数据输入神经网络其实都是噪音。

而这一现象导致的实际体验则是,车辆会有偶发性的「幽灵刹车」。

但问题在于,NHTSA 的公告里显示,今年以来「幽灵刹车」的频次明显增多,而这一切是在特斯拉已经取消毫米波雷达的情况下。

等等,上面不是说,毫米波雷达的数据精度和摄像头差距过大,所以毫米波雷达容易误报产生「幽灵刹车」吗?为什么用了特斯拉引以为傲的纯视觉和重写的神经网络算法后「幽灵刹车反而增多了?

我的理解可能问题还是出现在算法上。

因为直接将 Transformer 应用到视觉上也会存在一些难题:

一、核心模块多头注意力机制(Multi-Head Self-Attention )的计算量与 block 的个数成正比,因此在视觉中 block 数量要远多于 NLP 中句子的词数,这就造成了计算量的陡增。

二、Transformer 擅长全局关系的学习,对于局部细节信息关注有限,然而视觉中很多任务需要足够丰富的细节信息做判断, 比如语义分割 。

所以,工程师需要对核心模块的注意力机制进行优化。

这就是上面我们说的:把 CNN 和 Transformer 进行整合,通过控制 block 的粒度,使 Transformer 能够感知不同尺度信息,从而达到局部和全局的信息融合。

但问题是,现在的工程优化进度没有这么快,特斯拉或者说人工智能届正在尝试的目标是: 将处理单一数据的深度神经网络模型向通用的大模型切换 。

Andrej Karpathy 在这个推下回答了几段话(下面我会解释):

I am cautiously and slightly unnervingly looking forward to the gradual and inevitable unification of languageimages/video and audio infoundation models. I think that's going to look pretty wild.

我谨慎而略带不安地期待着语言、图像/视频和音频在基础模型中逐渐而不可避免的统一。我觉得这看起来会很疯狂。

Every task bolted on top will enjoy orders of magnitude more data-efficient training than what we are used to today.

每个任务都将享受到比我们今天习惯的数据效率更高的数量级的培训。

They will be endowed with agency over originally human APls:screen+keyboard/mouse in the digital realm and humanoid bodies in the physical realm. And gradually they will swap us out.

它们将被赋予比原始人类API更大的力量:数字领域的屏幕+键盘/鼠标,物理领域的人形身体。

解释一下:

从后往前是特斯拉或者说 FSD Beta 的目的是让车像人一样,也就是 Elon 常说的「现实世界的人工智能」。

机器就像人一样可以拥有一个大脑,接入肢体后变成一个智能体。

但想要做到这个就需要强大的技术支撑,人工智能的方向是要将多模态的数据,包括图像、视频、文字、语音都集中到一个基础模型中。

这也就是业界常说的: 「通用人工智能模型」。

基于这个模型再去训练一些特定任务的话,就会非常快也不需要大量的数据。而目前,大厂都有一些研究工作,但还没有能够实用的模型。

这又带来了另外一个问题:通用模型和类似 Transformer 这样的区别是啥?

首先这是两个维度的概念:

比如,Transformer 能同时处理图像和文字数据,那么就可以认为是往通用模型方向进了一步。

也就是说,Transformer 有成为通用模型的潜力。

但是目前一般都还是处理单一类型的数据,比如只处理图像数据或者只处理文字数据。

而 CNN 这种模型,只能处理图像数据,因此没有成为通用模型的潜力。因为 Transformer 本身是从自然语言处理领域来的,现在在视觉任务上也取得了成功,因此是有潜力的。

从这个角度去看,「幽灵刹车」的增加可能是因为纯视觉算法在并没有做好语义分析,以及感知的目标检测误检。

02

关于特斯拉 FSD Beta 更新

Elon 表示,工程师在对 FSD Beta V10.12 进行了一些改进后,FSD Beta V10.12.2 将在周六向北美 10 万级的测试人员推送。

这是一件大事,想要让车辆完全自动驾驶是一项极其困难的任务,其开发人员必须秉承着高度负责的态度。

为什么说 FSD Beta V10.12.2 的规模推送是一件大事?

因为这可能是特斯拉将「处理单一数据的深度神经网络模型向通用的大模型」切换的开始,其实早就开始尝试研发了,公众知晓的时间可以从 2021 年 5 月算起,有个著名的事件:取消雷达用纯视觉。因为这个事件之后大模型的概念就开始慢慢工程化了。

但算法不同于硬件,其论文阶段到工程落地之间可能需要 1 万步,而通用的大模型现在还处于一些大厂的预研阶段,包括特斯拉、谷歌微软等,都还没有能够实用的模型。

但特斯拉的作用是,给整个人工智能领域带来了希望,让所有人知道这条路可行,这就是星星之火可以燎原。

此外,特斯拉正准备将开发项目提交给欧盟监管机构,以便将 FSD Beta 引入欧洲道路。因此,我们要知道特斯拉的技术路径的底层逻辑是解决两个关键词:「通用性」、「泛化性」。

Elon Musk 说,在下一次更新的 V10.13 中,特斯拉 FSD Beta 将能够以零地图数据的情况下将汽车开到 GPS 点。

乍一看,我以为 Elon 说的是,整个 FSD Beta 系统在取消雷达后又要取消地图数据呢?

如果是这样,那国内的方案距离特斯拉的技术方案就没什么可追赶的必要了,因为特斯拉已经领先了一万米。

Elon 说的「零地图数据」是,取消导航数据,用纯视觉做定位,而 Elon 补充说这里的使用场景则是大多数没有 GPS 信号覆盖的停车场或者酒店入口等。

在这些场景下,没有导航自动驾驶很多情况下是不可用的,但对于特斯拉来说,任何正常的道路场景都应该可用才行。

那怎么解决呢?

Elon 说,特斯拉会使用「惯性测量」、「车轮运动」、「纯视觉定位」的方式去做实时感知,从而模拟出场景模型。

可以理解成特斯拉要做类似小鹏的 VPA 了,但区别在于特斯拉做这个事不需要自建图的纯靠车辆实时执行。

这就是特斯拉算法厉害的地方,以及纯视觉的潜力。

在 V10.13 中,特斯拉将对十字路口控制进行重大改进,特别是「长无保护左转」。

字面意思 :「长无保护左转」就是较长距离的无保护左转。

想知道为什么 Elon 会特意强调这项功能,就要知道「长无保护左转」为什么难?

这个要从道路规则来讲,车辆右转除了极少部分路口设有红绿灯,驾驶者只需要观察行人就好;左转区别非常大,需要注意前向红绿灯、跨车道变化(双向车道避开对象车道)、行人、非机动车。

对于我们人来说,理解起来很简单,但对于自动驾驶系统来说,这个小小的变化简直灾难,因为这要求系统感知能力要更强,特别是在同一时段对于交通物体的识别分类非常难做。

在系统内的表现则是,系统要在极短的时间内判断 「灯 + 路 + 行人 + 自行车」,它们与车辆之间的关系(包括距离、移动速度、形态)。

而之所以「长无保护左转」时好时坏大概率是因为:神经网络算法 RNN 去处理时序和空间数据的时候因为随着数据变长精度下降的原因。

虽然 RNN 具有「记忆」能力,但在极短时间内局部感受野的增大,则会引入过多噪声和无效信息。

对于目标检测任务来说,若感受野很小,目标尺寸很大,或者目标尺寸很小,感受野很大,模型收敛困难,会严重影响检测性能。

所以一般检测网络 anchor 的大小的获取都要依赖不同层的特征图,因为不同层次的特征图,其感受野大小不同,这样检测网络才会适应不同尺寸的目标。

因此,算法需要在网络层保持一个「感受野」最佳的状态,这就是上面说的特斯拉的另一大杀器 Transformer。

在 CNN 中,信息只能从局部开始,随着层数的增加,能够被感知到的区域逐步增大。然而 Transformer 从输入开始,每一层结构都可以看到所有的信息,并且建立基本单元之间的关联,这也意味着 Transformer 能够处理更加复杂的问题。

说了那么多啥意思?

就是「长无保护左转」对道路上车辆的检测要非常准确,尤其是车流较大时难度比较大,不能出现任何误检和漏检。

其次是决策系统难度也很大,必须要见缝插针的汇入车流中。

所以我猜测:在 V10.13 版本中 Transformer 的应用深度加大了,也就是把 CNN 和 Transformer 进行了更深度的整合,主干网络用 CNN 提升网络速度;主干网络用 Transformer 提升感知结果精度。

结果是,规控变得更加细腻与精准了,这就是特斯拉视觉的潜力,通过算法不断压榨硬件的潜力。

写评论
积分赞赏
点赞
评论区
  • 编辑
  • {{is_favourite ? '已收藏' : '收藏'}}
  • {{is_personal_top ? '取消主页置顶' : '个人主页置顶'}}
  • 举报
  • 加入黑名单
  • 删除
  • 取消置顶
  • 置顶推荐
    • 6小时
    • 12小时
    • 24小时
    • 3天
    • 一周
    • 长期
  • {{digest?'撤销精华':'设为精华'}}
回到顶部
  • 全部评论{{detailStore.commentnum}} 条
  • 只看作者
  • 最热
  • 最新
  • 最早

「待审核」

{{ comment.relativeTime }} 已被赞赏 {{comment.integral}} 积分 回复

暂无相关评论

发表一下个人看法吧