深度学习强化学习(RL)概述笔记ygstaring

强化学习(ReinforcementLearning)简介

它主要包含四个元素,环境状态,行动,策略,奖励,强化学习的目标就是获得最多的累计奖励。RL考虑的是智能体(Agent)与环境(Environment)的交互问题,其中的agent可以理解为学习的主体,它一般是咱们设计的强化学习模型或者智能体,这个智能体在开始的状态试图采取某些行动去操纵环境,它的行动从一个状态到另一个状态完成一次初始的试探,环境会给予一定的奖励,这个模型根据奖励的反馈作出下一次行动(这个行动就是当前这个模型根据反馈学来的,或者说这就是一种策略),经过不断的行动、反馈、再行动,进而学到环境状态的特征规律。一句话概括:RL的目标是找到一个最优策略,使智能体获得尽可能多的来自环境的奖励。

学习开始时往往采用随机策略进行实验得到一系列的状态、动作和奖励样本,算法根据样本改进策略,最大化奖励。由于奖励越来越大的特性,这种算法被称作增强学习。

Markovdecisionprocesses

马尔可夫性:系统的下一个状态仅与当前状态有关,而与历史状态无关。

此处的状态是指完全可观察的全部的环境状态

回报(Return)

值函数(ValueFunction)

强化学习的目标是学习到一个策略来最大化期望,即希望智能体执行一系列的动作来获得尽可能多的平均回报。为评估一个策略的期望回报,需要定义值函数.

根据马尔可夫特性,二者有如下关系:

贝尔曼方程(Bellmanequation)

计算状态值函数的目的是为了构建学习算法从数据中得到最优策略,每个策略对应着一个状态值函数,最优策略对应着最优状态值函数。

基于值函数的学习方法

由于值函数是对策略的评估,为不断优化直至选出最优策略,一种可行的方式是依据值函数选取策略更新的方式。常见的策略有两种:

分类

马尔科夫链过程

基于模型的强化学习方法(动态规划)的前提是知道环境的状态转移概率,但在实际问题中,状态转移的信息往往无法获知,由此需要数据驱动的无模型(model-free)的方法。

蒙特卡罗(MonteCarlo)方法

在无模型时,一种自然的想法是通过随机采样的经验平均来估计期望值,此即蒙特卡罗法。其过程可以总结如下:

在动态规划中,为保证算法的收敛性,算法会逐个扫描状态空间中的状态,计算值函数时用到了当前状态的所有后继状态的值函数。而蒙特卡罗利用经验平均估计状态的值函数,此处的经验是指一次试验,而一次试验要等到终止状态出现才结束,因此学习速度慢,效率不高。下图较直观展示了二者的不同。

动态规划:

在蒙特卡罗中,如果采用确定性策略,每次试验的轨迹都是一样的,因此无法进一步改进策略。为了使更多状态-动作对参与到交互过程中,即平衡探索和利用,常用ε-greedy策略来产生动作,以保证每个状态-动作对都有机会作为初始状态,在评估状态-动作值函数时,需要对每次试验中所有状态-动作对进行估计。

时序差分方法(TemporalDifference)

由于蒙特卡罗需要获得完整轨迹,才能进行策略评估并更新,效率较低。时序差分法结合了动态规划和蒙特卡罗,即模拟一段轨迹(一步或者几步),然后利用贝尔曼方程进行自迭代更新,如下图所示:

对该方法的通俗理解:你需要从A点出发,经过B点后到C点,你有两个路段(A-B,B-C)的估计用时,在一次实验中,经过A-B路段后得到一个准确用时,根据这个准确用时和B-C路段的估计用时即可得到新的全路段估计用时(即更新)。

上述例子体现了TD学习的主要原则:不必等到实验结束再沿着实验路径进行更新。

区别

蒙特卡罗使用的是值函数最原始的定义,即利用所有奖赏的累积和来估计值函数;动态规划和时序差分则利用一步预测方法来计算当前状态值函数,不同的是,动态规划利用模型计算后继状态,时序差分利用实验得到后继状态。

*************************************************************

强化学习的算法简介

(1)通过价值选行为:

