前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Continuous Adaptation via Meta-Learning in Nonstationary and Competitive

Continuous Adaptation via Meta-Learning in Nonstationary and Competitive

作者头像
狼啸风云
修改2022-09-04 22:04:40
1.4K1
修改2022-09-04 22:04:40
举报

本文是ICRL2018的best paper:

                    非平稳和竞争环境中基于元学习进行持续适配

文章链接:https://arxiv.org/pdf/1710.03641.pdf

作者

一作为Maruan Al-Shedivat是CMU机器学习专业的博士生,目前就职于谷歌,二作为Trapit Bansal是麻省理工大学的博士生,三作为Yura Burda,四作为Ilya Sutskever是OpenAI的联合创始人和研究总监,五作为Igor Mordatch,六作为Pieter Abbeel是加州大学伯克利分校机器人学习实验室主任。


摘要

在非平稳环境中从有限的经验中不断学习和适应的能力是迈向通用人工智能道路上的一个重要里程碑。

  • 将持续适配问题纳入到“学会学习”的框架中,开发了一个简单的基于梯度的元学习算法,适用于动态变化和对抗场景的适配。
  • 设计了一个新的多主体竞争环境RoboSumo,并定义了迭代适配游戏,用于测试持续适应的各个方面。
  • 证明元学习比反应性基线更能有效地进行适配,对学习和竞争的主体进行的实验表明,元学习是最适合的。

1.介绍

强化学习(RL)在很多方面取得了很大的进展,包括玩游戏,应用于对话系统,机器人。尽管强化学习取得了一定的进展,但解决这些问题的许多学习算法都是为处理平稳环境而设计的。另一方面现实世界往往是非平稳的,由于复杂性、在系统生命周期内环境中动态或目标的变化、存在多个学习智能体。非平稳性打破了标准假设,要求智能体在训练和执行时不断适应,以获得成功。

非平稳条件下的学习是一个很有挑战性的问题。经典的处理非平稳性的方法通常基于上下文检测和跟踪,即通过不断微调地策略来应对环境中已经发生的变化。不幸的是,现代的深度RL算法虽然能够在某些任务上能超越人类,但效率低下。非平稳性只允许在环境属性改变之前进行有限次的交互。因此,它对学习的实时性要求很高,使得一般机器学习中简单的微调方法变得不切实际。

非平稳环境可以看作是一系列平稳任务,因此我们提出将其作为一个多任务学习问题来处理。学会学习(或元学习)的方法在这些少数地情况下非常有效,仅从少数的学习规则就能归纳出灵活的学习规则。元学习在监督领域已经显示出了很好的效果,最近这个研究领域也受到了广泛关注。这篇文章开发了一种类似于的基于梯度的元学习算法,适用于非平稳环境中强化学习方法的连续地适应。更具体地说,智能体利用元学会预测环境中的变化,并相应地更新自己的策略。

尽而实际上,环境中的任何变化都可能导致非平稳性,多智能体的环境更具挑战性,由于突发性行为的复杂性和应用的实用性,从多人游戏到协调自动驾驶舰队都有着广泛的应用。多智能体环境从任何单个智能体的角度来看都是非平稳的,因为所有参与者都在同时学习和变化。本文考虑在竞争的多智能体环境中对学习对手的持续适应问题。

为此,本文设计了robosumo—一个具有模拟物理的三维环境,允许成对的智能体相互竞争。

  • 为了测试持续适应能力,本文引入了迭代适应游戏——一种新的场景,训练有素的智能体与同一对手在一场重复游戏中进行多轮竞争,而双方都可以在多轮游戏之间更新自己的策略和改变自己的行为。
  • 在迭代游戏中,从智能体的角度来看,环境是一场又一场的变化,智能体需要适应才能赢得游戏。
  • 此外,环境的竞争成分使其不仅是非平稳的,而且具有对抗性,这就提供了类似于一个自然的培训课程,并智能体鼓励学习稳健的策略。

在RoboSumo中评估本文元学习智能体,以及一些基准(单智能体)移动任务与人工设置的非平稳性和迭代适应游戏。研究表明,元学习策略在单主体和多主体环境中都明显主导着少数几种适配方法。最后,进行一个大规模的实验,训练不同形态、不同策略架构和不同适应方法的不同智能体群体,并通过在迭代游戏中相互竞争来进行交互。在这些游戏中,根据智能体的真实技能来评估个体同时,也会在几代的时间内对种群进行整体进化——输掉的个体消失,而赢下的个体被复制。结果表明具有元学习适应策略的智能体最终是最适合的。演示适应行为的视频可以在https://goo.gl/tboqaN找到。


