AI版「盗梦空间」?谷歌大脑「世界模型」可实现在其梦境中对智能体进行训练

图源:pixabay


原文来源:arXiv

原文链接:https://arxiv.org/pdf/1803.10122.pdf

作者:David Ha、Jurgen Schmidhuber

「雷克世界」编译:嗯~是阿童木呀、KABUDA


我们探索构建通用强化学习环境中的生成式神经网络模型。我们的世界模型(world model)可以以一种无监督的方式进行快速训练,以学习环境的压缩时空表征。通过使用从世界模型中提取的特征作为智能体的输入,我们可以对一个非常简洁且简单的策略进行训练,以解决所需的任务。我们甚至可以在一个完全由智能体本身的世界模型所生成的梦幻梦境中对智能体进行训练,并将此策略迁移回实际环境中。


世界模型,来自Scott McCloud的认识漫画


人类根据他们使用有限的感官对世界的感知,开发出一个有关世界的心智模型。而我们所做的决策和行动都是基于这种内部模型的。系统动力学之父——Jay Wright Forrester将心智模型定义为:


我们脑海中所承载的有关周围世界的图像,只是一个模型。世界上没有一个人能够在其脑海中对全部的世界、政府或国家进行透彻的想象。他只是选择了概念,以及它们之间的关系,并用它们来表示真实的系统。(Forrester于1971年提出)


为了处理流经我们日常生活中的大量信息,我们的大脑学习对这些信息进行时空方面的抽象表征。我们能够观察一个场景,并记住有关它的一个抽象描述(Cheang和Tsao于2017年、Quiroga等人于2005年提出)。还有证据表明,我们在任何特定时刻所感知的事物,都是由我们的大脑基于内部模型对未来做出的预测所掌控的(Nortmann等人于2015年、Gerrit等人于2013年提出)。


理解我们大脑中的预测模型的一种方法是,它可能不是仅仅预测未来的一般情况,而是根据当前的运动动作预测未来的感官数据(Keller等人于2012年、Leinweber等人于2017年提出)。当我们面临危险时,我们能够本能地依据这个预测模型采取相应的行动,并执行快速的反射行为(Mobbs等人于2015年提出),而无需有意识地规划出行动计划。

 

我们所看到的事物是基于我们大脑对未来进行的预测(Kitaoka于2002年、Watanabe等人于2018年提出)


以棒球为例。一个击球手只有几毫秒的时间来决定该如何挥棒击球,让这要比视觉信号到达我们的大脑所需的时间短得多。他们之所以能够打出每小时115英里的快速球,是因为我们有能力本能地预测出球将何时何地走向何方。对于职业球员来说,这一切都是在潜意识中发生的。他们的肌肉在适当的时间和地点按照他们的内部模型的预测反射性地挥棒击球(Gerrit 等人于2013年提出)。他们可以迅速根据自身对未来的预测采取行动,而无需有意识地将可能的未来场景铺展开以进行规划(Hirshon于2013年提出)。


在许多强化学习(RL)(Kaelbling等人于1996年、Sutton和Barto于1998年、Wiering和van Otterlo于2012年提出)问题中,人工智能体也受益于具有良好的对过去和现在状态的表征,以及良好的对未来的预测模型(Werbos等人于1987年、Silver于2017年提出),最好是在通用计算机上实现的强大的预测模型,如循环神经网络(RNN)(Schmidhuber于1990、 1991年提出)。


大型RNN是具有高度表达性的模型,可以学习数据的丰富的时空表征。然而,在以往的研究中,许多无模型强化学习方法通常只使用参数很少的小型神经网络。强化学习算法常常具有信用分配问题(credit assignment problem)的局限性,这使得传统的强化学习算法难以学习大型模型的数百万个权重,因此,在实践中往往使用较小的网络,因为它们在训练期间能够更快地迭代形成一个良好的策略。


