【2016-2022】深度强化学习领域最惊艳的想法/思路/技术有哪些?

比如:有哪些Idea,技术以及应用等?

可以从以下方向回答,但不限于以下

单智能体、多智能体

  • 模拟环境、数据集等
  • 值函数、策略梯度等基础理论
  • 奖励函数,理论优化等
  • 分层强化学习、逆强化学习、元强化学习等各类变种方向

往期活动:本次活动自【2022.3.28, 9:00~~ 2022.04.04, 00:00】,活动将为点赞和评论优秀的top-5名伙伴每人免费赠送 一本【Easy RL:强化学习教程】

截止2022.4.4:00,获得以下5位伙伴高质量走心得回答,我们后续将于大家邮箱联系,取得快递地址邮寄书籍,感谢大家的关注

Processing arron Japson MaximeJia Richard

那当然是两大基础方法:

DQN和Vanilla Policy Gradient

两者从不同的优化角度求取奖励值最大的动作

[未知] 应该说 Q-learning 和 Policy Gradient

[未知] 应该说 Q-learning 和 Policy Gradient

    Self-play: 多智能体学习情况下,让agent自我博弈进行学习,避免人类先验知识带来的bias。是多智能体强化学习中解决博弈问题的重要手段之一,几乎各式各样的博弈游戏都会在训练的中后期用到。

    从我接触强化学习的顺序说,

    1是q表的,不操心神经网络的特性,

    2是贪心动作价值的,离散动作用的,

    3是用评估网络的,连续动作用的,

    4是混合动作的,多神经网络并行,能打rts游戏用,

    后面的,更多的,还在学习。

    A3C,异步高并发更新的里程碑,现在企业用得最多的算法,大力出奇迹

    参考文献: Asynchronous Methods for Deep Reinforcement Learning [ https://arxiv.org/pdf/1602.01783.pdf ]

    RL算法的主要三个步骤,经验的收集,估计Q or V function,优化policy。

    经验收集考虑sampling efficiency, 如果expensive就优先用off-policy,cheap就on-policy。

    估计Q那块,就是value-based那一派,DQN族:DQN,DDQN,Dueling DDQN,QR-DQN,IQN。重点攻克Q的估计。

    优化policy,就是policy-based那一派,PG,TRPO,PPO那些。

    目前还在学习。。在看CS285(上图也是来自cs285的课件)

      一、模拟环境:

      1)OpenAI提供的Gym和Universe(可以看成是Gym(https://www.gymlibrary.ml/)的升级版本,包含更多更复杂的环境,比如PC游戏);

      2)DeepMind Lab提供的3D游戏环境;

      3)Mata(原Facebook)公司提供实时策略游戏的FAIR TorchCraft;

      4)ViZDoom是3D射击游戏Doom的测试平台;

      5)TORCS是一个3D赛车模拟环境;

      6)MuJoCo是一个物理模拟环境,支持连续性动作空间类的任务,是收费的,不过Gym集成了。

      二、组合优化

      《Reinforcement Learning for Combinatorial Optimization: A Survey》

      三、多智能体

      多智能体之间的关系类型,包括完全合作式、完全竞争式和混合关系式。

      相关论文:

      《Multi-Agent Reinforcement Learning: A Selective Overview of Theories and Algorithms》

      《A comprehensive survey of multi-agent reinforcement learning》

      《Littman M L. Markov games as a framework for multi-agent reinforcement learning[C]. international conference on machine learning》

      《The dynamics of reinforcement learning in cooperative multiagent systems》

      《Mean Field Multi-Agent Reinforcement Learning[C]. international conference on machine learning》

      四、强化学习综述

      《Deep Reinforcement Learning: An Overview》

      https://arxiv.org/abs/1701.07274

      五、强化学习的相关课程

      https://www.udacity.com/course/reinforcement-learning—ud600(Georgia Tech, CS 8803)

      http://web.stanford.edu/class/cs234/index.html(Stanford, CS234)

      http://rll.berkeley.edu/deeprlcourse/(Berkeley, CS 294, Fall 2017)

      https://www.udemy.com/deep-reinforcement-learning-in-python/(Udemy高级教程)

      https://blog.csdn.net/qq_36829091/article/details/83213707(李宏毅老师视频讲解)

      六、强化学习的框架与代码实现

      6.1)tensorflow在强化学习算法的实现:https://github.com/reinforceio/tensorforce

      6.2)深度强化学习实验室github地址:https://github.com/NeuronDance/DeepRL

      6.3)强化学习框架Deep Learning and Reinforcement Learning Library for Scientists:https://github.com/tensorlayer/tensorlayer

      6.4)强化学习实现代码:https://github.com/Teacher-Guo/RL_code

      6.5)清华大学强化学习开源框架-天授:https://github.com/thu-ml/tianshou

      6.6)Rainbow:整合DQN六种改进的深度强化学习方法!:https://github.com/princewen/tensorflow_practice/tree/master/RL/Basic-Rainbow-Net

      七、强化学习在NLP的应用

      https://www.microsoft.com/en-us/research/wp-content/uploads/2017/11/zhang.pdf

      https://www.zhihu.com/question/47548097

        当然是policy base 和 value base结合的Proximal Policy Optimization(PPO)

        Dota的OpenAI five,与星际的AlphaStar核心使用的算法都是PPO。

        如果最近提出HATRPO能够大放异彩的话,那么未来强化学习时代可期!

        1)PPO、PPO2、TRPO的算法思想

        2)经验回放机制…A3C

        3)Self-play

        4)Double Estimator

        其实还有很多很多,这仅仅是脑子里第一层冒出来的

        上面的小伙伴们已经说的差不多了,我来补充一下分层强化学习方面。奖励稀疏、动作空间大是我们在生产中使用drl经常遇到的问题,直接头铁硬训,大力也出不了奇迹。

        那么我们人类是如何解决复杂问题呢?分而治之,将其分解为若干个容易解决的子问题。这就是分层强化学习最朴素的思想来源。

        目前分层的解决手段大体分两种,一种是基于目标的goal-reach,主要做法是选取一定的goal,使agent向着这些goal训练,可以预见这种方法的难点就是如何选取合适的goal;另一种方式是多级控制multi-level control,做法是抽象出不同级别的控制层,上层控制下层,这些抽象层在不同的文章中可能叫法不同,如常见的option、skill、macro action等。

        远古时期:

        1992年的一篇关于“封建强化学习”(Feudal Reinforcement Learning )的论文发布在NIPS上,正如其名字所述,思想来源于封建等级制度,将控制层次分为三个等级,当前层为manager,当前层的上一层为super-manager,当前层的下一层为sub-manager,属于典型的multi-level control。并在在不同层次的控制遵循两个原则:(1)reward hiding,你只需要满足你的直属上级;(2)information hiding,底下干活的不用知道大领导和小领导之间的那些事,以及领导不管你咋干的只要干好就行。

        开宗立派:

        1999年DRL教父Sutton的一篇论文:Between MDPs and semi-MDPs:A framework for temporal abstraction in reinforcement learning,提出了option的概念,并将temporal abstraction的思想和MDP与SMDP相结合,开创了分层强化学习最主流的方法option。

        中兴之世:

        2016年Bacon的:The Option-Critic Architecture 更是将option的概念和AC框架相结合,使option方法应用于HRL成为可能。

        同样是2016年,论文A Deep Hierarchical Approach to Lifelong Learning in Minecraft,日出了H_DRL框架,属于multi-level control结构,主打分层强化学习与终身学习和策略蒸馏等概念相结合。

        花繁叶茂:

        到后来,分层强化学习在应用中大放异彩,比如在腾讯的TStarBots: Defeating the Cheating Level Builtin AI in StarCraft II in the Full Game中通过人工调整的规则对结构动作空间进行建模,采用了层次化的动作建模和基于规则的控制器,将大量的原子动作(atomic actions)转换为少量的宏动作(macro action)

        综上,很期待分层强化学习在未来由更好的突破,向通用智能发展。

          我觉得大家都已经说的比较充分了,不过对于我来说,说到经验,就不得不谈到model based的方法和将深度神经网络与MCTS相结合的设计,比如alphago的一系列的工作,而将上述两者兼而有之的方法就是muzero。

          它的经验之处于以下两点:

          一是在于在训练中没有使用任何的领域先验知识这一点其实它继承了alphazero的特性。

          二是通过训练的过程,还能将整个马尔可夫决策过程的动态模型学出来。同时,这一过程不仅适用于棋类游戏,还能够适用于视频类电子游戏,这个确实让我感觉非常惊艳。它的这个特性也启发我们是不是可以将深度网络技术与其他搜索方法或者规划方法相结合从而得到更优的决策方案或决策模型。

          同时,我觉得这两点特性能够让它具有更好的落地性和实用性。

            看到了各位网友爱好者的回复,挺全面的,下面我根据自己的学习总结一下

            更新时间: 2022年4月3日

            1. 模拟环境

            • OpenAI开源的Gym环境,这个毋庸置疑了,是很多RLer的入门,且2021年开源了Doc
            • Mujoco,之前还是收费的,此处感谢DeepMind收购后直接将环境开源Mujoco.org, 【原来的网址 roboti.us】
            • 还有openDILab等开源的环境,以及伯克利开源的Flow等等
            • 还有一个是多智能体环境了pettingzoo

            2. 算法

            • DQN系列了,2013年的play atari game with reinforcment learning上了顶会,结果2015年上了Nature 后面成就了一大堆DQN系列,什么DDQN,PER,Double DQN 以及终极大法Rainbow

            • 应该属于AlphaGo, zero系列了,2016年的Nature, 打败李世石,以及后面击败柯杰, 简直独孤求败

            • 策略梯度系列,最早David sliver提出了DPG,随后的DDPG以及多智能体的MADDPG仍然是非常有效的方法,但这里要强调另外两个由伯克利的John Scheman提出的开创性工作: (1)TRPO正面刚策略梯度,直接通过二阶去优化而不是间接(数学比较多),后来作者觉得不爽,优化起来麻烦,直接在基础上搞出了(2)PPO,该算法属于那种短平快有效,clip的思路成了后面无人工作的基础。以及多智能体的MAPPO, 包括有人就在TRPO和PPO的分析上发过很多定会文章,就问厉不厉害

            • alphastar,DeepMind,OpenAI以及国内的启元世界都在搞,风光无限刷榜

            • Meta reinforcement learning在metalearning的基础上搞出的,出名的就是伯克利的SL和Chelsea Finn 提出了MAML,以及RL2: Fast Reinforcement Learning via Slow Reinforcement Learning (RL2),还有挺多,不太熟悉

            • 至于其他的逆强化学习,safe RL不太了解

            • 还有就是老爷子和David提出的Reward is enough, 然而实际工作中发现reward is not enough,段位低没get到点,这个在reddit上有激烈的讨论的,可围观。

            • 还有微软的提出的值分布强化学习(Distributional Reinforcement Learning),新出了一本相关的书籍

            • 还有Offline RL ,一个挺有意思的坑,伯克利的SL挖完了policy-based, meta RL, unsupervised learning之后的一个大坑,也被称为是强化学习落地的重要应用方式之一,目前国内南大俞扬老师的南栖献策在搞。
            • 还有很重要的 A3C算法,将多核并行应用在强化学习中,后面出现了很多Distributed XX(此处的XX替换为算法即可,比如PPO,DDPG,PER),好像都没有违和感,比如Apex中的应用,哈哈哈,所以你D了吗?

            想了一下总结这么多,后续想到了再总结,欢迎大家批评指正!

              7 天 后
              9 个月 后

              Richard 在Richard基础上补充一下
              (1)reward-free的研究工作挺有意思
              (2)meta-RL一直是热点
              (3)Sim2Real问题估计是落地的重要研究点,挺有意思

              最惊艳莫过于ChatGPT,不仅效果好,更是,提出了监督学习结合强化学习的最佳实践框架

              说点什么吧...
              Document