Auto Byte

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

微信扫一扫获取更多资讯

Science AI

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

微信扫一扫获取更多资讯

Yufeng Xiong作者Synced Global制作李诗萌编译Hao Wang编辑

用于分层强化学习的随机神经网络

论文链接:https://openreview.net/pdf?id=B1oK8aoxe

1. 引言

近期,深度强化学习取得了许多令人印象深刻的结果,但这些深度强化学习算法一般都是采用单纯探索策略,如 ε-贪婪算法或统一的高斯探索噪声,这些方法在奖励稀疏的任务中表现不佳。要想解决这些问题,可采用两种策略:

1. 设计动作的层次结构,这需要专业知识以及细致的手动工程。

2. 使用与领域无关的内在奖励来指导探索,然而,对于如何将一个任务的知识进行转化以解决其他任务尚不清楚,这可能会导致过高的样本复杂性。

本文作者提出了一个可以在预训练环境中学习一系列技能的通用框架,该框架可以通过在这些技能上训练高级策略再应用于下游项目。作者利用随机神经网络(SNN)与代理奖励(proxy reward)相结合来学习这些技能,这样的设计不需要太多与下游项目相关的知识。为了鼓励 SNN 策略的行为多样性,研究者在预训练阶段提出了一种基于互信息(MI)的信息理论正则器。

2. 问题描述

本论文作者通过一组时域有限的离散时间折扣马尔可夫决策过程(MDPs)M 指定了一组下游任务。目标是在整个过程中实现期望折扣回报的最大化。

为了解决这些问题,首先这些下游项目要满足一些结构性假设,这是确保泛化性能的最低要求。正如智能体空间的思想,状态空间可以分为两部分:智能体状态和休息状态,这两个状态间的相互作用是很弱的。在 M 中,智能体状态对 M 中的 MDP 都是一样的,所有的 MDP 都要共享相同的动作空间。

建立了一系列满足结构假设的任务后,目标是要最小化解决这些任务所需的全部样本的复杂性。之前的技术是利用解决前期任务收集到经验来帮助解决后面的任务,但这并不适用于奖励稀疏的任务。因而研究者提出了一个在预训练环境中学习有用技能的通用框架。

3.方法论

作者用 5 步过程描述了该方法。该方法利用了预训练任务的优势,而且是用最少的专业知识来构建,同时可以学得很多有用的技能来解决稀疏奖励的极具挑战的任务。

3.1 建立预训练环境

为了建立智能体学习可用于下游任务的有用技能的预训练环境,作者允许智能体在最小设置下自由地与环境进行交互。例如,对移动机器人来说,预训练环境会是一个宽敞的环境,机器人可以先在这个环境中学到必要的移动能力。

与在预训练环境中指定特定技能的目标不同,研究者使用鼓励局部最优解的代理收益作为唯一的奖励信号,来指导技能学习。再以移动机器人为例,在不限制移动方向的情况下,代理奖励可与机器人的移动速度成正比。

3.2 用于技能学习的随机神经网络

一旦建立了预训练环境,有一种直接方法是学习一系列训练不同策略的技能,每种策略在不同的随机初始化下都有单峰动作分布,但这样会有很高的样本复杂性。为了解决这个问题,作者提出使用在计算图中有随机单位的随机神经网络(SNN)。因为 SNN 有丰富的表征能力,还可以逼近任何表现良好的概率分布,本文作者用 SNN 训练了不同的策略。

本文实现了一个简单的 SNN 类,结合具备统一权重类别分布的隐变量和从环境到神经网络的观测结果,形成联合嵌入。然后将联合嵌入馈送给具备计算分布参数的确定性单位(deterministic unit)的前馈神经网络

直接将观测值和隐变量级联形成最简单的联合嵌入(图 1(a)),但这样形成的联合嵌入表达能力有限。之前的研究显示整合形式越丰富表达能力就越好,在这些研究的启发下,本论文作者提出了一个简单的双线性积分作为观测结果和隐变量的外积。正如实验所示,由于该级联对应根据隐码 h 改变第一个隐藏层的偏置项,积分对应改变第一个隐藏层的权重。因此,训练单一的 SNN 就能得到灵活的不同策略权重共享方案。

