强化学习是专注于序列决策问题的机器学习范式。与许多其他机器学习和统计领域类似,数据效率通常是一个主要关注点,即序列决策代理需要多少试错交互数据才能学习到期望的行为?数据高效强化学习的一个关键障碍是探索问题,即序列决策代理必须在获取有关环境的新知识和利用当前知识最大化近期性能之间找到平衡。传统文献关于平衡探索和利用的研究主要集中在代理可以在相关时间范围内接近最优性能的环境中。然而,现代人工决策代理涉及复杂环境,例如万维网,在任何相关时间范围内都不可能接近最优性能。 本文致力于开发应对复杂环境中探索问题的原则性和实用性方法。我们的方法基于一个简单的观察:面对如此复杂的环境,与其试图获取足够的信息以实现最优行为,不如针对一个适度的信息库,该信息库虽然能够促进行为改善,但本身不足以实现近似最优性能。我们设计了一个以这种方式调节探索的代理,并对其行为进行了理论和实证分析。实际上,在每个时间段,该代理决定学习什么,以在信息需求和性能之间达到理想的权衡。 正如本文所阐明的,设计这种代理的核心是经典的信息论和有损压缩工具,这不仅提供了原则性的理论保证,而且在大规模实践实施中也具有可行性。
数据高效的强化学习
强化学习(RL)[Sutton and Barto, 1998; Kaelbling et al., 1996] 是一种专注于序列决策问题的机器学习范式。与机器学习和统计学的许多其他领域类似,数据效率通常是一个主要关注点,即序列决策代理需要多少试错交互数据才能学习到期望的行为?然而,与其他任何机器学习范式不同,RL中的数据效率需要同时应对三个基本挑战:
探索:明智地优先收集哪些环境数据以改善长期性能。
泛化:稳健地从采样数据中提取可转移的信息,扩展到尚未见过的观测。
信用分配:准确地将每步决策的长序列与延迟的未来结果关联起来。
与传统的监督学习不同,在传统的监督学习中,学习者被提供了一个固定的、静态的数据集,而RL代理通过与环境的交互自适应地收集数据。广义上讲,探索挑战归结为序列决策代理面临的一个二元选择:是获取关于世界的新知识,还是利用当前知识以最大化即时性能。尽管泛化和信用分配带来的挑战通常非常显著,但本文将专注于解决RL中的探索问题。然而,我们的解决方案设计成这样,以便未来的研究可以将这些理念与处理其他两个挑战的方法相结合,从而形成一个更全面的数据高效RL代理。 在复杂环境中的探索 在序列决策文献中,学习识别最优行为的代理代表了主要的研究重点。事实上,已有许多强化学习算法通过引导探索性决策来学习最优行为。然而,学习是一个获取信息的过程,因此,任何代理试图学习的内容都需要从与环境的交互中获得精确量的信息;自然地,以这种必要信息量来衡量,有些东西比其他东西更容易学习。 在与复杂环境交互时,识别最优策略可能是一个极其困难的挑战,因为在任何合理的时间范围内都有太多的东西需要学习。因此,一个受限的代理必须进行优先级排序。一个简单的方法是指定一个学习目标,这可以看作是一个信息库,虽然不足以在环境中产生最优性能,但足以指导有效的决策并促进行为改善。然后,代理可以重新定位其探索,优先收集关于这个学习目标的信息,而不是追求最优行为。 与其让代理设计者为代理制定学习目标,不如让每个代理自动地、数据驱动地选择自己的学习目标。这将代理设计者的角色从指定目标转变为赋予代理设定和适当调整目标的能力。设计者可以将这种学习目标的一般形式作为学习算法的框架的一部分来指定。然后,可以将更传统的、固定目标的学习算法重新用于代理实现其目标的子程序。本文介绍了一系列连贯的工作,从多臂赌博机问题一直到深度强化学习,以解决一个基本问题: 一个与复杂环境交互的代理应该如何决定学习什么? 这种方法不仅使代理能够自主选择和调整学习目标,还使其探索过程更具适应性和效率。通过优先获取能够显著改善决策的信息,即使在无法实现最优行为的情况下,代理也能在复杂环境中取得良好的表现。