【ICLR2020】基于模型的强化学习算法玩Atari【附代码】

简介: 【ICLR2020】基于模型的强化学习算法玩Atari【附代码】
  • 论文题目:Model Based Reinforcement Learning for Atari

所解决的问题?

  model-free的强化学习算法已经在Atari游戏上取得了巨大成功,但是与人类选手相比,model-free的强化学习算法需要的交互数据往往大地多。其根本原因在于人类选手能够很容易学习到游戏的大概运行规律,从而进行预测规划。因此为了达到用少量数据学习控制Atari游戏的目的,作者提出了一种基于video prediction models的model based Simulated Policy Learning (SimPLe)算法,来解决需要大量交互数据的问题。在所学到的model上得到的policy,用于原始model上能够取得较好效果。主要贡献在于将planning算法与learned model结合起来,并取得了SOTA效果。

背景

  人类选手可以在几分钟内学会玩Atari游戏,而及时最好的model-free强化学习方法也需要成百上千步迭代尝试才能达到,需要几周的训练时间。而人类选手能够做地这么好的原因就是:人类已经具备一些先验知识能够预测游戏接下来的走势。也有一些结合深度学习预测下一帧数据的方法,或者是预测奖励的方法,但是它们大多数都是用于model-free的强化学习算法上。model-free的强化学习算法做地比较好的有:RainbowIMPALA两大算法。而基于model-based的强化学习方法能够大大提高采样效率,以往的方法大多都在学习潜在的动力学方程,以及一些新奇的结合好奇心、反事实等东西做一些创新,以及其它的一些改进方法。

所采用的方法?

  使用video prediction技术学习model,并且基于所学到的model训练得到policy。

预测Video

  这一部分主要是依据Junhyuk Oh 2015年在Atari所做的Video prediction的工作,和Silvia Chiappa在2017年所做的Recurrent environment simulators这两篇文章来做的。本文作者主要是focus在学习如何预测才能更好地玩游戏,而不是在学习如何预测,而学习出来的model用于得到policy,并且在原环境model上也能取得较好效果。

  Felix Leibfried在 2016 年将Video prediction的工作扩展到Video和reward的同时预测,但是并没有基于预测结果去做得到policy的这部分工作。大多数的这些类似的工作(包括本文)都是在隐式地编码游戏的模型。

  为了获取更好的预测video的网络结构,作者基于models developed in the context of robotics和下述文献提出了stochastic video prediction model。

  • Aäron van den Oord, Oriol Vinyals, and Koray Kavukcuoglu. Neural discrete representation learning. In Isabelle Guyon, Ulrike von Luxburg, Samy Bengio, Hanna M. Wallach, Rob Fergus, S. V. N. Vishwanathan, and Roman Garnett (eds.), Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems 2017, 4-9 December 2017, Long Beach, CA, USA, pp. 6306–6315, 2017.
  • Lukasz Kaiser and Samy Bengio. Discreteauto encoders for sequence models. CoRR, abs/1801. 09797, 2018.

  predictive model has stochastic latent variables so it can be applied in highly stochastic environments

model-based

  作者用的ppo算法。

整体算法

  大体上的思路:其实就是用神经网络构建一个环境模型(world model),基于这个学习到的world model去得到policy,然后再拿这个policy与真实的环境进行交互,收集数据,然后更新神经网络训练得到的world model。算法伪代码如下:

  目的就是为了在减少与真实的环境互动的同时,获得在真实环境上较好的policy。初始的world model训练数据来自真实环境的随机rollout数据。

  为了获取更好的world model,作者尝试了很多结构,最终提出一种 novel stochastic video prediction model 如下图所示:

取得的效果?

  SimPLe在大多数游戏中比现今的SOTA算法还具有更高的采样效率。具体实验结果可以查看论文,主要是应用在Atari上的工作。

所出版信息?作者信息?

  论文已被ICLR2020接收,作者Lukasz Kaiser谷歌大脑成员,主要研究神经网络和NLP领域,早期有做机器博弈相关理论研究。

其它参考链接

相关文献

  • Matteo Hessel, Joseph Modayil, Hado van Hasselt, Tom Schaul, Georg Ostrovski, Will Dabney, Dan Horgan, Bilal Piot, Mohammad Gheshlaghi Azar, and David Silver. Rainbow: Combining improvements in deep reinforcement learning. In Sheila A. McIlraith and Kilian Q. Weinberger (eds.), Proceedings of the Thirty-Second AAAI Conference on Artificial Intelligence, (AAAI-18), the 30th innovative Applications of Artificial Intelligence (IAAI-18), and the 8th AAAI Symposium on Educational Advances in Artificial Intelligence (EAAI-18), New Orleans, Louisiana, USA, February 2-7, 2018, pp. 3215–3222. AAAI Press, 2018
  • Lasse Espeholt, Hubert Soyer, Rémi Munos, Karen Simonyan, Volodymyr Mnih, Tom Ward, Yotam Doron, Vlad Firoiu, Tim Harley, Iain Dunning, Shane Legg, and Koray Kavukcuoglu. IMPALA: scalable distributed deep-rl with importance weighted actor-learner architectures. In Proceedings of the 35th International Conference on Machine Learning, ICML, pp. 1406–1415, 2018.
  • Junhyuk Oh, Xiaoxiao Guo, Honglak Lee, Richard L. Lewis, and Satinder P. Singh. Action conditional video prediction using deep networks in atari games. In NIPS, pp. 2863–2871, 2015.
  • Silvia Chiappa, Sébastien Racanière, Daan Wierstra, and Shakir Mohamed. Recurrent environment simulators. In 5th International Conference on Learning Representations, ICLR 2017, Toulon, France, April 24-26, 2017, Conference Track Proceedings. OpenReview.net, 2017. URL https: //openreview.net/forum?id=B1s6xvqlx.
  • Felix Leibfried, Nate Kushman, and Katja Hofmann. A deep learning approach for joint video frame and reward prediction in Atari games. CoRR, abs/1611.07078, 2016.

