虽然强化学习算法可以在多种游戏上取得人类无法比拟的强大表现,但却需要庞大的数据来进行训练。为了在真实世界中取得与AlphaGo一样的突破,强化学习需要在数据有效性上狠下功夫,在有限的时间内学习出有效的策略。
最新研究进展表明无模型方法比MBRL具有更高的数据效率,更令人惊讶的是其数据效率与经过坐标状态训练的策略一样高。本文将详细介绍基于像素的无模型强化学习最新进展。
人类最强能力之一就在于可以快速的学会某种任务,绝大多数人都能在几小时内学会较为复杂的技能,包括使用工具、学会游戏,并在少数几次尝试后就能理解背后的基本原理。这意味着具有较高数据效率的学习方式是发展更广泛人工智能重要组成部分。
但另一方面,虽然强化学习算法可以在多种游戏上取得人类无法比拟的强大表现,但它们却需要庞大的数据来对其进行训练。例如Dota为了获得超过人类的表现大约利用了约10000年人类的游戏时间来学习。与模拟不同,在真实世界中进行训练受到了时间的物理限制。为了在真实世界中取得与AlphaGo一样的突破(例如机器人操作和自动驾驶等等),强化学习需要在数据有效性上狠下功夫,在有限的时间内学习出有效的策略。
数据高效的强化学习最新进展
最近有很多深度强化学习算法改进了从像素进行学习的策略。这些方法主要分为无模型算法和基于模型的强化学习算法 (model-based, MBRL)。其主要区别在于基于模型的方法主要学习前向状态转移模型p(st+1|st,at),而无模型方法则不是。模型的学习具有很多独特的优势,包括可以利用模型来规划运动序列,以数据增强的形式生成虚拟运动,并通过对模型的学习来在时域上对隐空间进行塑造。
然而基于模型的强化学习劣势也很明显,那就是复杂性。基于模型的方法在像素上进行操作需要学习一个模型、一个编码机制、一个策略,以及像奖励预测这样的辅助任务,并将这些部分衔接起来构建出完整的算法。视觉MBRL方法包含主动运动部件稳定性更低。而像DQN、PPO、SAC等无模型方法则直接利用端到端的优化方式学习策略。传统的无模型RL的简易特性来自于采样效率的代价。但最新的进展表明无模型方法比MBRL具有更高的数据效率,更令人惊讶的是其数据效率与经过坐标状态训练的策略一样高。下面将详细介绍基于像素的无模型强化学习最新进展。
不晚不早就是现在
在过去几年里,两方面的趋势使得高数据效率的视觉强化学习成为可能。首先是端到端强化学习算法变得更为稳定,包括Rainbow DQN,TD3,SAC等。其次,在图像分类领域利用对比非监督表示实现的高效标签学习 (CPCv2, MoCo, SimCLR),以及数据增强策略 (MixUp, AutoAugment, RandAugment),如雨后春笋般出现。作者最近的研究将无模型的强化学习方法与来自计算机视觉领域的对比学习和数据增强技术结合了起来,取得了非常显著的数据效率提升,包括在Atari, DeepMind control, ProcGen和OpenAI gym等常见的强化学习基准上都验证了数据效率的提升。
强化学习中的对比学习
最近的研究成果CURL受到了计算机视觉邻域对比表示学习的启发 (CPC, CPCv2, MoCo, SimCLR)。对比学习的目标在于最大化/最小化图像的两个相似表示/不相似表示。例如:在MoCo和SimCLR中,其目标函数在于最大化统一图像两个数据增强版本间的统一性,同时最小化与数据集中其它图像的差异,并利用噪声对照估计损失来进行优化。通过数据增强,这些表示将数据集中强大的归纳偏差内在化。
在强化学习中,研究人员会选择相似的机制并采用了动量对比机制 (momentum contrast, MoCo),这种在计算机视觉领域中常用的对比学习方法利用查询编码器参数 (动量) 的移动平均来编码稳定训练的关键信息。但有两点主要的不同:首先强化学习的数据集动态变化,此外视觉强化学习主要体现在一系列帧的堆叠上,包含了一系列类似速度这样的时域信息。与视觉领域中将对比学习与下游任务独立拆分不同,在强化学习中将对比表示与强化学习目标结合了起来。同时利用了帧的堆叠代替了单张图像进行判别。
通过将强化学习与对比学习进行结合,研究人员首次发现,在DeepMind控制基准测试套件中,基于像素的强化学习其数据效率可以接近基于状态的强化学习。下图展示了两种方法的学习曲线,其中对比学习与SAC耦合在一起 (红色),并与基于状态的SAC进行了比较 (灰)。
研究人员同时在Atari 100k基准上展示了数据效率的提升。研究人员将CURL与高效的Eff.Rainbow DQN方法融合在一起,结果表明CURL在26个测试游戏中的20个上超过了之前先进的方法 (Eff. Rainbow, SimPLe)。
强化学习与数据增强
由于随机裁剪是CURL的关键部分,我们不禁要问,如果只使用数据增强也能得到相同的结果吗?在基于增强数据的强化学习中 (Reinforcement Learning with Augmented Data, RAD),研究人员在DeepRL中对数据增强进行了广泛的扩展研究,结果表明针对DeepMind控制基准测试来说,答案是肯定的。仅仅使用数据增强就可以取得与先前方法相比拟的效果,甚至在有些时候超过基于状态方法的效率。此外在并发任务中DrQ中也显示了相同的效果。
研究人员还发现RAD同时可以提升ProcGen游戏基准中的泛化性。这表明数据增强不仅仅可以提升数据效率,同时还能够帮助强化学习方法更好的适应通用的测试环境。
如果数据增强在基于像素的强化学习上有效的话,那么它可以改进基于状态的方法吗?于是研究人员又引入了一种新的基于状态的增强方法:随机尺度缩放,结果表明简单的强化学习方法与基于状态的数据增强方法相结合后,可以在OpenAI gym环境中达到非常优异的性能,同时超过了很多更为复杂的基于模型和无模型的强化学习算法。
对比学习于数据增强
如果数据增强对于强化学习如此有效,那么我们还需要无监督表示学习么?事实是,RAD超过CURL的原因在于其只优化了研究人员关心的任务奖励。而对于CURL来说,则联合优化了强化学习和对比学习的目标函数。如果用于测评和比较这些方法的指标仅仅针对于任务本身的话,那么聚焦于任务奖励函数优化的方法一定会更好,它隐式地确保了增强视角下的数据一致性。
然而强化学习中的很多问题却不能仅仅靠数据增强来解决。例如RAD不能应用在仅仅具有稀疏奖励或者没有奖励的环境中,这主要是由于它需要通过与奖励信号耦合的观测隐式地学习相似连续性。另一方面,在CURL中对比学习的目标函数显式的内化了不变性,所以无论奖励信号如何都能够从高维观测中学习到语义表示。因此无监督学习方式可能更适合于像机器人操作等真实世界的任务,这些场景下环境奖励更容易稀疏甚至缺失。
如果想要了解更多相关的论文,请参考下列文献:
https://arxiv.org/pdf/2004.04136.pdf
https://arxiv.org/pdf/2004.04136.pdf