优化经验回放采样策略的强化学习方法与流程

文档序号:21644213发布日期:2020-07-29 02:57阅读:3858来源:国知局
优化经验回放采样策略的强化学习方法与流程

本发明涉及强化学习技术领域,尤其涉及一种优化经验回放采样策略的强化学习方法。



背景技术:

近年来,随着在围棋、视频游戏及仿真机器人控制上的突破性成功,深度强化学习已经成为人工智能领域的一个重要研究方向。许多工作致力于扩大强化学习算法在不同场景中的泛用性,而将强化学习算法用于机器人的控制中是其中的方向之一。然而,虽然目前的强化学习算法在许多任务上均表现出优异的性能,但它们往往需要大量的环境交互才能训练出性能足够好的策略。在真实环境中,环境交互意味着智能体需要在真实的环境中行动。智能体(如机器人)在真实环境中的行动的耗时远大于仿真环境,而且需要额外的人力监督和电力资源等。因此,大量的环境交互在真实环境中是不可行的,低下的样本效率限制了目前强化学习算法在实际场景中的广泛应用。

经验回放技术是目前深度强化学习算法中的一个重要组成部分。经验回放将过去智能体的经验储存在一个经验回放池中,然后从经验回放池中反复采样来对策略进行优化。通过多次利用过去的经验来训练当前策略,经验回放提高了强化学习算法的样本效率和训练稳定性。最原始的经验回放技术在采样时是从回放池中均匀等概率地采样,然而,经验回放池中不同样本对优化当前策略的重要程度是不一样的。简单的等概率采样无视了样本之间不同的重要程度,而通过更频繁地采样重要的样本,可以加速策略的学习,进一步提高算法的样本效率。

由于样本的重要性无法直接定量地衡量,现有的经验回放优化算法大都致力于设计一个样本重要性的替代指标。优先经验回放(prioritizedexperiencereplay,per)用时间差分(td-error)的大小作为样本来近似表示样本的重要性。该算法认为,时间差分大的样本对网络的“惊喜”程度大,表明网络对该样本对预测有更大的不确定性,因而有更高的训练价值。铭记与遗忘经验回放(rememberandforgetexperiencereplay,ref-er)用样本与当前策略等相似程度作为重要程度等指标。ref-er只用接近于当前策略的样本来进行训练,并且保持策略改变的程度在一定范围内,不会偏离产生样本的策略过多。用接近当前策略的样本对策略进行优化有利于策略对稳定,加快策略的学习速度。经验回放优化(experiencereplayoptimization,ero)不像于per和ref-er认为设计一个采样策略,ero通过用额外的强化学习算法训练一个策略来对采样策略进行优化。通过让采样策略自适应学习,可以让该策略得到优化。

现有技术缺点1:per方法在基于值的强化学习算法中效果较好,然而在基于策略优化的算法中,特别是演员-批评家(actor-critic)算法中,性能不好。由于演员-批评家有两个神经网络—价值网络和策略网络,per根据价值网络的时间差分值来选取样本。根据此选出的样本对价值网络的训练价值较大,然而选出的样本对策略网络的训练不一定高效,因此在实际应用中,per在基于策略优化的算法中的性能并不好。

现有技术缺点2:ref-er方法在采样时需要判断一个样本是否与当前的策略接近。为了做此判断,需要储存产生该样本时的动作的概率。对于一个相同的样本,产生它时的概率不同对该样本是否该用于训练的判断也不同。某个样本是否应该被用于采样应该由该样本自身决定,而与产生它的策略无关。

现有技术缺点3:ero方法需要额外训练一个强化学习策略,增加了学习成本,提高了复杂度。

通过以上说明可知,由于现有技术在泛用性、采样方法与训练成本上有诸多问题,从而制约了它们的使用场景,因此,有必要对强化学习算法中的经验回放采样方法进行改进,以提升强化学习算法的训练效率。



技术实现要素:

本发明的目的是提供一种优化经验回放采样策略的强化学习方法,通过改进经验回放采样策略,显著提高强化学习的效率,并且保持了强化学习训练的高效性。

本发明的目的是通过以下技术方案实现的:

一种优化经验回放采样策略的强化学习方法,包括:

步骤1、在每个时刻,智能体和环境交互得到经验,并将经验存储在经验回放池中;

步骤2、在更新当前训练策略时,从经验回放池中等概率随机采样λ·b个经验样本;其中,b为设定的数值,λ≥1控制着优先化采样的程度;

步骤3、逐一比较经验样本中包含的状态与当前训练策略对应状态之间的相似性,从而选出相似性最大的前b个经验样本;

步骤4、使用选出的b个经验样本对当前训练策略进行训练;

步骤5、本次训练结束后,判断训练步数是否达到最大值,若否,则返回步骤2。

