深度强化学习算法研究中的常用对比试验及作图技巧
文章目录
- 前言
- 常用对比试验
- 0 比较智能体的性能(performance)
- 1 比较学习速度(speedup)
- 2 比较数据效率(data efficiency)
- 3 比较算法对超参数的鲁棒性(robustness to hpyerparameters)
- 作图技巧
- 对原始数据进行统计后再作图
- 参考文献
前言
很多深度强化学习领域的研究者在验证自己学习算法性能时常常会选择将该算法应用于Atari视频游戏。在相关文献中,作者为了说明自己提出算法(下称proposed方法)的优越性,一般会做一些对比试验。对比试验是将proposed方法与前人已有方法(下称base算法)同时用于训练智能体(agent)玩Atari游戏,从不同方面进行比较。试验内容包括智能体的性能比较、算法学习速度比较、数据有效性比较、对超参数的鲁棒性比较等四个方面。本文将对这些深度强化学习领域常用的对比试验进行总结。
常用对比试验
0 比较智能体的性能(performance)
智能体性能的定义:将智能体玩Atari游戏的总得分定义为智能体的性能。
学习算法训练智能体玩游戏,获得分数越高,说明智能体的性能越好,进而说明该算法的整体性能越好。
如何说明性能有提升?
以人类玩家得分为基准点,作出agent得分对基准点的百分比,若所得结果大于100%,说明训练出的智能体性能已经超过了人类。
1 比较学习速度(speedup)
学习算法的速度speed:学习算法训练智能体玩游戏达到特定性能(得到某一得分)所花费的时间步timestep的倒数。
如何说明proposed算法的学习速度更快,实现了加速speedup?
base方法达到最佳性能所用的学习步数/proposed 方法达到相同性能所用的步数,若结果>1则说明研究结果实现了学习算法的加速。
2 比较数据效率(data efficiency)
数据效率data efficiency:学习算法训练智能体达到最佳性能时所用数据量的倒数。
如何说明proposed算法实现了数据效率的提高?
base算法达到最佳性能所用的数据量与proposed 算法达到相同性能所用数据量的比值,若结果大于1,则说明研究结果实现了数据效率的提高。
3 比较算法对超参数的鲁棒性(robustness to hpyerparameters)
robustness to hpyerparameters:学习算法选定不同的超参数训练智能体,记录下智能体的性能变化曲线。智能体的性能随超参数的变化越小,则越说明采用的学习算法对超参数越鲁棒。
如何说明proposed算法对超参数更鲁棒?
分别作出base算法和proposed算法智能体得分对超参数变化的曲线,分析曲线波动情况。若proposed算法曲线更平稳,则说明研究结果实现了对超参数鲁棒性的提高。
作图技巧
对原始数据进行统计后再作图
对于抖动较大的实验曲线,为了反映试验的整体情况,作者可以先将原始数据进行处理,然后作出处理后的曲线。
例如,上图是文献[2]中的曲线。纵轴的reward曲线抖动过于剧烈。作者作出了数据处理后的结果。作者做了大量试验,然后统计试验曲线的均值和标准差。图中的实线表示均值,阴影区域表示均值±标准差。
参考文献
[1] Jaderberg M, Mnih V, Czarnecki W M, et al. Reinforcement learning with unsupervised auxiliary tasks[J]. arXiv preprint arXiv:1611.05397, 2016.
[2] Pathak, Deepak, et al. “Curiosity-driven Exploration by Self-supervised Prediction.” International Conference on Machine Learning. 2017.
深度强化学习算法研究中的常用对比试验及作图技巧相关推荐
- 《强化学习周刊》第29期:Atari 深度强化学习的研究综述、金融强化学习的最新进展...
No.29 智源社区 强化学习组 强 化 学 习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...
- 揭秘深度强化学习的研究哲学:乐观主义与悲观主义
智源导读:西北大学汪昭然老师课题组的主要研究方向为:为深度强化学习算法提供理论保障,从样本复杂性.计算复杂性等方面提升深度强化学习算法的效率.在近期的演讲中,汪老师分别介绍了在线学习环境下进行探索的「 ...
- 【招聘推荐】启元世界招聘深度强化学习算法工程师
深度强化学习实验室 官网:http://www.neurondance.com/ 论坛:http://deeprl.neurondance.com/ 编辑.排版:DeepRL 深度强化学习算法工程师 ...
- 17种深度强化学习算法用Pytorch实现(附链接)
来源:新智元 本文约1300字,建议阅读5分钟. 本文为你介绍一个用PyTorch实现了17种深度强化学习算法的教程和代码库,帮助大家在实践中理解深度RL算法. [ 导读 ]深度强化学习已经在许多领域 ...
- 近端策略优化深度强化学习算法
PPO:Proximal Policy Optimization Algorithms,其优化的核心目标是: ppo paper 策略梯度 以下是马尔可夫决策过程MDP的相关基础以及强化学习的优化目标 ...
- openssl 添加自定义算法_GitHub:用PyTorch实现17种深度强化学习算法
[新智元导读]深度强化学习已经在许多领域取得了瞩目的成就,并且仍是各大领域受热捧的方向之一.本文推荐一个用 PyTorch 实现了 17 种深度强化学习算法的教程和代码库,帮助大家在实践中理解深度 R ...
- 深度强化学习算法调参
深度强化学习调参技巧:以D3QN.TD3.PPO.SAC算法为例 这个参考链接. 如何选择深度强化学习算法? 参考链接. 影响PPO算法性能的10个关键技巧(附PPO算法简洁Pytorch实现) 主要 ...
- 伦敦大学学院、UC伯克利联手,撰文综述深度强化学习泛化研究
来源:机器之心 编辑:陈萍 强化学习应用广泛,但为何泛化这么难?如果要在现实世界的场景中部署强化学习算法,避免过度拟合至关重要.来自伦敦大学学院.UC 伯克利机构的研究者撰文对深度强化学习中的泛化进行 ...
- 学界 | 量化深度强化学习算法的泛化能力
来源:AI 科技评论 OpenAI 近期发布了一个新的训练环境 CoinRun,它提供了一个度量智能体将其学习经验活学活用到新情况的能力指标,而且还可以解决一项长期存在于强化学习中的疑难问题--即使是 ...
- 基于值的深度强化学习算法
目录 DQN2013 -- Playing Atari with Deep Reinforcement Learning DQN2015 -- Human-level control through ...
最新文章
- shutdown命令远程关机
- Golang 编程 — Go Micro 微服务框架
- 韩顺平php程序员算法
- c++ 如何判断无效指针_如果链表中有环,我们应该如何判断?
- 「Docker」Docker教程+学习笔记
- [BZOJ 2734] 集合选数
- MySQL 8.0.22执行器源码分析HashJoin —— BuildHashTable函数细节步骤
- c++ 对象数组_ArrayList实现分析(一)——对象创建
- Java数据库表自动转化为PO对象
- CentOS 6.5+Syslog-ng+LogZilla搭建中央日志服务器
- C语言程序设计谭浩强版 五
- 光影精灵安装ubuntu20.04安装显卡驱动外界显示屏
- Firefox downloadhelper 视频下载助手
- 总结几个有关国家行政区划的问题
- 数据仓库的模型设计流程
- 史上最全的程序员求职渠道总结
- android闹钟报告分析,Android AlarmClock 闹钟应用 简单分析
- 计算机专用英语词汇1500词
- 面试:JavaScript基础概念
- win10加装机械硬盘卡_以微软的技术实力,win10还会出现硬盘100%占用的问题,为什么呢...
热门文章
- 内存错误分析工具----asan(AddressSanitizer)的介绍和使用
- 服务器抓不到mrcp协议,MRCP协议学习笔记-MRCP背景知识介绍
- VMware和mobaXterm连接总结
- 拼多多电商外部工具(浏览器插件)
- npm查看依赖包报错:npm ERR! extraneous解决!!
- OpenGL学习---高级光照---法线贴图
- 不借助其他任何软件防止QQ被盗的小技巧
- 模块手机Project Ara的MDK(Module Developers Kit)模块开发套件
- JS async库:parallel, series, waterfall, whilst用法
- 人脸识别支付欺诈手段和防范措施