强化学习方法汇总,以及他们的区别

了解强化学习中常用到的几种方法,以及他们的区别, 对我们根据特定问题选择方法时很有帮助.

强化学习是一个大家族, 发展历史也不短, 具有很多种不同方法. 比如说比较知名的控制方法 Q learning, Policy gradients, 还有基于对环境的理解的 model-based RL 等等. 接下来我们通过分类的方式来了解他们的区别.

因为本文原作是一段6分钟视频介绍. 所以首先放视频链接: 优酷http://v.youku.com/v_show/id_XMTkyMDY5MTk2OA==.html

Model-free 和 Model-based

我们可以将所有强化学习的方法分为理不理解所处环境,如果我们不尝试去理解环境, 环境给了我们什么就是什么. 我们就把这种方法叫做 model-free, 这里的 model 就是用模型来表示环境, 那理解了环境也就是学会了用一个模型来代表环境, 所以这种就是 model-based 方法. 我们想象. 现在环境就是我们的世界, 我们的机器人正在这个世界里玩耍, 他不理解这个世界是怎样构成的, 也不理解世界对于他的行为会怎么样反馈. 举个例子, 他决定丢颗原子弹去真实的世界, 结果把自己给炸死了, 所有结果都是那么现实. 不过如果采取的是 model-based RL, 机器人会通过过往的经验, 先理解真实世界是怎样的, 并建立一个模型来模拟现实世界的反馈, 最后他不仅可以在现实世界中玩耍, 也能在模拟的世界中玩耍 , 这样就没必要去炸真实世界, 连自己也炸死了, 他可以像玩游戏一样炸炸游戏里的世界, 也保住了自己的小命. 那我们就来说说这两种方式的强化学习各用那些方法吧.

Model-free 的方法有很多, 像 Qlearning, Sarsa, Policy Gradients 都是从环境中得到反馈然后从中学习. 而 model-based RL 只是多了一道程序, 为真实世界建模, 也可以说他们都是 model-free 的强化学习, 只是 model-based 多出了一个虚拟环境, 我们不仅可以像 model-free 那样在现实中玩耍,还能在游戏中玩耍, 而玩耍的方式也都是 model-free 中那些玩耍方式, 最终 model-based 还有一个杀手锏是 model-free 超级羡慕的. 那就是想象力.

Model-free 中, 机器人只能按部就班, 一步一步等待真实世界的反馈, 再根据反馈采取下一步行动. 而 model-based, 他能通过想象来预判断接下来将要发生的所有情况. 然后选择这些想象情况中最好的那种. 并依据这种情况来采取下一步的策略, 这也就是 围棋场上 AlphaGo 能够超越人类的原因. 接下来, 我们再来用另外一种分类方法将 强化学习分为基于概率和基于价值.

基于概率 和 基于价值

基于概率是强化学习中最直接的一种, 他能通过感官分析所处的环境, 直接输出下一步要采取的各种动作的概率, 然后根据概率采取行动, 所以每种动作都有可能被选中, 只是可能性不同. 而基于价值的方法输出则是所有动作的价值, 我们会根据最高价值来选着动作, 相比基于概率的方法, 基于价值的决策部分更为铁定, 毫不留情, 就选价值最高的, 而基于概率的, 即使某个动作的概率最高, 但是还是不一定会选到他.

我们现在说的动作都是一个一个不连续的动作, 而对于选取连续的动作, 基于价值的方法是无能为力的. 我们却能用一个概率分布在连续动作中选取特定动作, 这也是基于概率的方法的优点之一. 那么这两类使用的方法又有哪些呢?

比如在基于概率这边, 有 policy gradients, 在基于价值这边有 q learning, sarsa 等. 而且我们还能结合这两类方法的优势之处, 创造更牛逼的一种方法, 叫做 actor-critic, actor 会基于概率做出动作, 而 critic 会对做出的动作给出动作的价值, 这样就在原有的 policy gradients 上加速了学习过程.

回合更新 和 单步更新

强化学习还能用另外一种方式分类, 回合更新和单步更新, 想象强化学习就是在玩游戏, 游戏回合有开始和结束. 回合更新指的是游戏开始后, 我们要等待游戏结束, 然后再总结这一回合中的所有转折点, 再更新我们的行为准则. 而单步更新则是在游戏进行中每一步都在更新, 不用等待游戏的结束, 这样我们就能边玩边学习了.

