Deep Reinforcement Learning : An Overview(Yuxi Li) 学习笔记

翻译的比较粗糙,仅供参考。

2.2 Deep Learning

深度学习与浅层学习形成对比。对于许多机器学习算法,如线性回归、逻辑回归、支持向量机(SVMs)、决策树和增强等,我们有输入层和输出层,在训练前可以用人工特征工程对输入进行转换。在深度学习中,在输入层和输出层之间有一个或多个隐藏层。在除输入层外的每一层,我们计算每个单元的输入,作为上一层单元的加权和;然后,我们通常使用非线性变换,或激活函数,如逻辑逻辑,tanh,或最近更流行的,整流线性单元(ReLU),来应用于一个单元的输入,以获得来自前一层输入的新表示。我们在层与层之间的单元之间有权重。通过计算从输入到输出,在输出层和每一个隐含层上的正向流,我们可以逆向计算误差导数,并将梯度反向传播到输入层,这样就可以更新权值来优化一些损失函数。

前馈深度神经网络或多层感知器(MLP)是将一组输入值映射成一个数学函数,在每一层由许多更简单的函数组成。卷积神经网络(CNN)是一种前馈深度神经网络,具有卷积层、池化层和全连接层。cnn与多个数组是用来处理数据,例如,色彩形象,语言,音频谱图和视频,受益于这种信号的属性:本地连接,共享权重,池化和多种层次的使用和灵感来自简单细胞和复杂的细胞在视觉神经科学(勒存et al ., 2015)。递归神经网络(RNN)通常用于处理顺序输入,如语音和语言,一个元素一个元素地处理,并使用隐藏单元存储过去元素的历史。RNN是一个多层神经网络,所有层的权值相同,在正向计算时展开。RNN很难长时间存储信息,梯度可能会消失。长期短期记忆网络(LSTM)门控递归单元(GRU)被提出来解决这些问题,通过门控机制通过递归细胞操纵信息。梯度反向传播或其变体可用于上述所有深度神经网络的训练。

Dropout是一种正则化策略,通过从原始网络中随机删除非输出单元来训练一组子网络。批处理归一化对每个训练小批进行归一化,通过减少内部协变量移位来加速训练,即,前一层参数的改变将改变各层的输入分布。

深度神经网络从原始输入中自动学习表示,以恢复许多自然信号中的成分层次结构。例如,在图像中,对象、部分、图案的层次结构和局部边缘的组合。分布式表示是深度学习的核心思想,它意味着许多特征可以表示每个输入,每个特征可以表示许多输入。深度分布式表示的指数优势克服了维数诅咒的指数挑战。端到端培训指的是一个学习的概念模型使用原始输入没有手动功能工程生成输出,例如,AlexNet (Krizhevsky et al ., 2012)与原始像素图像分类、Seq2Seq (Sutskever et al ., 2014)与原始机器翻译句子,和DQN (Mnih et al ., 2015)与原始像素和玩游戏。

2.3 强化学习RL

在本节中,我们简要介绍了强化学习的背景知识。在建立了RL问题之后,我们讨论了值函数、时间差分学习、函数逼近、策略优化、深度RL、RL的用法,并以一个简短的总结结束了这一节。要对深度强化学习有一个很好的理解,首先要对强化学习有一个很好的理解。

2.3.1 PROBLEM SETUP 问题建立

RL代理随时间与环境交互。在每个时间步骤t,代理分别根据奖励函数R(s,a)和状态转移概率P(st+1|st,at)的环境动态或模型,在作为代理的行为即从状态st到动作at的映射的策略π(at|st)之后,接收状态空间S中的状态st,并从动作空间A选择动作at,并转换到下一个状态st+1。在一个偶发的问题中,这个过程会一直持续,直到代理到达一个终端状态,然后重新启动。回报是折现后的累计回报,带有折现因子。代理人的目标是最大化每个州对这种长期回报的期望。该问题建立在离散状态和动作空间中。将它扩展到连续空间并不难。

2.3.2 VALUE FUNCTION 值函数

价值函数是对预期的、累积的、贴现的、未来的回报的预测,衡量每个状态或状态-动作对的好坏。状态值是从状态分解到Bellman方程的后续策略的期望返回值。最优状态值是将状态分解为Bellman方程的任何策略所能达到的最大状态值。动作值是在状态s中选择动作a,然后按照策略分解成Bellman方程的期望回报。最优动作值函数是指任何策略对状态s和动作a所能达到的最大动作值,并将其分解为Bellman方程。我们通过π表示最优政策。

