强化学习方法汇总 (Reinforcement Learning):
(1)Model-free 和 Model-based:
model-free是指agent对环境不了解, model-based指agent对环境了解。
(2)基于概率 和 基于价值
基于概率的话,有几率选到概率比较小的action. 基于价值的话,永远选value最大的动作。另外基于价值的无法在连续动作过程中实现。
但有一种综合性的方法。比如在基于概率这边, 有 Policy Gradients, 在基于价值这边有 Q learning, Sarsa 等. 而且我们还能结合这两类方法的优势之处, 创造更牛逼的一种方法, 叫做 Actor-Critic, actor 会基于概率做出动作, 而 critic 会对做出的动作给出动作的价值, 这样就在原有的 policy gradients 上加速了学习过程.
(3)回合更新 和 单步更新
回合更新指的是游戏开始后, 我们要等待游戏结束, 然后再总结这一回合中的所有转折点, 再更新我们的行为准则. 而单步更新则是在游戏进行中每一步都在更新, 不用等待游戏的结束, 这样我们就能边玩边学习了.
再来说说方法, Monte-carlo learning 和基础版的 policy gradients 等 都是回合更新制, Qlearning, Sarsa, 升级版的 policy gradients 等都是单步更新制. 因为单步更新更有效率, 所以现在大多方法都是基于单步更新. 比如有的强化学习问题并不属于回合问题.
(4)在线学习 和 离线学习
最后一种分类方式是 在线学习和离线学习, 所谓在线学习, 就是指我必须本人在场, 并且一定是本人边玩边学习。而离线学习是你可以选择自己玩, 也可以选择看着别人玩, 通过看别人玩来学习别人的行为准则。
在线学习有Sarsa, Sarsa lambda, 最典型的离线学习就是 Q learning, Deep-Q-Network.
强化学习的解法的通用框架: 马尔克夫模型.
首先,我们要正式定义强化学习问题的框架,然后列出可能的解决方法。
马尔可夫决策过程:
在强化学习中定义解法的数学框架叫做马尔可夫决策过程(Markov Decision Process)。 它被设计为:
一系列状态的集合(Set of states),S
一系列行动的集合(Set of actions),A
奖励函数(Reward function),R
策略(Policy),π
价值(Valu),V
我们必须采取行动(A)从我们的开始状态过渡到我们的结束状态(S)。我们采取的每个行动将获得奖励(R)。 我们的行为可以导致正奖励或负奖励。
我们采取的行动的集合(A)定义了我们的策略(π),我们得到的奖励(R)定义了我们的价值(V)。 我们在这里的任务是通过选择正确的策略来最大化我们的奖励。 所以我们必须对时间t的所有可能的S值最大化。
参考文章
[1]https://github.com/aikorea/awesome-rl
[2]入门指南 | 人工智能的新希望——强化学习全解https://36kr.com/p/5064302.html
[3]马尔科夫决策过程https://www.jianshu.com/p/295d7a8ebe48