《Reinforcement Learning: An Introduction》强化学习导论原文翻译 17.4 设计奖励信号

17.4 设计奖励信号

  强化学习优于监督学习的一个主要优点是强化学习不依赖于详细的指导信息:产生奖励信号不依赖于知道Agent的正确行为应该是什么。但强化学习应用程序的成功在很大程度上取决于奖励信号设计应用程序设计者的目标有多好,以及实现该目标的过程中,信号评估的进展有多好。出于这些原因,设计奖励信号是任何强化学习应用的关键部分。
  通过设计奖励信号,我们的目的是设计Agent环境的一部分,该部分负责计算每个标量奖励 R_t ,并在每个时刻 t 将其发送给Agent。在我们对第14章末尾术语的讨论中,我们说R_t更像是动物大脑内部产生的信号,而不是动物外部环境中的物体或事件。为我们生成这些信号的大脑部分已经发展了数百万年,非常适合我们的祖先在努力将他们的基因传播给后代时所面临的挑战。因此,我们不应该认为设计好的奖励信号总是很容易做到的!

  一个挑战是设计奖励信号,以便当Agent学习时,其行为接近,并且在理想情况下最终实现应用程序设计者实际期望的内容。如果设计师的目标简单易于识别,例如找到一个定义明确的问题的解决方案或在一个定义良好的游戏中获得高分,这可能很容易。在这样的情况下,通常根据其在解决问题方面的成功或其在提高其得分方面的成功来奖励代理人。但是一些问题涉及的目标很难转化为奖励信号。当问题需要Agent巧妙地执行复杂任务或一组任务(例如有用的家庭机器人助手所需)时,尤其如此。此外,强化学习Agent可以发现意外的方式,使他们的环境提供奖励,其中一些可能是不受欢迎的,甚至是危险的。对于任何基于优化的强化学习方法而言,这是一个长期而关键的挑战。我们将在本书最后一节的第17.6节中更多地讨论这个问题。
即使有一个简单易于识别的目标,也会有稀疏奖励的问题经常出现。足够频繁地提供非零奖励,以使Agent能够实现目标,甚至是学习从多样的初始条件有效地实现目标,这可能是一项艰巨的挑战。显然,能引发奖励的状态-动作对可能很少而且彼此间隔很远,并且标记向目标前进的奖励可能很少发生,因为方法很难甚至无法发现。Agent可能漫无目的地漫游很长一段时间(Minsky,1961年,称之为“高原问题”)。

  在实践中,设计奖励信号的任务通常留给产生可接受结果的信号的非正式的试错法搜索。如果Agent无法学习,学习太慢或者学错了东西,那么设计师会调整奖励信号并再次尝试。为此,设计师根据其试图转化为奖励信号的标准判断Agent的表现,以便Agent的目标与自己的目标相匹配。如果学习太慢,设计师可能会尝试设计一个非稀疏的奖励信号,在整个Agent与环境的互动过程中有效地指导学习。

通过奖励Agent实现子目标来解决稀疏奖励问题很有吸引力,设计师认为这是实现总体目标的重要方式。但是,通过善意的补充奖励来增加奖励信号可能会导致Agent的行为与预期的行为非常不同; Agent最终可能根本无法实现总体目标。提供这种指导的一种更好的方法是不处理奖励信号,而是通过对最终应该是什么的初始猜测或者通过对其应该是什么的某些部分的初始猜测来增加价值函数近似性。例如,假设有人想要将 {v_0}:S \to \mathbb{R} 作为对真实最佳值函数 v^ * 的初始猜测,并且那个人正在使用具有特征x:S \to \mathbb{R}^d 的线性函数近似。那么,可以将初始值函数近似定义为

\hat v(s,\mathbf{w})= \mathbf{w}^{\top}\mathbf{x}(s)+ {v_0}(s)

并像往常一样更新权重 \mathbf{w} 。如果初始权重向量为 0,则初始值函数将为 v_0 ,但渐近解决方案质量通常将由特征向量确定。可以对任意非线性逼近器和任意形式的 v_0 进行初始化,但不总能保证加速学习。
  对稀疏奖励问题的一种特别有效的方法是由心理学家B.F.Skinner引入并在第14.3节中描述的整形技术。这种技术的有效性依赖于稀疏奖励问题不仅仅是奖励信号的问题;它们也是为防止 agent 经常遇到奖励状态的agent的策略问题。整形涉及在学习进行时改变奖励信号,从给定Agent的初始行为不稀疏的奖励信号开始,并逐渐将其修改为适合于原始兴趣问题的奖励信号。进行每个修改以使得agent经常在其当前行为的情况下得到奖励。Agent面临着一系列越来越难的强化学习问题,在每个阶段学到的东西使得下一个难题相对容易,因为agent现在比没有先前经验更容易出问题时更频繁地获得奖励。这种塑形是训练动物的必备技术,它在计算强化学习中也是有效的。
  如果一个人不知道奖励应该是什么,但是有另一个代理人,也许是一个人,他已经是这个任务的专家并且可以观察到他的行为怎么办?在这种情况下,人们可以使用称为“模仿学习”,“从示范中学习”或“学徒学习”的方法。其想法是从专家代理人那里获益,但留下最终表现更好的可能性。从专家的行为中学习可以通过直接通过监督学习学习或通过使用所谓的“逆强化学习”提取奖励信号,然后使用具有该奖励信号的强化学习算法来学习策略来完成。 Ng和Russell(2000)研究的逆强化学习的任务是试图从专家的行为中恢复专家的奖励信号。这不能完全做到,因为对于许多不同的奖励信号(例如,对所有状态和动作给予相同奖励的任何奖励信号),策略可以是最优的,但是有可能找到合理的奖励信号候选者。不幸的是,需要强有力的假设,包括环境动态的知识以及奖励信号是线性的特征向量。该方法还需要多次完全解决问题(例如,通过动态规划方法)。尽管存在这些困难,Abbeel和Ng(2004)仍然认为逆强化学习方法有时比监督学习更有效,因为它可以从专家的行为中受益。

  找到一个好的奖励信号的另一种方法是用自动化试错搜索我们上面提到的好信号。从应用的角度来看,奖励信号是学习算法的参数。与其他算法参数一样,可以通过定义可行候选空间并应用优化算法来自动搜索好的奖励信号。优化算法通过使用该信号运行强化学习系统进行一定数量的步来评估每个候选奖励信号,然后忽略Agent的局限性, 通过“高级”目标函数对整体结果进行评分,旨在对设计者的真实目标进行编码。甚至可以通过在线梯度上升来改善奖励信号,其中梯度是高级目标函数的梯度(Sorg,Lewis和Singh,2010)。将这种方法与自然世界联系起来,优化高级目标函数的算法类似于进化,其中高级目标函数是动物的进化效率,由其生存到生育年龄的春季数决定。
  使用这种双层优化方法的计算实验 - 一个是与进化相似的层次,另一个是由个体agent的强化学习实现的层次 - 已经证实单凭直觉并不总是足以设计出良好的奖励信号(Singh,Lewis和Barto, 2009)。通过高级目标函数评估的强化学习代理的表现可以对代理人的奖励信号的细节非常敏感,这些细节由agent的限制以及其行为和学习的环境决定。这些实验还表明,agent的目标不应始终与代理人设计者的目标相同。
  首先,这似乎违反直觉,但无论奖励信号是什么,agent都无法实现设计者的目标。Agent 必须在各种约束下学习,例如有限的计算能力,对其环境的信息的有限访问,或者有限的学习时间。当存在这样的限制时,学习如何实现与设计者目标不同的目标有时最终会更接近设计者的目标,而不是直接追求目标(Sorg,Singh和Lewis,2010; Sorg,2011) 。在自然界中这样的例子很容易找到。因为我们不能直接评估大多数食物的营养价值,进化 - 我们的奖励信号的设计者 - 给了我们一个奖励信号,使我们寻求某种口味。虽然肯定不是绝对可靠的(事实上,在某些方面与祖先环境不同的环境中可能是有害的),但这弥补了我们的许多局限性:我们有限的感官能力,我们可以学习的有限时间,以及通过个人实验寻找健康饮食所涉及的风险。同样,由于动物无法观察其自身的进化效果,因此该目标函数不能作为学习的奖励信号。相反,进化提供了对可观察到的进化效率预测因子敏感的奖励信号。
最后,请记住,强化学习agent不一定像完整的有机体或机器人;它可以是更大的行为系统的一个组成部分。这意味着奖励信号可能受到较大行为agent内部事物的影响,例如动机状态,记忆,想法甚至幻觉。奖励信号还可以取决于学习过程本身的属性,例如学习进展多少的度量。使奖励信号对诸如此类内部因素的信息敏感,使得代理人可以学习如何控制其所属的“认知架构”,以及获取难以从中学习的知识和技能。奖励信号,仅取决于外部事件。这些可能性导致了“内在动机强化学习”的概念,我们将在下一节的最后进一步讨论。

猜你喜欢

转载自blog.csdn.net/qq_29675093/article/details/85271936