首页 > 其他分享 >用模仿学习来学习POMDP中的信念表示

用模仿学习来学习POMDP中的信念表示

时间:2023-01-15 14:11:30浏览次数:70  
标签:本文 POMDP 学习 信念 模块 模仿

一、研究对象

本文研究了POMDP的模仿学习问题,具体来说本文在POMDP中引入了一种的信念表示学习方法,用于生成对抗模仿学习,不同于以往单独训练信念模块和策略,我们对信念模块和策略进行联合学习,使用任务感知模仿损失来确保目标表示更加符合策略目标。
为了避免这种潜在的信念退化,我们引入了集中信息性的信念正则化技术,包括预测多步过去/未来观测和动作序列的辅助损失,提高了信念表示的鲁棒性。
本文研究了POMDP中使用生成对抗模仿学习的信念表示学习问题。在POMDP中由于仅仅只有当前观测,不足以选择最优的动作,因此将智能体的历史(过去的观测和动作)编码为信念状态,定义为当前潜在状态上的分布(表示代理的信念)。

二、方法

信念状态将对过去经验的记忆与对世界的不可观测方面的不确定性结合起来,如果我们能够学习到信念状态b,使得它形成状态上的滤波后验统计量,那么b可以作为信念状态的替代(或表示),并用于训练POMDP中的智能体。

利用循环神经网络和概率隐变量模型对POMDP中表征潜在状态分布的信念表示进行建模,并且表明这对于POMDP中的强化学习是有效的。

提供专家论证来指导学习代理模仿专家的动作,而不需要指定奖励函数,之前的研究提供了大量的对于完全可观测的MDP过程的模仿学习工作,其中包括了(GAIL,2016)的开创性工作,但是这些工作对于POMDP的工作还很少。
为了提高鲁棒性,我们引入了几种信念正则化技术,包含动态和动作序列的多步预测。

本文将体系结构分为两个模块:

  1. 策略模块,该模块学习基于信念b的分布;
  2. 信念模块,学习信念b的表示,从观测和行动的历史中。
  3. 策略模块使用模仿学习的方式,而信念模块使用任务无关的方式,或者也可以使用任务感知的方式训练。

三、系统架构

信念模块B是一个带有GRU单元的循环网络,将来自代理的轨迹(在线策略数据)和重放缓冲区的数据(离线策略数据)和专家演示数据编码为信念表示b。B通过从当前策略和判别器网络计算的损失进行更新。利用MLP进行前向、反向和动作正则化。卷积层(红色部分)将过去的动作和未来的动作编码为紧凑的表示,并将其输入到MLP中,策略\(\pi\)以信念为条件,通过模仿学习进行更新。判别器D是在代理和专家演示的元组上训练的二分类器。

四、总结

本文在部分可观测的连续控制运动任务上进行了评估,我们的信念模块模仿学习的方法显著优于几个基线方法,包括原始的GAIL算法和任务不可知的信念学习算法。本文证明了任务感知信念学习和信念正则化的有效性。
在本文中,我们研究了POMDP中的模仿学习,与MDP中的模仿学习和带有预定义奖励函数的POMDP中的学习相比,这方面的研究相对较少。我们介绍了一个由信念模块、以生成的信念为条件的策略和判别器网络组成的框架。
本文提出的框架的一个好处是,在未来的工作中,可以直接用其他学习信念表示的方法来代替本文中得到的方法。类似地,GAN和RL文献的最新进展可以指导POMDP中用于模仿学习的更好的判别器和策略网络的开发。
文章信息
原文:Learning Belief Representations for Imitation Learning in POMDPs
源码:https://github.com/tgangwani/BMIL
申明:版权归原文作者及出版单位所有,如有侵权请联系删除

标签:本文,POMDP,学习,信念,模块,模仿
From: https://www.cnblogs.com/mq-maqi/p/17053408.html

相关文章

  • 时间线段树(线段树分治)学习笔记
    时间线段树(线段树分治)学习笔记思想考虑如下问题:进行若干次操作,每次操作都在一个时间段内有效,也就是先被添加然后可能被撤销。同时还进行询问,对于每个时刻,输出所有操作的......
  • 我应该先学习哪种语言:HTML还是Python?
    在本文中,我们将学习首先学习哪种语言(HTML或Python)。PythonPython 是一种高级、面向对象、动态、解释和多用途编程语言,即多范式语言。其简单的语法和可读性使其非常适合用作......
  • 前端学习之html(一)
    HTML(超文本标记语言)是一种用于创建网页的标准标记语言。HTML不需要编译,可以直接由浏览器执行,它的解析依赖于浏览器的内核。它不是一种编程语言,而是一种标记语言。一个......
  • Java学习:ribbon的常用负载均衡算法分析
    1.Ribbon介绍因为微服务是目前互联网公司比较流行的架构,所以spring就提供了一个顶级框架-springcloud,来解决我们在开发微服务架构中遇到的各种各样的问题,今天的主角是sprin......
  • Java教程学习:揭秘什么是面向接口编程
    先用一个案例来给大家说明一下面向接口编程。案例:有一个电脑类(Computer),电脑除了有基本的开机关机功能外,还有连接任何外接设备的功能,比如能电脑能连接外置键盘(Keyboard),鼠标......
  • Ansible 学习笔记 - 定位主机和组的模式
    中英文对照表英文中文备注host主机group(主机)组pattern模式adhoc特别命令playbook剧本Ansible专有名词,一段复杂的编排inventory库存......
  • 机器学习入门
    ML方向众多,在此仅记录一些入门视频:偏理论推导:B站白板推导;白板系列笔记DataWhale:机器学习实践代码李宏毅《机器学习/深度学习》2021课程(国语版本);在线笔记书......
  • Ansible 学习笔记 - 定位主机和组的模式
    中英文对照表英文中文备注host主机group(主机)组pattern模式adhoc特别命令playbook剧本Ansible专有名词,一段复杂的编排inventory库......
  • 机器学习 吴恩达 第七章 笔记
    七、神经网络:表述(NeuralNetworks:Representation)7.1非线性假设 &emsp假设有一个监督学习的训练集如下所示:  如果我们用逻辑回归来解决问题,可能需要构造多个......
  • Python闭包和装饰器的学习
    之前看了不少的帖子,总是看了这篇帖子说的理解了,换篇帖子说的又不理解了,把人弄晕了,究其原因还是因为没有把底层原理理解。这两个概念总是放在一起说,两者之间肯定是有关系的......