重生强化【Reincarnating RL】论文梳理

news2024/11/23 5:05:18

重生强化【Reincarnating RL】论文梳理

文章目录

  • 重生强化【Reincarnating RL】论文梳理
    • 前言:
    • 文章链接:
    • 作者团队介绍:
    • 沈向洋老师的论文十问:
    • 联系方式:

前言:

好久没写文章速读了,最近群友推荐了两篇非常有意思的文章,一个是重置强化,一个是重生强化,从两个不同的角度来让强化学的更快。

由于我最近也在做相关的工作,然后就仔细的看了这两篇文章。第一篇文章录了一个视频:【ResetNet-The Primacy Bias in Deep Reinforcement Learning论文解读和讨论-哔哩哔哩】 https://b23.tv/GJQ85N5

第二篇这周六晚上和群友讨论后,应该也会有一个视频。今天先梳理下思路。

首先这篇文章的openreview评分并不高,因为他的主要方法比较trivial,但是他的故事讲的非常棒,切入的点非常宏大,然后实现的效果比较明显,实验结果也很丰富。

另外,知乎曾经有一个强化的热门话题:为什么强化学习里很少有预训练模型(Pretrained Model)?。“在NLP和CV领域中都存在一些非常出名的预训练模型(例如BERT和ResNet),但好像没有太听说强化学习里有类似于这种的backbone呢?” 那么这篇文章就尝试让强化学习领域,能够构建类似的backbone,并且推崇这种预训练模型的范式。

基于此,他们只是在文中提供了一个例子,可以实现policy to value 的迁移(其实本质上是提供一个次优的policy,加上部分次优数据,去预训练一个白板强化(tabula-rasa RL),再利用行为克隆来做约束,帮助策略快速收敛,最后给行为克隆损失加一个衰减系数做“断奶”,让新的强化策略最终能超过原本的次优引导policy),这种方案在文中给的例子中效果不错。但是我个人感觉这种方案,可能对于AC结构的算法不是那么合适。

文章链接:

https://agarwl.github.io/reincarnating_rl

作者团队介绍:

在这里插入图片描述
谷歌大脑在蒙特利尔的研究院。看一作的talk,也是一个乐呵的人,有点意思。

沈向洋老师的论文十问:

Q1:论文试图解决什么问题?
A1:本文尝试正式定义好,强化学习领域,如何利用过去的训练结果。最好要突破网络结构的限制。

Q2:这是否是一个新的问题?
A2:这并不是新的问题,如何利用过去的训练结果,之前很多人都有过尝试。但是他们第一次正式的给出定义,并且提供了一个较为universal的方案,可以仅从次优策略和数据,实现到加速白板value-based RL的快速学习。

Q3:这篇文章要验证一个什么科学假设?
A3:提供一个强化预训练范式,至于重生强化,感觉更像噱头,但确实高大上了许多。

Q4:有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?
A4:文中提到了五个:Rehearsal,JSRL,Offline RL Pretraining,Kickstarting,DQfD,但我感觉还有一个没提到,就是就是残差强化,因为在探索中利用guide-policy,JSRL属实不是一个好的方案,很明显会造成引导和学习策略的状态分布不匹配,而我上一篇工作RHER的自我引导探索策略采用的随机混合模式就不会有这样的问题。至于本文提到的重生强化,所提出的算法PVRL(policy(+data) to value RL),他们和上述五个方案的异同点在于,和offline RL一样,利用teacher policy的data做了离线预训练,后面的在线调优,和Kickstarting一样,都用了策略蒸馏损失,和他们不一样的在于,这篇工作对策略蒸馏损失加了一个衰减系数,作为“断奶”的操作。一共就三步,而且最后一个不同其实也就多了一个超参数。但人家是第一个正式定义大模型预训练范式,并且在很多任务中都验证好使,也算是一个solid work。

Q5:论文中提到的解决方案之关键是什么?
A5:我刚刚开始以为解决方案就是预训练加行为克隆损失。但细看文章的时候,它在文章开头前三页都没有说具体的方法,而是笼统的冠以“policy2value RL”,实现仅仅有一个sub-optimal policy,就能帮助一个新的value-based RL快速训练,根本不用管这个新的RL agent的网络结构和超参数,这个描述让我觉得太神奇了,我看完了甚至都不知道该如何实现。然后看到method的时候,才发现,其实就是一个policy distillation loss…甚至它还需要teacher agent的部分数据。用审稿人的话就是,不该称为PVRL,而是(Policy+Data to Value)RL.。那么它的关键技术就A4提到的三步,预训练,蒸馏,加衰减系数对teacher policy的“断奶”。

Q6:论文中的实验是如何设计的?
A6:实验设计范式和普通的强化完全不一样。
在这里插入图片描述
首先,横纵坐标就很不一样,横坐标根据不同的训练模式,分成了不同的panel(不同的部分?),纵坐标则做了一个norm,随机策略的性能为0,teacher policy的性能为1,应该是线性划分,用以突出teacher policy和student policy的性能差距。其次关于曲线,断续的纵线表示重生操作,左边是teacher policies的效果,或者是预训练的性能曲线,右边是student policy在线调优的性能曲线。title和legend表示不同的设置。

Q7:用于定量评估的数据集是什么?代码有没有开源?
A7:几个比较消耗资源的大任务,比如说雅塔丽游戏中的Arcade Learning Environment (ALE,街机游戏任务,离散动作,DQN系列) ;火柴人控制任务:humanoid:run (唯一的一个连续动作任务,用的TD3,没用预训练,非常诡异,我十分怀疑TD3预训练效果并不好使~);真实场景任务(其实也是仿真):Balloon Learning Environment (BLE,热气球飞行控制,也是离散动作,用的DQN系列) 。

不仅代码开源了(其实代码也没啥东西…),因为他们要力推强化的预训练backbone,他们还开源了不少谷歌的压箱底训练参数和数据。

Q8:论文中的实验及结果有没有很好地支持需要验证的科学假设?
A8:在他们展示的任务中,比较好的验证了他们的假设,即,通过预训练、蒸馏损失、衰减蒸馏系数,可以实现一个teacher policy+少量data,对一个全新的value-based RL网络的知识快速迁移。

Q9:这篇论文到底有什么贡献?
A9:贡献首先是正式的定义了重生强化(划掉,感觉本质上是强化学习预训练范式)。其次,提供了一个可能在离散动作比较好用的policy-to-value的迁移方案。最后,作为提倡者,他们开源了一些谷歌压箱底的训练模型和数据,对计算资源少的实验室和个人来说,无疑是一个利好。

Q10:下一步呢?有什么工作可以继续深入?
A10:下一步可以参考NLP和CV的操作,提出更好更universal的迁移方案,比如对于actor-critic结构的强化算法,如何才能快速的迁移,同时避免offline RL在AC结构中遇到的问题,比如OOD,比如offline2online过程中,性能甚至会下降的问题。

至于其他的内容,今天就到这儿了,感兴趣的同学可以自己去看看原文,或者等周六晚上7点,腾讯会议一起讨论一下。

联系方式:

ps: 欢迎做强化的同学加群一起学习:

深度强化学习-DRL:799378128

Mujoco建模:818977608

欢迎玩其他物理引擎的同学一起玩耍~

欢迎关注知乎帐号:未入门的炼丹学徒

CSDN帐号:https://blog.csdn.net/hehedadaq

我的两个GitHub仓库,欢迎star~

极简spinup+HER+PER代码实现:https://github.com/kaixindelele/DRLib

自我引导探索-接力式HER(据我所知的探索效率最高的HER变体):https://github.com/kaixindelele/RHER

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/90011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

html5期末大作业:自适应网站开发——公司网站7页 ,响应式页面

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

这10张图拿去,别再说学不会RecyclerView的缓存复用机制了

ViewPager2是在RecyclerView的基础上构建而成的,意味着其可以复用RecyclerView对象的绝大部分特性,比如缓存复用机制等。 作为ViewPager2系列的第一篇,本篇的主要目的是快速普及必要的前置知识,而内容的核心,正是前面…

SQL概述以及MySQL常用语句总结

目录数据库概述SQL与NoSQL对比关系型数据库管理系统的常用实例MySQL介绍安装数据库的连接SQLDDLDMLDQL单表查询多表查询多表关系连接查询连接分类内连接 JOIN外连接左外连接 LEFT JOIN右外连接 RIGHT JOIN自连接 JOIN联合查询 UNION子查询标量子查询列子查询行子查询表子查询DC…

大二Web课程设计——家乡主题网页设计(web前端网页制作课作业) 四川旅游网页设计制作

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

【Spring】——12、BeanPostProcessor的执行流程?(源码分析)

📫作者简介:zhz小白 公众号:小白的Java进阶之路 专业技能: 1、Java基础,并精通多线程的开发,熟悉JVM原理 2、熟悉Java基础,并精通多线程的开发,熟悉JVM原理,具备⼀定的线…

[附源码]Python计算机毕业设计房屋租赁管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等…

MongoDB Node 驱动使用指南

MongoDB Node 驱动介绍 1. MongoDB数据库连接指南 使用原生的mongodb Node驱动连接MongoDB数据库。 1.1 数据库连接URI 数据库连接URI是一个指明了数据库地址、名称、用户名、密码的字符串,类似于网页链接。 1.2 Node驱动安装 使用Npm或者Yarn安装数据库驱动程…

40_CAN通信基础知识

目录 CAN协议简介 CAN物理层 闭环总线网络 闭环总线网络 开环总线网络 通讯节点 差分信号 CAN协议中的差分信号 CAN协议层 CAN的波特率及位同步 位时序分解 SS段(SYNC SEG) PTS段(PROP SEG) PBS1段(PHASE SEG1) PBS2段(PHASE SEG2) 通讯的波特率 CAN的报文种类…