图 1:FNN 中隐向量集成的不同架构

3.3 信息论正则化

因为我们无法确定不同政策是否可以学得不同的技能,为了鼓励 SNN 策略行为的多样性以及避免 SNN 陷入单一模式,作者在预训练阶段提出一个基于 MI(互信息)的信息论正则器。

具体来讲,对于移动机器人而言,作者添加了额外的奖励,该奖励与隐变量机器人当前状态的互信息成比例。作者在此仅测量了当前状态下相关子集的 MI。从数学上讲,Z 代表可以表示隐变量的随机变量,X 表示智能体当前状态的随机变量。额外奖励可表示为:

由于固定分布,H(Z) 是常量,所以 MI 最大值等于条件熵 H(Z|X)最小值。这也就意味着,给出机器人所在的地方,就可以得知机器人当前状态的行为。

3.4 学习高级策略

在从预训练任务中学到一系列技能后,我们可以通过训练高级策略使用这些技能解决奖励稀疏的下游任务。

对于一个给定的任务 M,将高级策略(管理器神经网络,如图 2 所示)接收到的完整状态作为输入,输出参数化的类别分布,从该分布中,我们从 K 个可能的选择中采样出离散行为。一般而言,高级策略运行得比低级策略(SNN)慢,只能每 T 个时间步切换一下其分类输出。T,也就是所谓的切换时间,是取决于下游任务的超参数

在这篇论文中,SNN 的权重在训练阶段是冻结的。

3.5 策略优化

为了优化策略,作者在预训练阶段和高级策略训练阶段使用的是置信域策略优化(TRPO)算法。这是由于 TRPO 出色的实验性能以及它无需对超参数进行过多调整。

4. 实验细节

4.1 实验任务

作者在之前的一篇论文 [5] 中对两个分级任务实现了分层 SNN 框架:移动+走迷宫和移动+收集食物。本文部署了 Swimmer 机器人完成这些任务。大家可以在附录 C-D 中看到更复杂的机器人(蛇和蚂蚁)的结果。

为了说明下游任务的多样性,论文作者构建了四个不同的迷宫。如图 3(a)-3(b) 所示,迷宫 0 是与基准 [5] 中描述的相同任务,迷宫 1 是迷宫 0 的反射。迷宫 2 和迷宫 3 是图 3(c) 所示环境的不同实例,在这个例子中,目标分别被放置在东北角和西南角。图 3(d) 描述了收集食物的任务,在这个任务中,机器人若收集到绿色球则得 1 分,收集到红色球得 -1 分,在每一个 episode 开始的时候随机放置这些球。连续控制问题的基准 [3] 还表明,采用朴素探索策略的算法不能解决走迷宫和收集食物的任务,更为先进的内在激励探索 [6] 可以改善机器人的表现。附录 B 说明了使用 SNN 的更好的结果。

图 3:稀疏奖励任务图示

4.2 超参数

在所有的实验中,所有策略都用步长为 0.01、折扣为 0.99 的 TRPO 进行训练,所有的神经网络都有相同的架构——有 32 个隐藏单元的 2 层。对预训练任务而言,batch size 和最大路径长度分别为 50000 和 500,这与基准中的超参数是一样的。对下游任务而言,如表 1 所示:

表 1:下游任务算法的超参数

5. 结果

