I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型(三)

本文涉及的产品
模型训练 PAI-DLC,5000CU*H 3个月
交互式建模 PAI-DSW,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型

一、Model-based


1.1 I2A


I2A是Deepmind提出的一种想象力增强的model-based强化学习方法,是一种结合了model-free和model-based的深度强化学习的新架构。其目的是使rollout policy来模仿最终的想象力增强的策略, 以此来进行rollout policy 的训练。也就是说,通过和环境交互采样后,让系统学习到一个可编码的环境。在决策时,先考虑通过模型“想象”后续情况,然后得到一个策略。得到策略后,再将这个策略用model-free方式进行表征。与大多数现有的model-based RL学习和计划方法相比,I2A学习解释来自学习环境模型的预测,以任意的方式构建隐性计划,将预测作为深度策略网络的额外背景。I2A显示出更好的数据效率、性能和对模型错误指定的稳健性。


I2A的结构如下:


图1:I2A架构。ˆ-符号表示想象的数量。a):想象核心( imagination core ,IC)预测下一个时间步长,以从rollout策略πˆ中采样的行动为条件。b):IC想象特征的轨迹ˆf=(ˆo,rˆ),由rollout编码器编码


I2A利用环境模型,实现了利用想象力来增强model-free的agent。在给定当前信息的情况下,可以通过查询环境模型来对未来进行预测。使用环境模型来模拟想象的轨迹,使用神经网络解释这些轨迹,并作为额外的背景提供给策略网络。一般来说,环境模型是任何可以从agent轨迹中以无监督的方式进行训练的递归结构:给定一个过去的状态和当前的行动,环境模型预测下一个状态和来自环境的任何数量的信号。I2A特别考虑建立在最近成功的行动条件下的下一步预测器的环境模型,它接收当前的观察(或观察的历史)和当前的行动作为输入,并预测下一个观察,以及可能的下一个奖励。在未来的多个时间步长中推出环境模型,通过用现在的真实观测值初始化想象的轨迹,随后将模拟的观测值输入模型。每次rollout选择的行动都来自于rollout策略πˆ。环境模型和πˆ构成了想象力的核心模块,它预测下一个时间步长(图1a)。想象力核心IC用于生成n个轨迹Tˆ1, . . . , Tˆn。每个想象的轨迹Tˆ是一个特征序列(ˆf_t+1, . . ,ˆf_t+τ),其中,t是当前时间,τ是rollout的长度,ˆf_t+i是环境模型的输出(即预测的观察和/或奖励)。

轨迹可能包含奖励序列以外的信息(一个轨迹可能包含一个有信息的子序列,例如解决一个子问题,但不会造成更高的奖励)。使用一个rollout编码器E,它将想象中的rollout作为一个整体来处理,并学会解释它,即通过提取任何对agent的决定有用的信息,甚至在必要时忽略它(图1b)。每条轨迹都被单独编码为一个rollout嵌入e_i = E(Tˆi)。最后,利用一个聚合器A将不同的rollout嵌入转换为一个单一的想象代码c_ia = A(e1, ... , en)。I2A的最后一个组成部分是策略模块,它是一个网络,从mode-based预测中获取信息c_ia,以及model-free路径的输出c_mf(一个只将真实观察作为输入的网络,见图1c,右),并输出想象力增强的策略向量π和估计值V。因此,I2A学会了结合其model-free和想象力增强的路径的信息;如果没有model-based的路径,I2A就会简化为一个标准的model-free网络。因此,I2A可以被认为是通过提供来自model-based规划的额外信息来增强model-free agent,并且严格来说比底层的model-free agent具有更多的表达能力。

图2给出了I2A中用到的环境模型。


图2.环境模型。广播输入动作并将其与观察结果相连接。卷积网络将其转化为输出图像的像素级概率分布和奖励的分布


当前 SOTA!平台收录 I2A2个模型实现资源。


项目 SOTA!平台项目详情页
I2A 前往SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/i2a


1.2 MBMF

Model-Based Deep Reinforcement Learning with Model-Free Fine-Tuning(MBMF)方法的核心为:首先通过agent执行随机策略获取一定数量的样本用于建立动力学模型;然后使用传统控制方法依托所学习的动力学模型进行规划,并得到专家轨迹;使用模仿学习从专家轨迹中学习出一个参数化策略;将学习得到的参数化策略作为model-free强化学习算法的起始策略。具体的,将神经网络与模型预测控制(model predictive control,MPC)相结合,提出一种高效的适用于解决高维、富接触问题的model-based 算法,其中模型使用深度神经网络搭建,此外还提出了一种使用model-based学习器初始化model-free学习器以实现高奖励并大幅降低样本复杂性的方法。

