Waymo首次公布技术细节,自动驾驶老司机是这样炼成的
虽然Waymo已经在美国当地时间12月5日宣布正式商用,但是外界对Waymo的技术细节知之甚少。Waymo也很清楚这种信息差异会让外界对其技术信心不足。这是Waymo需要改变的地方——公布更多技术细节,提高公众信心。
在美国当地时间12月11日,Waymo在其官方博客上首次对外发布了部分技术细节——如何用名为“ChauffeurNet”的深度循环神经网络【recurrent neural network (RNN) 】来打造世界上最有经验的司机。
Waymo要打造的最有经验的机器人司机像任何一个优秀司机一样,需要通过识别周围的物体,从而感知和理解周围的世界,并预测它们下一步的行为,然后在遵守交通规则的前提下安全驾驶。
近年来,用大量标记数据对深层神经网络进行监督训练,在很多领域得到了应用,特别是在感知和预测领域,可以迅速提高技术水平,Waymo在这方面也有广泛的应用。
随着神经网络在感知领域的成功,接来下的想法就是,Waymo已经拥有了超过1000万英里的自动驾驶数据,是否可以使用纯粹的监督的深度学习方法来训练出最有经验的司机呢?
因此,数据专家创建了一个神经网络,不仅能模拟开车,在具有挑战性的情形下,还足以驱动一辆真正的车进行测试。但是,简单的模仿大量的“好司机”的驾驶习惯,并不能创造出一种功能强大、可靠的自动驾驶技术。
相反,Waymo发现从良好的感知和控制中引导简化学习任务是有价值的,同时,除了模仿“好司机”的驾驶习惯,还要模仿“坏司机”不良驾驶行为,用额外的不良驾驶行为来训练出更好的驾驶行为。
01 创建ChauffeurNet
为了通过模仿“好司机”来驾驶,Waymo创建了一个名为“ChauffeurNet”的深度循环神经网络(RNN),该网络通过观察场景的中层表示作为输入来发出驾驶轨迹。中间层的表示不直接使用原始的传感器数据,从而分解出感知任务,并允许结合真实和模拟数据,以便更容易地进行学习。
如下图所示,这个输入表示由一个自顶向下(鸟瞰)的环境视图组成,该视图包含诸如地图、周围对象、交通灯状态、汽车轨迹信息。该网络还提供了一条谷歌地图风格的路线,指引车辆到达目的地。
ChauffeurNet在每次迭代中输出未来驱动轨迹上的一个点,同时将预测的点写到内存中,该内存将在下一次迭代中使用。从这个意义上说,RNN不是传统的,因为内存模型是地精心设计的。ChauffeurNet的轨迹输出由10个未来点组成,然后被提供给一个低级控制器,该控制器将其转换为控制指令,如转向和加速,使其能够驾驶汽车。
此外,还使用了一个单独的“PerceptionRNN”头,它迭代地预测环境中其他移动对象的未来,并且这个网络与预测软件驾驶的RNN共享特性。未来的一种可能性是,在选择我们自己的驾驶轨迹的同时,预测其他因素的反应,这一过程会发生更深层次的交叉。
驱动模型的呈现输入和输出
从左到右:路标、红绿灯、限速和路线。从左到右的底部行:当前代理框、动态框、过去代理位姿和输出未来代理位姿。
ChauffeurNet有两个内部部分:FeatureNet和AgentRNN
AgentRNN消耗一个图像的呈现过去代理姿势,一组特性计算卷积网络“FeatureNet”呈现的输入,与最后一剂盒渲染图像,一个外显记忆呈现的预测未来的代理对预测未来代理构成和自顶向下的鸟瞰图图。这些预测用于更新AgentRNN的输入,以便预测下一个时间步骤。
02 模仿“好司机”
Waymo用相当于60天“好司机”驾驶数据的例子对模型进行了训练,同时加入了训练技术,以确保网络不会简单地继续从过去的运动中推断,而是对环境做出正确的反应。
正如许多人在我们之前发现的,包括上世纪80年代的阿尔文项目(ALVINN Project),纯粹模仿“好司机”给出的模型,只要情况不太偏离培训中看到的情况,模型就能平稳运行。
该模型学会了对诸如停车标志和交通灯等交通管制作出适当的反应。然而,会有偏差,例如对轨迹引入扰动或将其置于接近碰撞的情况下,会导致其表现不佳,因为即使在使用大量数据进行训练时,它也可能从未在训练过程中看到过这些确切的情况。
经过纯模仿学习训练的Agent被困在一辆停着的车辆后面
在沿着弯曲的道路行驶时无法从偏离的轨迹中恢复
上述两幅动图备注:蓝绿色的路径表示输入路径,黄色的框表示场景中的动态对象,绿色的框表示Agent,蓝色的点表示Agent的过去位置,绿色的点表示预测的未来位置。
图片新闻
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论