System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 使用异策略行动者-评价者强化学习进行分布式训练制造技术_技高网

使用异策略行动者-评价者强化学习进行分布式训练制造技术

技术编号:41768887 阅读:11 留言:0更新日期:2024-06-21 21:46
方法、系统和装置,包括编码在计算机存储介质上的计算机程序,用于训练动作选择神经网络,该动作选择神经网络用于选择要由与环境交互的智能体执行的动作。在一个方面,一种系统包括多个行动者计算单元和多个学习者计算单元。行动者计算单元生成经验元组轨迹,学习者计算单元使用该经验元组轨迹来利用强化学习技术更新学习者动作选择神经网络参数。强化学习技术可以是异策略行动者‑评价者强化学习技术。

【技术实现步骤摘要】

本说明书涉及强化学习。


技术介绍

1、智能体(agent)可以通过执行响应于接收到表征环境的当前状态的观察而选择的动作来与环境交互。可以根据神经网络的输出来确定响应于接收到给定观察而要由智能体执行的动作。

2、神经网络是利用非线性单元的一个或多个层来为接收的输入预测输出的机器学习模型。一些神经网络是除了输出层之外还包括一个或多个隐藏层的深度神经网络。每个隐藏层的输出被用作到网络中的下一层(即,下一隐藏层或输出层)的输入。网络的每个层根据相应一组参数的当前值从接收的输入生成输出。


技术实现思路

1、本说明书描述了一种分布式训练系统,该分布式训练系统被实现为在一个或多个位置的一个或多个计算机上的计算机程序,该系统可以使用异策略(off-policy)行动者-评价者强化学习技术来训练动作选择网络。

2、根据第一方面,提供了一种用于训练动作选择神经网络的方法,所述动作选择神经网络用于选择要由与环境交互的智能体执行的动作。所述动作选择神经网络被配置为根据所述动作选择神经网络的当前参数值处理包括所述环境的观察的输入以生成输出,所述输出包括对于所述智能体能够执行的预定的一组动作中的每个动作的相应的学习者策略得分。

3、该方法可以包括获得一个或多个经验元组的序列,其中,每个经验元组包括:(i)表征在相应的时间步骤处所述环境的实例的状态的观察、(ii)使用行为策略被选择为在所述相应的时间步骤处要由所述智能体执行的动作、(iii)当所述动作被选择时通过所述行为策略分派给所选动作的行为策略得分、(iv)表征在所述智能体执行所选动作之后环境实例的后续状态的后续观察、以及(iv)在所述智能体执行所选动作之后接收到的反馈值。行为策略可以是当获得经验元组时动作选择神经网络使用的策略。

4、该方法还可以包括调整状态值神经网络的当前参数值,其中,所述状态值神经网络被配置为根据所述状态值神经网络的当前参数值来处理包括所述环境的观察的输入,以生成输出,所述输出包括对于所述观察的状态值。

5、所述调整可以包括:使用所述状态值神经网络,根据所述状态值神经网络的当前参数值,并基于所述序列中的第一经验元组中包括的所述观察,确定对于所述序列中的所述第一经验元组中包括的观察的状态值。

6、对于经验元组的序列中的每个经验元组,所述调整还可以包括:使用所述动作选择神经网络,根据所述动作选择神经网络的当前参数值并基于所述经验元组中包括的所述观察,确定对于来自所述经验元组的所选动作的学习者策略得分;基于(取决于)对于所选动作的所述学习者策略得分与对于所选动作的所述行为策略得分的比来确定跟踪系数;基于(取决于):(i)对于所述经验元组的所述跟踪系数、以及(ii)对于所述序列中的所述经验元组之前的任何经验元组的跟踪系数,来确定对于所述经验元组的校正因子;以及确定对于经验元组的状态值时间差异;这可以表示经验元组中的观察和后续观察的状态值之间的差异,并且可以至少基于:(i)所述经验元组中包括的所述反馈值、(ii)通过根据所述状态值神经网络的当前参数值处理所述经验元组中包括的所述观察而生成的对于所述经验元组中包括的观察的状态值、以及(iii)通过根据所述状态值神经网络的当前参数值处理所述经验元组中包括的所述后续观察而生成的对于所述经验元组中包括的所述后续观察的状态值。

7、所述调整还可以包括至少基于:(i)所述校正因子、(ii)所述状态值时间差异和(iii)对于所述序列中的所述第一经验元组中包括的所述观察的所述状态值,确定对于所述序列中的所述第一经验元组中包括的所述观察的状态值目标;确定状态值损失函数相对于所述状态值神经网络的参数的梯度,其中,所述状态值损失函数至少基于所述状态值目标;并基于所述梯度调整所述状态值神经网络的当前参数值。

8、该方法还可以包括至少基于(取决于):(i)对于来自所述序列的所述第一经验元组的所选动作的所述学习者策略得分与所述行为策略得分的比、以及(ii)所述状态值神经网络通过根据所述状态值神经网络的当前参数值处理一个或多个经验元组中包括的观察而生成的状态值,来调整所述动作选择神经网络的当前参数值。

9、该方法的实施方式适于在具有多个行动者(行动者计算单元,潜在地数千个行动者)以及实现该方法的一个或多个学习者(学习者计算单元)的分布式计算系统上实现。例如,在实施方式中,行动者将经验元组的序列(经验的轨迹)传送给中央化学习者,而不是传送相对于中央策略服务器的参数的梯度。但是,由于用于生成轨迹的策略可能在梯度计算时落后学习者上的策略几次更新,因此学习将成为异策略的。上述方法结合了改善这种有害差异的跟踪系数。在实施方式中,因此可以将由行为策略生成的经验的轨迹用于学习对于学习者策略的值函数(状态值),其不同于行为策略。因此,该方法的实现方式特别适合于在高度分布式的计算系统上的实现,而不牺牲训练稳定性或数据效率。

10、该方法的实施方式还适于并行化。例如,学习者参数可以跨一组分布式学习者分布,并且行动者可以并行地从所有学习者获取参数,同时仅将观察发送给一个学习者。这可以避免单个专用处理器的瓶颈,否则该瓶颈可能是训练期间的限制因素。

11、另外,由于在实施方式中,学习者在整个批或轨迹的序列上执行更新,因此学习者能够将这些轨迹上的操作并行化。例如,在学习者包括卷积神经网络之后是lstm(长期短期记忆)的情况下,学习者可以通过将时间维度折叠为批维度来并行地将卷积网络应用于所有输入。类似地,一旦计算出所有lstm状态,学习者就可以将lstm之后的完全连接输出层并行地应用于所有时间步骤。这可以将有效批大小增加到数千个。

12、因此,该方法的实施方式适于解耦的分布式架构和并行化操作,并且可以实现非常高的吞吐量,例如,相对于其他技术改进超过一个数量级。该方法的实施方式也非常有数据效率,也就是说,它们可以使用更少的数据进行学习,但是仍然可以实现更好的最终性能。例如,与某些其他技术相比,该方法的实施方式以及对应的系统可以在数据效率上高出一个数量级,并因此降低了处理功率。一些实施方式对于选择超参数值和网络架构还是稳健的。

13、该方法的实施方式和对应系统的另一个优点是,它们能够并行地学习多个不同的任务。例如,不是将相同的任务分配给所有行动者,而是不同的行动者可以被分配以不同的任务,例如,将固定数量的行动者分配到每个任务。该方法/系统本身不需要知道正在对其进行训练或评估的任务。

14、因此,在一些实施方式中,该方法可以在包括多个行动者计算单元的系统中实施,每个行动者计算单元被配置为维护相应的行动者动作选择神经网络并执行行动者操作,所述行动者操作包括生成一个或多个经验元组的轨迹。生成经验元组可以包括接收表征所述环境的实例的当前状态的观察。生成经验元组还可以包括使用所述行动者动作选择神经网络根据所述行动者动作选择神经网络的当前参数值并基于所述观察,确定要由所述智能体执行的所选动作以及对于所选动作的策略得分。生成经验元组还可本文档来自技高网...

