电子说
自动驾驶车辆采用神经网络来执行许多驾驶任务,从检测物体和预测其他人的行为方式,到规划汽车的下一步动作。一般情况下,训练单独的神经网络需要数周的微调和实验,以及大量的算力。现在,Waymo与DeepMind的研究合作,从达尔文对进化论中汲取灵感,使这项训练更加有效和高效。
神经网络的性能受训练方案的影响非常大,主要思路就是找到最优学习率、让神经网络在每次迭代后变得更好,但性能波动不需要太大。
寻找最佳训练方案(或“超参数方案”)通常是通过工程师的经验和直觉,或通过广泛的搜索来实现的。在随机搜索中,研究人员在多种类型的超参数上应用了许多随机超参数调度,以便独立地并行地训练不同的网络 ,然后可以选择性能最佳的模型。
因为并行训练大量模型在计算上是昂贵的,所以研究人员通常通过在训练期间监视网络,手动调整随机搜索,定期剔除最弱表现的运算并释放资源,以从头开始用新的随机超参数训练新网络。这种类型的手动调整可以更快地产生更好的结果,但这是非常耗费人力的。
为了提高这一过程的效率,DeepMind 的研究人员设计了一种基于进化竞争(PBT)自动确定良好超参数调度的方法,该方案结合了手动调整和随机搜索的优点。
基于PBT模型如何运作:
PBT的工作原理是同时启动许多超参数搜索,并定期进行“竞争”以比较模型的性能。从训练池中删除失败的模型,并且仅使用获胜模型继续训练,使用稍微突变的超参数更新。
PBT比研究人员采用的传统方法更有效,例如随机搜索,因为每个新的神经网络都继承了其父网络的完整状态,并且不需要从一开始就重新开始训练。此外,超参数不是静态的,而是在整个培训过程中积极更新。与随机搜索相比,PBT将更多的资源培训用于成功的超参数值。
实验取得了不错的进展,PBT算法不仅实现了更高的精度,并且减少24%的误报、保持了较高的召回率。
同时,PBT还节省了时间和资源。通过PBT训练的网络,时间和资源只有原来的一半。24%的误报,同时也能保持较高的召回率。此外,PBT所需的训练时间和计算资源仅为原来的一半。
现在,Waymo 已将 PBT 纳入了技术基础设施中,研究人员点点按钮就能应用该算法,DeepMind 每隔 15 分钟就会对模型进行一次评估,以让测试结果更准确。
这是Waymo第一次曝光的与DeepMind在网络上的合作,然而这种异步优化的PBT方法其实早就出现了。
它在Multi-Agent或者并行训练中被提到过,甚至在DeepMind 星际争霸II里的AlphaStar中都使用了该方法。主要用来自适应调节超参数。打破了通常的深度学习,超参数都是凭经验预先设计好的,会花费大量精力且不一定有好的效果,特别是在深度强化学习这种非静态(non-stationary)的环境中,要想得到SOTA效果,超参数还应随着环境变化而自适应调整,比如探索率等等。这种基于种群(population)的进化方式,淘汰差的模型,利用(exploit)好的模型并添加随机扰动(explore)进一步优化,最终得到最优的模型。
有学者曾分别从强化学习,监督学习,GAN三个方面做实验,论证了这个简单但有效的算法。
与其他领域不同的是,自动驾驶会涉及人身安全,所以应用起来不像博弈游戏一样随便,通过竞争筛选模型是一个优势,但同样也可能是个劣势,需要提供足够的种群才能让筛选出的网络结构变得意义。
全部0条评论
快来发表一下你的评论吧 !