我的微信公众号名称:深度学习先进智能决策

微信公众号ID:MultiAgent1024

公众号介绍:主要研究深度学习、强化学习、机器博弈等相关内容!期待您的关注,欢迎一起学习交流进步!

相关文章
|
24天前
|
机器学习/深度学习 算法 机器人
多代理强化学习综述:原理、算法与挑战
多代理强化学习是强化学习的一个子领域,专注于研究在共享环境中共存的多个学习代理的行为。每个代理都受其个体奖励驱动,采取行动以推进自身利益;在某些环境中,这些利益可能与其他代理的利益相冲突,从而产生复杂的群体动态。
107 5
|
3天前
|
机器学习/深度学习 人工智能 算法
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
车辆车型识别,使用Python作为主要编程语言,通过收集多种车辆车型图像数据集,然后基于TensorFlow搭建卷积网络算法模型,并对数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django搭建web网页端操作界面,实现用户上传一张车辆图片识别其类型。
12 0
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
|
21天前
|
机器学习/深度学习 数据采集 算法
如何在一夜之间成为模型微调大师?——从零开始的深度学习修炼之旅,让你的算法功力飙升!
【10月更文挑战第5天】在机器学习领域,预训练模型具有强大的泛化能力,但直接使用可能效果不佳,尤其在特定任务上。此时,模型微调显得尤为重要。本文通过图像分类任务,详细介绍如何利用PyTorch对ResNet-50模型进行微调,包括环境搭建、数据预处理、模型加载与训练等步骤,并提供完整Python代码。通过调整超参数和采用早停策略等技巧,可进一步优化模型性能。适合初学者快速上手模型微调。
76 8
|
2月前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
91 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
19天前
|
机器学习/深度学习 算法 搜索推荐
django调用矩阵分解推荐算法模型做推荐系统
django调用矩阵分解推荐算法模型做推荐系统
16 4
|
2月前
|
存储 自然语言处理 算法
【算法精讲系列】MGTE系列模型,RAG实施中的重要模型
检索增强生成(RAG)结合检索与生成技术,利用外部知识库提升大模型的回答准确性与丰富性。RAG的关键组件包括文本表示模型和排序模型,前者计算文本向量表示,后者进行精细排序。阿里巴巴通义实验室推出的GTE-Multilingual系列模型,具备高性能、长文档支持、多语言处理及弹性向量表示等特性,显著提升了RAG系统的检索与排序效果。该系列模型已在多个数据集上展示出优越性能,并支持多语言和长文本处理,适用于各种复杂应用场景。
|
2月前
|
自然语言处理 监控 算法
【算法精讲系列】通义模型Prompt调优的实用技巧与经验分享
本文详细阐述了Prompt的设计要素,包括引导语、上下文信息等,还介绍了多种Prompt编写策略,如复杂规则拆分、关键信息冗余、使用分隔符等,旨在提高模型输出的质量和准确性。通过不断尝试、调整和优化,可逐步实现更优的Prompt设计。
|
2月前
|
算法
基于SIR模型的疫情发展趋势预测算法matlab仿真
该程序基于SIR模型预测疫情发展趋势,通过MATLAB 2022a版实现病例增长拟合分析,比较疫情防控力度。使用SIR微分方程模型拟合疫情发展过程,优化参数并求解微分方程组以预测易感者(S)、感染者(I)和移除者(R)的数量变化。![]该模型将总人群分为S、I、R三部分,通过解析或数值求解微分方程组预测疫情趋势。
|
2月前
|
机器学习/深度学习 数据采集 存储
一文读懂蒙特卡洛算法:从概率模拟到机器学习模型优化的全方位解析
蒙特卡洛方法起源于1945年科学家斯坦尼斯劳·乌拉姆对纸牌游戏中概率问题的思考,与约翰·冯·诺依曼共同奠定了该方法的理论基础。该方法通过模拟大量随机场景来近似复杂问题的解,因命名灵感源自蒙特卡洛赌场。如今,蒙特卡洛方法广泛应用于机器学习领域,尤其在超参数调优、贝叶斯滤波等方面表现出色。通过随机采样超参数空间,蒙特卡洛方法能够高效地找到优质组合,适用于处理高维度、非线性问题。本文通过实例展示了蒙特卡洛方法在估算圆周率π和优化机器学习模型中的应用,并对比了其与网格搜索方法的性能。
265 1
|
3月前
|
测试技术 数据库
探索JSF单元测试秘籍!如何让您的应用更稳固、更高效?揭秘成功背后的测试之道!
【8月更文挑战第31天】在 JavaServer Faces(JSF)应用开发中,确保代码质量和可维护性至关重要。本文详细介绍了如何通过单元测试实现这一目标。首先,阐述了单元测试的重要性及其对应用稳定性的影响;其次,提出了提高 JSF 应用可测试性的设计建议,如避免直接访问外部资源和使用依赖注入;最后,通过一个具体的 `UserBean` 示例,展示了如何利用 JUnit 和 Mockito 框架编写有效的单元测试。通过这些方法,不仅能够确保代码质量,还能提高开发效率和降低维护成本。
49 0