4月22日,阿里达摩院发布了全球首个自动驾驶“混合式仿真测试平台”,采用虚拟与现实结合的仿真技术,引进真实路测场景和云端训练师,能够提供最贴近实际道路状况的模拟测试,并且模拟一次极端场景仅需30秒,系统每天虚拟测试里程可超过800万公里,将大幅度提升自动驾驶AI模型训练效率,加速迈进自动驾驶L5阶段。
或许很多人看到这里会觉得一脸茫然,但笔者却对此无比激动,先不要着急,且听我慢慢解析达摩院发布的“仿真路测平台”意味着什么。
要想了解这套平台的意义,首先要弄明白自动驾驶的实现方式。
简单理解来说可以分为:感知道路环境、处理数据并给出结果、控制车辆,其中最简单的是控制车辆方面,因为如今绝大部分车辆的方向、油门、刹车都是电子化控制,所以想要执行明确命令并不难,而真正难点在于感知道路环境和基于这些信息做出正确的决策。
专业说法为:感知、融合、决策、控制。即通过传感器将道路信息记录下来、把信息整合分类送入计算单元、处理数据后做出抉择、根据给出的决策控制车辆行驶。
难点即是感知、融合、决策阶段。
尽管近两年,自动驾驶经常被媒体所报道,但几乎所有人争执的焦点都在“激光雷达”“5G技术”“V2X(车联网,Vehicle to Everything)”这几个问题上,似乎大多数认为只要解决了“激光雷达成本”“5G技术普及”“V2X落地”等问题,完全自动驾驶就能迎刃而解。
错,这种观念其实与“我买了这款屏幕、键盘、鼠标就能上分”“我买了这个厨具就能做出好菜”差不多是一个逻辑。
激光雷达是传感器,存在问题的地方在于其成本和体积,高昂的成本使其无法大规模应用于民用车,庞大的体积导致车辆不美观也影响空气动力学。尽管近些年激光雷达的成本在大幅下降,以及在保证性能情况下,体积越来越小,但一个传感器硬件并非是决定自动驾驶发展的充分条件。
(激光雷达传感器效果)
5G技术则可以与V2X归位一类,5G技术本质上解决的是通讯速度和延迟问题,有5G技术的支持,V2X才能够实现。而这两者对自动驾驶的促进作用,在于通过大量车载、非车载的传感器互相沟通,提供几乎所有的环境信息,也就是环境感知的来源不再局限于单个车辆,而是所有联网的传感器都是汽车的“眼”;另外一个作用则是,由于通信速度得到了保证,那么信息处理单元也不再局限于单一车辆的计算力,可以将感知数据传输至云端处理器,而后将决策传输至车辆并执行,以此解决车载处理器算力不足的问题。
细心的你应该已经发现了,无论是5G还是V2X,本质上也只是能够解决感知层面问题,并且由于目前车载算力已经足够(如今Mobileye、英伟达、特斯拉等公司的车载自动驾驶芯片,从算力角度应对自动驾驶需求已经绰绰有余),其实云计算的收益也不高,所以这些仍然不是自动驾驶的核心痛点。
注意,笔者并没有说感知层面和算力层面不重要,因为没有足够的信息输入,就不足以得出正确判断,而没有足够的算力,就不足以在极短时间做出决策。
但是,信息不是越多越好,虽然信息越多,不确定性就会越少,但信息量一旦过了某个节点,其收益增速会逐渐下降,并且导致成本大幅上;同样算力的过剩,除了成本大幅上涨之外,并不会带来更多的益处(另外算力还受到功耗、体积等多种限制)。
那么多少是足够呢?
举个例子,上学的时候,有的人翻一遍书最后考试就能拿到高分,而有些人翻了无数遍书,最后考试还是不理想。大家都是一双眼睛、一对耳朵,最终却成绩不同,本质上是因为聪明程度或学习方法(思维、习惯)不同导致的。也就是说如果足够聪明,那么不需要太多的信息输入,也能拿到不错的成绩,即对于人来说,所谓的足够,主要取决于聪明程度。
注:聪明程度不等于算力,因为算力是一个数据处理量的绝对值,类似于CPU的主频;而聪明程度可以简单理解为是算力*学习方法(思维、习惯),也就是人们常说的天才不仅仅是智力高(算力高),更多的是后天培养的思维方式。
业界实现自动驾驶基本分为两种方式:“强感知、强智能”和“弱感知、强智能”,后一种方式目前只有少数企业在采用,也就是以视觉方案为主的策略,代表是特斯拉;前一种则是绝大部分企业采用,拥有激光雷达、高精地图等额外感知手段,提升“强感知”。
所谓的智能,即是聪明程度,抛开硬件的算力不谈(自动驾驶Tier1级别的处理器算力相差不大,且除了特斯拉之外都是采购第三方的芯片),各家厂商真正角逐的赛场,其实在学习方法(思维、习惯)的提高方面,换句话说,也就是软件层面的问题。这其实就是为什么现如今自动驾驶行业的发展,愈发偏向软件研发公司,例如华为、达摩院等企业的入场。
自动驾驶,需要应对的道路情况极为复杂,因为除了固定的道路信息之外,每个人、车都具有极强的不确定性,可能发生的情况接近于“无限”。如果由程序员来界定车辆在何种情况下进行某种操作,那么就是以“有限”对“无限”,根本没有胜算。所以业界无一例外,在对信息的整合处理阶段,都是采用人工智能的方式,对神经网络进行训练,通过深度学习(Deep Learning,机器学习的一种)的方式提高“智力”。
深度学习,是一种针对神经网络的训练方式。简单理解,即是通过电子解构模拟了人类大脑的学习方式,通过大量“学习材料”(数据)对其进行训练,即可使其获得类似人类一样认知世界和理解世界的能力。(神经网络原理参考笔者另一篇文章:《霹雳游侠》离现实还有多远?)
举个例子,拿一堆照片给神经网络学习,一开始准确率并不高,这就像小时候父母刚刚教你认识各种东西时一样的。但随着接触同类东西越来越多,次数越来越多,识别率会飞速提升,直到无限接近100%的识别率。
并且当训练到达一定级别时,就如同人类已经对周围事物相当熟悉,此时你并不需要仔细观察某物,或者需要多种信息交叉对比才能确定这玩意到底是啥,仅仅需要看一眼就能准确得知物体是什么。自动驾驶领域对神经网络的训练,也能达到同样的效果,一旦训练程度足够,那么感知层面所需要的信息量就很少。
(神经网络训练示意)
例如comma.ai在普通车型上,仅仅通过加装一部普通手机作为感知和运算单元,加上自己写的自动驾驶算法openpilot,就能较好实现L2.5级别自动驾驶。
创始人George Hotz是一位软件天才、黑科,曾在2007年破解第一代iPhone,2009年破解iPhone 3GS,以及后来破解索尼PS3、PSN。曾在特斯拉AP团队工作过,于2015年成立自己的人工智能公司comma.ai,专注于自动驾驶,利用神经网络和机器学习研发了openpilot系统,通过手机作为感知传感器和计算单元,实现L2.5级别自动驾驶。用户只需采购几百刀的设备,即可将几款指定车型变为L2.5级别自动驾驶车辆。
不过自动驾驶不同于考试,达到高分是不够的,终极目标需要的是无限逼近满分才行,毕竟汽车本质上是一台高速移动的“危险机器”,一个小错误都可能以生命为代价。
所以整个自动驾驶行业,从之前的硬件竞争,逐渐转变为了机器学习竞争。也就是说,谁能更好更快地训练自动驾驶AI,谁就具有真正的优势和技术壁垒。达摩院发布的自动驾驶仿真路测平台,就是为此服务的。
车辆所需的训练数据,来源无外乎两类:模拟器、实际道路。
一般来说,车辆在初期训练阶段都是在模拟器中进行的,优势在于可以24小时不停地进行学习,从而大幅提升基础自动驾驶能力。但问题在于,模拟器中虽说可以针对不同的道路环境进行自定义设置,但仍然比不上实际道路的复杂状况,也就是在模拟器中训练完成,犹如应试教育毕业的学生,与社会仍然存在脱节。
(图来自亿欧)
如果采用实际道路数据,效果会好很多,但是实际道路数据需要大量行驶在普通公开道路的车辆,而到达这个级别的车辆只有一个:特斯拉。
根据2月底举行的Scaled Machine Learning Conference(大型机器学习研讨会)中,特斯拉AI和视觉负责人Andrej Karpathy分享了最新的数据,在AP启用状态下共行驶了30亿英里,NOA(Navigate On Autopilot)启用状态下里程超过10亿英里,自动变道执行超过20万次,高级智能召唤使用次数超过120万次。
特斯拉自家的大型计算机集群项目Dojo可以将这些数据筛选整合,基于真实的路测信息对AP算法(神经网络)进行无监管训练和优化升级。但这样级别的规模和早于市场很多年的规划,不是哪个自动驾驶企业都能做到的,无论是售出车辆规模还是软件团队进度。例如投入自动驾驶长达十几年之久的谷歌团队Waymo至今的路测里程不过2000万英里而已。
多家研究机构表示,自动驾驶车辆需要积累177亿公里的实际路测数据,才能保证自动驾驶的安全性。这样就进入了死循环,自动驾驶的能力不够,产品力就不足以有吸引力,那么市场中行驶的自家车辆就少,而使用模拟器训练又无法与实际路测训练竞争。
所以达摩院发布的自动驾驶仿真路测平台就派上用场了。
该平台能够将现实的路况信息通过其他手段收集,并融合进模拟器环境中,也就是说神经网络系统能够得到比一般模拟器更加真实的训练,能够接近路测数据级别。该平台甚至通过算法模拟人类的不确定,对车辆进行随机干预,模拟各种现实中奇怪的驾驶习惯以及场景。并且由于性能强劲,传统极为复杂的场景需要仅1个月时间,而在达摩院这套平台中,仅需30秒即可完成复杂场景的构建和测试准备,每天可支持场景构建数量达百万级别。整体训练效率相比普通模拟器将提升百万倍。
这无疑对于其他自动驾驶企业来说,是个天大的喜讯。
不过值得注意的是,这个平台就像一个高级培训班,能够获得多少提升,还要看自己的算法优劣。因为本身深度学习本身并不复杂,一个略微懂Python的朋友也能够自己玩,比如Chares 2.0系统就是国外一个博主自己针对GTA5游戏,编写的自动驾驶软件,经过半年多的训练优化,已经能够在游戏中实现相对不错的效果。
但这东西就是入门简单,精通难,想要提高效率、优化算法,是一件极其复杂的事情。这也是为什么近几年,有不只一家公司被特斯拉起诉,前员工将部分算法代码“偷”到下家使用。
(前一阵自动驾驶公司Zoox承认了员工窃取特斯拉AP算法)
总结来说,自动驾驶发展道路上,硬件技术虽然重要,但只是门槛,真正的技术壁垒和难点,集中在自动驾驶神经网络的训练上。并且基于神经网络的训练模式,这种进步速度是超乎一般人想象的,最简单的例子就是谷歌的Alpha Go仅用几年时间,就击败了全球顶尖围棋高手。
当然想要完全克服所有场景下适用的完全自动驾驶(L5级别),还是需要大量工程师的长久努力,但如今自动驾驶的发展速度已经不能用日新月异来形容了,应该用每分每秒来计量。神经网络系统无时不刻通过大量数据在“进化”,就相当于一个顶尖天才从不休息地在高效学习,其结果可想而知。
达摩院此次发布的仿真路测平台或许很多人不在意,但是记住笔者的话,在不久的将来,或许你使用的自动驾驶系统就“毕业”于这里。