Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

不惧噪音环境、提升样本效率,华为云等最新强化学习成果入选NeurIPS 2020

​如何提升强化学习算法的样本效率,提升算法对噪音环境的鲁棒性?华为云 EI 创新孵化 lab 和中科院计算所给出的答案是:Trust the model when it is confident .

人工智能顶级会议 NeurIPS 2020 将于 12 月 6 日 - 12 日线上召开,今年会议论文投稿数量创历史新高,相比去年增长了 38%,而接收率却为史上最低,仅为 20.1%。华为云最新强化学习成果「Trust the Model When It Is Confident: Masked Model-based Actor-Critic」成功入选。


论文地址:https://papers.nips.cc/paper/2020/file/77133be2e96a577bd4794928976d2ae2-Paper.pdf

这篇论文首次探索了有模型强化学习该「何时使用模型」,并基于不确定性预估提出全新算法 M2AC(Masked Model-based Actor-Critic),在样本效率和噪音环境下的表现均取得巨大突破。在连续控制任务中,M2AC 仅用 model-free 方法 SAC 1/5 的交互样本就能达到同等效果。有噪音环境下,在之前的 model-based 算法几乎失效的情况下,M2AC 仍表现鲁棒,并实现多达数倍的性能提升。

背景介绍

众所周知,强化学习(RL)是一门专注于「试错」的学问,它凭借与环境不断交互来学习如何做出使自身收益最大化的决策。「试错」显然是 RL 的最大优势——如果一个决策任务只有不断尝试才能学会,那应该让 RL 来试试。但与此同时,「试错」这一天然属性也让许多人对 RL 望而却步:如果试错成本很高,当前的 RL 算法真的能很快学到好的策略吗?

为此,更高的样本效率成为当前学术界与工业界对强化学习算法优化的核心目标,也就是希望 RL 算法能够「聪明地试错」,通过尽量少的环境交互学到尽量好的策略。

人们普遍认为有模型的强化学习 (model-based RL, MBRL) 比无模型的强化学习 (model-free RL) 具有更高的样本效率。MBRL 在采集到交互数据后,首先使用「环境模型」(model) 来模拟真实环境的动态(学习状态转移和奖励函数),这样智能体就可以通过与 model 互动来更新策略 (policy),从而避免过多的环境交互。

但在实际应用中,情况恰恰相反。由于 model 拟合环境存在误差,在复杂和嘈杂的环境中,现有的 MBRL 算法可能反而会导致策略学得很差。这种现象在以下两个常见情形中极为常见。第一种情况,由于误差会随着 model 与 policy 的每一步交互而逐渐累积,因此步数越多,policy 越容易学偏。从图 1 左侧可以看出,MBPO 算法(由 UC Berkeley 在 2019 年提出,是当前 MBRL 的 SOTA 算法,原文中显示其在连续控制任务中性能远超 STEVE 等 MBRL 算法和 SAC、PPO 等 model-free 方法)在交互步数大于 1 步时,性能迅速降低。第二种情况,即环境有噪音的情况。当环境有噪音时,model 更难学准确,这给 MBRL 算法带来很大挑战。如图 1 右侧所示,MBPO 在环境有噪音情况下表现并不鲁棒,在 noisy-2 环境中的分数甚至不到确定性环境中的一半。


图 1. 左:不同模型交互步数下的性能对比。右:不同环境噪音程度下的性能对比。MBPO 是 UC Berkeley 去年提出的 SOTA 算法,M2AC 为该研究新提出的算法。

华为云等提出新方法

基于此,华为云 EI 创新孵化 lab 联合中科院计算所提出 M2AC (Masked Model-based Actor-Critic) 算法,利用不确定性预估的技术突破了这一难题。从图 1 也可以看出,M2AC 在上述两种场景中均表现鲁棒:在多步交互时,交互步数越多,算法性能越好;在有噪声环境中,即便在噪声最大的 noisy-2 中,其性能也超过了确定性环境中 MBPO 的性能。

下面我们来看一下这一突破是怎么做到的。

作者提出,解决这一问题的关键是回答「模型什么时候值得信任」这一问题,如图 2 所示。也就是说,如果智能体只在模型误差小的时候信任 model 生成的虚拟数据来进行策略更新,那么就可以避免因模型误差过大导致策略学偏。

图 2. 何时、如何用到 MBRL 技术来进行策略更新,是 M2AC 希望解决的问题。

经过一系列理论分析,作者发现即使 model 在拟合环境时存在误差,也可以通过更改模型使用的方式来达到样本效率的提升。他们从理论上证明,如果 model 生成数据的使用范围仅限于模型误差较小的状态 - 动作对,则策略在 model rollout 与 real rollout 之间的性能差距可以缩小。

由此启发,M2AC 算法的核心仅用其论文标题中的一句话就可以总结:「Trust the model when it is confident.」只有在模型对其预测有信心时,才使用 MBRL 技术进行策略更新。

图 3. M2AC 算法伪代码

具体来说,M2AC 基于模型的不确定性实现了一种 mask 机制来决定是否应该使用其预测,如图 4 中 model-based 生成的数据中仅有绿色样本用于策略更新。理论证明表示,它最大化了真实价值函数的一种 model-based 的下界。因此,这一新算法倾向于给出稳健的策略改进,也就能避免由于多步交互或环境噪音导致算法失效。

图 4. M2AC 利用 model 进行数据生成的过程。

实验效果

连续控制 MuJoCo 基准实验中,与 model-free 算法相比,M2AC 仅用 SOTA 算法 SAC 1/5 的交互样本就能达到同等效果。在 4 个 MuJoCo 基准环境中,相比 Google 提出的 STEVE 算法分别提升 75%、2500%、30%、130%。算法表现非常亮眼。

图 5. MuJoCo 基准实验结果。

而在有噪音环境中,M2AC 优势更为显著,实验结果参见图 6 。相比 MBPO,M2AC 在 4 种噪音级别下分别提升 38%、360%、230%、340%。这体现出 M2AC 在各种困难场景中都能够提供鲁棒的策略提升。

图 6. 噪音环境中的实验结果。

M2AC 算法为强化学习的落地打下了一剂定心丸:即便环境交互成本高或环境复杂有噪音,算法依然能够稳健地学到好的策略。这是现实世界的智能决策系统必不可少的能力。
理论华为云NeurIPS 2020
1
相关数据
伪代码技术

伪代码,又称为虚拟代码,是高层次描述算法的一种方法。它不是一种现实存在的编程语言;它可能综合使用多种编程语言的语法、保留字,甚至会用到自然语言。 它以编程语言的书写形式指明算法的职能。相比于程序语言它更类似自然语言。它是半形式化、不标准的语言。

连续控制技术

连续控制代指需要进行连续控制的任务,经典例子包括推杆摆动,3D人形运动等等。

推荐文章
你好 没有相关代码 可以参考下?