深度强化学习(二)强化学习算法的分类

对于强化学习的分类,主要参考了莫烦大佬的视频和OpenAI的Spinning Up的介绍。

一、Model-Free和Model-Based两大类

深度强化学习(二)强化学习算法的分类_第1张图片

上图是Spinning Up中的分类图。对于model的理解就是强化学习中的环境。根据是否去学习环境来进行分类。根据转移概率是否已知进行分类的。

Model-free就是不去学习和理解环境,环境给出什么信息就是什么信息,常见的方法有policy optimization和Q-learning。

Model-Based是去学习和理解环境,学会用一个模型来模拟环境,通过模拟的环境来得到反馈。根据莫烦大佬的解释,Model-Based相当于比Model-Free多了模拟环境这个环节,通过模拟环境预判接下来会发生的所有情况,然后选择最佳的情况。

二、Policy-Based和Value-Based两大类

根据强化学习是以策略为中心还是以值函数为中心分为两大类。

深度强化学习(二)强化学习算法的分类_第2张图片

Policy-Based的方法直接输出下一步动作的概率,根据概率来选取动作。但不一定概率最高就会选择该动作,还是会从整体进行考虑。适用于非连续和连续的动作。常见的方法有policy gradients。

Value-Based的方法输出的是动作的价值,选择价值最高的动作。适用于非连续的动作。常见的方法有Q-learning和Sarsa。

更为厉害的方法是二者的结合:Actor-Critic,Actor根据概率做出动作,Critic根据动作给出价值,从而加速学习过程。

三、回合更新和单步更新两大类方法

深度强化学习(二)强化学习算法的分类_第3张图片

回合更新的方法是指整个学习过程全部结束后再进行更新,常见的方法有Monte-Carlo learning和基础版的policy gradients

单步更新的方法是指学习过程中的每一步都在更新,不用等到全部结束后在进行更新。常见的方法有Q-learning、Sarsa和升级版的policy gradients。

相比而言,单步更新的方法更有效率。

四、On-Policy和Off-Policy的两大类

深度强化学习(二)强化学习算法的分类_第4张图片

在线学习(on-policy)指的是学习的过程agent必须参与其中,典型的算法为Sarsa。

离线学习(off-policy)指的是既可以自己参与其中,也可以根据他人学习过程进行学习。典型的方法是Q-learning,已经Deep-Q-Network。

五、强化学习和逆强化学习两大类

根据回报函数(reward function)是否已知进行分类。强化学习为已知回报函数。但是当任务十分复杂时,回报函数往往很难确定。而逆强化学习则是用来解决这种问题,根据专家实例学习回报函数。

此外,还经常看见模仿学习(imitation learning)这个名词,经过不断的搜索,最终搞清楚强化学习、逆强化学习和模仿学习的关系。

强化学习和模仿学习属于并行的两大类。模仿学习的大佬博客

模仿学习下可以分为两大类:behavior cloning(行为克隆,类似于监督学习,给出什么样的专家示范,当机器遇到相同的情况时就根据专家的动作进行操作。缺点就是需要大量的专家示范数据集,不然遇到没有见过的情形,实验结果会不好)

invers reinforcement learning(逆强化学习,给定一个专家策略后,来学习寻找最佳的回报函数。)

此外,最近出现了利用对抗生成网络的模仿学习,GAIL(生产对抗模仿学习)。关于GAIL的大佬博客。

所以准确地来说,第五种分类方法应该是强化学习和模仿学习。不过,目前来看模仿学习主要集中在逆强化学习上,所以分为强化学习和逆强化学习也是可以的。

以上便是对强化学习各种方法的简单分类,有了分类也算是对强化学习有了一个大体的了解。

 

你可能感兴趣的:(强化学习)