2.相关工作

  • 终身相关和永无止境学习

本研究考虑的持续适应问题是持续学习的一个变化版本,与终身相关和永无止境学习有关。

  • 终身学习系统旨在通过有效地将知识从已经学习的任务转移和利用到新的任务,同时最小化致命性遗忘的影响,从而顺序地解决多个任务。
  • 永无休止的学习涉及到在迭代中掌握一组固定的任务,在迭代中,该集合不断增长,并且集合中所有任务的性能不断提高。
  • 持续适配的范围更窄,更精确,连续适应的目标是解决单一但非平稳的任务或环境。

终身学习和无终止学习环境被定义为一般的多任务问题,前两个问题中存在的非平稳性是由选择的任务序列决定的。在后一种情况下,我们假设非平稳性首先是由给定任务属性中的某些底层动态特性引起的(例如,在多主体设置中其他主体行为的更改)。最后,在终身和无止尽的情况下,训练和执行之间的界限是模糊的,因为这些系统不断在训练制度中运作。另一方面,持续适应则期望(可能经过训练的)智能体在执行时,在有限的数据或更改之间的交互经验的压力下适应环境中的更改。

  • 多主体环境的非平稳性

多主体环境的非平稳性是一个众所周知的问题,在简单的多玩家迭代游戏中,每一局都是一次性交互的学习环境中而被广泛研究。在这类博弈中,发现并收敛到纳什均衡策略是学习主体的成功之处。建模和利用对手甚至他们的学习过程都是有利的,因为它提高了收敛性或帮助发现某些性质的平衡。相比之下,RoboSumo中的每一轮由多个步骤组成,发生在连续时间内,需要学习一个良好的情景内控制器。在这种情况下寻找纳什均衡是困难的。因此,快速适应成为对抗不断变化的对手的少数可行策略之一。

  • 元学习

元学习有大量的工作,包括过去研究的神经模型的学习更新规则的方法,最近的方法集中在学习深度网络优化,生成模型参数,学习任务嵌入包括基于内存的方法,通过RL隐式学习,或仅仅学习一个好的初始值。


3.方法

非平稳环境下的持续适应问题将学习引入到有限的学习模式中:在环境发生变化之前,主体必须从有限的经验中学习。因此,我们在之前基于梯度的模型不可知元学习(MAML,model-agnostic meta-learning)工作的基础上构建了我们的方法,该工作已经在少数设置下成功使用。在本节中,我们从概率的角度重新推导了用于多任务强化学习的MAML,然后将其扩展到动态变化的任务。

3.1 模型不可知元学习的概率理论(MAML)

假设给定任务上的分布为D(T),其中每个任务T是一个元组:

代码语言:txt
复制
                    `$T:=\left(L_{T}, P_{T}(\mathbf{x}), P_{T}\left(\mathbf{x}_{t+1} \mid \mathbf{x}_{t}, \mathbf{a}_{t}\right), H\right)$`         式(1)    

L_T 是一个特定任务的损失函数映射到一个轨道: \boldsymbol{\tau}:=\left(\mathbf{x}_{0}, \mathbf{a}_{1}, \mathbf{x}_{1}, R_{1}, \ldots, \mathbf{a}_{H}, \mathbf{x}_{H}, R_{H}\right) \in \mathcal{T} ,对一个损失值,也就是,L_{T}: \mathcal{T} \mapsto \mathbb{R}:P_{T}(\mathbf{x}) \text { and } P_{T}\left(\mathbf{x}_{t+1} \mid \mathbf{x}_{t}, \mathbf{a}_{t}\right) 定义了任务T所在环境中的马尔科夫动力

H代表范围,观察x_t 和动作a_t 分别为观察空间\chi 和动作空间\mathcal{A} 的基本元素(典型的为向量)。

轨迹的损失\tau 是负回报L_{T}(\boldsymbol{\tau}):=-\sum_{t=1}^{H} R_{t}

元学习的目标是找到一种程序,给定对从D(T)取样的任务的有限经验的访问,可以产生一个很好的策略来解决它。更正式的,在策略\pi_\theta 下从一个任务T∼D(T)查询K轨迹之后,表示为\boldsymbol{\tau}_{\theta}^{1: K} ,构建一个新的任务指定的策略\pi_{\phi} ,最小化任务T上预期的后续损失。特别地,MAML构造特定于任务的策略的参数,\phi ,使用\theta 关于L_T 的梯度,  

