Auto Byte

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

微信扫一扫获取更多资讯

Science AI

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

微信扫一扫获取更多资讯

NeurIPS 2018 | 腾讯AI Lab:可自适应于不同环境和任务的强化学习方法

本文是由南加州大学和腾讯 AI Lab 合作发表于 NeurIPS 2018 的 Spotlight 论文之一,这项工作研究了同时在不同环境(Env)和不同任务(Task)之间迁移的问题,目的是利用稀疏的(Env, Task)组合就能学到在所有可能组合中迁移的能力。

本文提出了一种新颖的部件神经网络,它描述了如何从环境和任务来组成强化学习策略的元规则。值得注意的是,这里的主要挑战之一是环境和任务的特征描述必须与元规则一起学习。为此,研究者又进一步提出了新的训练方法来解锁这两种学习任务,使得最终的特征描述不仅成为环境和任务的独特签名,更成为组建策略的有效模块。

研究者在 GRIDWORLD 和 AI2-THOR 上进行了大量实验,结果表明新提出的模型可以有效地在 400 个(Env, Task)组合之间成功迁移,而模型的训练只需要这些组合的大概 40%。

方法简介

传统的强化学习在同一个环境下试图解决同一个任务——比如 AlphaGo,我们希望把这种受限情况下的进展推广到更一般的情况:多个环境(比如不同的迷宫),多个任务(比如逃离迷宫、找到宝藏、收集金币等不同任务)。

如上图所示,红色代表训练阶段见到的环境与任务组合,灰色代表只在测试阶段才会见到的组合:

(a)是最简单的情况,尽管有一些组合在训练阶段没见过,但是每个环境(同理,每个任务)都在训练的时候出现过;

(b)相对复杂一些,在测试阶段出现的新的组合里面,或者任务是新的——训练时候没有见过,或者环境是新的;

(c)是最复杂的情况,在测试阶段出现的新组合里面,任务和环境都是以前没有见过的。

我们提出一个统一的框架来解决上述三个问题,这个框架的关键在于同时学习环境和任务的描述子以及如何从这些描述子构建规则。

我们的基本假设是规则的构建方式对于不同的(环境、任务)组合是相通的:于是,当智能体在测试阶段给定了新的(环境、任务)组合时,针对(a)它可以利用以前学习到的描述子构建相应的规则;针对(b)和(c),也就是存在新的以前没见过的环境或/和任务,我们允许智能体做少量的交互来快速学习描述子——一旦环境和任务描述子学习完成,它就可以构建规则,不需要像传统的强化学习那样重新学习规则。

具体来说,我们提出的框架如下:

虽然上述框架具备了我们要求的同时学习规则以及环境与任务描述子的功能,但是在学习阶段有一个陷阱:很可能,规则和描述子会耦合在一起,使得智能体在见到的(环境、任务)组合上表现很好,但是没办法在测试阶段处理新的组合。

为了解决这个问题,就需要把规则构建方式和描述子解耦,使得描述子确实可以有效描述和区分不同的环境与任务,同时又能帮助构建有效的规则。相对应的,在训练的时候,除去传统的用于完成任务的奖励函数,我们还加上针对描述子特有的用于分类的奖励函数——基于描述子的状态描述应该能成功区分不同环境和任务。

实验设定

我们分别在走迷宫和室内导航上进行了实验。以下主要描述走迷宫;关于室内导航的实验请见论文。

上图展示了 16 个不同的迷宫(环境),其中红黄绿紫等颜色方块代表不同宝藏——它们各自代表一个任务,同时收集它们的不同顺序又能定义新的任务。

如下图所示,我们假定智能体在迷宫中行走的时候,视野范围只有 3 x 3。

实验结果

如下图所示,我们的方法(SynPo)成功的超过了最近提出的几个方法,包括多任务神经网络(MTL),模块化神经网络(ModuleNet),专门用于迁移学习的 SF,还有一个我们自己方法的简化版(MLP)。

另外,我们也分别研究了智能体在见过和没见过的(环境、任务)组合上的表现。如下图所示,对于智能体在训练阶段见过的组合,它在测试阶段始终表现不错;对于没见过的组合,它只需要在 40% 的组合上学习,就能达到很好的效果。

最后,我们给出在 10 个环境和 10 个任务组合上训练,然后在 20 个环境和 20 个任务上做测试的结果。如下图所示,每一行代表一个任务,每一列代表一个环境,其中左上角的 10 个环境和任务是用于训练的。

测试阶段,为了拓展到新的环境(右上角),我们允许智能体和环境做少量交互,用于得到环境的描述子,然后构建规则;为了拓展到新的任务(左下角),我们如法炮制,得到任务的描述子。

得到所有描述子以后,我们就可以构建针对任意组合的规则了。在相应规则指导下,智能体完成任务的表现如上图,深色代表高成功率,浅色代表低成功率。我们可以看到向新的任务迁移比向新的环境迁移容易一些,而两者都是以前未见的时候,迁移是最难的。

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

理论NIPS腾讯AI Lab强化学习神经网络
2
相关数据
阿尔法围棋技术

阿尔法围棋是于2014年开始由英国伦敦Google DeepMind公司开发的人工智能围棋程序。AlphaGo是第一个打败人类职业棋手的计算机程序,也是第一个打败围棋世界冠军的计算机程序,可以说是历史上最强的棋手。 技术上来说,AlphaGo的算法结合了机器学习(machine learning)和树搜索(tree search)技术,并使用了大量的人类、电脑的对弈来进行训练。AlphaGo使用蒙特卡洛树搜索(MCTS:Monte-Carlo Tree Search),以价值网络(value network)和策略网络(policy network)为指导,其中价值网络用于预测游戏的胜利者,策略网络用于选择下一步行动。价值网络和策略网络都是使用深度神经网络技术实现的,神经网络的输入是经过预处理的围棋面板的描述(description of Go board)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

推荐文章
暂无评论
暂无评论~