当前位置: 首页 > news >正文

TWM论文阅读笔记

在这里插入图片描述

  • 这是ICLR2023的一篇world model论文,用transformer来做世界模型的sequence prediction。
  • 文章贡献是transformer-based world model(不同于以往的如transdreamer的world model,本文的transformer-based world model在inference 的时候可以丢掉)两个损失,一个采样策略。

WM

  • TWM用的仍然是经典的world model框架:
    • encoder-decoder用的是VAE,不过输入是四帧而不是一帧
    • dynamic model用过去 l l l 步的 z z z a a a r r r 和当前的 z z z a a a作为输入,用transformer预测 h t h_t ht,再用 h t h_t ht预测 r t r_t rt γ t \gamma_t γt z t + 1 z_{t+1} zt+1,如下:
      在这里插入图片描述
    • 上面的三个 p p p都是MLP, f f f是transformerXL, 3 l − 1 3l-1 3l1个token输入,预测一个token:
      在这里插入图片描述
    • z,r,gamma的MLP的输出分别是:a vector of independent categorical distributions, a normal distribution,
      and a Bernoulli distribution
  • 提的两个损失,一个是如下的encoder-decoder的损失,由三项组成,第一项是VAE的损失,第二项是对z的熵损失,第三项是与sequence model的一致损失:
    在这里插入图片描述
  • 第二个损失是用来train sequence model的,第一项其实跟上一个损失的第三项一样,但是上一个损失是train VAE的,这个损失是train sequence model的;第二项第三项不用说,就是正常的reward和discount的损失:
    在这里插入图片描述
  • 相比LSTM GRU之类模型,transformer的好处在于长序列建模,sequence model总是能看到过去 l l l步发生的确切的事情,而非仅能观察到一个压缩的状态 h t h_t ht

RL

  • 这里可以看到,dreamerv3等模型预测的是奖励 r t r_t rt 和terminate d t d_t dt,但是TWM预测的是discount factor γ \gamma γ,在这里就可以派上用场了,预测的 γ \gamma γ用来train RL模型(而其他的WM,RL模型的 γ \gamma γ用的是固定值)。那么训练的时候 γ \gamma γ怎么监督呢,文章定义的label是 γ t = 0 \gamma_t=0 γt=0 γ t = γ \gamma_t=\gamma γt=γ,即当terminate的时候 γ = 0 \gamma=0 γ=0而其他时候 γ \gamma γ是固定值,label是这样,而模型应该会灵活预测?不知道
  • 这里有一些新的损失,比如对策略的熵的损失,不能低于一个阈值:
    在这里插入图片描述
  • 这里还要关注的是policy model的输入,一般policy model的输入是 z t z_t zt h t h_t ht的concate,如dreamerv3和STORM,文章试了发现decoder的输出也可以(IRIS就这么干的), o t o_t ot也可以,本文用的是 z t z_t zt,比较轻量快速,只需要encoder而不需要sequence model。并且,训练的时候用的是sequence model预测的zt,而测试的时候则用的是encoder编码的zt加上frame stacking操作(这里有点疑问,维度?)
  • train的时候还是常规的三步走:用RL model采样,train world model,用world model train RL model。
  • training的时候有个sampling的stategy,如下, 是为了让模型更关注后面采样得到的sample,但vt的公式也没给,之说是incremented every time an entry is sampled:
    在这里插入图片描述

相关文章:

  • ChatTTS 推荐及使用说明
  • Spring框架的最新进展:2023年Spring Boot和Spring Cloud功能更新
  • 数据分析的Excel基础操作
  • 节能减排如何替电子行业巨头降低成本
  • [程序员] 表达的能力
  • 在公司的一些笔记
  • 【ARM 安全系列介绍 3.7 -- SM4 对称加密算】
  • Java中的图形用户界面开发
  • 【MySQL进阶之路 | 高级篇】SQL执行过程
  • 用Vite基于Vue3+ts+DataV+ECharts开发数据可视化大屏,即能快速开发又能保证屏幕适配
  • PCB行业迈入数字化新时代,智能工厂引领未来制造
  • 供应链投毒预警 | utilitytool系列Py包开展XenoRAT远控木马投毒
  • Android-Android Studio-FAQ
  • YOLOv8目标跟踪model.track的封装
  • Java学习 - 网络IP地址与子网划分 讲解
  • 【Leetcode】104. 二叉树的最大深度
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • 〔开发系列〕一次关于小程序开发的深度总结
  • 230. Kth Smallest Element in a BST
  • Bootstrap JS插件Alert源码分析
  • cookie和session
  • HTTP中的ETag在移动客户端的应用
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • MySQL QA
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • tensorflow学习笔记3——MNIST应用篇
  • uni-app项目数字滚动
  • Webpack 4x 之路 ( 四 )
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 从重复到重用
  • 给Prometheus造假数据的方法
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 力扣(LeetCode)965
  • 马上搞懂 GeoJSON
  • 排序算法学习笔记
  • 深度学习在携程攻略社区的应用
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • 【云吞铺子】性能抖动剖析(二)
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​必胜客礼品卡回收多少钱,回收平台哪家好
  • ‌‌雅诗兰黛、‌‌兰蔻等美妆大品牌的营销策略是什么?
  • #Java第九次作业--输入输出流和文件操作
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (¥1011)-(一千零一拾一元整)输出
  • (11)MATLAB PCA+SVM 人脸识别
  • (23)Linux的软硬连接
  • (二十三)Flask之高频面试点
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (四) 虚拟摄像头vivi体验
  • (四)linux文件内容查看
  • (四)模仿学习-完成后台管理页面查询
  • (算法设计与分析)第一章算法概述-习题