专栏算法工具链为什么我认为特斯拉仍在 FSD12 中使用 CNN(不仅仅是 Transformer)?

为什么我认为特斯拉仍在 FSD12 中使用 CNN(不仅仅是 Transformer)?

巴山夜雨2024-08-29
64
0

原文链接:https://www.thinkautonomous.ai/blog/tesla-cnns-vs-transformers/


翻译:


有一件事让我对 CNN 和 Transformer 之争特别感兴趣。先讲讲来龙去脉:

埃隆-马斯克和 Yann LeCun(CNN 的发明者)之间的微信交流


本文的分析基于特斯拉的会议、2021 年和 2022 年的人工智能日以及 2023 年的 CVPR,可以在我关于特斯拉 HydraNet、特斯拉 Occupancy Network 和特斯拉 End-To-End Architecture 的博文中找到大量细节。


在所有这些系统中,它们基本上都采用了感知技术,并同时使用 HydraNet(用于车道和物体)和 Occupancy Net(用于三维空间和人流)。这些模块以端到端的方式与深度规划器连接在一起。


我想回答的问题是...“这些都使用卷积吗?”


HydraNet 使用卷积吗?

以下是 HydraNet 的最新可用架构(提醒一下,HydraNet 是一种拥有多个头部的网络,每个头部能够解决一项任务):

HydraNet 架构由三个部分组成: 特征提取、融合和预测


这里可以看到 3 个关键部分:

  • 蓝色部分是使用 RegNets 进行特征提取

  • 绿色部分是基于 Transformer 的融合

  • 红色部分是进行预测的头部(物体、车道......) .


当然,现在大部分都是基于 Transformer 的...除了一部分:RegNet 和 FPN!


RegNets 内部

RegNet(RNN-Regulated Residual Networks)是进行特征提取的算法,在阅读论文时,他们告诉你这是他们大量使用的基于 ConvRNN 的特征提取器。

ResNet 与 RegNet(特斯拉使用右侧的 RegNet)


这是一种更好的特征提取方法(至少输出结果看起来更好);而这是通过使用 ConvRNN 实现的。要点如下:

  1. 从 ResNet 设计开始,它是一个很好的特征提取器。其中的 “构件 ”是一组 Conv+BatchNorm+ReLU。
  1. 在每次输出时,都会通过一个 RNN。这就是 ConvLSTM 架构;在 CNN 中加入一个循环神经网络。这有助于处理时间依赖性。

ConvLSTM


  1. 将其传递到下一阶段,并重复几十层。最后,对提取的所有特征进行全局汇集,并传递给 Transformers。

ConvRNN 架构。每次卷积后,我们都会将其传递给一个 RNN,然后 RNN 再将其传递给下一层


好了,这就是特斯拉所使用的:

  • 一个 RegNet;

  • 然后是一个 FPN:一个特征金字塔网络。

特征金字塔网络利用多种尺度的信息


我们知道 HydraNet 使用了 CNN,现在让我们看看第二个


Occupancy Network

特征提取也是基于 RegNets 和 FPN 的!

占用网络也使用 RegNet 和 FPN。在这种情况下,FPN 是双线性 FPN,这意味着它可能是用于上采样而不是下采样



因此,我觉得,根据埃隆-马斯克自己的会议,他.....

错了!


现在,你可能会问我:“你怎么知道他们没有用 Transformer 替换 RegNet?”我认为这不太可能,我会在第二部分告诉你为什么...



特斯拉为何仍在使用 CNN

要回答这个问题,我们有两个关键问题:

  • 为什么 CNN 在特征提取方面优于 Transformers?

  • 为什么特斯拉选择在 Transformers 之前使用 CNN,而不是直接使用 Transformers?



为什么 CNN 在特征提取方面优于变换器?

首先: CNN 是为特征提取而构建的。


它们实际上是用来取代人工特征提取器的,比如定向梯度直方图。而 Transformers 并非为此而生,它们是为了发现图像中的 “关注点”,并捕捉时间依赖性而生。


因此,如果你想使用特征提取,使用特征提取器(CNN)会好得多;而且速度也会快得多,因为 Transformers 的速度很慢。


如果你要切一块牛排,你会选择用 CNN 这样的肉刀,还是用 Transformers 这样的军刀?


为什么特斯拉不直接用 Transformers?

这很可能是基于特斯拉的研究和试验/错误......但这样做也是有道理的:

  • CNN/特征提取

  • Transformers/融合

我们可以在 Transformers 之前使用 CNN!


因为 CNN 可以降低维度,捕捉有趣的模式,发现局部和全局特征...所以基本上,CNN 可以让 Transformers 的工作变得更简单、更快速。它们处理的不是图像,而是特征。Transformers 不是 CNN 的替代品,而是 LSTM 和 RNN 的替代品。


从根本上说,这就像先去杂货店买好食材,然后交给厨师,而不是让厨师也去杂货店。


我们希望使用 CNN 进行特征提取,使用 Transformers 进行空间融合(所有特斯拉摄像头)、注意力和时间处理(t-1、t-2......) .


总结

  • 如果我们坚持使用 CVPR 2023,Yann LeCun 说得没错,像特斯拉这样的公司仍然需要使用 CNN。 Transformers 速度很慢,而且它们不是为特征提取而设计的。
  • 特斯拉的端到端架构使用了 HydraNet、占用网络和深度规划器。

  • HydraNet 使用基于 ConvRNN 的特征提取器 RegNet,它使用 RNN 进行 “自我调节”,以获得更好的输出。在此之后,它还使用了 FPN。
  • 占用率网络使用了完全相同的特征提取技术,但使用的是双线性 FPN。
  • CNN 和 Transformers 可以完美结合。CNN 是一种完美的特征提取器,但在处理时间依赖性和融合时表现不佳。
  • Transformers 是一种多功能工具,就像一把瑞士刀,可以完美地处理时间问题,但在特征提取方面却不如 CNN。

算法工具链
技术深度解析前沿技术
评论0
0/1000