使用分布式优先化回放的强化学习制造技术

技术编号:24597415 阅读:59 留言:0更新日期:2020-06-21 03:47
方法、系统和装置,包括编码在计算机存储介质上的计算机程序,用于训练动作选择神经网络,该动作选择神经网络用于选择要由与环境交互的智能体执行的动作。该系统之一包括(i)多个行动者计算单元,其中每个行动者计算单元被配置为维护动作选择神经网络的相应副本并执行多个行动者操作,以及(ii)一个多个学习者计算单元,其中一个或多个学习者计算单元中的每一个被配置为执行多个学习者操作。

Reinforcement learning with distributed priority playback

【技术实现步骤摘要】
【国外来华专利技术】使用分布式优先化回放的强化学习相关申请的交叉引用本申请是2017年10月27日提交的美国临时专利申请第62/578,384号的非临时申请并要求其优先权,通过引用将该申请的全部内容合并于此。
技术介绍
本说明书涉及强化学习。在强化学习系统中,智能体(agent)通过执行由强化学习系统响应于接收表征环境的当前状态的观察选择的动作来与环境交互。一些强化学习系统根据神经网络的输出选择响应于接收给定观察要由智能体执行的动作。神经网络是采用非线性单元的一个或多个层来为接收的输入预测输出的机器学习模型。一些神经网络是除了输出层之外还包括一个或多个隐藏层的深度神经网络。每个隐藏层的输出被用作到网络中的下一层(即,下一隐藏层或输出层)的输入。网络的每个层根据相应一组参数的当前值从接收的输入生成输出。
技术实现思路
本说明书总体描述强化学习系统,其训练神经网络,该神经网络用于选择要由与环境交互的强化学习智能体执行的动作。本说明书中描述的主题可以在特定实施例中实现,以便实现以下优点中的一个或多个。本说明书中描述的主题涉及用于大规模深度强化学习的训练系统和训练技术,其使智能体能够从比先前使用现有训练技术可获得的训练数据显著更多的训练数据更有效和更快地学习。该系统具有分布式架构,其使行动与学习脱钩:多个行动者计算单元(或行动者)通过根据共享的动作选择神经网络选择动作来与自己的环境的实例进行交互,并在共享的经验回放存储器中积累所得到的经验;并且一个或多个学习者计算单元(或学习者)回放优先化的经验的样本并更新动作选择神经网络。行动和学习两者可以跨多个计算单元分布,例如,跨数百个CPU或GPU分布。这种分布式架构允许经训练的神经网络可以在挂钟学习速度和最终性能两方面在各种范围的离散和连续任务中实现最新技术水平的结果。具体地,通过采用可以并行地生成大量训练数据(训练元组)的多个行动者,训练技术可以比现有方法更快地生成训练数据,从而减少了训练时间,同时仍实现高质量的性能。此外,训练技术可以生成多样化的经验组,然后通过利用优先级来识别最有用的经验元组并从中学习,从而提高经训练的动作选择神经网络的性能。更具体地,训练系统通过在行动者生成经验元组时使行动者生成初始优先级,从而生成准确的初始优先级而无需在计算或挂钟时间方面的任何附加成本,因为行动者已经在计算计算优先级所需的某些值。此技术确保进入回放存储器的经验数据具有更准确的优先级(与先前系统相比,先前系统将优先级初始化为目前为止看到的最大优先级,并且仅在对经验元组和优先级进行采样后才更新优先级)。由于在行动者和学习者之间共享优先级,因此任何行动者发现的高优先级数据都可以使整个训练系统受益。另外,通过共享经验而不是像一些常规方案中那样共享梯度,系统可以用中心化回放存储器批处理所有通信(例如,系统可以从回放存储器选择包括多个经验元组的批次,并使用该批次更新神经网络),从而提高了系统的效率和吞吐量。通过这种方法,行动者和学习者可以在不限制性能的情况下在不同的数据中心中运行。本文描述的训练技术不仅对于模拟环境有用而且对于各种现实世界的应用都是有用的,诸如机械臂农场、自动驾驶汽车、在线推荐系统或其中数据由同一环境的许多实例生成的其他多用户系统。本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐明。根据说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。附图说明图1示出了示例强化学习系统。图2是用于生成经验元组和优先级并将其存储在回放存储器中的示例过程的流程图。图3是用于更新动作选择神经网络的网络参数的示例过程的流程图。各附图中同样的参考数字和标记指示同样的要素。具体实施方式本说明书总体上描述了强化学习系统,其训练神经网络,该神经网络用于选择要由与环境交互的强化学习智能体执行的动作。为了使智能体与环境交互,该系统接收表征环境的当前状态的数据,使用动作选择神经网络从一组动作选择响应于接收的数据要由智能体执行的动作,然后指令或以其他方式使智能体执行所选择的动作。在本说明书中表征环境的状态的数据将被称为观察。术语“强化学习技术”是指对于多个步骤中的每个步骤执行以下子步骤的技术:(1)基于表征环境的当前状态的输入数据,动作选择神经网络选择动作;(2)生成奖励(reward)值,该奖励值指示在智能体执行动作时这在多大程度上有助于执行任务;(3)基于所选择的动作、用于选择动作的环境的状态以及奖励值来更新神经网络。通常,多个步骤包括步骤的一个或多个序列,其中,环境的初始状态在每个步骤被相继更新。换句话说,在步骤的每个序列中,环境对于该序列的第一步骤的当前状态为初始状态,并且在该序列的每个后续步骤,环境的当前状态为对先前步骤被执行之前环境的当前的状态执行先前步骤中选择的动作而导致的状态。网络生成的输出的特定格式和网络架构取决于用于训练的强化学习技术,例如Q学习、DDPG(深度确定性策略梯度)学习、A3C(异步优势行动者-评价者(asynchronousadvantageactor-critic))学习等。Q学习技术是指这样一种强化学习技术,其中,使用Q函数执行子步骤(1),该Q函数是任何给定动作将接收的奖励的估计;例如,通过(至少以一定的概率)选择最大化Q函数的动作。更一般地,“n步骤Q学习技术”,其中,n表示至少为1且通常大于1的整数,是指在其中使用Q函数执行子步骤(1)的强化学习技术,该Q函数是n个相继动作的序列将接收的奖励的估计。无论哪种情况,Q函数都可以通过第二神经网络来实现。DDPG学习和A3C学习是行动者-评价者强化学习技术(或简称为“行动者-评价者技术”)的示例,其中,在子步骤(3)中,基于接收当前状态和生成的奖励的“评价者”(评价者神经网络)的输出来更新神经网络。在一些其他实施方式中,环境是现实世界环境,并且智能体是与现实世界环境交互的机械智能体。例如,智能体可以是与环境交互以完成特有任务(例如,以将感兴趣的对象定位在环境中或将感兴趣的对象移动到环境中的指定位置或导航到环境中的指定目的地)的机器人;或者智能体可以是导航通过环境的自主或半自主陆地或空中或海洋载具。在这些实施方式中,观察可包括例如图像、对象位置数据和传感器数据中的一个或多个,以在智能体与环境交互时捕获观察,例如来自图像、距离或位置传感器或致动器的传感器数据。例如,在机器人的情况下,观察可以包括表征机器人的当前状态的数据,例如,以下中的一个或多个:关节位置、关节速度、关节力、扭矩或加速度,例如,重力补偿扭矩反馈以及机器人保持(hold)的物品的全局或相对姿态。在机器人或其他机械智能体或载具的情况下,观察可以类似地包括位置、线速度或角速度、力、扭矩或加速度以及智能体的一个或多个部分的全局或相对姿态中的一个或多个。可以在1、2或3维中限定观察,并且观察可以是绝对和/或相对观察。观察还可以包括例如感测的电子信号,诸如电动机电流或温度信号;和/或例如来自相机或LIDAR传感器的图像或视本文档来自技高网...

