在变化条件无穷无尽的情况下,想要开发出一部在各种情况下都能自动驾驶的车辆,一点都不切实际。

然而拜人工智能之赐,我们能够教它怎么开车,而车跟你家中正处于青春期的孩子不同的是,你会看到车子注意着什么。

有了NVIDIA PilotNet 便可开发出一套藉由观察人类行为,就能学习驾驶技术的神经网络系统。这还不是我们的目标。我们开发出一套方法,让神经网络告诉我们在它对驾驶情况做出决定时,优先考虑的项目有哪些。

科技虽让我们创造出无法以人工编写程序的方式一一叙述、就能学习执行事物的系统,我们仍可解释系统做出决定这件事背后的奥秘。

NVIDIA 自动驾驶车部门首席建构师 Urs Muller 说:「想想你为何能在照片里认出某个人的脸,接着试着拆解整个过程,变成一套能写成程序的特定规则 — 你做不到的。那么问题就变成:『我们要将解决方法限制成只能用规则定义的内容吗?』

人工智能观看人类的驾车方式,进而学习如何驾车

我们使用自家的人工智能车辆 BB8 来开发和测试 DriveWorks 软件。品牌和款式并不重要,我们有用过林肯和奥迪的车,日后也会使用其它牌子的车。将从朝前架设的摄影机所取得的影像,变成行驶操控指令的深度神经网络,才是将 BB8 打造成一部人工智能车辆与展现深度学习实力的关键。

我们让神经网络研究人类驾驶者的开车方式,以训练它如何操控方向盘。神经网络使用安装在车上的摄影机,记录驾驶者看到的内容,再将影像加上驾驶人行车决定的资料。我们在各种环境里花费不少时间进行驾驶:在有和无车道标线的道路上、在乡村道路和高速公路上、在一天里有着各种照明情况的时间里,以及在各种天候条件下。

不用接收任何一个人工编写的指令,经过训练的神经网络就会教自己驾驶 BB8。它会通过观察的方式来学习。在我们训练神经网络后,它能在看到新环境时实时提出操控指令。在以下影片里可以看到相关过程。

看看我们的人工智能在想什么

开始运行 PilotNet 后,我们想更深入了解它是怎么做出决定,因此必须开发出一套判断神经网络在看着一个影像时,脑袋里想些什么的方法。

我们创造出一个视觉化图面,以了解 PilotNet 从车上摄影机取得新信息时最关切的项目。下图是在视觉化图面上重叠摄影机拍到的画面,绿色部分是神经网络优先注视的焦点。

这个视觉化的图面告诉我们 PilotNet 着重的项目,跟人类驾驶者重视的项目相同,包括车道标线、路缘和其它车辆。而在这方面出现革命性进展的是,我们从来没有直接告诉神经网络要关心这些事情,它是以观察的方式去学习行车环境里值得注意的事物,这跟驾训班学生的学习方式如出一辙。

Muller 说:「使用深度神经网络的优点是车子会自行思考和判断,不过要是我们不明白它是怎么做出决定,就不会真正有所进展。我们为了了解神经网络而开发出的方法,让我们取得改善系统所需的信息,也让我们更有信心。我说不清每一件要车子做的事,不过我可以展现出来,而车子现在也能将它学到的东西表现给我看。」

开始量产自动驾驶车之际,各种人工智能神经网络和更多传统技术会用在驾驶车辆上。除了控制方向盘的 PilotNet,车上还会配备经过训练且着重于侦测行人和车道、读取号志、避免碰撞等特殊任务的神经网络。

开去星巴克

使用多种各司其职的人工智能神经网络,将提高自动驾驶车的安全性和可靠性。我们的研究成果将这种精密的人工智能技术用在复杂的行车环境里,很快某一天你就能享受自动驾驶车的乐趣。