【技术保护点】

1.一种由一个或多个计算机执行的方法,所述方法包括:

2.根据权利要求1所述的方法,还包括,确定考虑当前动作选择策略和异策略动作选择策略之间的差异的校正项,包括:

3.根据权利要求2所述的方法,其中,基于跟踪系数确定校正项,包括:

4.根据权利要求3所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

5.根据权利要求4所述的方法,其中,基于以下项的跟踪系数的乘积来确定该时间步骤的校正因子:(i)该时间步骤,以及(ii)该时间步骤之前的任何时间步骤,包括:

6.根据权利要求5所述的方法,其中,所述第一截断值大于或等于所述第二截断值。

7.根据权利要求3所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

8.根据权利要求7所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的,确定该时间步骤的状态值时间差异,包括:

9.根据权利要求7所述的方法,其中,确定校正项,包括:

10.根据权利要求1所述的方法,其中,确定定义状态值神经网络的预测目标的状态值目标,包括:

11.根据权利要求1所述的方法,其中,训练状态值神经网络以减小状态值目标与由状态值神经网络通过处理异策略轨迹中的第一观察生成的状态值之间的差异,包括:

12.一种系统,包括:

13.一种或多种非暂时性计算机存储介质,其存储指令,当由一个或多个计算机执行时,所述指令使所述一个或多个计算机执行操作,所述操作包括:

14.根据权利要求13所述的一种或多种非暂时性计算机存储介质,其中,所述操作还包括,确定考虑当前动作选择策略和异策略动作选择策略之间的差异的校正项,包括:

15.根据权利要求14所述的一种或多种非暂时性计算机存储介质,其中,基于跟踪系数确定校正项,包括:

16.根据权利要求15所述的一种或多种非暂时性计算机存储介质,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

17.根据权利要求16所述的一种或多种非暂时性计算机存储介质,其中,基于以下项的跟踪系数的乘积来确定该时间步骤的校正因子:(i)该时间步骤,以及(ii)该时间步骤之前的任何时间步骤,包括:

18.根据权利要求17所述的一种或多种非暂时性计算机存储介质,其中,所述第一截断值大于或等于所述第二截断值。

19.根据权利要求15所述的一种或多种非暂时性计算机存储介质,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

20.根据权利要求19所述的一种或多种非暂时性计算机存储介质,其中,对于异策略轨迹的一个或多个时间步骤中的,确定该时间步骤的状态值时间差异,包括:

...

【技术特征摘要】

1.一种由一个或多个计算机执行的方法,所述方法包括:

2.根据权利要求1所述的方法,还包括,确定考虑当前动作选择策略和异策略动作选择策略之间的差异的校正项,包括:

3.根据权利要求2所述的方法,其中,基于跟踪系数确定校正项,包括:

4.根据权利要求3所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

5.根据权利要求4所述的方法,其中,基于以下项的跟踪系数的乘积来确定该时间步骤的校正因子:(i)该时间步骤,以及(ii)该时间步骤之前的任何时间步骤,包括:

6.根据权利要求5所述的方法,其中,所述第一截断值大于或等于所述第二截断值。

7.根据权利要求3所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的每一个,确定该时间步骤的校正因子,包括:

8.根据权利要求7所述的方法,其中,对于异策略轨迹的一个或多个时间步骤中的,确定该时间步骤的状态值时间差异,包括:

9.根据权利要求7所述的方法,其中,确定校正项,包括:

10.根据权利要求1所述的方法,其中,确定定义状态值神经网络的预测目标的状态值目标,包括:

11.根据权利要求1所述的方法,其中,训练状态值神经网络以减小状态值目标与由状态值神经网络通过处理异策略轨迹中的第一观察生成的状态值之间的差异,包括:

12...

【专利技术属性】
技术研发人员:H·J·索耶L·埃思佩霍尔特K·西蒙扬Y·多伦V·菲罗伊V·米尼K·卡沃克库格鲁R·穆诺斯T·沃德T·J·A·哈利I·杜宁
申请(专利权)人:渊慧科技有限公司
类型:发明
国别省市:

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

1