Qlearning,Sarsa,DeepQNetwork

(2)直接选行为:

PolicyGradients

(3)想象环境,并从中学习:

ModelbasedRL

强化学习方法汇总--强化学习算法分类

分类一:

(1)不理解环境(Model-FreeRL)

代表方法--Qlearning,Sarsa,PolicyGradients

例如机器人在现实世界的探索只能按部就班一步一步等待现实世界的反馈,决定下一次的行动

(2)理解环境(Model-BasedRL)

为现实世界建模,Model-Based比Model-Free多出了一个虚拟环境,它采用的方式依然是Model-FreeRL中的方法Qlearning,Sarsa,PolicyGradients,它的优势就是可以通过想象预判接下来要发生的所有情况,然后根据所有情况中最好的一种进行采取下一步的策略,例如AlphaGo

分类二:

(1)基于概率(Policy-BasedRL)

是强化学习最直接的一种,它能通过感官分析所处的环境,直接输出下一步所采取的行动的概率,然后根据概率采取行动,所以每种行动都有可能被选中,只是可能性不同。

代表方法--PolicyGradients...

(2)基于价值(Value-BasedRL)

它输出所有动作的价值,然后根据最高价值来选择动作

代表方法--Qlearning,Sarsa...

相比Policy-BasedRL的方法,Value-BasedRL更为坚定,毫不留情,就选价值最高的,而对Policy-BasedRL来说即使概率最高也不一定被选择到。

对于连续的动作基于价值的方法是无能为力的。对于连续的动作确定其分布就能选择特定动作,这也是基于概率方法的优点之一。

(3)Actor-Critic--结合Policy-BasedRL与Value-BasedRL的优点

PolicyGradients...----(Actor)基于概率作出动作

Qlearning,Sarsa...----(Critic)给出动作的价值

结合基于概率(Policy-BasedRL)--PolicyGradients...与基于价值(Value-BasedRL)--Qlearning,Sarsa...创造出更有利的方法Actor-Critic

(Actor)基于概率做出动作,(Critic)对于做出的动作给出动作的价值,这样在原有的基础上加速了学习过程。

分类三:

(1)回合更新(Monte-Carloupdate)

每回合等待游戏结束再更新

代表方法--基础版PolicyGradients,Monte-CarloLearning...

(2)单步更新(Temporal-Differenceupdate)

每回合中的每一步都进行更新,这样就可以边玩边学习

代表方法--QLearning,Sarsa,升级版PolicyGradients...

分类四:

(1)在线学习(On-Policy)

必须本人在场,并且一定是本人边玩边学习

代表方法--Sarsa,Sarsa(λ)

(2)离线学习(off-Policy)

可以选择自己玩也可以选择看着别人玩,通过看着别人玩来学习别人的行为准则,它同样是从过往经验中学习,但是这些过往的经历没有必要自己经历,任何人的经历都能被学习,或者也不必要边玩边学习,可以白天先储存下来玩耍时的记忆,等到晚上再通过离线学习来学习白天的记忆。