由上述本发明提供的技术方案可以看出,该方法通过改进经验回放采样策略,从而提高强化学习的效率。改进的经验回放采样策略能够与所有带经验回放的强化学习算法相结合,而且能应用到不同的强化学习任务上,不仅能够显著提高学习效率,并且改进的经验回放采用策略几乎没有引入额外的计算复杂度,保持了强化学习训练的高效性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种优化经验回放采样策略的强化学习方法的示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明实施例提供一种优化经验回放采样策略的强化学习方法,经验回放是强化学习中重要的组成部分,它的优化直接影响了强化学习的学习效率、稳定性以及最终学得的性能。为此,我们针对经验回放采样策略进行改进,从而尽可能的多采样包含当前训练策略下经常访问的状态的样本进行训练,使得训练策略在这些状态上的性能提高,从而提高整体的性能。根据改进的经验回放采样策略,在不同的强化学习任务,结合不同的强化学习算法,均使得学习效率得到了提高。如图1所示,其主要包括:

步骤1、在每个时刻,智能体和环境交互得到经验,并将经验存储在经验回放池中。

本发明实施例中,时刻t的经验et=(st,at,rt,st+1),其中,st、st+1分别表示时刻t、t+1的状态,at表示时刻t的动作,rt表示时刻t的回报,一个时刻对应一个训练步,定义t为训练最大步数,t=1,…,t。

经验回放池的大小一般事先设定,与t的数值无关,一般情况下t会大于n。

步骤2、在更新当前训练策略时,从经验回放池中等概率随机采样λ·b个经验样本。其中,b为设定的数值(例如,为100数量级),λ≥1控制着优先化采样的程度。

当λ=1时,对应于等概率均匀采样。λ=n时,n为经验回放池的大小,对应于从整个经验回放池中挑选最相近的b个样本进行训练;在实际实验中,λ通常不会大于10,此处考虑的λ=n主要用于展示极端情况下采样策略的特性,而正常采样不回出现越界的情况;例如,在实验过程中,首先进入启动阶段,即前10000个时刻只收集数据放入经验池,而不会进行执行采样;也就是说,前10000个时刻只执行步骤1,因而,在实验过程中不会出现采样样本数量高于经验回放池的数量;当然,文中所提到的各项具体数值均为示例并非构成限制。

步骤3、逐一比较经验样本中包含的状态与当前训练策略对应状态之间的相似性,从而选出相似性最大的前b个经验样本。

本发明实施例中,相似性比较时根据状态的维度来选择对应方法:

1)如果状态维度低于设定值,则使用余弦相似性算法。

2)如果状态维度高于设定值,则先随机生成一个编码矩阵,编码矩阵在训练过程中固定,将状态通过该编码矩阵进行编码,以降低维度并获得对应的特征向量,在比较特征向量之间的相似性。

步骤4、使用选出的b个经验样本对当前训练策略进行训练。

本步骤通过常规方式实现,能够与所有带经验回放的强化学习算法相结合,而且能应用到不同的强化学习任务上。

步骤5、本次训练结束后,判断训练步数是否达到最大值,若否,则返回步骤2。

本发明实施例上述方案中,由于改进后的经验回放采样策略偏离了均匀采样,对策略最终收敛到的性能可能会有影响。为了保证当策略收敛时采样时均匀采样,对λ进行退火处理。在α·t内,λ从设定的初始值线性退火到1,以使得当训练结束时,采样为均匀采样;其中,α为设定的系数,t为训练最大步数。

此外,由于本发明持续地用与当前策略相近的样本进行训练,会导致训练样本有较小的预测误差。较小的预测误差产生的梯度比较小,因此我们用更大的学习率来补偿梯度的减小。在实际实施中,令η为原始的学习率,我们在训练过程中使用λ·η作为新策略的学习率。同样的,λ与前述一样,从初始值线性退火到1。

本发明实施例上述方案的原理如下:对于不同的训练策略,状态空间中各个状态被访问的频率也不相同。在一个特定的训练策略下,有的状态被经常访问,有的则很少甚至从未被访问。为了提高强化学习的性能,应该提高强化学习在经常访问的状态上的表现,也就是提高在这些状态上的值估计和动作选择。值估计和动作选择都是用神经网络来拟合的,神经网络往往对训练样本中出现较多的样本的有更小的预测误差。因此,为了提高在经常访问的状态上的性能,应该更多地用它们来对神经网络进行训练。将该思想应用到采样策略中,应该给予包含当前训练策略下经常访问的状态的样本更高的优先级。在本发明中,具体表现为:每次采样时,我们比较样本与环境当前状态的相似度,选取相似度大的样本来对当前策略进行更新。环境当前的状态正在被智能体所访问,我们可以认为它在当前训练策略下经常被访问。此外,连续的状态一般都很相似,而它们又都被当前策略所访问,因此与当前状态相似的状态有更大的可能被当前策略所访问。而由于神经网络的泛化能力,在与当前状态相近的样本上训练有利于提高神经网络在当前状态上的性能。因此,相较于均匀采样,我们更注重让神经网络在经常访问的状态上性能的提升,从而更高效地提高算法性能。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1