{{detailStore.author.is_follow?'已关注':'关注'}}
高算力(TOPS)到来之前 我们该思考什么?
新出行原创 · 精品文章

各家在自动驾驶的近身「对抗」,似乎比具百余年人类与机械协同驱动的影响来的更加热烈。

而趋于白热化的当今,算力的竞争「居高不下」。

从移动机器人到自动驾驶,无论是定位、还是得益于大数据、高效处理器、高分辨率摄像头等传感器的应用,视觉软件的性能已有了质的提升。

得益于机器学习的演进,一场深度学习的复兴也顺势被兴起。

一、谁驱动算力的增长?

深度学习算法的功劳,就是让机器具备对音节以及图像的感知能力,这也让机器有了“模仿”人类思考的可能。

但实不相瞒,深度学习的理论早在百余年前就已经兴起。

例如彼时弗兰克·罗森布拉特提出的通过感知系统的计算,能够在一定范围内对一些基本形状做感知与分类,例如三角形、正方形。

而时至今日,深度学习的理论未有太大变化,但却有了实践的可能。

我们上面所提到的感知和分类就是当前的人工智能的根本,也就是给冰冷冷机器安装了“一双眼睛”以及“一副大脑”,接着在自动驾驶领域大放异彩。

图像处理伴随着的也是英伟达的拿手菜:「GPU」。

这场高算力大战的烽火随之冉冉升起。

硬件带来的升级,让深度学习的时代真正开启,显然英伟达成为了幕后的推手。相比 CPU 在摩尔定律的“败退”,GPU  却一直狂奔,算力的增长还未见顶。

而 TOPS 的定义随之而来,作为一个处理器的算力单位,它指的是每秒运算10^12次,也称万亿次。

我们来看看当前部分主流的芯片厂商的参数:

目前多摄像头的方案正齐步在智能驾驶车辆中布局,除了对目标物做感知,还需要对多路摄像头做融合解析,然后利用中央计算做处理,分配给其它“组织”做决策和规划。

而这样的过程需要在最短时间内完成,才能保证智能驾驶系统带来的安全性。

深度学习的应用就在最开始的感知层,虽然是最基础的工作,但也是最困难的。

当前自动驾驶全球面临的“统一”挑战,就是在感知与认知的难度上。

感知通过数据的不断累积,例如众包、训练系统在感知上完成变革路线是非常清晰的。

但在认知上却存在“不确定性”。这就像一个学生能够背公式和背题,但实际上在实战的时候能不能解题,也就是涉及到自动驾驶的决策时,就充满着不确定性。

至此我们就揭开了高算力与自动驾驶推进的根本矛盾。

二、幕后推手:深度学习的应用

高算力的需求,正是深度学习的复兴。

深度学习的迭代也就是将多个神经网络合并为单一的计算,利用成百上千的神经网络同时计算,GPU 本身对于图像的分类与训练等复杂场景的处理又具备优势,这也催化了算力的提升。

为了更深入了解这层矛盾关系,我们先做一个类比,机器的训练和人类的学习能够等同吗?

从最基本上看,大脑拥有数十亿个神经元可以同时进行感知、分析和存储等工作,并且神经元之间互连。

而对于计算机而言,它被分为很多不同的层(layer)、连接(connection)和数据传播(data propagation)。

也就是说这样的工作放在计算机上就需要单独「分开」进行,例如需要一部分用于处理计算、一部分用于存储等。

所以即使在算力等同的情况下,大脑可以充当软件、硬件,比机器的计算更为高效。 计算机虽能在存储和运算速度上可以强于人脑,但人脑在运算能效上会更低。

那机器是如何工作的呢?

当我们给机器一张图像时,神经网络通过切块后发送给第一层神经网络,然后依次推到第二、第三…层,通过不断提取特征块、压缩,直至最后一层完成识别。

顺序从下往上,最底部是输入层,最顶部是输出层。