代码语言:txt
复制
                `$\phi:=\theta-\alpha \nabla_{\theta} L_{T}\left(\tau_{\theta}^{1: K}\right), \text { where } L_{T}\left(\tau_{\theta}^{1: K}\right):=\frac{1}{K} \sum_{k=1}^{K} L_{T}\left(\tau_{\theta}^{k}\right), \text { and } \tau_{\theta}^{k} \sim P_{T}(\tau \mid \theta)$`    式(2)

(2)式称为适应更新步骤α。适应性更新用\theta 参数化,通过最小化任务分配的预期损失优化,D(T)——元损失:

代码语言:txt
复制
      `$\min _{\theta} \mathbb{E}_{T \sim \mathcal{D}(T)}\left[\mathcal{L}_{T}(\theta)\right], \text { where } \mathcal{L}_{T}(\theta):=\mathbb{E}_{\tau_{\theta}^{1: K} \sim P_{T}(\tau \mid \theta)}\left[\mathbb{E}_{\tau_{\phi} \sim P_{T}(\tau \mid \phi)}\left[L_{T}\left(\boldsymbol{\tau}_{\phi}\right) \mid \boldsymbol{\tau}_{\theta}^{1: K}, \theta\right]\right]$`    式(3)     

\tau_\theta 和分别为在\pi_\theta\pi_\phi 下获得的轨迹。

一般来说,可以把这个任务,轨迹,和策略,作为随机变量(图1 a),\phi 是来自一些条件分布,\phi 从一些条件分布中产生P_{T}\left(\phi \mid \theta, \tau_{1: k}\right) 。式(2)元更上式等价于假设增量分布:

代码语言:txt
复制
                 `$P_{T}\left(\phi \mid \theta, \tau_{1: k}\right):=\delta\left(\theta-\alpha \nabla_{\theta} \frac{1}{K} \sum_{k=1}^{K} L_{T}\left(\tau_{k}\right)\right)$` 

为了优化(3)式,可以使用policy gradient method (Williams, 1992),其中L_T 的梯度如下:

代码语言:txt
复制
                  `$\nabla_{\theta} \mathcal{L}_{T}(\theta)=\mathbb{E}_{\tau_{\theta}^{1: K} \sim P_{T}(\tau \mid \theta)}{\tau_{\phi} \sim P_{T}(\tau \mid \phi)}\left[L_{T}\left(\tau_{\phi}\right)\left[\nabla_{\theta} \log \pi_{\phi}\left(\tau_{\phi}\right)+\nabla_{\theta} \sum_{k=1}^{K} \log \pi_{\theta}\left(\tau_{\theta}^{k}\right)\right]\right]$`  式(4)

任务的预期损失L_T 可以用信任区域策略(TRPO,trust-region policy optimization)或近似策略(PPO,proximal policy optimization)优化方法进行优化。 


3.2 通过元学习进行持续适应

在经典的多任务设置中,我们不对任务的分布D(T)进行假设。当环境是非平稳时,我们可以把它看作是在有限时间上的一系列平稳任务,这些任务对应于环境的不同动力。

D(T)由环境变化定义,任务依次依赖。我们希望利用连续任务和元学习之间的这种依赖关系,不断更新策略,使与不断变化的环境交互过程中遇到的总期望损失最小化。在多智能体环境中,当面对一个不断改变策略的对手时,智能体应该理想地进行元学习,以预测变化并相应地更新其策略。

在概率论中,我们的非平稳环境等价于由马尔可夫链表示的任务分布(图1b)。

代码语言:txt
复制
                   `$\min _{\theta} \mathbb{E}_{\mathcal{P}\left(T_{0}\right), \mathcal{P}\left(T_{i+1} \mid T_{i}\right)}\left[\sum_{i=1}^{L} \mathcal{L}_{T_{i}, T_{i+1}}(\theta)\right]$`        式(5)    

目标是在一定长度的任务链上最小化预期损失L,

在这里P(T_0)P\left(T_{i+1} \mid P_{i}\right) 代表任务马尔科夫链的初始和转移概率,注意

(i)处理两个层级上的马尔科夫动力,在处理两个层级上的马尔科夫动力,上层是任务的动力,底层是MDP层代表了特殊的任务。

(ii)目标L_{T,T_{i+1}} 按照元学习已经定义好的方式。

由于我们对适应更新很感兴趣,这些更新相对于任务之间的马尔可夫转换来说是最优的,

因此我们对一对连续任务的元损失定义如下:

代码语言:txt
复制
            `$\mathcal{L}_{T_{i}, T_{i+1}}(\theta):=\mathbb{E}_{\tau_{i, \theta}^{1, K} \sim P_{T_{i}}(\tau \mid \theta)}\left[\mathbb{E}_{\tau_{i+1, \phi} \sim P_{T_{i+1}}(\tau \mid \phi)}\left[L_{T_{i+1}}\left(\tau_{i+1, \phi}\right) \mid \tau_{i, \theta}^{1: K}, \theta\right]\right]$`    式(6)      