2.3.3 TEMPORAL DIFFERENCE LEARNING 时间差分学习

当一个RL问题满足马尔可夫性时,即,未来只取决于当前状态和行动,而不是在过去,它是制定作为一个马尔可夫决策过程(MDP)定义的5-tuple (S, P, R,γ)。当系统模型可用时,我们使用动态规划方法:策略评估来计算策略的值/动作值函数,值迭代和策略迭代来寻找最优策略。当没有模型时,我们使用RL方法。当模型可用时,RL方法也可以工作。此外,RL环境可以 multi-armed bandit,一个MDP,POMDP,game,等等

时间差异(TD)学习是RL的核心。TD学习通常是指Sutton(1988)提出的价值函数评价的学习方法。SARSA (Sutton and Barto, 2017)和Qlearning (Watkins and Dayan, 1992)也被认为是时间差异学习。

TD learning (Sutton, 1988)直接从TD错误的经验中,通过bootstrapping,以一种无模型的、在线的、完全增量的方式学习价值函数V(s)。TD learning是一个预测问题。他的更新规则是V (s) ← V (s) + α[r + γV (s0)-V (s)], where α is a learning rate, and r+γV (s0) V (s) is called TD error.算法1给出了表元TD学习的伪代码。准确地说,它是表式的TD(0)学习,其中0表示它是基于一步返回的。

Bootstrapping,如TD更新规则,根据后续的评估来估计状态或动作值,在RL中很常见,如TD学习、Q学习和参与者-批评者。Bootstrapping方法通常学习起来更快,并且使在线学习成为可能。Bootstrapping方法不是真正的梯度体面的实例,因为目标依赖于要估计的权值。然后引入半梯度下降的概念(Sutton and Barto, 2017)。

SARSA,代表状态,行动,奖励,状态(下),行动(下),是一个on-policy的方法找到最优政策,更新规则。算法2给出了SARSA的伪代码,精确的SARSA(0)。

Learning是一种寻找最优策略的off-policy方法。Q学习的学习动作值函数,更新规则是,。Q-Learning 贪婪地根据max的动作值改进策略。算法3给出了Q学习的伪代码,精确的表式Q(0)学习。

TD-learning、Q-learning和SARSA在一定条件下收敛。从一个最优的行动价值函数,我们可以推出一个最优的政策。

将上述算法分别称为TD(0)和Q(0),一步返回学习。我们有TD学习和Q学习的变体和具有多步回归的蒙特卡罗方法。资格跟踪从落后的视图提供了一个在线增量实现,导致TD(λ)和Q(λ)算法,在λ[0,1]。TD(1)与蒙特卡罗方法相同。

资格追踪(Eligibility Trace)是一种短期记忆,通常持续在一个事件中,通过影响权重向量来帮助学习过程。权向量是一种长期记忆,持续整个系统的持续时间,决定了估计值。资格追踪有助于解决长期延迟奖励和非马尔科夫任务的问题(Sutton和Barto, 2017)。

TD(λ)结合一步TD预测,TD(0),用蒙特卡罗方法,TD(1),使用合格的痕迹和衰减参数λ,预测算法。De Asis等(2017)统一了多步TD控制算法。

我们将讨论上面的列表情况,其中值函数或策略以列表形式存储。当状态和/或动作空间很大或连续时,函数逼近是一种泛化方法。函数逼近的目的是从函数的例子中归纳出整个函数的近似值;它通常是监督学习中的一个概念,在机器学习、模式识别和统计曲线拟合等领域都有研究;在强化学习中,函数逼近通常将每个备份作为训练实例,并遇到新的问题,如非平稳性、自举、延迟目标(Sutton and Barto, 2017)。线性函数近似是一种流行的选择,部分原因是其理想的理论性质,特别是在Deep Q-Network的工作之前(Mnih et al., 2015)。然而,强化学习与神经网络的融合由来已久(Sutton和Barto, 2017;Bertsekas和Tsitsiklis, 1996年;Schmidhuber, 2015)。

算法4给出了带函数逼近的TD(0)的伪代码。v (s, w)是近似值函数,w值函数权向量,v (s, w)的梯度近似值函数对权向量,和更新后的权向量更新规则,

 

