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的更多相关文章

  1. (zhuan) Prioritized Experience Replay

    Prioritized Experience Replay JAN 26, 2016 Schaul, Quan, Antonoglou, Silver, 2016 This Blog from: ht ...

  2. 论文阅读之:PRIORITIZED EXPERIENCE REPLAY

    PRIORITIZED EXPERIENCE REPLAY ICLR 2016 经验回放使得 online reinforcement learning agent 能够记住并且回放过去的经验.在先前 ...

  3. 【深度强化学习】Curriculum-guided Hindsight Experience Replay读后感

    目录 导读 目录 正文 Abstract[摘要] Introduction[介绍] 导读 看任何一个领域的文章,一定要看第一手资料.学习他们的思考方式,论述逻辑,得出一点自己的感悟.因此,通过阅读pa ...

  4. 强化学习中的经验回放(The Experience Replay in Reinforcement Learning)

    一.Play it again: reactivation of waking experience and memory(Trends in Neurosciences 2010) SWR发放模式不 ...

  5. Revisiting Fundamentals of Experience Replay

    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! ICML 2020 Abstract 经验回放对于深度RL中的异策算法至关重要,但是在我们的理解上仍然存在很大差距.因此,我们对Q学习方法 ...

  6. 强化学习(十一) Prioritized Replay DQN

    在强化学习(十)Double DQN (DDQN)中,我们讲到了DDQN使用两个Q网络,用当前Q网络计算最大Q值对应的动作,用目标Q网络计算这个最大动作对应的目标Q值,进而消除贪婪法带来的偏差.今天我 ...

  7. 【转载】 强化学习(十一) Prioritized Replay DQN

    原文地址: https://www.cnblogs.com/pinard/p/9797695.html ------------------------------------------------ ...

  8. 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 ...

  9. 强化学习之二:Q-Learning原理及表与神经网络的实现(Q-Learning with Tables and Neural Networks)

    本文是对Arthur Juliani在Medium平台发布的强化学习系列教程的个人中文翻译.(This article is my personal translation for the tutor ...

  10. 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 ...

随机推荐

  1. mybatis-plus使用FIND_IN_SET

    xxxQueryWrapper.eq("is_deleted","0").apply(deptUser.getDeptId() != null,"de ...

  2. 如何基于Security框架兼容多套用户密码加密方式

    一.说明 当已上线的系统存在使用其他的加密方式加密的密码数据,并且密码 不可逆 时,而新的数据采用了其他的加密方式,则需要同时兼容多种加密方式的密码校验. 例如下列几种情况: 旧系统用户的密码采用了 ...

  3. CoordConv:给你的卷积加上坐标

    摘要:本文主要对CoordConv的理论进行了介绍,对其进行了复现,并展示了其在网络结构中的用法. 本文分享自华为云社区<CoordConv:给你的卷积加上坐标>,作者: 李长安. 一.理 ...

  4. 最新版本 Stable Diffusion 开源AI绘画工具之部署篇

    目录 AI绘画 本地环境要求 下载 Stable Diffusion 运行启动 AI绘画 关于 AI 绘画最近有多火,既然你有缘能看到这篇文章,那么相信也不需要我过多赘述了吧? 随着 AI 绘画技术的 ...

  5. windows下使用pytorch进行单机多卡分布式训练

    现在有四张卡,但是部署在windows10系统上,想尝试下在windows上使用单机多卡进行分布式训练,网上找了一圈硬是没找到相关的文章.以下是踩坑过程. 首先,pytorch的版本必须是大于1.7, ...

  6. 有关SpringMVC的一些知识点

    Spring的获取对象 1.获取原生对象,直接在在方法李传http相关的对象.2.接受简单数据类型,接受简单数据类型(八种基本类型)参数直接在handler方法里声明,会自动把相同类型进行绑定,但是接 ...

  7. [GIT]指定分支下创建分支

    1 解决方案 Eg: master分支下创建 $ git checkout master //切换到master分支下 $ git branch branch_tmp_A //在本地仓库创建临时分支b ...

  8. 和 chatgpt 聊了一会儿分布式锁 redis/zookeeper distributed lock

    前言 最近的 chatGPT 很火爆,听说取代程序员指日可待. 于是和 TA 聊了一会儿分布式锁,我的感受是,超过大部分程序员的水平. Q1: 谈一谈 java 通过 redis 实现分布式 锁 ch ...

  9. 四月九号java知识

    1.do{}while();和while(){}结构最主要区别就是前者后面要一个分号 2.System.out.print();与System.out.println();的区别后者输出换行, 前者不 ...

  10. 全网最详细中英文ChatGPT-GPT-4示例文档-智能聊天机器人从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

    目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...