强化学习简介

强化学习 (reinforcement learning)

问题的定义: 包括环境,智能体,状态,动作,奖赏这些核心元素;

目前成功的强化学习应用一般需要有足够的训练数据;可能来自完美的模型、很接近真实系统的仿真程序、或通过与环境交互收集到的大量数据。

一般把机器学习分为监督学习、无监督学习、和强化学习。强化学习中有评估反馈,却没有标注数据,评估反馈不能像监督学习中的标注那样指明一个决策正确与否。

与监督学习相比,强化学习还有成绩分配、稳定性、探索与利用等方面的挑战。

强化学习可以不用模型,直接通过数据进行训练,从而做出接近最优或最优的决策。数据可以来自完美模型、精准仿真器、或大数据。

强化学习可以处理很复杂的问题。AlphaGo给了一个有力证明。

强化学习得益于动物学习、神经科学、心理学的奖赏系统、条件反射等。同时,强化学习可以解释多巴胺等神经科学中的机制。

强化学习智能体 (agent) 与环境 (environment) 交互,针对序列决策问题,通过试错 (trial-and-error) 的方式学习最优策略。

强化学习一般定义为马尔科夫决策过程(Markov Decision Process, MDP). 在每一个时间步骤,智能体接受到一个状态 (state),根据策略 (policy) 选择一个动作 (action),获得奖赏 (reward),然后根据环境的动态模型转移到下一个状态。这里面,策略表达智能体的行为,就是状态到动作的映射。强化学习中,经验 (experience) 是指 (状态,动作,奖赏,下一个状态) 这样一系列的数据。在片段式 (episodic) 的环境中,上述过程一直持续直到遇到终止状态,模型 (model) 指状态转移模型和奖赏函数。

状态值函数或动作值函数分别用来度量每个状态或每对状态-动作的价值。是对回报的预测,而回报是长期折扣累积奖赏的期望。动作值函数一般也称为Q函数。最优值函数是所有策略所能得到的最好的值函数;而相应的策略则为最优策略。最优值函数包含了全局优化信息;一般可以比较容易地从最优状态值函数或最优动作值函数得到最优策略。强化学习的目标是得到最优的长期回报或找到最优策略。

1.1 强化学习的三条发展路线:

(1)试错法;

(2)最优值控制及其解决方案:值函数和动态规划;(最优控制大部分没有包括学习)

马尔科夫决策过程(Markov Descision Process,MDP)--离散随机版的最优控制问题。

(3)时序差分(Temporal-Difference)。

          TD学习基于对同一个量在时间上相连的估计,比如,围棋例子中赢棋的概率。TD学习部分上起源于动物学习心理学,尤其是次要强化物的概念。次要强化物与像食物和痛苦这样的主要强化物相伴而来,所以也就有相应的强化特点。

         TD学习直接从经验中,通过自助法 (bootstrapping) 、以免模型、在线、完全增量(incremental)方式学习状态值函数。这里边,自助法是一种基于自身的估计去做估计的方法。TD学习是一种同策略 (on-policy) 方法,通过行为策略产生的样本来评估同样的策略。Q学习是一种时序差分控制方法,通过学习最优动作值函数来找到最优策略。Q学习是一种异策略 (off-policy) 方法,通过从某个行为策略产生的数据来学习,而这些数据一般不是通过目标策略产生。  

        TD学习和Q学习评估状态值函数或动作值函数,是基于值的 (value-based) 方法。而基于策略的 (policy-based) 方法则直接优化策略,比如策略梯度 (policy gradient) 方法。行动者-评价者 (actor-critic) 算法同时更新值函数和策略。


Q学习,把时序差分学习、最优控制、试错学习法三个线索完全融合到一起。

1.2 六个核心元素

(1)值函数

(2)策略

(3)奖赏

(4)模型

(5)探索-利用

(6)表征

1.3 六个重要机制

(1)注意力模型和存储器

(2)无监督学习

(3)分层强化学习

(4)多智能体强化学习

(5)关系强化学习

(6)元学习

