前沿论文每日一读:强化学习落地所面临的种种挑战 ICML'19

33 阅读7分钟

Challenges of real-world reinforcement learning, Dulac-Arnold et al., ICML’19

导语

这篇论文是Dulac-Arnold等几位大佬于2019年发表在ICML上的论文,事实上,相较于ICML平常重理论,轻实验的文章风格,这篇文章其实是不太符合的。也间接证明了文章的含金量。这里,我们去除文章中冗杂的数学部分,专注于文章想讨论的基本问题————强化学习算法落地的障碍点。尽管强化学习方法已被证明在众多模拟环境中效果显著,但在解决实际问题时,强化学习算法却始终难以真正的落地。

核心问题:真实环境和模拟场景差距过大

这是为何呢?作者们认为,重要问题在于,实验场景和现实环境差距过大,导致许多强化学习系统难以应付实际系统的复杂现实和各种限制。比如,相较于实验环境,现实场景可能缺乏合适的模拟器(即无法使用模拟环境来近似甚至替换现实场景),各种安全限制可能会限制算法的探索过程,同时学习的反馈周期可能过长。

该论文列举了九大挑战,为了在多种实际应用场景中成功应用强化学习(RL),这些挑战必须被同时应对:

  1. 离线学习的有效性
  2. 在样本有限的真实系统中快速学习
  3. 高维连续的状态和动作空间
  4. 安全约束
  5. 任务本身具有部分可观测性
  6. 不明确、多目标或对风险敏感的奖励函数
  7. 系统需要可解释性
  8. 必须在系统控制频率下实时进行推断
  9. 在系统的执行器、传感器或奖励中的大量延迟。

论文提出了以上挑战并为 RL 研究者指出了在这些领域中的最新研究方向。对于我们这些非RL研究者来说,论文指出的这些挑战可以帮助我们判断:是否应该在特定情境中使用强化学习(RL)来解决问题。

挑战1:离线学习

模型的训练通常都是离线进行的,利用的则是控制系统的历史数据。通常,我们希望整个系统的新版本能比旧版本表现得更好,这也意味着我们需要进行离线策略评估:即在不实际运行系统的情况下估计性能。有一些方法可以实现这个目的,包括重要性抽样等。

值得特别注意的一个情况是强化学习的首次部署,即智能体的初始策略,通常在部署前,需要达到一个最低的性能门槛。因此,需要有能够评估冷启动性能的手段。

挑战2:有限样本

很多实际系统没有单独的训练和评估环境,所有的训练数据都来自真实的系统。又因为探索行为有成本,所以代理(agent)在训练期间不能有单独的探索策略。导致收集的数据量较少。

鉴于探索的高成本,以及用于学习的记录/数据可能仅探索了状态空间的一小部分,策略学习需要非常高效的利用数据。控制频率(采取行动的机会)可能为1小时,甚至是多月,而奖励的周期可能更长。

评估模型数据效率的一种简单方式:查看为了达到某个性能所需的数据量。

挑战3:高维状态和动作空间

许多实际的现实问题都有庞大且连续的状态和动作空间,导致传统的 RL 算法搞不太定。

Dulac-Arnold 等人提出了一种方法,即为候选动作(action)生成一个向量,然后进行最近邻搜索以找到最接近的实际可用动作。在评估策略性能时,需要考虑不同动作之间的相关性:数百万个相关动作的学习难度要远低于几百个完全无关的动作

挑战4:安全约束

很多控制系统会有很多安全约束。受限的 MDP(Constrained MDPs)允许在状态和动作上设置约束。预算 MDP(Budgeted MDPs) 通过允许智能体自适应的学习约束级别,而不是学习固定向量,从而能探索约束级别与性能的权衡。另外,也可以在网络中添加一个安全层,以防止任何安全违规。

挑战5:部分可观测性

几乎所有实际系统都是部分可观测的。例如,机械部件的效率可能会随时间下降,相同的小部件在相同控制输入下可能会呈现出不同的性能,或者系统的某些部分的状态(例如,推荐系统用户的心理状态)可能是无法知晓的。

为了解决这个问题,可以采用部分可观测马尔科夫决策过程(POMDPs)。

与传统 MDP 的主要区别是,代理(agent)的观测 xXx ∈ X 现在与状态分开,观测函数 O(xs)O(x|s) 提供了在环境状态 ss 下观测 xx 的概率。

处理部分可观测性的两种常见方法包括在输入中包含系统的历史(例如,某种窗口化技术),和在模型中使用循环网络来模拟历史。

此外,健壮 MDP 形式有明确的机制来确保代理能够对传感器和动作的噪声及延迟保持稳健。如果某个部署环境可能有未知但可学习的噪声来源,那么系统识别技术可以用来训练一个策略,使其能够了解它所在的环境并相应地调整自身。

挑战6:奖励函数

在许多情况下,系统或产品的拥有者往往不清楚他们想要优化什么目标。

乐.jpg

通常奖励函数是多维的,并需要在多个子目标之间找到平衡。单纯的期望值通常不是一个足够的指标,系统需要在所有任务实例中都表现良好。因此,在评估奖励函数时,我们不仅需要考虑一个单一的数字,还需要考虑行为的分布。

通常,使用条件风险价值(CVaR)目标来评估各组之间的奖励分布是一个典型的方法,它考虑了奖励分布的特定百分位,而非仅仅是期望奖励。

挑战7:可解释性 / 可理解性

实际的系统是由人类拥有和操作的,智能体的行为应该可以被理解,智能体失败的行为也应该能够揭示出原因。

因此,策略的可解释性对于实际的策略非常重要。特别是在策略可能找到控制系统的替代和意外方法的情况下,理解策略的长期意图对于获得利益相关者的支持是非常重要的。在策略出错的情况下,能够事后理解错误的起源是非常关键的。

挑战8:实时推断

策略推断需要在系统的控制频率内进行。这可能是毫秒级别或更短。这样的需求使我们无法采用计算成本高但不符合此约束的方法(例如,某些形式的基于模型的规划)。当然,具有较长控制间隔的系统带来了相反的问题:我们不能以超过实时的速度运行任务以加速数据生成。

挑战9:延迟奖励

大部分实际系统在状态感知、执行器或奖励反馈方面都存在延迟。例如,制动系统产生效果的延迟,或推荐系统展示的选项与用户随后的行为之间的延迟。

有很多可能的技术可以处理这种情况,包括利用记忆检索系统的基于记忆的代理,它能将信用分配给在预测当前时间步的值函数中有用的较早期的事件。另外,RUDDER 算法使用了一个向后视图的任务,使得延迟奖励在时间中更均匀地分布。