编者按:在所有追逐自动驾驶的新创公司中,来自山景城的 Drive.ai 可能是一个特殊的存在,这家公司利用扩展性十足的深度学习训练自动驾驶汽车让外界印象深刻。
Drive.ai 联合创始人兼 CEO Sameep Tandon 认为,深度学习才是短期内打造出自动驾驶车辆的唯一可行之路。
“从长远来看,一个有效的学习系统也是最有意义的。驾驶不是件易事,有时许多微妙的问题会成为最大的困难,如果不想依靠深度学习来训练自动驾驶汽车,恐怕这类产品永远也无法面世。”Tandon 说。
虽然 Drive.ai 成立才两年时间,但这家公司的车队(4 辆车)已经开始在旧金山湾区上路了。
Drive.ai 专注于自动驾驶和人工智能,由来自斯坦福大学人工智能实验室核心成员建立。高举深度学习大旗,这家公司的自动驾驶汽车已经快速掌握了在各种复杂路况下让车辆实现自动驾驶的技巧。
“我认为这是业内头一次从深度学习的角度看待自动驾驶。”Tandon 说道。“这与传统自动驾驶来自机器人技术的观点截然相反。”Drive.ai 公司创始人兼董事长 Carol Reiley 补充道。“大多数公司只是将深度学习技术看作一个零部件,但我们则看得更加全面。”
对大多数公司来说,深度学习只是用于自动驾驶汽车感知和识别周围物体。深度学习确实擅长这部分,因为只要它学会了识别一种特殊模式,即使你不再一一教授,它也能将物品的识别能力扩展到其他前所未见的事物身上。换句话来说,擅长学习的“深度学习”能举一反三,通过自己的“努力”自学成才,识别出路上形形色色的行人。
当然,识别出图像中的行人只是一种感知模式,在决策和路径规划时,深度学习还会形成其他模式。
举例来说,在“十字路口”和“红灯是否右转”两种情形下,深度学习就很有用。不过,这项技术能根据现场情况自主判断的能力反而成了汽车厂商最担心的,这种“类人”的模式识别能力会让车辆做出一些微妙的选择,而这种有别于基于规则(rule-base )系统的能力有时可能会让乘客陷入麻烦。
黑盒子
深度学习在模式识别上的能力绝对是该技术最好的卖点,但由于模式识别是神经网络算法的一部分,因此许多人担心该系统是一个“黑盒子”。
简答来说,一旦深度学习系统训练完成,只要给它输入数据,它就会对这些数据进行解读并输出结果。不过,我们现在无法理解深度学习在输入和输出阶段之间到底是如何做决定的,这也是许多企业选择传统决策方式且限制深度学习在感知和识别上应用的原因。
业内认为,如果自动驾驶系统出现错误,厂商必须找到该错误并进行修复,但如果连错误是如何产生的都无法知晓,又怎么能避免错误再次发生?
Tandon 并不否认这个问题,但他表示:“我们不但想让深度学习在决策和感知上协助自动驾驶汽车,还想给这些车辆‘灌输’规则和人类常识,确保车辆安全。”
在处理黑盒子问题时,Drive.ai 避开了许多雷区,摒弃了端对端系统。Tandon 表示:“如果在运用深度学习时能将其打散成数块,就会发现我们可以使用不同方法对其进行验证,这样一来你对系统的稳定运转就更有信心了。”
Drive.ai 的研发人员表示他们掌握了一窥黑盒子内部的小技巧,得到的信息足以验证这个“黑盒子”到底发生了什么。对于该方法,Tandon 解释称:“当我们开始打造深度学习感知系统时,发现挑战性最大的场景之一就是立交桥。”
立交桥遮挡形成的阴影会让感知系统产生误报(发现有障碍)。在学习阶段,Tandon 表示团队可以让算法不断尝试挑战此类复杂场景,随后利用一些人造的案例来扩充数据库。
拿到了结果找出系统存在的缺陷后,就可以对场景进行针对性修改。通过不断训练,立交桥对感知系统来说已经是小菜一碟。“随后你就能在系统的级别对其进行验证了。”Tandon 表示。
深度学习系统的训练
深度学习系统的成长靠的是源源不断的数据。对大多数公司来说,尽可能多地搜集数据就成了公司的核心任务。
不过,Drive.ai 在搜集数据上有自己的想法,这家公司更重视数据的质量而非数量。此外,为数据提供标注也是它们训练深度学习算法时的独门绝技。
为数据做标注是一项费时费力的工作
为数据做标注虽然简单,但这项工作却非常冗长乏味。有时,标注员需要在非常简单的数据片段上标出车辆、行人、路标、交通灯和任何与自动驾驶有关的物体。
“大公司一般都有一支规模庞大的数据标注团队。”Reiley 说道。“这些人每天围着雷达图像上的方盒子做标注,工作量非常巨大。Drive.ai 也有此类工作,不过我们一直在努力优化以便提高速度。”
与大公司相比,Drive.ai 的标注团队并不大,因为这家公司的数据标注工作是由深度学习完成的。“在许多场景下,我们的深度学习系统就能胜任主要工作了,团队成员需要的只是确认数据标注是否准确。”Tandon 解释道。“当然,在有些场景下还需要人类出手,标注员会帮深度学习系统铺路,以便它们能不断进步。眼下,在某些场景中深度学习系统的标注能力比人类还要强。”
不过,既然 Drive.ai 能找到这种行之有效的方法,为什么其他公司就没走上类似的道路?
“我们也感到很奇怪,到底是什么阻挡了其他公司全面使用深度学习系统?”Tandon 说道。“细想之后我们发现,别的公司面临的问题可真不少,毕竟这套系统高度集成化,想让每个部分都各司其职可不容易。”
Reiley 同意这一观点,她认为:“每一个决定都必须是软件驱动并针对深度学习和软硬件整合优化的。为了顺利完成该步骤,大家都专注于算法,但 Drive.ai 有其他应用。自动驾驶技术可不是个简单的算法,它牵涉的复杂软硬件问题是前人从未解决过的。”
雨中的传感器
Drive.ai 的自动驾驶硬件在设计之初就考虑到了兼容性问题,其核心部件是车顶的传感器阵列,包括摄像头和激光雷达,只需简单改装就能用在大多数车辆上。
与此同时,这套系统还能用上原车自带的传感器,如自适应巡航时用到的雷达和后置摄像头。除此之外,Drive.ai 还想利用大屏幕完成车辆与路上行人或其他车辆司机的“交流”。
总的来说,Drive.ai 的自动驾驶系统共有 9 个高清摄像头、2 个雷达和 4 个激光雷达,该系统会不断收集数据,以供深度学习和自动驾驶系统使用。
虽然传感器售价依旧昂贵,但 Drive.ai 联合创始人 Joel Pazhayampallil 表示,现在系统内的传感器性能有些过剩,未来会逐渐减少传感器数量。
“我认为未来用不到这么多传感器,可能现在的一半就完全足够。”Pazhayampallil 说。“我们的算法在不断进步,将不同的传感器数据结合后,传感器的数据收集能力有了大幅提高,激光雷达负责低分辨率深度数据,而摄像头则搜集高分辨率环境信息。”
这种深度学习做出的多通道冗余决策是自动驾驶车辆的优势之一,它能在传感器失灵时保证车辆的安全。深度学习算法可在感知数据缺乏时继续工作,这也是传统的基于规则(rule based)系统所不具备的。
需要注意的是,这里的传感器失灵可能不是软硬件出了故障,而是因某些原因(如炫光、黑暗和被水遮挡)无法搜集到可用的数据。
因此,雨中自动驾驶挑战性较高,除了水分会吸走激光雷达的能量、路面反光严重之外,传感器被水滴遮挡也是重要原因之一。“如果想让自动驾驶汽车适应更多复杂的环境,就得在摄像头、激光雷达、雷达等设备发生故障时应对自如。”Tandon 说道。
上路测试
在我们试乘 Drive.ai 的自动驾驶车辆时, Drive.ai 技术主管 Tory Smith 全程陪同。试乘阶段天公作美,加州过去几个月的坏天气并未出现,因此传说中的雨中自动驾驶我们没能体验到。
Drive.ai 的目标是 Level 4 级别的自动驾驶,但在现有的法律法规下,主驾驶位上还需要司机以备不时之需。在20 分钟的试乘过程中,Drive.ai 的自动驾驶车辆穿越了山景城郊区,期间有 16 个叉路口和 1 个十字路口。
总得来说,这辆车运行顺畅,能胜任驾驶任务,不过与普通人类驾驶员相比,它有时会犹豫不决。Smith 称这是他们有意为之,“自动驾驶车辆必须为人所接受,如果在某些情况下它比人类驾驶员还大胆,乘客就会觉得不舒服。此外,在测试中还是谨慎为好。”
在试乘过程中,Drive.ai 的目标算是达到了,我们只遇到了一次司机介入的情况。说实话,这种比较无聊的乘车感受确实更符合自动驾驶汽车的身份。
这次司机介入是因为要右转驶入一条主路,虽然在加州红灯也可以右转,但 Drive.ai 的车辆还是会停下等待。
Smith 表示 Drive.ai 做出这样的选择是因为传感器性能有限。“我们的激光雷达视距只有 50 到 75 米,在车速达 45 或 50 英里(约合 72-80 千米/小时)时,车辆就无法精确判断交通通行情况了。
随后当绿灯亮起,车辆转到了最右车道准备转弯,有辆卡车停在路边阻断道路,因此司机只好切换到手动模式绕过卡车,随后再次开启自动驾驶系统。
“通常我们可能会等待卡车驶离道路,”Smith 说道。“在路径规划上,让车辆能自主躲过路上的障碍物是我们正在努力的目标。”不过,这个问题可不仅是路径规划那么简单。对于自动驾驶汽车来说,它可以选择等待或者绕过卡车。但是,怎么来判断卡车的状态?通过引擎声、车辆尾灯还是卡车周围的活动?
在这种情况下做出判断对驾驶员来说是小菜一碟,但想让自动驾驶汽车学会就得训练,让它知道在哪种情况下应该做出哪些反应。
“人类不太擅长做非常精确的事情,但处理模棱两可的事情却非常在行,因此传统基于规则的(rule-base)理念根本行不通,因为各种复杂的路况实在是太多了。在深度学习架构内开发一个系统就能弥补这一缺陷,在遇到复杂情况时让车辆做出自主判断,这是一种靠直觉来解决问题的方式。”Smith 说道。
对 Drive.ai 来说,驾驶员介入的情况正是它们最珍贵的财富,为了找到这些需要介入的情况,Drive.ai 做了大量测试。
像人类一样驾驶
在试乘结束后,Smith 问了一个问题。“与其他公司的自动驾驶汽车相比,有没有感觉我们的车跑起来更像人类驾驶员?”
把机器人与人相提并论很容易引起歧义(人类驾驶的事故率稍高,但也有领先机器的地方),Smith 举了一个例子: Drive.ai 的车辆如何探测交通信号灯。
目前,业内通行的做法是直接在地图上标出车辆行驶区域内每个交叉路口的位置,这样一来自动驾驶汽车就知道什么时候该看红绿灯了。
如果行驶范围限制在某个区域,这种做法有其可行性。但一旦行驶范围扩大,自动驾驶车辆可能处理不了这种情形。与通行做法不同的是,Drive.ai 会搜集更多有关交通信号灯的数据,对不同路口、角度、时间和天气情况对这些数据进行标注后,深度学习系统就能像人类一样识别出交通信号灯了。
“深度学习还有个优势,那就是它能有效利用周边环境信息,而不是只盯着交通信号灯。举例来说,有时我们不用看信号灯也知道该停车还是前进,因为我们可以根据前方车辆动向判断现在的情况。如果在标注时将这种情况考虑在内,就能让自动驾驶车辆像人类一样驾驶。未来,这种判断方式还能帮深度学习系统处理其他任务。”Smith 解释道。
Drive.ai 的未来
对于公司未来的发展轨迹,Tandon 信心十足。“今年我们的自动驾驶车辆就将正式上路测试,未来 6 个月我们的车队就会小规模上路供用户使用。一两年内,在特定的区域内 Drive.ai 绝对能摆脱驾驶员的束缚,实现彻底的自动驾驶。现在唯一的问题是,Drive.ai 征服湾区的脚步到底能走多快,我们何时才能进军下一个城市?”
Drive.ai 起初将主要精力放在物流领域,对这家公司来说送货比送人更加重要。因此,Drive.ai 需要解决的问题就少了很多——至少不用考虑乘客接受度。
除了走好当下的道路,Tandon 对未来也兴趣十足。“如果我们能将好的策略和好的技术结合,自动驾驶汽车就能成为第一种在现实世界范围使用的机器人。满世界的机器人会让我激动得直起鸡皮疙瘩,而自动驾驶汽车可能就是首款与人类朝夕相处的机器人。”