THE END
1.DRL:强化学习——实例对于无限长的问题,为了保证求和是有意义的,需要使用折扣累积回报或者平均回报。深度学习算是函数:多个独立同分布样本预测值和标签值的误差,需要最小化。强化学习 的损失函数是轨迹上的累积和,需要最大化。强化学习 RL解决什么问题 就是需要连续不断地做出决策,才能实现最终目标的问题。RL如何解决问题 强化学习算http://baijiahao.baidu.com/s?id=1680688267788709583&wfr=spider&for=pc
2.一文看懂什么是强化学习?(基本概念+应用嘲+主流算法)强化学习是机器学习的一种学习方式,它跟监督学习、无监督学习是对应的。本文将详细介绍强化学习的基本概念、应用场景和主流的强化学习算法及分类。 什么是强化学习? 强化学习并不是某一种特定的算法,而是一类算法的统称。 如果用来做对比的话,他跟监督学习,无监督学习 是类似的,是一种统称的学习方式。 https://easyai.tech/ai-definition/reinforcement-learning/
3.强化学习算法学习汇总笔记(一)—Q一.强化学习的分类 1.Model-free 和 Model-based Model-free 即机器人不知道外界环境信息,只能在机器人执行每一步动作后从环境中得到反馈然后去学习,只能按部就班,一步一步等待真实世界的反馈,再根据反馈采取下一步行动。诸如Q Learning, Sarsa,Policy Gradients等算法。 https://blog.csdn.net/Hansry/article/details/80808097
4.百度算法岗武功秘籍(中)● OCR识别有哪些算法模型? 3.1.4 图像分类 ● 如果图像分类有百万个class,你会怎么设计模型? 3.2 深度学习-RNN递归神经网络方面 3.2.1 自然语言处理NLP ① Bert ● 文本分类,bert了解吗?输入有什么改进? ● 讲一下Bert原理? ● Bert模型结构,分类和句子翻译如何微调? https://www.flyai.com/article/948
5.科学网—[转载]基于强化学习的数据驱动多智能体系统最优一致性这种控制算法采用策略迭代(policy iteration, PI)技术,仅要求对系统动力学有部分了解。2009年, Doya K提出了将强化学习技术应用到求解连续时间系统的控制器中。参考文献提出了利用积分强化学习(integral reinforcement learning,IRL)的在线学习算法,用于解决系统模型部分未知的线性或非线性系统的最优跟踪控制问题。强化学习https://wap.sciencenet.cn/blog-951291-1276281.html
6.目前运行效果比较好的深度强化学习算法有哪些呀?由于其学习了一个分布函数,部分特殊任务之下,相对学习期望值的强化学习算法(如SAC)而言有一些不太https://www.zhihu.com/question/635784730/answer/3333101028
7.2021届计算机科学方向毕业设计(论文)阶段性汇报在本阶段,我们主要的工作进展有以下几点:1.为了提高实验效率,我们搭建了可用于多机器并行的训练框架,并基于此复现了传统的强化学习算法,为之后的实验提供对比。 2.基于之前的工作调研结果,提出了基于深度强化学习的多能体拟人化方法。 朱茂生 基于多模态机器学习的生存风险预测方法 研究内容及进度摘要:我在第一次https://zhiyuan.sjtu.edu.cn/html/zhiyuan/announcement_view.php?id=3943
8.强化学习强化学习概述(整理)51CTO博客例如,围棋问题就可以看作是一个完全可观测的环境,因为我们可以看到棋盘的所有内容,并且假设对手总是用最优方法执行;扑克则不是完全可观测的,因为我们不知道对手手里有哪些牌。 1.5.2按算法分类 从算法角度,可以对强化学习算法作以下分类 同策学习(on policy)和异策学习(off policy):同策学习是边决策边学习,学习https://blog.51cto.com/u_15278213/2931491
9.AI深度强化学习落地方法七步曲2——状态空间篇回报函数篇鉴于强化学习算法对优秀reward函数设计的依赖,学术界提出了很多方法改善这一状况。比如逆向强化学习,利用expert demonstration(专家示范)学习到reward函数,再用这个reward函数训练RL策略。此外,还有一大堆模仿学习的方法,干脆抛开reward直接拟合专家策略。以上方法的前提是要有专家数据,不具备普适性,这里就不多说了。 https://www.shangyexinzhi.com/article/4228946.html
10.机器学习(八)强化学习的基本概念e贪心算法Softmax算法强化学习(reinforcement learning,RL)是机器学习的一个领域,主要通过在环境(environment)中采取动作(action),来最大化某些指标,例如累计奖赏(cumulative reward)的一种学习方法。强化学习、有监督学习(supervised learning)与无监督学习(unsupervised learning)三者共同构成了机器学习的三个重要方面 https://www.jianshu.com/p/cecbcd6e6405
11.学习笔记:神经网络学习算法腾讯云开发者社区主流的神经网络学习算法(或者说学习方式)可分为三大类:有监督学习(SupervisedLearning)、无监督学习(Unsupervised Learning)和强化学习(Reinforcement Learning),如下图所示。 注:有监督学习、无监督学习和强化学习并不是某一种特定的算法,而是一类算法的统称。 https://cloud.tencent.com/developer/article/1610502