在这项研究中,我们构建了OpenAI Gym环境的概率生成模型。使用从实际游戏环境中收集的记录观测值对基于RNN的世界模型进行训练。对世界模型进行训练之后,我们可以使用它们来模拟完整的环境并训练对智能体进行训练


理想情况下,我们希望能够有效地对基于RNN的大型智能体进行训练。反向传播算法(Linnainmaa于1970年、Kelley于1960年、Werbos于1982年提出)可以用来对大型神经网络进行有效的训练。在这项研究中,我们通过将智能体分为一个大的世界模型和一个小的控制器模型,从而对大型神经网络进行训练以解决强化学习任务。首先,我们对大型神经网络进行训练,以无监督的方式学习智能体的世界模型,然后训练较小的控制器模型,学习使用这个世界模型执行任务。一个小型控制器让训练算法专注于小型搜索空间上的信用分配问题,同时不会以大的世界模型的容量和表现力为代价。通过智能体世界模型的视角对智能体进行训练,我们表明,它可以学习一个高度紧凑的策略以执行其任务。


虽然有大量关于基于模型的强化学习的研究,但本文并不是对该领域当前状态的评述(Arulkumaran等人于2017年、Schmidhuber于2015年提出)。相反,本文的目标是从1990—2015年关于基于RNN的世界模型和控制器组合的一系列论文中提炼若干个关键概念(Schmidhuber于1990年、1991年、1990年、2015年提出)。


我们证明了在模拟潜在空间梦境中训练智能体执行任务的可能性。这一方法拥有许多切实优点。例如,在运行计算密集型游戏引擎时,需要使用大量的计算资源来将游戏状态渲染到图像帧中,或计算与游戏不直接相关的物理量。相信我们都不情愿在现实环境中浪费训练智能体的周期,而是更乐意在模拟环境中尽可能多地训练智能体。此外,在现实世界中训练智能体的代价甚至更大,因此,渐进式地进行训练以模拟现实的世界模型可以更容易地尝试使用不同方法来训练我们的智能体。


此外,我们可以利用深度学习框架,在分布式环境中使用GPU,从而加速世界模型的模拟。将世界模型作为一个完全可微的循环计算图的好处在于,我们可以直接在梦境中使用反向传播算法对其策略进行微调,从而实现目标函数最大化(Schmidhuber于上世纪90年代提出)。


对视觉模型V使用VAE并将其作为独立模型进行训练也存在局限性,因为它可能会对与任务无关的部分观测进行编码。毕竟,根据定义来看,无监督学习不知道哪些是对当前任务有用的。例如,在Doom环境中,它在侧墙上复制了不重要的详细砖瓦图案,但在赛车环境中,它没有在道路上复制与任务相关的砖瓦图案。通过与预测奖励的M模型一起训练,VAE可以学习专注于图像中与任务相关的领域,但这里需要权衡的一点是,如果不进行重复训练,那么我们或许就不能有效地利用VAE再次执行新任务。


学习任务的相关特性也与神经科学有所关联。当受到奖励时,基本感觉神经元便会从抑制中释放出来,这意味着它们通常仅学习与任务相关的特征,而非任何特征,至少自在成年期是这样的(Pi等人于2013年提出)。


今后的工作可能会探讨如何使用无监督分割层(Byravan等人于2017年提出)来提取更好的特征表征,这与所学习的VAE表征相比具有更好的实用性和可解释性。


另一个令人关切的问题是,我们世界模型的容量有限。尽管现代存储设备可以存储使用迭代训练过程生成的大量历史数据,但我们基于长短期记忆网络(LSTM)(Hochreiter和Schmidhuber于1997年提出;Gers等人于2000年提出)的世界模型可能无法在其权重连接中存储所有记录的信息。虽然人类的大脑可以保存几十年甚至几个世纪的记忆(Bartol等人于2015年提出),但我们通过反向传播训练的神经网络容量有限,并受灾难性遗忘等问题的影响(Ratcliver 于1990年,French于1994年,Kirkpatrick等人于2016年提出)。如果我们希望智能体学会探索更复杂的世界,那么今后可以探索用更高容量的模型取代小型MDNRNN网络(Shazeer等人于2017年,Ha等人于2016年,Suarez等人于2017年,van den Oord等人于2016年,Vaswani等人于2017年提出),或加入外部记忆模块(Gemici等人于2017年提出)。


基于RNN的控制器与环境交互的古代绘图(Schmidhuber于1990年提出)


就像早期基于RNN的C-M系统一样(Schmidhuber等人于上世纪90年代提出),我们模拟了可能的未来时间步长,而没有从人类的层次化规划或抽象推理中获益,这往往忽略了不相关的时空细节。然而,更常见的“学会思考”(Schidhuber于2015年提出)方法并不局限于这种相当幼稚的方法。相反,它允许循环C学习循环M的子例程,并重用它们以任意的计算方式解决问题,例如,通过层次化规划或利用类似M的程序权重矩阵的其他部分。近期,One Big Net(Schmidhuber,2018年)扩展了C-M方法,它将C和M合并成一个网络,并使用类似Power Play的行为回放(Schmidhuber于2013,Srivastava等人于2012年提出)(其中教师网络(teacher net)的行为被压缩成学生网络(student net)(Schmidhuber于1992年提出)),以避免在学习新网络时忘记旧的预测和控制技能。这些具有更通用方法的实验在未来有待进一步研究。


未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。


未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

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

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

相关文章

Linux文件空洞与稀疏文件

From:http://www.topjishu.com/8277.html From:http://blog.csdn.net/clamercoder/article/details/38361815 Linux_File_Hole_And_Sparse_Files 参考unix环境高级编程第三版 54页和90页!!! ( 文件I/O章节 lseek…

Spring Data JPA 从入门到精通~@Modifying修改查询

学习思路一样,我们先看源码: public interface Modifying { //如果配置了一级缓存,这个时候用clearAutomaticallytrue,就会刷新hibernate的一级缓存了, 不然你在同一接口中,更新一个对象,接着查询这个对象…

java volatile修饰引用_关于volatile修饰引用类型的疑惑

volatile修饰引用类型能否保证可见性似乎一直没有一个定论,有的书中说仅能保证引用本身的可见性,下面用两段代码来验证:流程基本为一个线程死循环读取某个引用类型的某个变量的值,另一个线程修改这个值,观察线程是否结…

gridview 简单的分页

allowpaging 设为 true 然后 后台代码为: protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex e.NewPageIndex; Get_Gridview(); } Get_Gridview();是绑定gridview 的方法 转载于:https…

西人马聂泳忠:打造机器神经系统,成为中国的特斯拉

作者:于绍洋 来源:投资家网经常穿梭于几个城市,一手拉着行李箱,一手忙于回复工作上的事务,这可能已经成为西人马FATRI(下称,西人马)创始人聂泳忠博士的日常状态。他给人的第一印象…

Linux dd 命令

From:http://www.cnblogs.com/jikexianfeng/p/6103500.html Linux/UNIX: 使用 dd 命令创建 1GB 大小的二进制:http://www.linuxidc.com/Linux/2014-12/110147.htm 菜鸟教程 Linux dd命令:http://www.runoob.com/linux/linux-comm-dd.html …

Ubuntu 20.04 (Focal Fossa) 上安装RabbitMQ和Erlang,并配置管理员,并且修改数据目录

本脚本适用于在Ubuntu 20.04 (Focal Fossa) 上在线快速安装RabbitMQ和Erlang。 快速安装脚本: #!/bin/shsudo apt-get install curl gnupg apt-transport-https -y## Team RabbitMQs main signing key curl -1sLf "https://keys.openpgp.org/vks/v1/by-finge…

javascript indexOf函数

使用方法:strObj.indexOf(str,startIndex[可选]) 程序代码 其中strObj是必选项。String 对象或文字。 str是必选项。要在 String 对象中查找的子字符串。 startIndex是可选项。该整数值指出在 String 对象内开始查找的位置,从0开始。如果省略&#xff0c…