(3)式和(6)式主要区别是因为轨道\tau_{i, \theta}^{1: K} 来自目前的损失任务T_i ,用来构筑一个策略\pi_\phi ,对T_{i+1} 有好处。

注意尽管策略参数\pi_\phi 对即将来临的任务T_{i+1} 是有利的。尽管策略参数\phi_i 是序列独立的,如图1所示,在式(6)中我们从初始的参数\theta^3 开始。因此,优化L_{T_{i}, T_{i+1}} 等于通过任务链中单位时间的延迟来截断反向传播。

为了构造参数政策任务的T_{i+1} ,从\theta 开始,用自适应步长进行多个元梯度步骤,步骤如下所示:

代码语言:txt
复制
            `$\begin{aligned}

\phi{i}^{0} &:=\theta, \quad \tau{\theta}^{1: K} \sim P{T{i}}(\tau \mid \theta), \

\phi{i}^{m} &:=\phi{i}^{m-1}-\alpha{m} \nabla{\phi{i}^{m-1} L{T{i}}}\left(\tau{i, \phi_{i}^{m-1}}^{1: K}\right), \quad m=1, \ldots, M-1, \

\phi{i+1} &:=\phi{i}^{M-1}-\alpha{M} \nabla{\phi{i}^{M-1}} L{T{i}}\left(\tau{i, \phi_{i}^{M-1}}^{1: K}\right)

\end{aligned}$` 式(7)                                

\left\{\alpha_{m}\right\}_{m=1}^{M} 是一组元梯度步长,和\theta 联合优化,元更新的计算图如(c)所示,策略梯度的表达式与(4)相同,但现在的期望是关于T_iT_{i+1}

代码语言:txt
复制
       `$\begin{array}{l}

\nabla{\theta, \alpha} \mathcal{L}{T{i}, T{i+1}}(\theta, \alpha)= \

\underset{\underset{\tau{i+1, \phi} \sim P{T{i+1}}(\tau \mid \phi)}{\mathbb{E}} \underset{i:, K} \sim P{T{i}}(\tau \mid \theta)}{\mathbb{L}}\left[L{T{i+1}}\left(\tau{i+1, \phi}\right)\left\nabla{\theta, \alpha} \log \pi{\phi}\left(\tau{i+1, \phi}\right)+\nabla{\theta} \sum{k=1}^{K} \log \pi{\theta}\left(\tau_{i, \theta}^{k}\right)\right\right]

\end{array}$` 式(8)       

注意,计算适应更新需要在\pi_\theta 下与环境进行交互, L_{T_{i}, T_{i+1}} 需要使用\pi_\phi ,因此,在序列中与每个人物交互两次。这在执行时通常是不可能的,因此我们在训练和执行时使用稍微不同的算法。

训练时的元学习

一旦我们获得几对连续任务的分布P(Ti−1,Ti),通过梯度的方法联合优化\theta\alpha 来进行元学习适应更新,如算法1所示,和T_{i+1} 交互时,使用\pi_\thetaT_i\pi_\phi 来收集轨道。直观地,算法寻找α和θ,适应更新(7)计算的轨迹Ti带来一个有利于解决T_{i+1} 的策略\pi_\phi 。这里的主要假设是,从T_i 出发的轨迹包含一些关于T_{i+1} 的信息。注意,将适应步骤视为计算图的一部分(图1 c),并通过反向传播整个图来优化θ 和 α,但需要计算二阶导数。

执行时的适应

注意,在训练时计算无偏适应梯度,必须使用\pi_\theta 收集经验T_i 。在测试时,由于环境的非平稳性,通常无法多次访问同一个任务。根据\pi_\phi 和对每个新加入的任务重用过去的经验来计算更新φ(参见算法2)。调整下,过去的经验收集从\pi_\theta 策略不同,使用重要性权重修正。对于单步元更新,有:

代码语言:txt
复制
           `$\phi_{i}:=\theta-\alpha \frac{1}{K} \sum_{k=1}^{K}\left(\frac{\pi_{\theta}\left(\boldsymbol{\tau}^{k}\right)}{\pi_{\phi_{i-1}}\left(\boldsymbol{\tau}^{k}\right)}\right) \nabla_{\theta} L_{T_{i-1}}\left(\boldsymbol{\tau}^{k}\right), \quad \boldsymbol{\tau}^{1: K} \sim P_{T_{i-1}}\left(\boldsymbol{\tau} \mid \phi_{i-1}\right),$`         式(9)

