强化学习方法汇总
是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。
Reference:
不同的划分方式
一、不理解环境(Model-Free RL) 和理解环境(Model-Based RL)
不理解环境(Model-Free RL) :
直接对环境作出动作,而后接收来自于环境的反馈,对于周围的环境是不理解的,没有概念的,作出动作后只能等待现实的反馈,是否这个动作的反馈会造成好的还是坏的结果,它也是没有概念的、不知道的。
例如:我们在现实世界投放一颗氢弹,然后我们成功把自己玩死了,这是一个很坏的结果,但我们事先对此没有概念,不知道做出这个“投放氢弹”会发生什么,我们只能去尝试一下,然后Die。
方法:
Q learning
Sarsa
Policy Gradients learning
理解环境(Model-Based RL):
1、机器人会通过过往的经验,先理解真实世界是怎样的
2、建立一个模型来模拟现实世界的反馈(建立一个模拟现实)
3、既可以在现实世界中作出动作,也可以在模拟世界中作出动作
这样就没必要去炸真实世界,连自己也炸死了,他可以像玩游戏一样炸炸游戏里的世界,也保住了自己的小命
进一步说明:
基于Model-Based RL的机器人能通过想象来预判断接下来将要发生的所有情况。然后选择这些想象情况中最好的那种。并依据这种情况来采取下一步的策略。
方法:
1、先在Model-Free RL的基础上添加了一层对于现实世界的建模(一个虚拟的世界)
2、然后在这个模拟世界里进行Model-Free RL ( Q learning、Sarsa、Policy Gradients)
二、基于概率(Policy-Based RL) 和基于价值(Value-Based RL)
基于概率(Policy-Based RL) :
机器人能通过感官分析所处的环境,直接输出下一步要采取的各种动作的概率,然后根据概率采取行动,所以每种动作都有可能被选中, 只是可能性不同,即使是大概率的动作也不一定会选到。
方法:
- Policy Gradients learning
- ….
基于价值(Value-Based RL):
在当前这一步,输出所有可能采取的动作(不连续的动作)的价值,我们会根据最高价值来选着动作,这种决策十分确定,只选取价值最高的
方法:
Q learning
Sarsa
….
基于概率与价值的结合创造了一种更好的方法:
Actor-Critic
( 1、Actor :基于概率做出一个动作
2、Critic 会对做出的动作给出动作的价值,这样就在原有的 policy gradients 上加速了学习过程)
对于连续动作:
Value-Based是无能为力的 ( 为什么会说无能为力???)
Policy-Based能用一个概率分布在连续动作中选取特定动作,是Policy-Based的优点之一
三、回合更新(Monte-Carlo update RL) 和单步更新(Temporal-Difference update)
想象强化学习就是在玩游戏, 游戏回合有开始和结束
回合更新(Monte-Carlo update RL) :
指的是游戏开始后, 我们要等待游戏结束, 然后再总结这一回合中的所有转折点, 再更新我们的行为准则
方法:
- Monte-carlo learning
- 基础版的Policy learning
- ….
单步更新(Temporal-Difference update):
在游戏进行中每一步都在更新, 不用等待游戏的结束, 这样我们就能边玩边学习了
方法:
- Q learning
- Sarsa
- 升级版Policy Gradients learning
- …
现在大多数学习都是Temporal-Difference update (因为有的强化学习问题并不属于回合问题,且单步更新训练速度快)
四、在线学习(On-Policy) 和离线学习(Off-Policy)
在线学习(On-Policy) :
指必须本人在场, 并且一定是本人边玩边学习
方法:
- Sarsa
- Sarsa lambda ( 优化Sarsa算法)
离线学习(Off-Policy):
特点:
- 可以选择自己玩
- 也可以选择看着别人玩,通过看别人玩,来学习别人的行为准则
- 同样是从过往的经验中学习, 但是这些过往的经历没必要是自己的经历, 任何人的经历都能被学习
- 或者我也不必要边玩边学习, 我可以白天先存储下来玩耍时的记忆, 然后晚上通过离线学习来学习白天的记忆
方法:
- Q learning
- Deep-Q-Network (更加强大的算法,可以让计算机学会玩电动)
Reference: