Mastering Diverse Domains through World Models

domain 和task的定义

domain(域)

image.png

task(任务)

image.png
image.png
参考:
image.png

论文摘要

通用智能需要解决多个领域的任务。人们认为强化学习算法具有这种潜力,但它一直受到为新任务调整所需资源和知识的阻碍。在 DeepMind 的一项新研究中,研究人员提出了DreamerV3,一种基于世界模型的通用可扩展的算法 ,它在具有固定超参数的广泛领域中优于以前的方法。这些领域包括连续和离散动作、视觉和低维输入、2D 和 3D 世界、不同的数据量、奖励频率和奖励等级。研究人员观察到DreamV3还具有良好的扩展特性,能够通过更大的模型参数会带来更好的效果。同时,DreamerV3是第一个没有人类数据或主动教育的情况下从零开始能够在MineCraft中收集钻石的算法,这是人工智能领域的一个长期挑战。研究人员表示,这样的通用算法可以使强化学习的到广泛应用,并有望扩展到硬决策问题。
image.png
下图 1 中的结果发现,DreamerV3 在所有领域都实现了强大的性能,并在其中 4 个领域的表现优于所有以前的算法,同时在所有基准测试中使用了固定超参数。
突出贡献:
1. 在使用固定的超参数的情况下学习掌握不同的领域,避免了复杂的调参工作,使强化学习易于适用
2.可扩展性强,模型大小的增加可以提高性能和数据效率
3.在多个领域都优于其他现有的专业算法
4.DreamerV3是第一个没有人类数据或主动教育的情况下从零开始能够在MineCraft中收集钻石的算法,解决了人工智能领域的一个长期挑战。

研究背景

钻石是《我的世界》游戏中最受欢迎的物品之一,它是游戏中最稀有的物品之一,可被用来制作游戏中绝大多数最强的工具、武器以及盔甲。因为只有在最深的岩石层中才能找到钻石,所以产量很低。
对于熟悉游戏的玩家来说,从0开始在《我的世界》(Minecraft)中挖出一块钻石,可能只需要几分钟的时间,但对于AI来说,15分钟内可能都挖不出一块钻石。
为了发掘AI的潜力,2019年,CMU、微软、DeepMind和OpenAI联手在顶会NeurIPS上举办了一个名叫MineRL的竞赛,要求参赛队伍在4天时间内,训练出一个能在15分钟内挖出钻石的AI“矿工”。(neural information processing systems (NeurIPS) )

AI智能体 为何难以挖出矿石

合成钻石步骤复杂:既不能使用一种工具,也不能一挖到底
一般而言从0开始到挖出钻石,分为以下几个步骤:

image.png
这一整个流程,对于人而言是比较好理解的,但对于AI而言,需要面临大量的决策,面临的环境、任务都具有无限种可能。在提交参赛的660份作品中,没有一份能胜任这项任务,大部分AI能够完成一些基础、碎片式的工作,但它无法将这些零碎的工作完整地串联起来。
DreamerV3 的出现改变了这一现状,它收集的第一颗钻石,发生在 30M 环境步数 / 17 天游戏时间之内。DreamerV3 能在没有任何人工数据辅助的情况下收集钻石,或许效率还有很大改进空间,但 AI 智能体现在可以从头开始学习收集钻石这一事实本身,是一个重要的里程碑

相关工作(related work)

1.agent是什么?

中国科学界已经趋向于将其翻译为:智能体
Agent在某种程度上属于人工智能研究范畴,因此要想给Agent下一个确切的定义就如同给人工智能下一个确切的定义一样困难。在分布式人工智能和分布式计算领域争论了很多年,也没有一个统一的认识。
研究人员从不同的角度给出了Agent的定义,常见的主要有以下几种:
1) FIPA(Foundation for Intelligent Physical Agent),一个致力于Agent技术标准化的组织给Agent下的定义是:“Agent是驻留于环境中的实体,它可以解释从环境中获得的反映环境中所发生事件的数据,并执行对环境产生影响的行动。” 在这个定义中,Agent被看作是一种在环境中“生存”的实体,它既可以是硬件(如机器人),也可以是软件。
2) 著名Agent理论研究学者Wooldridge博士等在讨论Agent时,则提出“弱定义”和“强定义”二种定义方法:弱定义Agent是指具有自主性、社会性、反应性和能动性等基本特性的Agent;强定义Agent是指不仅具有弱定义中的基本特性,而且具有移动性、通信能力、理性或其它特性的Agent;
3) Franklin和Graesser则把Agent描述为“Agent是一个处于环境之中并且作为这个环境一部分的系统,它随时可以感测环境并且执行相应的动作,同时逐渐建立自己的活动规划以应付未来可能感测到的环境变化”;
4) 著名人工智能学者、美国斯坦福大学的Hayes-Roth认为“智能Agent能够持续执行三项功能:感知环境中的动态条件;执行动作影响环境条件;进行推理以解释感知信息、求解问题、产生推断和决定动作”;
5) Agent研究的先行者之一,美国的Macs则认为“自治或自主Agent是指那些宿主于复杂动态环境中,自治地感知环境信息,自主采取行动,并实现一系列预先设定的目标或任务的计算系统”。
参考:

强化学习流派

在许多强化学习问题中,智能体既需要一个对过去和现在状态的良好描述,还需要一个优秀的模型来预测未来的状态。作为真实世界的一个表征,世界模型采用无监督的方式进行训练,能取得较好的策略。
强化学习根据是否为环境建模分为两大类,model based和model free,这算是一个比较基本的划分。
MFRL又可以接着依据后续训练的侧重点分为value-based以及policy-based。当然,MBRL也可以按此继续划分。
相对来说,MFRL更直观,也更通用一点,MBRL常常是针对某一个问题的设定。毕竟,一种很显然的构造MBRL算法的方式就是在MFRL基础上,加上对该特定问题的环境的建模。比如说,在simulation中,可以采用神经网络来近似去模拟前向动力学(难点是Contact的求解)。而对于在真实环境中的机器人,就是可以用神经网络去模拟真是情况下的观测结果。这两种的对环境的建模是不一样的。
image.png
image.png

agent工作流程

image.png
首先Agent会先观察周围的环境,环境会在每一个时刻返回给Agent一个state状态,Agent会根据Policy来做出相应的动作action来影响环境。随着动作的输入,环境会反馈相应的reward奖励和下一步的state,于是形成这样一个循环(State Action State Reward),目的就是优化policy,使Agent在环境中获得尽可能多的奖励。
上面所述就是无模型的强化学习,这种经典的强化学习发现,在不断的训练和学习过程中,Agent需要不断通过action和reward与环境进行交互,但是在实际部署中,往往不一定会有这样的条件,在真实场景中的实用性也因此受到了限制。

image.png
基于模型的算法流程如上图所示,在训练Policy的同时,设计一个world model来辅助形成(State Action State Reward)元组。例如,先利用上图Model free的流程来训练world model,然后再用训练好的world model 加速对policy的优化。
与MFRL方法相比,MFRL中agent只能使用从与真实环境的交互中采样的数据(称为经验数据),MBRL使agent能够充分利用学习模型中的经验数据。
有了环境模型,agent就可以有想象力(Imagination)。它可以与模型进行交互,以便于利用模拟数据来生成更多的采样数据。理想情况下,如果模型足够准确,则可以在模型中学习良好的策略,在model中学习的过程就叫做dreamer。
https://blog.csdn.net/BAAIBeijing/article/details/107502641
https://blog.csdn.net/weixin_46235765/article/details/121739673

2. 世界模型(World Model)

参考:

Introduction

世界模型(World Model)首次由 Jürgen Schmidhuber 与 David Ha 在 neural information processing systems (NeurIPS) 2018中提出(NeurIPS是人工智能领顶级会议,与ICML并称为人工智能领域难度最大,水平最高,影响力最强的会议!),主要出发点是打造一个通用强化学习环境的生成神经网络模型,为强化学习技术的落地提供完美的模拟环境。这篇工作入选了当年 NeurIPS 的 oral paper。World Models
世界模型可以以无监督的方式快速训练,以学习环境的压缩空间和时间表示。通过使用世界模型中提取的特征作为智能体的输入,可以训练出一个非常紧凑和简单的策略以解决指定的任务。甚至可以使智能体完全沉浸在由它的世界模型生成的梦境中进行训练,并且将策略迁移回现实环境中。

世界模型的灵感来源于心理学上的“心理世界模型”(mental model of the world)。
在人对世界的理解过程中,我们往往是以有限的感官所能感知到的事物为基础,形成一个心理世界模型。我们所做的决定和行动都是基于这个模型。
image.png
为了处理流经我们日常生活的大量信息,大脑要学会抽象表示信息的空间和时间特性。我们能够观察一个场景并记住其中的抽象描述。证据还表明,我们在任何时刻所感知的,都是由我们的大脑根据我们的内部心理模型对未来的预测所决定的。
心理模型不仅仅是预测未来,而且会根据我们当前的运动行为来预测未来的感官数据。我们能够在这种预测模型上采取行动,并在我们面临危险时表现出快速的行为,而不需要有意识地规划一个行动路线。
image.png
以棒球为例。击球手只有毫秒级的时间来决定如何挥动球棒,时间要短于它大脑接受到相关视觉信号的时间。我们之所以有这种击打速度为100mph棒球的能力,就是因为我们可以本能地预测球将在何时到达哪里。对于专业选手来说,这一切都发生在潜意识。按照内在模型的预测肌肉可以反射性地在恰当时间和位置挥动球棒(Gerrit et al., 2013)。他们可以迅速地根据自己对未来的预测采取行动,而不需要有意识地推演未来可能的情景来制定运动计划(Hirshon, 2013)。

MBRL和MFRL区别在于agent是否对环境建模。在model based方法中,模型的选用面临一个矛盾:
一方面,为了更有效地学习环境,需要更强大、表达力更高的模型。另一方面,强化学习难以学习大型模型数以百万计的权重(奖励分配的搜索空间太大)。
PS:credit assignment问题是说,在许多RL任务中,reward都是很稀疏的,往往在一串序列结束后才给出,而在这之前agent已经采取了很多action,credit assignment 问题就是要解决究竟是哪一个action对最后的reward的影响最大,对final reward,哪些action起了有益的作用,哪些action起了负面作用。credit assignment问题使得传统的RL算法很难训练数百万个参数的大模型,因此在实际应用中,由于小网络在训练过程中更快,反而有比较好的策略。(通俗来讲就是,由于sparse reward,大型网络的参数很不好训练,所以在性能上输给了小型网络,但作者认为采用小型网络只是暂时的成功,未来要用的还是大型网络的
既然模型的规模主要受奖励分配的搜索空间限制,而更大、更复杂的模型主要优势在于学习环境,因此,可不可以将模型拆开呢?让一个较大的复杂模型专门负责学习环境,不涉及奖励分配问题,同时让一个较小的模型执行任务,这样较大的复杂模型就不会影响奖励分配的搜索空间,而较小模型可以通过“询问”较大模型,获取对环境的理解,从而更好地学习。

模型架构

World Model基于上述思路,组合使用两个模型绕开了上面提到的矛盾。
使用大型的世界模型,建模环境
使用小型的控制者模型,学习执行任务
image.png

World Model

从上述结构中可以看到,世界模型包括两部分,Vision Model(V),用于编码视觉信息,和Memory RNN(M),基于历史信息预测未来的编码。
视觉组件(V)作用是学会输入帧的抽象压缩表示,使用VAE(变分自动编码器)实现,将每幅图像都转成一个很小的隐变量向量Z
image.png
image.png
记忆组件(M)基于循环神经网络(LSTM)实现,预测模型V的隐变量z未来的输出,也就是预测下一帧图像的可能分布。由于现实环境的诸多复杂随机性,我们训练RNN的输出为一个概率密度函数p(z),而不是z的确定预测。
image.png
p(z)逼近于一个混合高斯分布,RNN被训练成在给定当前和过去信息的情况下,输出下一帧隐变量
Z t + 1 Z_{t+1} Zt+1的概率分布。特别地,RNN建模了 P ( Z t + 1 , a t , Z t , h t ) P(Z_{t+1},a_t,Z_t,h_t) P(Zt+1,at,Zt,h

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Mastering Delphi》是一本关于Delphi编程语言的经典书籍。Delphi是由Embarcadero公司开发的一种可视化、面向对象的编程语言。它是基于Object Pascal语言的,并且集成了许多强大的开发工具和技术。 这本书的主要目的是教授读者如何掌握Delphi编程,并在实践中构建高效、可靠的应用程序。它逐步介绍了Delphi的各个方面,从基本的语法和数据类型开始,到高级主题如多线程编程、数据库连接和用户界面设计等。它还涵盖了Delphi的应用程序框架和库,如VCL(可视化组件库)和FireMonkey(用于跨平台开发的界面库)。 这本书不仅提供了理论知识,也注重实践。每一章都有大量的示例代码和实战项目,可以帮助读者加深对Delphi的理解和运用。通过阅读和实践,读者可以学会如何使用Delphi创建窗体、处理事件、编写自定义组件、编译和调试代码,以及优化应用程序的性能等。 《Mastering Delphi》还介绍了一些企业级应用开发的最佳实践和技巧,如版本控制、错误处理、安全性和性能测试等。这些知识对于那些希望将Delphi应用于商业项目中的开发人员来说尤为重要。 总的来说,《Mastering Delphi》是一本全面而深入的Delphi编程指南。无论是初学者还是有经验的开发人员,都可以通过阅读这本书,掌握Delphi编程的核心原理和技术,并将其应用于实际项目中。它是一本值得推荐的书籍,可以帮助读者在Delphi开发领域中不断进步和成长。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值