作者 | 肖智清

编辑 | 刘静

来源 | CSDN(ID:CSDNnews)

强化学习作为通用人工智能的希望,吸引了很多人工智能爱好者学习和研究。Markov决策过程是最知名的强化学习模型,强化学习教程也常以Markov决策过程作为起点。但是,强化学习并不只有Markov决策过程这一种模型。本文全景式地分析强化学习的研究内容,展示Markov决策过程以外的广阔天地。

正强化与负强化

强化学习是一类能够最大化奖励、最小化惩罚的机器学习算法。强化学习这一概念在历史上来源于行为心理学,来描述生物为了趋利避害而改变自己行为的学习过程。这一概念后来被引入到人工智能领域中。

强化可以分为正强化和负强化。例如,我在写论文的过程中会有很多行为。如果某些行为能够让我的论文更容易被录用,甚至还能得最佳论文,获得很多引用,那么我会在以后更倾向采用这样的行为。这里的论文录用、论文获奖、论文被引就是正强化。如果某些行为会导致论文被拒,或是被查出学术不端行为,毕不了业了,那么我会在以后避免采用这样的行为。这里的论文悲剧、查重事故、毕不了业就是负强化。

在强化学习问题的建模过程中,正强化可以用奖励来量化,而负强化可以用代价来量化。

Jack Michael的论文《Positive and negative reinforcement, a distinction that is no longer necessary》(1975)论证了正强化和负强化的等价性。这意味着,奖励和代价可任取其一,最大化奖励和最小化代价没有区别。

智能体/环境接口

智能体/环境接口是强化学习最常见的建模方法,它把任务中的所有元素划分为智能体和环境两个部分:决策和学习的部分归为智能体,把其他部分归为环境。

考虑写论文的例子:我学习如何写论文,也决定要怎么写。我的学习和决策部分就是智能体。但是我自己整个人却不全是智能体。比如如果我生病了,那我就不写论文了。我的健康状况就属于环境的部分。

用智能体环境接口将智能体和环境分开后,智能体和环境之间只需要通过三个要素来交互。这三个要素是:动作、观测、奖励。

前面已经论证,奖励可以等价于负的代价,奖励一定是数值的,比如说是一个实数。与之相对,动作和观测不一定是数值。

例如,观测可以是“看到了帅气的小哥哥”或是“看到了漂亮的小姐姐”这样的事件,动作可以是“上前向小哥哥要微信”这样的动作。

图   智能体/环境接口

快问快答

问:强化学习问题一定要使用智能体/环境接口来研究吗?

答:不一定。我们也可以在不划分智能体和环境的情况下对任务进行整体优化。比如我们知道某些参数能够驱动整个系统,那么我可以用Monte Carlo方法评估不同参数下的系统性能,再用进化算法求解最优参数。这样就在没有使用智能体/环境接口的情况下完成了强化学习。

问:既然强化学习可以采用智能体/环境接口也可以不采用智能体/环境接口,那为什么绝大多数求解使用智能体/环境接口呢?

答:智能体/环境接口把主观可以控制的部分和客观不能改变的部分分开,便于进一步分析和求解问题。

序贯决策与时间指标

智能体和环境可以交互多次,引入序贯决策问题。

对于序贯决策问题,我们可以引入时间指标来标记决策的顺序。

如果决策机会是可数的(有限次数或是无限可数次数),那么我们可以把决策时机和自然数一一对应。比如说第一次决策时机记为t=0,第二次决策时机记为t=1,依此类推。这时的智能体/环境接口就成为离散时间智能体/环境接口。

如果决策机会是不可数的,那么我们可以把决策时机和其等势的集合(如非负实数集)一一对应。时间指标规范化到实数集或其连续子集的时候智能体/环境接口就成为连续时间智能体/环境接口。

快问快答

问:强化学习问题一定是序贯决策问题么?

答:不一定。比如单次赌博机问题就不是序贯决策问题。非序贯决策问题不需要引入时间指标。

问:决策时机一定可以规范化为自然数集或是非负实数集么?

答:不一定。例如,对于半Markov过程,决策间隔是随机的。并且决策间隔的值会影响后续结果,所以模型不能忽略决策间隔。例如,我投了会议论文,下次决策的机会就是可以回复审稿人意见的时候。审稿人什么时候发回意见是不确定的,并且审稿人发回什么意见是和审稿人什么时候把审稿意见传上网是有关系的。

强化学习任务还可以根据智能体的数量划分为单智能体任务和多智能体任务。当任务中有多个智能体的时候,多个智能体并不一定同时有决策机会。在某个时刻,可能只有某些智能体有资格决策,其他智能体可能只能观察,或是连观察的资格都没有。

例如,几个人一起玩吃鸡游戏。某些玩家可能刚开局就落地成盒,后面就不用决策了。某些玩家能坚持到最后,有更多的决策机会。

环境的可观测性与环境模型

智能体获得观测后,有可能会知道环境信息。如果智能体能够通过观测完全了解环境,那么称该任务是完全可观测的;如果智能体通过观测完全不能了解环境,那么该任务是完全不可观测的;如果智能体通过观测能够部分了解环境,则该任务是部分可观测的。

强化学习算法可以分为有模型算法和无模型算法两类。

有模型算法是在求解过程中利用环境模型的算法。环境模型可以是事先给定的(比如AlphaGo算法、动态规划算法),也可以通过学习得到(比如Dyna算法、WorldModels算法)。

无模型算法不需要依赖环境模型的实现,实现更加简单。

无论算法是有模型算法还是无模型算法,可以假设环境具有某种驱动的形式。最常见的假设是认为从状态和动作到观测和奖励是以概率形式驱动的,可以表示为Pr[O,R|S,A]。

快问快答

问:环境一定是以概率形式驱动的吗?

答:不一定。环境还可能以其他形式驱动,比如以组合形式驱动。例如对于井字棋问题,就可以建模为组合问题,用alpha-beta算法求解。如果将本来的组合形式驱动的任务强行建模为用概率形式驱动的任务,则可能求不到最优解。对于围棋,AlphaGo算法并不一定能得到最优解。AlphaGo只是得到了相对比较好的解。

深度强化学习的新机会

从1950年算起,强化学习已经有接近70年的研究历史。在这并不短暂的研究历史中,绝大多数的研究都是和深度学习无关的,其算法是非深度强化学习算法。在诸多非深度强化学习算法中,资格迹算法实现简洁、性能优异,一度成为旗舰强化学习算法。

2013年,DeepMind发明了DQN算法,成功将深度学习和强化学习结合起来,开启了深度强化学习的新纪元。此后数年,强化学习的成果日新月异,很多非常困难的问题都被深度强化学习算法解决。

深度强化学习能够获得如此巨大的成功,原因在于深度学习可以表示非常复杂的解。

非深度强化学习算法能求解有数千个参数的解,而深度强化学习算法的解的参数数量可以远远超过这个数。具体而言,无模型深度强化算法的可以求解出有数亿参数的解,而有模型深度强化学习算法可以求解出有数千亿个参数的解。一般认为,有模型算法能够比无模型算法支持更复杂的解。如果对无模型算法强行使用过多的参数个数,会导致训练无法启动。

样本复杂性是强化学习算法的一个非常重要的性能指标。有观点认为,有模型算法之所以能够比无模型算法获得更复杂的解,正是因为有模型算法的样本利用率更高。

例如:围棋是一个非常困难的问题,它的解非常复杂,需要搭配非常深的神经网络。AlphaGo这样的有模型算法就充分依赖给定的模型,利用MCTS算法提高了样本利用率。

结语

诸多强化学习教程都是从学习Markov决策过程开始的。但是强化学习模型远不只有Markov决策过程这一种。

在本文中,我们已经知道强化学习不一定要用智能体环境接口,时间指标不一定是自然数集或非负实数集,环境不一定是概率驱动的,从观测不一定能完全知道状态,多个智能体不总是同时有资格决策,等等。所有这一切,都超出了Markov决策过程的模型假设。

强化学习的模型如此众多,在选择模型时要遵循两大准则:其一,模型要体现要解决的问题。模型往往是真实场景的简化。如果一个模型的的解答不足以充分解决要解决的真实问题,那么这个模型是不够的。其二,模型要能够妥善求解。如果一个模型太复杂,以至于完全无法从这个复杂至极的模型中获得任何有用的知识,那么这个模型也是没有什么用的。

作者:肖智清,清华大学工学博士。著有《神经网络与PyTorch实战》《强化学习:原理与Python实战》。scipy、sklearn等开源项目源码贡献者。近7年发表SCI/EI论文十余篇,多个顶级期刊和会议审稿人。在国内外多项程序设计和数据科学竞赛上获得冠军。

(*本文为AI科技大本营转载文章,转载请联系原作者)

精彩推荐

开幕倒计时3天!2019 中国大数据技术大会(BDTC)即将震撼来袭!豪华主席阵容及百位技术专家齐聚,十余场精选专题技术和行业论坛,超强干货+技术剖析+行业实践立体解读。

推荐阅读

  • 一张图生成定制版二次元人脸头像,还能“模仿”你的表情

  • 激辩:机器究竟能否理解常识?

  • 阿里正式开源通用算法平台Alink,“双11”将天猫推荐点击率提升4%

  • 最新单步目标检测框架,引入双向网络,精度和速度均达到不错效果

  • 从拨号到 5G :互联网登录完全指南

  • 测试小白必读!从0基础做到「大厂测试」,要掌握什么技能?

  • 科技公司最爱的50款开源工具,你都用过吗?

  • OceanBase 的前世今生

  • 想做好区块链数据分析?先来看看如何解决“去匿名化”这个大难题

  • 把700元的单片机改造成以太坊节点, 9步get起新技能

  • 你点的每个“在看”,我都认真当成了AI