当将off-policy、function和bootstrapping相结合时,可能会出现不稳定性和发散(Tsitsiklis and Van Roy, 1997),这被称为致命的三元问题(Sutton and Barto, 2017)。所有这三个元素都是必需的:用于可伸缩性和泛化的函数近似、用于计算和数据效率的引导、用于从目标策略中释放行为策略的策略外学习。不稳定的根本原因是什么?学习或采样则不然,因为动态规划与函数逼近有分歧;探索、象化或控制则不然,因为预测本身就有分歧;局部极小值或复杂的非线性函数逼近是不稳定的,因为线性函数逼近会产生不稳定性(Sutton, 2016)。不稳定的根本原因是什么还不清楚——上面提到的每一个因素都不是——在政策外学习中仍然有许多开放的问题(Sutton和Barto, 2017)。

表1给出了处理各种问题的各种算法(Sutton, 2016)。深度RL算法,如Deep Q-Network (Mnih et al., 2015)和A3C (Mnih et al., 2016)在这里没有提出,因为它们没有理论保证,虽然它们在经验上取得了惊人的性能。

在解释表一之前,我们先介绍一些背景定义。回顾一下值函数的贝尔方程是...。贝尔算子被定义为...。(本段省略)

ADP算法是指带有函数逼近的动态规划算法,如策略评估、策略迭代和值迭代。最小二乘时间差(LSTD) (Bradtke and Barto, 1996)以批处理方式直接计算TD不动点。LSTD是一种高效的数据处理方法,但是具有平方时间复杂度。LSPE (Nedic和Bertsekas, 2003)扩展了LSTD。拟合- q算法(Ernst et al., 2005;在批处理模式中学习动作值。残差梯度算法(Baird, 1995)最小化Bellman误差。Gradient-TD (Sutton et al., 2009a;b;(Mahmood et al., 2014)方法是真正的梯度算法,在预测Bellman误差(PBE)中执行SGD,在非策略训练和非线性函数近似下进行鲁棒收敛。- td (Sutton et al., 2016)强调一些更新,通过重新加权去强调另一些,提高计算效率,但仍是一种半梯度方法。更多细节见Sutton和Barto(2017)。Du等(2017)提出了用于政策评估的方差减少技术,以实现快速收敛。White和White(2016)对线性TD方法进行了实证比较,并对其实际应用提出了建议。

2.3.6 policy optimization

相比之下TD学习和q学习的价值取向的方法,基于策略的方法直接优化政策π(带有函数逼近),并通过梯度上升来更新参数θ。加强(威廉姆斯,1992)是一个策略梯度方法,向着...方向更新θ。通常从回归中减去基线以减少梯度估计的方差,同时保持其无偏性,从而得到梯度方向。使用V (st)作为基线bt(st),我们有优势函数A(at, st) = Q(at, st) V (st),因为Rt是Q(at, st)的估计值。算法5给出了情景情况下增强算法的伪代码。

在actor-批评家算法中,批评家按照批评家建议的方向更新动作值函数参数,而actor按照批评家建议的方向更新策略参数。算法6给出了情节式单步演员-批评家算法的伪代码。

2.3.7 Deep RL

当我们使用深度神经网络来近似强化学习的任意一个组成部分(value function,policy,model(状态转变函数,奖励函数))时,我们得到了深度强化学习(deep RL)方法。这里的参数θ深层神经网络的权重。当我们使用“浅”模型,如线性函数、决策树,瓦片编码函数近似者等等,我们获得“浅”RL,这些模型参数θ重量参数。注意,一个浅层模型,例如决策树,可能是非线性的。深度RL和“浅层”RL的明显区别是使用什么函数逼近器。这与深度学习和“浅层”学习的区别类似。在深RL中,通常采用随机梯度下降法来更新权值参数。当偏离政策、函数近似,特别是非线性函数近似和自举结合在一起时,可能会出现不稳定性和发散(Tsitsiklis和Van Roy, 1997)。然而,最近的Deep Q-Network (Mnih et al., 2015)和AlphaGo (Silver et al., 2016a)等工作稳定了学习,取得了优异的成绩。

2.3.8 RL parlance

我们用RL术语解释一些术语。预测问题,或策略评估,是计算策略的状态或动作值函数。控制问题是寻找最优策略。规划用模型构造一个价值函数或策略。

政策上的方法评估或改进行为政策,例如,SARSA适合当前政策的行动价值功能,即时,SARSA基于来自相同策略的样本来评估策略,然后根据动作值贪婪地细化策略。在off-policy方法中,agent学习一个最优值函数/策略,可能遵循一个不相关的行为策略,例如Q- learning试图直接找到最优策略的动作值,不一定与生成数据的策略相匹配,即,得到的策略Q-learning通常与生成样本的策略不同。政策上和政策下的概念可以理解为相同的政策和不同的政策。

探索-利用困境是指当政策还不是最优的,或者系统是不稳定的时候,agent需要贪婪地利用当前最优的行为来获取最大的回报,而agent则需要探索环境来寻找更好的行为。

在无模型方法中,agent明确地从经验中进行试错学习;模型(状态转换函数)不是已知的,也不是从经验中学习的。使用模型的RL方法是基于模型的方法。

在在线模式下,对采集到的数据按顺序执行训练算法。在离线模式或批处理模式下,模型在整个数据集上进行训练。

通过引导,状态或动作值的估计值将从后续估计值更新。

2.3.9 brief summary

当环境观测值满足马尔可夫性时,将RL问题表示为MDP。MDP 5-tuple定义的(S, P, R,γ)。RL的一个核心概念是值函数。Bellman方程是开发RL算法的基石。时间差分学习算法是评价和预测价值函数的基础。控制算法寻找最优策略。强化学习算法可以基于价值函数和/或政策,模范自由或基于模型,对政策或off-policy与函数近似与否,与样品备份(TD和蒙特卡罗)或全备份(动态规划和详尽的搜索),和备份的深度,要么一步返回(TD(0)和动态编程)或多步返回(TD(λ)、蒙特卡罗和详尽的搜索)强化学习算法可以基于值函数和/或策略、无模型或基于模型、on-policy或off-policy、带函数近似值或不带函数近似值、带样本备份或完整备份、带深度备份、一步返回或多步返回。。当将非政策、函数近似和自举相结合时,我们面临着不稳定性和分歧(Tsitsiklis和Van Roy, 1997),致命的三元问题(Sutton和Barto, 2017)。建立了线性函数近似的理论保证,如Gradient-TD (Sutton et al., 2009a;b;Mahmood et al., 2014), - td (Sutton et al., 2016)和Du et al.(2017)。deep Q-Network (Mnih et al., 2015)和AlphaGo (Silver et al., 2016a)等算法利用非线性函数逼近,特别是深度学习,稳定了学习,取得了惊人的效果,这是本文的重点。

3 核心要素

RL代理执行一系列动作,并观察状态和奖励,主要组件包括价值函数、策略和模型。RL问题可以表述为预测、控制或规划问题,解决方法可以是无模型的或基于模型的,具有价值函数和/或策略。在RL中,探索-利用是一个基本的权衡。

在本节中,我们将讨论RL的核心要素:价值函数在3.1节,政策在3.2节,奖励在3.3节,模型在3.4节,规划在3.5节,探索在3.6节。

3.1 价值函数

价值函数是强化学习中的一个基本概念,时间差异(TD)学习(Sutton, 1988)及其扩展q -学习(Watkins and Dayan, 1992)分别是学习状态函数和行为价值函数的经典算法。在接下来的文章中,我们将重点介绍Deep Q-Network (Mnih et al., 2015),一个最近的突破,以及它的扩展。

3.1.1 Deep Q-NETWORK(DQN)

Mnih等(2015)引入Deep Q-Network (DQN),点燃了Deep RL领域。我们在算法7中给出了DQN伪代码。在DQN之前,众所周知,当动作值函数近似为神经网络等非线性函数时,RL是不稳定的,甚至是发散的。DQN的主要贡献有:1)利用经验回放(Lin, 1992)和目标网络,利用深度神经网络(CNN)稳定动作值函数逼近的训练;2 )设计一个端到端的RLapproach, 只有像素和游戏分数作为inputs,只需要最少的领域知识 3)用相同的算法、网络架构和超参数训练一个灵活的网络,使其在许多不同的任务中表现良好,例如, 49款Atari游戏(Bellemare et al., 2013),并超越了之前的算法,表现可与人类专业测试人员相媲美。See Chapter 16 Sutton 和 Barto 详细直观的描述Deep QNetwork.参见Deepmind对DQN的描述:https://deepmind.com/research/dqn/。

3.1.2 DOUBLE DQN

van Hasselt等(2016a)提出了双DQN (D-DQN)来解决Q-learning中的高估问题。在标准Q-learning和DQN中,参数更新如下,

 

以便max操作符使用相同的值来选择和评估一个动作。因此,它更有可能选择过高的估计值,并导致过高的估计值。van Hasselt等(2016a)提出根据在线网络来评估贪婪策略,而使用目标网络来估计其价值。这只需对DQN算法稍加修改即可实现,

 

其中θt是参数在线网络和θt-目标网络的参数。作为参考,yQt可以写成

 

DQN在Atari games上发现了比DQN更好的政策。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值