【技术保护点】
1.一种用于训练动作选择神经网络的系统,所述动作选择神经网络具有多个网络参数并且用于选择要由与环境交互的智能体执行的动作,所述系统包括:/n多个行动者计算单元,每个行动者计算单元被配置为维护动作选择神经网络的相应副本并执行行动者操作,所述行动者操作包括:/n接收表征环境的实例的当前状态的观察,/n使用动作选择神经网络副本并根据网络参数的当前值,选择要由智能体执行的动作,/n获得表征在智能体执行所选择的动作之后的环境实例的转变数据,/n从观察、所选择的动作和转变数据生成经验元组,/n确定经验元组的优先级;以及/n将经验元组与优先级关联地存储在每个行动者计算单元能够访问的共享存储器中;以及/n一个或多个学习者计算单元,其中,所述一个或多个学习者计算单元中的每一个被配置为执行学习者操作,所述学习者操作包括:/n从共享存储器采样一批经验元组,其中,采样受到共享存储器中的经验元组的优先级的偏倚;以及/n使用采样的经验元组,利用强化学习技术来确定网络参数的更新。/n

【技术特征摘要】
【国外来华专利技术】20171027 US 62/578,3841.一种用于训练动作选择神经网络的系统,所述动作选择神经网络具有多个网络参数并且用于选择要由与环境交互的智能体执行的动作,所述系统包括:
多个行动者计算单元,每个行动者计算单元被配置为维护动作选择神经网络的相应副本并执行行动者操作,所述行动者操作包括:
接收表征环境的实例的当前状态的观察,
使用动作选择神经网络副本并根据网络参数的当前值,选择要由智能体执行的动作,
获得表征在智能体执行所选择的动作之后的环境实例的转变数据,
从观察、所选择的动作和转变数据生成经验元组,
确定经验元组的优先级;以及
将经验元组与优先级关联地存储在每个行动者计算单元能够访问的共享存储器中;以及
一个或多个学习者计算单元,其中,所述一个或多个学习者计算单元中的每一个被配置为执行学习者操作,所述学习者操作包括:
从共享存储器采样一批经验元组,其中,采样受到共享存储器中的经验元组的优先级的偏倚;以及
使用采样的经验元组,利用强化学习技术来确定网络参数的更新。


2.根据权利要求1所述的系统,其中,确定经验元组的优先级包括:
根据强化学习技术确定所选择的动作的学习误差;以及
从学习误差确定优先级。


3.根据权利要求2所述的系统,其中,所述优先级是学习误差的绝对值。


4.根据权利要求1-3中的任一项所述的系统,其中,所述行动者计算单元中的两个或更多个使用不同的探索策略来选择动作。


5.根据权利要求1-4中的任一项所述的系统,其中,所述不同的探索策略是具有不同的ε值的ε...

【专利技术属性】
技术研发人员:D巴登G巴特马伦J全DG霍根
申请(专利权)人:渊慧科技有限公司
类型:发明
国别省市:英国;GB

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1