Spring Data JPA 从入门到精通~@Procedure 储存过程的查询方法

我们通过 Procedure 来介绍一下,JPA 对储存过程的支持。 (1)Procedure 源码如下: public interface Procedure {// 数据库里面储存过程的名称String value() default "";// 数据库里面储存过程的名称String procedure…

Nature 首度揭示大脑传递信息的真正逻辑

我们对于大脑的理解还停留在极为初步的阶段(图片来源:Pixabay)来源:生物360摘要:我们过去对于大脑处理信息的理解,其实是非常片面和不准确的。今日,一项重量级的研究刊登在了最新一期的《自然》…

Linux 用户 和 用户组 管理 (添加、删除、修改)及说明

From:http://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html 鸟哥官网 Linux 帐号管理与 ACL 权限设定:http://linux.vbird.org/linux_basic/0410accountmanager.php 鸟哥官网(简体中文):http://cn.linux.…

java+long是什么_Java中long的模运算符是什么? - java

如何在Java中找到两个长数值的模(%)?我的代码说“整数太大”,后面跟我要修改的数字。我尝试将其强制转换很长时间,但没有成功。我是否必须将其转换为BigInteger并使用剩下的方法?谢谢。参考方案%运算符确实可以工作很长…

发现一个奇怪的问题: 不能把文件取名为 con

在 XP 系统下不能建立叫 con 的文件! 不知其他朋友也是这样? 转载于:https://www.cnblogs.com/del/archive/2009/04/26/1444175.html

IBM Watson将成为失败的投资?分析师眼里, IBM AI过度乐观, 夸大宣传

来源:36Kr 作者:石筱玉IBM Watson是在医疗领域最早布局的AI之一。在36Kr此前的盘点中,我们也知道Watson希望参与患者诊疗中的每一个步骤:导医用智能音箱、Watson诊断工具、住院看护辅助,还有病患心理疏导……Watson已…

Spring Data JPA 从入门到精通~@NamedQueries预定义查询

这种是预定义查询的一种形式 (1)在 Entity 下增加 NamedQuery 定义。 public interface NamedQuery {//query的名称,规则:实体.方法名;String name();//具体的JPQL查询语法String query(); } 需要注意,这…

jsp+servlet+java 实现统计在线人数

首先&#xff1a;jsp ----------------------------index.jsp 我要现在index.jsp 写一段 JavaScript <html> <head> <script type"text/javascript"> window.onbeforeunload function() //author: meizz { var n window.event.screenX - …

linux 文件系统详解

From&#xff1a;http://soysauce93.blog.51cto.com/7589461/1715655 From&#xff1a;http://blog.csdn.net/new0801/article/details/63687127 Linux 的虚拟文件系统(强烈推荐)&#xff1a;http://blog.csdn.net/heikefangxian23/article/details/51579971 鸟哥 Linux 磁盘…

国际互联网协会(ISOC)提出未来互联网十项原则

来源&#xff1a;腾讯研究院此前&#xff0c;国际互联网协会&#xff08;Internet Society&#xff0c;简称ISOC&#xff09;发布了题为《通往数字化未来之路&#xff08;Paths to Our Digital Future&#xff09;》的报告&#xff0c;就数字化未来的道路进行了探索。ISOC认为&…

不错的html学习网址。

http://htmlplayground.com/ 转载于:https://www.cnblogs.com/techfootsprints/archive/2009/04/28/1445774.html

Spring Data JPA 从入门到精通~javax.persistence概况介绍

虽然 Spring Data JPA 已经对数据的操作封装的很好了&#xff0c;约定大于配置的思想&#xff0c;帮我们默认了很多东西。JPA&#xff08;Java 持久性 API&#xff09;是存储业务实体关联的实体的来源&#xff0c;它显示了如何定义一个面向普通 Java 对象&#xff08;POJO&…