(大家好奇可以进去耍耍:https://www.cs.ryerson.ca/~aharley/vis/conv/

可以看到和人类计算相比,二者不只是数字的差异,更多 两者是方法论上的差异化。

这里为大家举例一个典型的深度学习场景:

计算机有点像一个刚懵懂的小男孩,然后给了一堆玩具,让他对玩具进行分类,但是在分类前小男孩不会被告知任何信息。这时候小男孩会对玩具进行颜色、形状、大小等进行分类。

依次类推,小男孩在不断学习中扩大学习范围,例如让数百万个字母放在一起,小男孩并不知道它们背后的意义,而小男孩要做的就是懂得类似的字母聚合、分类,而在往更高级别就是让小男孩懂得从字母到单词的分类。

训练后,是如何应用呢?这样的例子其实在自动驾驶中非常常见。

例如我们一直提到的人工标注、机器自动标注模型,数据驱动逻辑。

我们给神经网络放进几万张已经标注好的「红绿灯」图像,然后我们再拿一张图像给神经网络去猜,看看能不能猜对。

百度Apollo对红绿灯case的识别

此时放入的图像通过神经网络层中依旧被不断“分解”,例如红绿灯的图形、大小、角度以及颜色等特征做提取,此时每个神经元也会为每一个“猜测”输入一个权重来判断正确性,最终由最后一层将所有权重加起来做决定。

为什么是权重呢?

也就是在猜测后机器不会像人类般“果断”,也就是 0 或者 1。系统的识别是是把它分为 7、2、1… 等份。

例如权重的总和可能是 87% 的信心认为是红绿灯图像,有 10% 的信息认为是路灯、还有 3% 的信心认为是大货车的后尾灯或者是广告牌,那么优先输出的答案就是红绿灯。

还是看回我们刚刚的例子:

大家可以看到当我们手动输入数字符时,机器会有输入层和输出层,而其中就是利用卷积神经网络将图像进行处理,包括提取特征、分类等最终输出答案。

例如在我们手写“4”后,答案中优先猜测值为 “4”,然后才是“6”,这也就是权重的划分。

那如果猜测错误了呢?例如下面这张图。

这时候会返回到网络层继续猜测,但此时的网络并不知道自己错在哪里,例如通过「红绿灯」的属性,需要不断调整权重输出直至给出正确的答案。

而类似的例如在雾天、雨天、晴天等场景下,都因为 GPU 对多个计算具备优势,而且又懂得训练和推理, 所以利用大量数据让每次输入的图像变得更为抽象,再利用推理来得出结论,这样的逻辑放在自动驾驶场景训练中再合适不过。

二、有高算力就「万事大吉」了吗?

深度学习虽然带来了训练与推理,但我们发现它其实只是一个提供智能驾驶的一个工具,或者说是一个过程,而不是一个最终结果。

1、高算力带来的是不确定性

其实我们发现,深度学习是作为一项“概率向量”,实际上是通过权重比来进行猜测与推理,而并不存在我们过去解决问题时寻找的因果关系,这对自动驾驶的底线例如安全问题提出挑战。

也就是说深度学习基础上的训练,并不依赖我们过去从观察规律、提取规律再到验证的规律,反而是通过标注后的数据来完成训练、推理、再训练。

这样的问题在于在未打通全自动驾驶算法时,高算力带来的「不确定性」依旧无法作为衡量安全问题。

我们看回经典的 AlphaGo 和  李世石 的人机大战中,AlphaGo 在基于深度学习下采用的策略网络以及估值网络。

其中前者做了大量监督式学习,通过学习大量职业棋手的棋谱进行自我博弈,在预测对方落子时,策略网络内会通过高低样本的策略模式,进行两个网络的博弈,以此来推理、预测下一步的走棋。

这时候的走棋网络要时时刻刻对当前的盘局做为输入,并且对每一步可走的棋招做一个评分,而估值网络在实时计算双方各自胜率,从而提供策略输出的质量(也就是走棋的质量)。

也就是说机器在每一步都需要重新输入盘局做新的估算与预测,这和我们人类思考的盘局完全是两个思路。

而 AlphaGo 每一步预测或者策略的输出,都是 上千年以来棋手在围棋上的积累。所以在通用系统还没有到来之前,AlphaGo 更为重要的是还需要找到更多具备高质量的样本,继续训练出更高的模型。

而自动驾驶相比更具难度,在完全自动驾驶未到来之前,两者也存在相同问题,即高算力依旧不能从根本上解决自动驾驶的痛点,高质量的训练数据才是驱动前进的根本。

而模型训练的样本以及策略、还有 AlphaGo 带来的估值网络,也类似对路上的目标物进行博弈时做预测,而最终的安全防线,需要的是更多确定性算法。

2、感知不只要快、还要准

在最基础的感知中,高算力也驱动感知算法的进步,但这里感知除了对目标物体做感知外、还需要分类,也就是除了看见,还要懂。

举几个我们在 XCX-Pilot test 中常出现的例子:

我们常常遇到在 HMI 辅助驾驶交互界面中对于远距离物体、多车辆的目标物检测中,系统由于无法快速、提前捕捉目标物,所以在加速、刹车的体验上颇为突兀,例如在堵车、处理加塞等场景下,甚至出现漏检、系统直接退出的行为。

iX3、Model 3以及 ID.4 CROZZ 感知动态显示界面

其实这样的场景非常常见,例如部分车型在拥堵场景下,有车辆近距离加塞时系统会直接退出。

另外在例如我们测试的识别道路上摆放雪糕筒中,目前除了特斯拉以外大部分车辆无法识别雪糕筒等目标物,但在我们实测中目前还未有车辆作出刹车避让的动作,甚至部分车型还将其分类为单车、摩托车或者行人,最终无法作出决策,直接往前加速。

而同样的例子还有无法识别小目标物、特斯拉无法识别侧翻或者停在路边的横向车辆等等。

由于感知和分类是同样进行的,所以如果当无法做到时系统将会直接撞向目标物或者直接退出。

而高算力是否能帮助系统解决上述场景呢?

答案是不能,其所能解决的是如何让你「快」速识别目标物,但针对目标物的分类依旧无法解决根本「准」的问题。

目前有许多车企选择了例如加入激光雷达等传感器,来解决这些复杂的目标物场景。

这也是验证了当前伴随着算力的增长,实际上自动驾驶的技术没有同步的提高,也就是走进瓶颈带来的「静默期」。

#飞机先生观点总结#

深度学习中的“深度”指的是利用多层的神经网络,但实际上这样的学习方法缺乏了因果关系的验证方法,例如发现问题、提出问题到解决问题的方式,而是采用了概率推理的方式进行,对部分抽象的相邻概念势必存在挑战。

但不可否认的是深度学习算法在无监督学习中,能够对未标记的数据做新的感知与训练,伴随着神经网络的庞大, 从目前看,已经小到学会对猫的分类,大到 AlphaGo 的围棋大战以及智能驾驶的发展。

但通过大量数据进行训练,试图让 100 万台车上路后也能有 100 万台具备学习能力的车出现,在当前依旧是一个具备挑战的大难题。

关于智能驾驶 TOPS 算力的发展,显然只是一把助力我们爬得跟高的梯子,但我们需要辩证的思维,因为它并不能帮助我们通往月球。

写评论
积分赞赏
点赞
评论区
  • 编辑
  • {{is_favourite ? '已收藏' : '收藏'}}
  • 举报
  • 加入黑名单
  • 删除
  • 取消置顶
  • 置顶推荐
    • 6小时
    • 12小时
    • 24小时
    • 3天
    • 一周
    • 长期
  • {{digest?'撤销精华':'设为精华'}}
回到顶部