1.4 DQN 深度Q网络 (Deep Q-Network)

DQN结合了Q学习和深度神经元网络,使用了经验回放(experience replay)和目标网络(target network)技术来稳定训练过程。

在经验回放中,经验被存储在回放缓冲器中,然后随机样本用于学习。

目标网络保留一部分单独的网络参数,用于在学习中使用的网络参数;

目标网络定期更新,却并非每个训练迭代步骤都更新。

1.5 应用强化学习的流程

第一步:定义强化学习问题。定义环境、智能体、状态、动作、奖赏这些核心元素。

第二步:数据准备,收集数据,预处理。

第三步:特征工程,一般根据领域知识手动生成,也可能以端到端的方式自动产生。

第四步:选择表征方式,有深度神经元网络、其它非线性、线性、甚至表格等表征方式。

第五步:选择算法,根据问题选择几种算法。

第六步:实验、调优系统;可能要多次迭代前面几步。

第七步:部署、调优系统。可能要多次迭代前面几步。
 


强化学习词汇

预测 (prediction),或策略评估 (policy evaluation),用来计算一个策略的状态或动作值函数。

控制 (control) 用来找最优策略。

规划 (planning) 则根据模型来找值函数或策略。

用行为策略 (behaviour policy) 来产生样本数据;同时希望评估目标策略 (target policy)。

同策略 (on-policy) 中,产生样本的行为策略与需要评估的目标策略相同。比如,TD学习就用来评估当前的策略,或者说用同样的策略产生的样本来做策略评估。

异策略 (off-policy) 中,产生样本的行为策略与需要评估的目标策略一般不相同。比如,Q学习的目标是学习最优策略的动作值函数,而用来学习的样本数据一般都不是依据最优策略产生的。

探索-利用 (exploration-exploitation) 之间的矛盾指,智能体需要利用目前最好的策略,希望达到最大化奖赏的目标;同时,也需要探索环境,去发现更好的策略,尤其是在目前的策略仍然不是最优策略或者环境并不稳定等情况下。

免模型 (model-free) 强化学习方法中,智能体不知道状态转移和奖赏模型,从与环境的交互经验中通过试错的方式直接学习。而基于模型(model-based)强化学习方法则利用模型。模型可以是给定的,比如像计算机围棋中那样通过游戏规则得到的完美模型,或是通过数据学习来的。

在线模式 (online) 算法通过序列数据流来训练,不保存数据,不进一步使用数据。离线模式(offline) 或批量模式 (batch mode) 算法则通过一组数据来训练。

自助法(bootstrapping)中,对一个状态或动作的值函数估计会通过其它状态或动作的值函数估计来获得。

强化学习时代正在到来

强化学习是一类一般性的学习、预测、决策方法框架。如果一个问题可以描述成或转化成序列决策问题,可以对状态、动作、奖赏进行定义,那么强化学习很可能可以帮助解决这个问题。强化学习有可能帮助自动化、最优化手动设计的策略。

强化学习考虑序列问题,具有长远眼光,考虑长期回报;而监督学习一般考虑一次性的问题,关注短期效益,考虑即时回报。强化学习的这种长远眼光对很多问题找到最优解非常关键。比如,在最短路径的例子中,如果只考虑最近邻居节点,则可能无法找到最短路径。

强化学习可以不需要模型,即免模型 (model-free) 的方式,得到最优值函数和最优策略。免模型强化学习可以通过与环境交互的在线(online)方式学习,也可以通过离线(offline)方式从历史数据中学习。蒙特卡罗 (Monte Carlo) 方法用样本的均值做估计;每一个样本是完整的一条经验轨迹;它不需要系统的模型,但是它只适用于片段式的任务。

在表格式的情况,值函数和策略以表格的形式存储。

强化学习的一个基本问题是探索-利用(exploration-exploitation)之间的矛盾。智能体一方面需要利用目前最好的策略,希望获得最好的回报;另一方面,目前最好的策略不一定是最优策略,需要探索其它可能性;智能体需要在探索-利用两者之间进行平衡折衷。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值