不止Markov决策过程,全景式分析强化学习研究内容相关推荐

  1. 《强化学习周刊》第32期:上海交大华为 | 可解释强化学习研究综述

    No.32 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  2. 设计一款博弈类游戏的人机对战算法、策略_卡牌游戏八合一,华人团队开源强化学习研究平台RLCard...

    雷锋网 AI 科技评论按:在过去的两三年中,我们经常听说人工智能在棋牌类游戏(博弈)中取得新的成果,比如基于深度强化学习的 AlphaGo 击败了人类世界冠军,由 AlphaGo 进化而来的 Alph ...

  3. 【最新】如何降低深度强化学习研究的计算成本(Reducing the Computational Cost of DeepRL)...

    深度强化学习实验室 官网:http://www.neurondance.com/ 论坛:http://deeprl.neurondance.com/ 人们普遍认为,将传统强化学习与深度神经网络相结合的 ...

  4. Yoshua Bengio团队最新强化学习研究:智能体通过与环境交互,「分离」变化的独立可控因素

    原文来源:arXiv 作者:Valentin Thomas.Emmanuel Bengio∗.William Fedus.Jules Pondard.Philippe Beaudoin.Hugo La ...

  5. 华为诺亚方舟实验室多项强化学习研究成果获IJCAI 2020录用

    本文转载自诺亚实验室. 近期,华为诺亚方舟实验室(决策推理实验室-强化学习研究团队)的3项研究成果被人工智能领域顶级会议IJCAI(录取率12.6%)接收(一作都为实习生,主要工作在华为实习期间完成) ...

  6. 强化学习论文阅读笔记(一)——强化学习研究综述_高阳

    强化学习研究综述_高阳 目录 强化学习研究综述_高阳 一.与其他机器学习对比 二.分类 三.最优搜索型强化学习算法 四.经验强化型强化学习算法 五.部分感知 六.函数估计 七.多Agent强化学习 八 ...

  7. 深度丨深度强化学习研究的短期悲观与长期乐观(长文)

    文章来源:机器之心 深度强化学习是最接近于通用人工智能(AGI)的范式之一.不幸的是,迄今为止这种方法还不能真正地奏效.在本文中,作者将为我们解释深度强化学习没有成功的原因,介绍成功的典型案例,并指出 ...

  8. 多智能体通信:基于通信的多智能体强化学习研究综述

    题目:A Survey of Multi-Agent Reinforcement Learning with Communication 出处:arXiv 2022 摘要:通信是协调多个智能体行为的有 ...

  9. 变革尚未成功:深度强化学习研究的短期悲观与长期乐观

    深度强化学习是最接近于通用人工智能(AGI)的范式之一.不幸的是,迄今为止这种方法还不能真正地奏效.在本文中,作者将为我们解释深度强化学习没有成功的原因,介绍成功的典型案例,并指出让深度强化学习奏效的 ...

最新文章

  1. 【反传销】春节一个短暂误入传销和脱身的真实故事以及对技术的思考
  2. MobileNet_v2
  3. 使用screen后台运行python(基于centOS7.2)
  4. mysql中当前时间九点_MySQL 获得当前日期时间(以及时间的转换)
  5. 虚拟主机 php .htacess,LiteSpeed添加虚拟主机+支持htaccess图文教程
  6. S3C2440对Nand Flash操作和电路原理(基于K9F2G08U0A)
  7. HDU 1251 统计难题 (Trie)
  8. 使用cJSON产生json字串
  9. 《R语言初学指南》一1.4 实际案例
  10. 14443-A 与14443-B区别
  11. 三维电子沙盘数字沙盘虚拟现实无人机倾斜摄影三维全景建模卫星图片矢量
  12. 活着的意义--读《此生未完成》有感
  13. 头条小程序登录40014 bad params
  14. php向mysql写入_PHP向MySql中插入数据
  15. springboot 启动banner 打印 佛祖保佑
  16. 斗罗大陆服务器维护,《斗罗大陆武魂觉醒》5月20日停服维护公告
  17. 微信小程序+SpringBoot实现校园快递代收平台
  18. vue中如何实现换肤?
  19. 常见的云服务器运营商及相关的优惠活动
  20. 重庆大学计算机学院最好老师,“一切都是最好的安排”——蒲俊杰老师喜获重庆大学“最受学生欢迎老师”称号...

热门文章

  1. 数据中心节能大法 —— 尽在上海11月中国数据中心展
  2. c语言语系的命名风格和java系命名风格
  3. 后端码农谈前端(CSS篇)第一课:CSS概述
  4. 影像融合操作的几种途径
  5. MATLAB中subplot函数使用
  6. 正向代理和反向代理??
  7. quartz定时任务开发cron常用网站
  8. Directx11 教程(2) 基本的windows应用程序框架(2)
  9. pytest 9 pytest-datadir读取文件信息
  10. vue-cli脚手架(框架)