再来说说方法, Monte-carlo learning 和基础版的 policy gradients 等 都是回合更新制, Qlearning, Sarsa, 升级版的 policy gradients 等都是单步更新制. 因为单步更新更有效率, 所以现在大多方法都是基于单步更新. 比如有的强化学习问题并不属于回合问题.

在线学习 和 离线学习

这个视频的最后一种分类方式是 在线学习和离线学习, 所谓在线学习, 就是指我必须本人在场, 并且一定是本人边玩边学习, 而离线学习是你可以选择自己玩, 也可以选择看着别人玩, 通过看别人玩来学习别人的行为准则, 离线学习 同样是从过往的经验中学习, 但是这些过往的经历没必要是自己的经历, 任何人的经历都能被学习. 或者我也不必要边玩边学习, 我可以白天先存储下来玩耍时的记忆, 然后晚上通过离线学习来学习白天的记忆.那么每种学习的方法又有哪些呢?

最典型的在线学习就是 sarsa 了, 还有一种优化 sarsa 的算法, 叫做 sarsa lambda, 最典型的离线学习就是 Q learning, 后来人也根据离线学习的属性, 开发了更强大的算法, 比如让计算机学会玩电动的 Deep-Q-Network.

这就是我们从各种不同的角度来对比了强化学习中的多种算法.

原文发布于微信公众号 - 机器人网(robot_globalsources)

原文发表时间:2017-12-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI研习社

【AI听】Hinton:反向传播要被彻底放弃了!Unity推出Machine Learning,24分钟训练ImageNet……

主播 | 吴璇 选题 | 徐普 程炜 Heo 本周关键词 反向传播|Machine Learning Agents ImageNet|信息瓶颈 NO/1 Ge...

38970
来自专栏祝威廉

如何实现AutoML--让机器先做出Baseline

我之前写过一篇如何实现AutoML -- 先Auto每个环节,大致思路是让机器先自动化每一个小环节,每个环节输出唯一一个结果,这样可以极大的简化搜索空间。比如我...

12710
来自专栏ATYUN订阅号

【业界】是时候解决深度学习的生产力问题了

深度学习正在推动从消费者的手机应用到图像识别等各个领域的突破。然而,运行基于深度学习的人工智能模型带来了许多挑战。最困难的障碍之一是训练模型所需的时间。 ? 需...

34960
来自专栏量子位

六大你应该了解的人工智能和机器学习核心领域

到底什么是人工智能(AI)? 有些人把AI重新解释为“认知计算”或“机器智能”,而其他人错误的将AI与“机器学习”混淆起来。其实AI不是一种技术。它实际上是一个...

21350
来自专栏新智元

Facebook 交互式神经网络可视化系统,应对海量数据和复杂模型

【新智元导读】神经网络模型的可视化是解决其黑箱问题的一个解决方案,但用于神经网络可视化的大多数工具集中在图像数据集上,这激发了 Facebook 和 Georg...

39760
来自专栏窦融的专栏

手把手带你做推荐(一):推荐分类和样本构造

继上篇《个性化推荐101》之后,同学们反馈还不够详细,可能对没有做过推荐的同学初上手还是不知所措,故根据自己的经验分三篇出一个系列更加详细的指导文档,一步步带大...

1.7K20
来自专栏深度学习自然语言处理

谈谈我在自然语言处理入门的一些个人拙见

因为最近在准备本科毕设的论文部分,所以最近原创的相对比较少,但是为了坚持每天学点新知识,我也逼着自己每天抽出晚上的1小时左右把自己想到的并且自己还没理解的小知识...

12120
来自专栏AI科技评论

视频 | 给正在读论文的你:如何高效阅读文献?

原标题:How to Read a Research Paper 翻译 | 王飞 J叔 字幕 | 凡江 整理 | 林尤添 无论是对于机器学习,密码...

297100
来自专栏IT派

业界 | 人人都能用的深度学习:当前三大自动化深度学习平台简介

数据科学领域有一部分研究者和开发者已经选择学习这些新技术了,但在预测性和规范性建模的问题类型和技术方面(我们 90% 的工作就是这些),学习深度学习技术却与我们...

14630
来自专栏AI科技大本营的专栏

干货 | 1400篇机器学习的文章中,这10篇是最棒的!

【导读】在过去的一个月中, 作者从近 1400 篇有关机器学习的文章中挑选了最有可能帮助职业生涯发展的 10 篇推荐给大家(入选比率为0.7%)。

10820

扫码关注云+社区

领取腾讯云代金券