和数链技术与供应链金融的革命性融合发展

区块链是由密码技术、共识机制、点对点通信协议、分布式存储等多种核心技术体系高度融合,形成的一种分布式基础架构与计算范式,其本质则是一套去中心化的记账系统。区块链技术凭借自身分布式共享账本、去中心化、透明性、隐私保护、节点控制、信息的不可…

[附源码]计算机毕业设计的剧本杀管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: Springboot mybatis MavenVue等等组成,B/S模式…

java+mysql基于ssm的校园快递代领系统

当代大学生的课业都比较繁重,很多学子甚至选修了双学位,但是为了保障生活的质量难免会在网上购买一些生活和学习用品,但是又因为学业或者兼职等原因不能按时的领取属于自己的快递,这个时候一个新兴的行业校园快递代领服务诞生了 本系统是一个校园快递代领系统,服务人员可以在线…

【Git】常用命令详解(循序渐进,逐步分析)

目录 一、Git常用命令 1.1、设置用户签名 1.2、初始化本地库 1.3查看本地库状态 1.3、添加文件到暂存区 1.4、将暂存区文件添加文件到本地库 1.5、查看历史版本(提交历史记录) 1.6、修改文件 1.7、版本穿梭 一、Git常用命令 1.1、设置用户签名…

前端浏览器支持的JS文件操作技术介绍

前端浏览器支持的JS文件操作技术介绍 本文将介绍前端浏览器支持的JS文件操作技术。通过使用在 HTML5 中加入到 DOM 的 File API&#xff0c;使在 web 内容中让用户选择本地文件然后读取这些文件的内容成为可能。用户可以通过 HTML 中的 <input type"file"> 元…

Python动态可视化Plotly

✨ 介绍 Plotly Express ✨&#xff1a; 提示&#xff1a;这里可以添加学习目标 Plotly Express是一个新的高级 Python 可视化库&#xff1a;它是Plotly.py的包装器&#xff0c;为复杂图表提供了简单的语法。受 Seaborn 和 ggplot2 的启发&#xff0c;它专门设计为具有简洁、…

【Meetup 明天见】OpenMLDB + MaxCompute:集成打通云上生态,高效构建 AI 应用

明天上午10&#xff1a;00-12:00&#xff0c;OpenMLDB 第八期 Meetup 将全程线上直播&#xff0c;欢迎关注。 活动背景 数据的爆发式增长为 AI 应用的繁荣提供了坚实的基础&#xff0c;而云服务作为新一代快速整合、高效计算的服务模式&#xff0c;为大数据的分析处理和 AI 智…

MySQL中SQL的执行流程

1 查询缓存 Server 如果在查询缓存中发现了这条 SQL 语句&#xff0c;就会直接将结果返回给客户端&#xff1b;如果没有&#xff0c;就进入到解析器阶段。需要说明的是&#xff0c;因为查询缓存往往效率不高&#xff0c;所以在 MySQL8.0 之后就抛弃了这个功能。 大多数情况查询…

Reconstructing Capsule Networks for Zero-shot Intent Classification

摘要 intent classification 意图分类。dialogue systems 对话系统已经存在的系统并没有能力去处理快速增长的意图。zero-shot intent classifcation&#xff1a; 零样本意图分类。 Nevertheless 不过。 incipient stage 初期阶段 今年来提出的IntentCapsNet two unaddresse…

基于java+springboot+mybatis+vue+mysql的智慧外贸平台

项目介绍 智慧外贸平台能够通过互联网得到广泛的、全面的宣传&#xff0c;让尽可能多的用户了解和熟知智慧外贸平台的便捷高效&#xff0c;不仅为群众提供了服务&#xff0c;而且也推广了自己&#xff0c;让更多的群众了解自己。对于智慧外贸而言&#xff0c;若拥有自己的系统…

播放量超1500w,谁的恰饭两次都在B站成顶流?

- 导语 女性消费一直以来都是消费市场的主力&#xff0c;“她经济”市场应运而生。有关数据显示&#xff0c;我国拥有近4亿消费者为女性&#xff0c;在如此庞大购买力的驱动下&#xff0c;截至目前统计我国共有492.9万家“她经济”相关企业&#xff0c;其中有3/4的是近5年内成…

【Spring】——16、使用@Autowired、@Qualifier、@Primary这三大注解自动装配组件?

&#x1f4eb;作者简介&#xff1a;zhz小白 公众号&#xff1a;小白的Java进阶之路 专业技能&#xff1a; 1、Java基础&#xff0c;并精通多线程的开发&#xff0c;熟悉JVM原理 2、熟悉Java基础&#xff0c;并精通多线程的开发&#xff0c;熟悉JVM原理&#xff0c;具备⼀定的线…