\pi_{\phi_{i-1}}\pi_{\phi_{i}} 分别用来从T_{i-1}T_i 进行展示。将重要性权重修正扩展到多步骤更新是很简单的,只需要在(7)中的每个中间步骤中添加重要性权重。


4.环境

本文设计了一组环境,用于在两个场景中测试持续适应方法的不同方面:

(i)简单的环境,根据一些潜在的动力改变事件集。

(ii)RoboSumo是一个具有竞争力的多智能体环境,它允许不同的智能体相互之间玩一系列游戏,并不断适应彼此策略中的增量变化。

这些环境都是基于MuJoCo物理模拟器,所有智能都是简单的多腿机器人,如图2(a)所示。

4.1 动力

考虑机器人在不断变化环境中的运动问题。使用一种六脚主体(图2b)来观察它身体的绝对位置和速度,它的腿的角度和速度,它的作用是通过对它的关节施加扭矩。智能体按其在固定方向上的移动速度按比例获得奖励。为了诱导非平稳性,选择智能体的一对腿,并通过一个因子(在7轮中从1到0线性变化)缩小应用于相应关节的扭矩。

在第一轮中所有的腿都是全功能的,而在最后一轮中,智能体有两条腿完全瘫痪(尽管策略可以产生扭矩,但在传递到环境之前,它们会被乘以0)。智能体的目标是通过改变它的步态来学会从一轮到另一轮的适配,使它能够在给定的方向上以最大的速度移动,尽管环境发生了变化。

有15种方法来选择一对六腿生物的腿,因此有15种不同的非静止环境。这就允许使用这些环境的子集进行训练,并使用一个独立的测试集。

4.2 竞争

多主体环境RoboSumo允许主体按照标准的相扑规则在1-vs-1的体系中竞争。介绍蚂蚁、昆虫和蜘蛛三种不同解剖结构的解剖(图2a)。在游戏中,每个主体观察自己和对手的位置,自己的关节角度,对应的速度,以及施加在自己身上的力。动作空间是连续的。

迭代改进游戏

为了测试改编,定义迭代改编游戏(图3)——一对智能体之间的游戏,由k轮组成,每个轮由一个或多个固定长度的集组成(500个时间步)。每一轮的结果要么是赢,要么是输,要么是平局。赢得大多数回合(至少5%的优势)的主体将被宣布为游戏的赢家。设置有两个不同的方面:

首先,智能体要么纯粹的自我进行游戏训练,要么通过固定的训练集合和对手对抗。测试时,将面对来自测试集合的新对手。其次,智能体可以在测试时内学习(或适应)。特别地,智能体应该利用它与同一对手连续多轮比赛这一事实,并尝试相应地调整其行为。因为对手可能也在适应,所以设置允许测试不同的持续适应策略,一个对另一个。

定型奖励

在机器人相扑比赛中,奖励是稀疏的:胜者得+2000分,败者得-2000分,平局时双方得-1000分。为了在训练的早期阶段鼓励快速学习,我们将以以下方式对智能体进行奖励:智能体(i)因为靠近环的中心,因为向对手移动,因为对对手的身体施加了力而得到奖励,和(2)得到的罚分与对手到场地中心的距离成反比。在测试时,智能体还可以继续访问定型的奖励,并可以使用它来更新它们的策略。在我们的实验中,我们使用折扣奖励折扣因素,γ= 0.995。为了研究适应,我们需要一个校准良好的环境,在这个环境中没有一种智能体具有初始优势。为了确保平衡,还增加了较弱的主体的质量,以便在游戏中,一种智能体类型与另一种智能体类型在非适应机制下的胜率几乎相等。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年12月18日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本文是ICRL2018的best paper:
  •                     非平稳和竞争环境中基于元学习进行持续适配
  • 作者
  • 摘要
  • 1.介绍
  • 2.相关工作
  • 3.方法
    • 3.1 模型不可知元学习的概率理论(MAML)
      • 3.2 通过元学习进行持续适应
        • 训练时的元学习
          • 执行时的适应
          • 4.环境
            • 4.1 动力
              • 4.2 竞争
              相关产品与服务
              腾讯智能对话平台
              腾讯智能对话平台(Tencent Bot Platform,TBP)专注于“对话即服务”的愿景,全面开放腾讯对话系统核心技术,为大型企业客户、开发者和生态合作伙伴提供开发平台和机器人中间件能力,实现便捷、低成本构建人机对话体验和高效、多样化赋能行业。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档