Event Tables for Efficient Experience Replay
Abstract
事件表分层抽样(SSET),它将ER缓冲区划分为事件表,每个事件表捕获最优行为的重要子序列。
我们证明了一种优于传统单片缓冲方法的理论优势,并将SSET与现有的优先采样策略相结合,以进一步提高学习速度和稳定性。
在具有挑战性的MiniGrid域、基准RL环境和高保真赛车模拟器中的实证结果表明,SSET比现有的ER缓冲采样方法具有优势和通用性。
Introduction
如果事件与最优行为相关,并且历史足够长,与使用均匀采样甚至PER相比,SSET可以显著加快非策略学习的收敛速度。即使这些条件不满足,偏置校正项也会保留Bellman目标,尽管收敛速度可能会减慢。
虽然SSET是一种从ERB中优化采样的新方法,但它是许多现有优先级方法或行为塑造技术的补充。具体来说,SSET可以基于每个表中使用的具有TD-error PER的已知事件应用,从而将重点放在也需要值更新的关键状态上。
贡献:
(1)介绍事件表和事件表SSET框架
(2)我们推导出理论保证,通过适当设计的事件量化样本复杂性的改善,并提供偏差校正,确保Bellman目标保持不变。
(3)我们在具有挑战性的MiniGrid环境和连续RL基准(MuJoCo和Lunar Lander)中实证证明了SSET优于均匀采样或PER的优势,并发现将SSET与TD-error PER或基于潜在的奖励塑造相结合可以进一步改善学习
Related Work
人们提出了许多ERB优先采样的方法。使用最广泛的是优先经验回放(PER) (Schaul等人,2016),它优先考虑具有最大TD错误的状态/动作。然而,PER并不专门关注与最优策略一致的状态:实际上,即使在行为策略改变后,在一个策略下具有零TD误差的经验也可能永远不会再次采样。除了与PER的经验比较外,本文表明,SSET可以与PER一起使用,以利用这两种方法的好处:专注于依赖与最优策略一致的高价值事件轨迹,但也对那些具有高贝尔曼误差的轨迹上的状态进行优先级排序。其他基于模型误差(Oh等人,2021年)或元学习过程(Zha等人,2019年)的优先级来增强vanilla PER的方法也可以类似地与SSET结合使用
SSET并不试图使用同一轨迹的小批量数据,而是依靠采样将轨迹分散到多个小批量中,从而提供沿着轨迹的稳定性和备份。
SSET允许任何基于状态的事件对ERB进行划分,更重要的是存储导致事件的轨迹,而不仅仅是事件本身,这对于确保样本复杂度至关重要。
事件表分层抽样
直观地说,每个表都包含了在接近事件发生区域训练值函数所需的数据,并链接在一起形成了备份的“快车道”(图1),与单一的ER相比,这些数据会被过度采样

一个示例MiniGrid域,具有达到目标或房间之间的间隙的事件条件。蓝色方块表示可以过度采样的状态的“快车道”,因为它们同时出现在事件表和默认表中。灰色状态只出现在默认表中。
与PER和其他ERB优先级方案一样,SSET在随机环境中会引入偏差

Event Tables for Efficient Experience Replay的更多相关文章
- (zhuan) Prioritized Experience Replay
Prioritized Experience Replay JAN 26, 2016 Schaul, Quan, Antonoglou, Silver, 2016 This Blog from: ht ...
- 论文阅读之:PRIORITIZED EXPERIENCE REPLAY
PRIORITIZED EXPERIENCE REPLAY ICLR 2016 经验回放使得 online reinforcement learning agent 能够记住并且回放过去的经验.在先前 ...
- 【深度强化学习】Curriculum-guided Hindsight Experience Replay读后感
目录 导读 目录 正文 Abstract[摘要] Introduction[介绍] 导读 看任何一个领域的文章,一定要看第一手资料.学习他们的思考方式,论述逻辑,得出一点自己的感悟.因此,通过阅读pa ...
- 强化学习中的经验回放(The Experience Replay in Reinforcement Learning)
一.Play it again: reactivation of waking experience and memory(Trends in Neurosciences 2010) SWR发放模式不 ...
- Revisiting Fundamentals of Experience Replay
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! ICML 2020 Abstract 经验回放对于深度RL中的异策算法至关重要,但是在我们的理解上仍然存在很大差距.因此,我们对Q学习方法 ...
- 强化学习(十一) Prioritized Replay DQN
在强化学习(十)Double DQN (DDQN)中,我们讲到了DDQN使用两个Q网络,用当前Q网络计算最大Q值对应的动作,用目标Q网络计算这个最大动作对应的目标Q值,进而消除贪婪法带来的偏差.今天我 ...
- 【转载】 强化学习(十一) Prioritized Replay DQN
原文地址: https://www.cnblogs.com/pinard/p/9797695.html ------------------------------------------------ ...
- Understanding Complex Event Processing (CEP)/ Streaming SQL Operators with WSO2 CEP (Siddhi)
转自:https://iwringer.wordpress.com/2013/08/07/understanding-complex-event-processing-cep-operators-wi ...
- 强化学习之二:Q-Learning原理及表与神经网络的实现(Q-Learning with Tables and Neural Networks)
本文是对Arthur Juliani在Medium平台发布的强化学习系列教程的个人中文翻译.(This article is my personal translation for the tutor ...
- Online Schema Change for MySQL
It is great to be able to build small utilities on top of an excellent RDBMS. Thank you MySQL. This ...
随机推荐
- kubernetes集成GPU原理
这里以Nvidia GPU设备如何在Kubernetes中管理调度为例研究, 工作流程分为以下两个方面: 如何在容器中使用GPU Kubernetes 如何调度GPU 容器中使用GPU 想要在容器中的 ...
- 使用float进行比较问题处理
float compare Abstract 使用float数据进行精确计算和比较,可能由于精度问题导致程序逻辑异常. Explanation 使用float数据进行比较,计算机表达double和fl ...
- wx.BoxSizer布局管理器用法,及其Add()方法参数说明
wx.BoxSizer 布局管理器是一种常见的布局管理器,它可以在水平或垂直方向上布置子窗口部件.同时,它还可以在水平或垂直方向上包含其他 wx.BoxSizer 来创建复杂的布局. 下面是 wx.B ...
- 001-ksum 求符合条件的 k 个数 1. Two Sum/15. 3Sum/18. 4Sum/
推荐阅读 000-从零开始的数据结构与算法 001-01-ksum 求符合条件的 k 个数 1. Two Sum/15. 3Sum/18. 4Sum/ 002-两数相加 add two numbers ...
- spark中的持久化机制以及lineage和checkpoint(简含源码解析)
spark相比MapReduce最大的优势是,spark是基于内存的计算模型,有的spark应用比较复杂,如果中间出错了,那么只能根据lineage从头开始计算,所以为了避免这种情况,spark提供了 ...
- golang pprof 监控系列(4) —— goroutine thread 统计原理
golang pprof 监控系列(4) -- goroutine thread 统计原理 大家好,我是蓝胖子. 在之前 golang pprof监控 系列文章里我分别介绍了go trace以及go ...
- Luogu P4114 Qtree1
树剖一好题.我心水了ww 题目描述 给定一棵n个节点的树,有两个操作: CHANGE i ti 把第i条边的边权变成ti QUERY a b 输出从a到b的路径中最大的边权,当a=b的时候,输出0 输 ...
- Java设计模式 —— 装饰模式
12 装饰模式 12.1 装饰模式概述 Decorator Pattern: 动态地给一个对象增加一些额外的职责.提供一种比使用子类更加灵活的方案来扩展功能. 装饰模式是一种用于替代继承的技术,通过一 ...
- ASP.NET Core - 缓存之内存缓存(下)
话接上篇 [ASP.NET Core - 缓存之内存缓存(上)],所以这里的目录从 2.4 开始. 2.4 MemoryCacheEntryOptions MemoryCacheEntryOption ...
- java 回行矩阵的打印
n=3 n=4 1 2 3 1 2 3 4 8 9 4 12 13 14 5 7 6 5 11 16 15 6 10 9 ...