首先介绍model-based算法。使用参数化的深度神经网络作为动力学方程,θ 为网络的权重。输入当前状态s_t和动作a_t,利用下式求解下一个状态:


为了训练动力学方程,从满足初始分布的初始状态开始执行随机动作采样,记录长度为T的轨迹。把轨迹分片成输入( s_t, a_t ) 和对应的label s_ (t + 1) − s_ t。然后对其进行标准化处理(减平均值除以标准差),使得loss函数平等的权衡state的各个维度。同时对数据添加zero mean高斯噪声提高模型鲁棒性,将这些训练数据存储到数据集D中。

通过随机梯度下降最小化误差训练模型:



当在训练集D上训练时,同时会在验证集D_val 上计算均方误差作为方程预测能力的评估,但这个误差只是评估模型对下一个状态的预测能力。为了具备对未来的预测能力,通过前向传播H次计算H-step 验证误差。对于D_val上的每一个给定的实际动作序列,将ground-truth的对应状态序列和动力学模型的多步状态预测进行比较:


为了能够在任务中编码使用学到的模型和奖励函数,本文形式化定义了一个计算简单且误差鲁棒的model-based控制器。首先使用学到的动力学模型优化H-step视野的动作序列:


使用一种简单的random-sampling shooting方法来求近似解:随机生成K个候选动作序列,用学到的模型生成对应的状态序列,由此可以计算奖励序列,最后选取期望累计奖励最高的动作序列。同时使用model predictive control(MPC):策略只执行第一个动作,得到下一个状态,在下个时间步长重新计算最优动作序列。

本文使用交叉迭代方法收集当前模型的数据和使用当前混合数据重新训练模型的方式来增加额外的同策略数据。这种方式减轻了数据的状态-动作分布和model-based控制器的分布之间的不一致性来提高性能。




图3. 算法1的说明。在第一次迭代中,执行随机动作并将随机动作用于初始化DRAND。在接下来的所有迭代中,这个迭代程序被用来训练动力学模型,运行MPC控制器进行动作选择、汇总数据,并重新训练模型

其次,介绍MBMF方法。MBMF的主要思想是训练一个策略来模拟学到的model-based控制器,然后把这个策略作为model-free RL学习的初始策略。首先用MPC控制器收集样例轨迹,构造数据集D*,然后训练一个神经网络策略π_ϕ ( a ∣ s ) 来拟合D*中的专家轨迹。然后使用行为克隆目标函数训练参数:



为了达到期望的性能表现,解决数据分布问题,本文使用DAGGER方法:迭代训练策略,执行同策略,查询“专家”MPC控制器访问的状态的正确动作,然后重新训练策略。初始化完成后得到策略π_ϕ 作为model-free的初始状态。这里可以选择不同的model-free方法,在作者原文中用到的是TRPO。


当前 SOTA!平台收录MBMF共 4 个模型实现资源。

项目 SOTA!平台项目详情页
MBMF 前往SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/mbmf


1.3 MVE


MVE将环境模型引入到model-free RL方法中,即Model-Based Value Expansion。传统方法对于Q值的预估(DDPG、DQN)是通过bootstrapped的方式来更新参数的,而MVE把环境模型先rollout一定步长次数之后再进行Q值预估。也就是说,在传统的更新方式中,target Q-value使用的是下一步Q-value的预估,而MVE中,target Q-value是先通过环境模型进行模拟一段路径之后,再进行Q-value预估。这样Q-value的预估就融合了基于环境模型的短期预估以及基于target_Q网络的长期预估。

MVE假设有一个近似的动态模型ˆf:S×A→S和奖励函数r来提高策略π的价值估计。给出H-step MVE的定义:使用从模型sˆt=ˆf^π(ˆst-1)在π下得到的想象的奖励报酬rˆt=r(ˆs_t, π(ˆs_t)),定义给定状态V^π(s_0)的价值的H-step模型价值扩展(MVE)估计:


H-step MVE将s_0的状态值估计分解为由学习动态预测的部分和由Vˆ估计的尾部。MVE在H-step horizon不稀疏的情况下最有用,即使在稀疏的奖励环境下,预测未来状态也会提高critic的准确性。此外,MVE也可以用于state-action估计。

下面具体演示如何在一般的 actor-critic 设置中应用MVE来改进目标Q值,以实现更快的收敛。具体实现依赖于一个参数化的actor π_θ和critic Q _ϕ, 如果可以如下计算出一个单独的参数化actor,则可以将其删除:


假设actor-critic 方法提供了一个可微调的actor损失和critic损失。这些损失是θ、ϕ以及transitions τ=(S、A、R、S_0)的函数,从某种分布中取样D。MVE 依赖于从过渡的经验分布 β 的近似固定点构造。它依赖于当前的策略来想象最多提前H-step。


从ν中取样的transitions相当于从H想象中的未来的任何一点取样,当从β中取样的状态开始。MVE增强的方法遵循通常的actor-critic 模板,但critic训练使用MVE目标和从ν中取样的transition(如下Algorithm 1)。

假设用target actor进行rollout,其参数是以前迭代的指数加权平均数,以便与DDPG相比较,DDPG使用target actor来计算目标值估计。取H=0,ν(θ', ˆf) = β ,使用多层全连接的神经网络来表示Q函数和策略,使用DDPG描述的actor和critic的损失。

此外,不使用想象的缓冲器来保存模拟状态,而是通过从ν(θ',fˆ)中取样来即时生成模拟状态。从ν中进行分层抽样,每次有H个依赖性样本,在Algorithm 1 Line 11中,每个t∈{0,..., H - 1}都是分层抽样。首先,从β中抽出一个真实的过渡τ_0 = (s-1, a-1, r-1, s_0),这是根据探索性策略与环境互动观察到的过渡的经验分布。使用学到的动力学模型ˆf来生成sˆt和rˆt。由于π_θ'在θ, ϕ的联合优化过程中会发生变化,这些模拟状态在批处理后立即被丢弃。然后采取随机的∇_ ϕ步骤来最小化Q_ ϕ的基于ν的贝尔曼误差:


其中Q_ϕ'和和aˆt=π_θ'(ˆst)使用目标参数值(Algorithm 1的第11-13行)。因此,贝尔曼误差的每一次观察总是依赖于一些真实数据。对于动态的ˆf,使用了一个有8层128个神经元的神经网络网络,每个神经元有固定的10^-3的学习率,经过训练可以预测实向量值状态的差异。

MVE通过仅将利用 model 的 imagination 保持在fixed length来控制 model 的不确定性。使用 learned model 来估计 short-term horizon,用传统的 Q-learning 估计 long-term horizon 并将二者结合起来,实现 data-efficient。MVE的核心是使用近似的dynamic model f^:S×A→S 和真实的reward function r 来改进在策略π 下的值估计,让critic学习效果更好。

项目 SOTA!平台项目详情页
MVE 前往SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/mve


相关文章
|
4月前
|
机器学习/深度学习 算法框架/工具 Python
深度学习第4天:感知机模型
深度学习第4天:感知机模型
|
机器学习/深度学习 算法 自动驾驶
【强化学习】什么是“强化学习”
强化学习是机器学习领域的一种重要方法,主要通过使用环境的反馈信息来指导智能体的行为,并且通过智能体收集的经验数据对自身策略进行优化。在强化学习中,我们通常用“智能体”来表示学习机器或者一个决策实体。这个智能体在某个环境中采取行动,然后收到环境的反馈信号(奖励或者惩罚),从而逐渐学习到一个最优的行动策略。在强化学习中,主要涉及到一些概念,如状态、行动、奖励、策略等等。状态指的是输入进入智能体算法的集合,行动指的是智能体做出的反应,奖励通常是指环境给予智能体的反馈信息,策略指的是智能体在某种状态下选择的行为。
187 0
【强化学习】什么是“强化学习”
|
机器学习/深度学习 决策智能
初探强化学习
初探强化学习
119 0
|
11月前
|
机器学习/深度学习 算法 自动驾驶
强化学习模型
强化学习模型
159 0
|
编解码 人工智能 搜索推荐
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(四)
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型
390 0
|
机器学习/深度学习 存储 算法
DQN、A3C、DDPG、IQN…你都掌握了吗?一文总结强化学习必备经典模型(一)
DQN、A3C、DDPG、IQN…你都掌握了吗?一文总结强化学习必备经典模型
311 0
|
机器学习/深度学习 存储 算法
强化学习之DQN论文介绍
强化学习之DQN论文介绍
174 0
|
机器学习/深度学习 自然语言处理 算法
I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型(二)
I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型(二)
256 0
|
机器学习/深度学习 人工智能 算法
I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型(四)
I2A、MBMF、MVE、DMVE…你都掌握了吗?一文总结强化学习必备经典模型
586 0
|
机器学习/深度学习
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(三)
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型
1076 0