为了解不同 SNN 架构的相关性以及它们是如何影响已经完成的探索的,技能学习过程中的每一步都需要进行评估。在稀疏环境中得到结果的解释如下所示:(实现结果的视频:https://goo.gl/5wp4VP)。

5.1 预训练中的技能学习

作者在此使用「访问图」(visitation plot)显示机器人在 500 个时间步的 100 个 rollout 中的质心位置 (x, y),以检验学得技能的多样性。图4(a)  表示 6 个不同前馈策略的 6 个访问图,每一个都在预训练环境中从头训练。因为 Swimmer 机器人有前向和后向运动的偏好,因此访问会集中于初始化方向而没有额外的激励,由于每个独立训练策略都有通用的代理奖励,从而保证了潜在有用的技能。图 4(b) 为 6 个策略的每一个都叠加了 50 个rollout,为方便图像解释和对比,作者使用不同颜色来表示。

图 4(c)-4(d) 描述了有或没有双线性积分时,不同选择下 SNN 获取的访问图。根据图 4(c) 可知,隐变量和观测结果之间的简单关联几乎不会对隐变量产生明显的影响。有双线性积分的预训练 SNN 会获得更多的前向和后向的移动。

图 4:通过不同方法和架构学习的一系列技能

图 5:不同的随机初始化架构的访问图(一个 rollout 有 1M 步)。所有轴范围都在 [-30,30],我们在 [-2,2] 的范围内添加了一个高斯噪声的缩放。

5.2 技能的分层使用

为了说明分层架构是如何影响随机探索覆盖区域的,作者比较了一百万步的单个 rollout 的访问图。图 5(a) 描述了用标准高斯噪声执行的探测,结果并不好。如图 5(b)-5(d) 所示,在探索中使用预训练策略的分层模型结果有了显著提升。另一方面,多策略的分层更注重上下的探索运动,然而由于基础策略的附加行为,用 SNN 获得的探索产生了更宽的空间覆盖。

5.3 走迷宫和收集食物

因为标准的强化学习算法不能解决稀疏奖励的任务,所以有了一个更好的基准线:给下游任务添加预训练任务中机器人产生的、用于比较的、相同的质心代理奖励。如图 6(a)-6(c) 所示,由于时间范围较长以及相关信用分配的问题,基准线在所有迷宫中的表现都不好。分层架构在每一个新的 MDP 中都可以更快地进行学习,因为它们可以通过将时间步整合到有用的基元从而收缩时间范围。有一个问题要强调一下,SNN 是用 MI 奖励预训练得到的,这意味着在一些走迷宫任务中,无需更多调整和侧向运动,如图 6(c) 所示。但在图 6(d) 的食物收集任务中,部署了用 MI 奖励预训练得到的 SNN 的算法返回的平均值更高,学习曲线的方差更低。

图 6:分层架构在稀疏的下游 MDPs 中进行更快的学习。

此外,作者还就收集环境将本文的方法与之前研究的方法进行了比较。公平起见,所有的结果设置都与 [5] 一样。如图 7 所示,SNN 分层方法要比最先进的内在激励方法(如 VIME)更好。

图 7:在基准设置下食物收集环境的结果

6. 讨论和未来研究

作者提出了一种可以通过随机神经网络表征学习多种技能、使用代理奖励学习大量技能的无监督过程,以及一种可用于未来任务的、允许重复使用学得的有用技能的分层结构的新方法。带有双线性积分和互信息奖励的 SNN 框架可以很大程度上提升学习技能的表现力和多样性。此外,分层结构可以促进智能体在新环境中进行探索。

正如文章结尾所说的那样,在这篇文章里仍存在一些局限性,但我们可以通过未来研究改进方法。首先,对不稳定的机器人转换技能时,现在的方法还不够稳定,这可以通过学习转换策略或在预训练任务中整合这些转换进行改善。其次,冻结了低级策略的权重,在训练高等策略过程中的转换时间就是固定的。可以像之前的研究一样,用离散隐向量对随机计算图使用直通估计(straight-through estimator),引入端到端训练改善第一个问题。可以通过管理器学习终止策略解决第二个问题,与 Option-critic 架构类似。最后,当前研究只使用了标准前馈架构,这样就无法使用任何之前技能活跃时收集到的感官信息。未来研究的一个方向是要在管理器层引入循环神经网络架构。

参考文献

  1. George Konidaris and Andrew G Barto. Building portable options: Skill transfer in reinforcement learning. In IJCAI, volume 7, pp. 895–900, 2007.
  2. Coline Devin, Abhishek Gupta, Trevor Darrell, Pieter Abbeel, and Sergey Levine. Learning modular neural network policies for multi-task and multi-robot transfer. arXiv preprint arXiv:1609.07088, 2016.
  3. Akira Fukui, Dong Huk Park, Daylen Yang, Anna Rohrbach, Trevor Darrell, and Marcus Rohrbach. Multimodal compact bilinear pooling for visual question answering and visual grounding. arXiv preprint arXiv:1606.01847, 2016.
  4. Yuhuai Wu, Saizheng Zhang, Ying Zhang, Yoshua Bengio, and Ruslan Salakhutdinov. On multi- plicative integration with recurrent neural networks. arXiv preprint arXiv:1606.06630, 2016.
  5. Yan Duan, Xi Chen, Rein Houthooft, John Schulman, and Pieter Abbeel. Benchmarking deep reinforcement learning for continuous control. International Conference on Machine Learning, 2016.
  6. Rein Houthooft, Xi Chen, Yan Duan, John Schulman, Filip De Turck, and Pieter Abbeel. Variational information maximizing exploration. Advances in Neural Information Processing Systems, 2016.
  7. Eric Jang, Shixiang Gu, and Ben Poole. Categorical reparameterization with gumbel-softmax. arXiv preprint arXiv:1611.01144, 2016.
  8. Chris J Maddison, Andriy Mnih, and Yee Whye Teh. The concrete distribution: A continuous relaxation of discrete random variables. arXiv preprint arXiv:1611.00712, 2016.
  9. Pierre-Luc Bacon and Doina Precup. The option-critic architecture. arXiv:1609.05140v2, 2016.
机器之心技术分析师专栏
机器之心技术分析师专栏

由来自世界各地的专业分析师为你解读前沿进展,技术热点和经典论文。我们的分析师团队由来自于各大名校的硕士和博士,以及一线研究机构的研究员组成。

理论神经网络强化学习
41
相关数据
约书亚·本吉奥人物

约书亚·本希奥(法语:Yoshua Bengio,1964年-)是一位加拿大计算机科学家,因人工神经网络和深度学习领域的研究而闻名。Yoshua Bengio于1991年获得加拿大麦吉尔大学计算机科学博士学位。经过两个博士后博士后,他成为蒙特利尔大学计算机科学与运算研究系教授。他是2本书和超过200篇出版物的作者,在深度学习,复现神经网络,概率学习算法,自然语言处理和多元学习领域的研究被广泛引用。他是加拿大最受欢迎的计算机科学家之一,也是或曾经是机器学习和神经网络中顶尖期刊的副主编。

彼得阿贝尔人物

Sergey Levine人物

拉斯 · 萨拉克赫迪诺弗人物

CMU 机器学习教授,苹果人工智能研究负责人。Ruslan Salakhutdinov 于 2009 年从多伦多大学获得机器学习(计算机科学)博士学位,之后在 MIT 人工智能实验室渡过了两年博士后生涯,后来加入了多伦多大学计算机科学与统计部做助理教授。2016 年 1 月,CMU 宣布邀请 Russ Salakhutdinov 作为机器学习部门的副教授。他的主要研究兴趣包括人工智能、机器学习、深度学习、大规模优化。

条件熵技术

在信息论中,条件熵描述了在已知第二个随机变量 {\displaystyle X} X 的值的前提下,随机变量 {\displaystyle Y} Y 的信息熵还有多少。同其它的信息熵一样,条件熵也用Sh、nat、Hart等信息单位表示。基于 {\displaystyle X} X 条件的 {\displaystyle Y} Y 的信息熵,用 {\displaystyle \mathrm {H} (Y|X)} \mathrm{H} (Y|X) 表示。

深度强化学习技术

强化学习(Reinforcement Learning)是主体(agent)通过与周围环境的交互来进行学习。强化学习主体(RL agent)每采取一次动作(action)就会得到一个相应的数值奖励(numerical reward),这个奖励表示此次动作的好坏。通过与环境的交互,综合考虑过去的经验(exploitation)和未知的探索(exploration),强化学习主体通过试错的方式(trial and error)学会如何采取下一步的动作,而无需人类显性地告诉它该采取哪个动作。强化学习主体的目标是学习通过执行一系列的动作来最大化累积的奖励(accumulated reward)。 一般来说,真实世界中的强化学习问题包括巨大的状态空间(state spaces)和动作空间(action spaces),传统的强化学习方法会受限于维数灾难(curse of dimensionality)。借助于深度学习中的神经网络,强化学习主体可以直接从原始输入数据(如游戏图像)中提取和学习特征知识,然后根据提取出的特征信息再利用传统的强化学习算法(如TD Learning,SARSA,Q-Learnin)学习控制策略(如游戏策略),而无需人工提取或启发式学习特征。这种结合了深度学习的强化学习方法称为深度强化学习。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

学习曲线技术

在机器学习领域,学习曲线通常是表现学习准确率随着训练次数/时长/数据量的增长而变化的曲线

概率分布技术

概率分布(probability distribution)或简称分布,是概率论的一个概念。广义地,它指称随机变量的概率性质--当我们说概率空间中的两个随机变量具有同样的分布(或同分布)时,我们是无法用概率来区别它们的。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

表征学习技术

在机器学习领域,表征学习(或特征学习)是一种将原始数据转换成为能够被机器学习有效开发的一种技术的集合。在特征学习算法出现之前,机器学习研究人员需要利用手动特征工程(manual feature learning)等技术从原始数据的领域知识(domain knowledge)建立特征,然后再部署相关的机器学习算法。虽然手动特征工程对于应用机器学习很有效,但它同时也是很困难、很昂贵、很耗时、并依赖于强大专业知识。特征学习弥补了这一点,它使得机器不仅能学习到数据的特征,并能利用这些特征来完成一个具体的任务。

机器人技术技术

机器人学(Robotics)研究的是「机器人的设计、制造、运作和应用,以及控制它们的计算机系统、传感反馈和信息处理」 [25] 。 机器人可以分成两大类:固定机器人和移动机器人。固定机器人通常被用于工业生产(比如用于装配线)。常见的移动机器人应用有货运机器人、空中机器人和自动载具。机器人需要不同部件和系统的协作才能实现最优的作业。其中在硬件上包含传感器、反应器和控制器;另外还有能够实现感知能力的软件,比如定位、地图测绘和目标识别。之前章节中提及的技术都可以在机器人上得到应用和集成,这也是人工智能领域最早的终极目标之一。

神经网络技术

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

批次规模技术

一个批次中的样本数。例如,SGD 的批次规模为 1,而小批次的规模通常介于 10 到 1000 之间。批次规模在训练和推断期间通常是固定的;不过,TensorFlow 允许使用动态批次规模。

前馈神经网络技术

前馈神经网络(FNN)是人工智能领域中最早发明的简单人工神经网络类型。在它内部,参数从输入层经过隐含层向输出层单向传播。与递归神经网络不同,在它内部不会构成有向环。FNN由一个输入层、一个(浅层网络)或多个(深层网络,因此叫作深度学习)隐藏层,和一个输出层构成。每个层(除输出层以外)与下一层连接。这种连接是 FNN 架构的关键,具有两个主要特征:加权平均值和激活函数。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

马尔可夫决策过程技术

马尔可夫决策过程为决策者在随机环境下做出决策提供了数学架构模型,为动态规划与强化学习的最优化问题提供了有效的数学工具,广泛用于机器人学、自动化控制、经济学、以及工业界等领域。当我们提及马尔可夫决策过程时,我们一般特指其在离散时间中的随机控制过程:即对于每个时间节点,当该过程处于某状态(s)时,决策者可采取在该状态下被允许的任意决策(a),此后下一步系统状态将随机产生,同时回馈给决策者相应的期望值,该状态转移具有马尔可夫性质。

贪心算法技术

贪心法,又称贪心算法、贪婪算法、或称贪婪法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。

隐变量技术

在统计学中,隐变量或潜变量指的是不可观测的随机变量。隐变量可以通过使用数学模型依据观测得的数据被推断出来。

强化学习技术

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

信息论技术

信息论是在信息可以量度的基础上,研究有效地和可靠地传递信息的科学,它涉及信息量度、信息特性、信息传输速率、信道容量、干扰对信息传输的影响等方面的知识。通常把上述范围的信息论称为狭义的信息论,又因为它的创始人是香农,故又称为香农信息论。

移动机器人技术

移动机器人是一种能够移动的自动机器。移动机器人具有在其环境中移动的能力,并且不固定到一个物理位置。移动机器人可以“自动”主要是指它们能够在没有物理或机电引导装置的情况下导航非受控环境。相比之下,传统的工业机器人或多或少都是固定的(stationary)机械臂或抓取组件。

推荐文章
桂林电子科技大学・无
这个分层是不是与DNN重复?随机网络能实现吗?