谷歌大脑的“世界模型”简述与启发

640?wx_fmt=jpeg

来源:David9的个人博客

摘要:我们的视觉看到什么,部分取决于大脑预测未来会看到什么。


我们的视觉看到什么,部分取决于大脑预测未来会看到什么,例如下图中,如果你预计要看到突出的球体,那也许你就会看到,如果让机器也具有了这样的能力,会带来什么了?


640?wx_fmt=jpeg


18年谷歌大脑提出“世界模型”(World Models)可以在复杂的环境中通过自我学习产生相应的策略,例如玩赛车游戏。


640?wx_fmt=png


下面是世界模型的整体架构:


640?wx_fmt=png


整个模型分为3个组件:视觉组件(V),记忆组件(M),控制组件(C)。视觉组件V用来压缩图片信息到一个隐变量z上(其实只是一个VAE编码解码器):


640?wx_fmt=png


记忆组件M的输入是一帧帧的游戏图片(论文中的一帧图像似乎叫一个rollout),输出是预测下一帧图像的可能分布,其实就是比一般LSTM更高级一些的MDN-RNN:


640?wx_fmt=png


最后控制组件C的目标,就是把前面视觉组件V和记忆组件M的输出一起作为输入,并输出这个时刻智能体agent应该做出的动作(action)。


在所谓的“世界模型”,其中的组件模型几乎没有是谷歌大脑自己创新研制的。但世界模型会很大提高强化学习训练稳定性和成绩 从而使其与其他强化学习相比有一些明显优势,如下表所示;


640?wx_fmt=png


世界模型有如下的3个特点


1. 模型拼接得足够巧妙,这个巧妙的拼接模型做到所谓的世界想象能力,就是模型在学习时,自身对环境假想一个模拟的环境,甚至可以在没有环境训练的情况下,自己想象一个环境去训练。其实就是我们人类镜像神经元的功能。


640?wx_fmt=png



2. 抓住了一些“强视觉”游戏的“痛点”。记忆组件M中的RNN是生成序列的能手,所以根据之前游戏图像再“想象”一些图像帧应该不成问题(RNN生成一些隐变量z,再根据隐变量z,由视觉组件VAE的decode生成的图像帧即可)。所以对于“强视觉”的游戏,把RNN的记忆能力用在视觉预测和控制上是个好主意 。


640?wx_fmt=jpeg



3 不同于我们常见的“不可生”智能算法,例如遗传算法和进化策略只是强调了基因的“变异”与在解空间中进行搜索,神经网络只是固定网络结构;而生物界的基因却可以指导蛋白质构成并且“生长”。如果基因可以构造自身个体,外部环境和个体情况也可以反过来影响基因,而我们的模型都太固定呆板了,模型结构不能随内部隐变量改进,当然最佳的设计形式也许谁也不知道。而世界模型做到了让在内部”幻想“的环境中产生的策略转移到外部世界中。


640?wx_fmt=png


最后简单看一下世界模型的训练过程:


640?wx_fmt=png


world models代码基于chainer计算框架,步骤如下:


1. 准备数据集,随机玩游戏生成训练帧(rollouts意思应该就是多少帧):


  1. python random_rollouts.py --game CarRacing-v0 --num_rollouts 10000


2. 训练视觉组件V,即前面提到的VAE:


  1. python vision.py --game CarRacing-v0 --z_dim 32 --epoch 1



3. 训练记忆组件M,即前面提到的RNN:


  1. python model.py --game CarRacing-v0 --z_dim 32 --hidden_dim 256 --mixtures 5 --epoch 20


4. 训练控制组件C,即前面提到的CMA-ES算法(其实就是支持更复杂输入和更新的ES):


  1. python controller.py --game CarRacing-v0 --lambda_ 64 --mu 0.25 --trials 16 --target_cumulative_reward 900 --z_dim 32 --hidden_dim 256 --mixtures 5 --temperature 1.0 --weights_type 1 [--cluster_mode]


5. 测试训练结果:


  1. python test.py --game CarRacing-v0 --z_dim 32 --hidden_dim 256 --mixtures 5 --temperature 1.0 --weights_type 1 --rollouts 100 [--record]


参考文献

https://arxiv.org/pdf/1803.10122.pdf

https://github.com/AdeelMufti/WorldModels


本文经作者授权,转载自David9的个人博客,著作权属于“David 9的博客”原创,如需转载,请联系微信: david9ml。原文地址: http://nooverfit.com/wp/谷歌大脑的世界模型world-models与基因学的一些思考/#comment-3444


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


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


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


640?wx_fmt=jpeg

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

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

相关文章

跳台阶算法简单分析

题目为: 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 分析: N级(N-1)级的情况(N-2)级的情况。 因为两种情况都可以选择&am…

我为什么在这里写博客

做了几年的程序员,学了一些技能,电脑里的资料也越来越多,一直没有去梳理。每次看别人的博客,特别是写得好的博客,心里就痒痒的。也希望把自己的东西整理出来,一来可以给自己所学一个交代,二来可…

TensorFlow的基本介绍及Hello,world

转载自: http://www.tensorfly.cn/tfdoc/get_started/basic_usage.html https://blog.csdn.net/sarsscofy/article/details/78541836 ####基本使用: 使用(graph)来表示计算任务在被称之为 会话 (Session) 的上下文 (context) 中执行图.使用 tensor 表示…

中美首份8000字长文解析全球热点脑机接口(重磅干货)

来源:硅谷密探摘要:“我们所想象的一切,都会变为现实。”如果说当今什么技术最接近科幻,那么一定是脑机接口。脑机接口的研究已经实现了意识打字(1分钟之内平均输入39个字母),还实现了心灵控制&…

C# WinForm程序退出的方法

1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出; 2.Application.Exit(); 强制所有消息中止,退出所有的窗体…

深度学习-KNN,K近邻算法简介

参考:https://blog.csdn.net/xundh/article/details/73611249 包括算法解释、代码和数据集。 还有:https://blog.csdn.net/dugudaibo/article/details/78304540

一文读懂2019年IT及大数据行业趋势

来源:智慧网点建设运营2018即将过去,今年区块链、5G、芯片、量子计算成为大家不断提及的技术重点,明年大数据科学还会有哪些发展方向,IT行业还有哪些发展趋势?众多机构针对未来产业发展做出预测,小编整理如…

mysql truncate table命令使用总结

truncate使用注意由于上过truncate table a_table命令一次当,将教训记录下来,以示警戒!mysql truncate table a_table命令受影响结果说明,亲身体验 命令truncate table a_table;会将执行表中的数据删除,有增长ID值的话…

openMP的简单使用

安装,参考:https://blog.csdn.net/augusdi/article/details/8808226 如图所示,右键工程名->属性->C/C>语言,找到OpenMP支持,更改设置即可。 代码编程,参考:https://blog.csdn.net/zh…

车联网系统会不会只是智能手机系统的翻版?

来源:智能相对论摘要:对于当前大热的车联网技术,各家车企都像“王婆卖瓜”一样夸赞自己,在一片叫好声中,我们需要厘清一个问题,车联网系统到底是不是“另一个”智能手机系统?在BAT集体入局车联网…

mybatis大于小于的转义

今天在写代码时&#xff0c;由于业务&#xff0c;须要在mybatis中&#xff0c;使用到大于号&#xff0c;小于号&#xff0c;所以就在SQL中直接使用了。SELECT * FROM test WHERE 1 1 AND start_date < CURRENT_DATE AND end_date > CURRENT_DATE但是&#xff0c;在运行时…

清华、中科大实现了量子版本的GAN,平均保真度98.8%

作者&#xff1a;Ling Hu等编译&#xff1a;机器之心 刘晓坤、张倩摘要&#xff1a;清华和中科大的研究者在 Science Advances 上发表论文&#xff0c;他们在超导量子电路上实现了第一个生成对抗学习的原理验证&#xff0c;即量子版本的 GAN。实验中生成的单个 qubit 的平均保真…

RMQ求区间最值 nlog(n)

转载于&#xff1a;http://blog.csdn.net/xuzengqiang/article/details/7350465 RMQ算法全称为(Range Minimum/Maximum Query)意思是给你一个长度为n的数组A,求出给定区间的最值的下标。当然我们可以采用枚举&#xff0c;但是我们也可以使用线段树来优化&#xff0c;复杂度为(n…

一个令人心醉的谜题——DNA和RNA是如何演化出美妙的螺旋结构?

来源&#xff1a;原理丨公众号在现代科学中&#xff0c;一直存在一个匪夷所思到令无数科学家心醉的谜题——DNA和RNA究竟是如何演化出这种美妙的螺旋结构的&#xff1f;最近&#xff0c;佐治亚理工学院的一组研究人员在超分子聚合物的形成过程中&#xff0c;发现了一种全然自发…

Jacobi迭代法

我们在求解矩阵时&#xff0c;有很多种方法&#xff0c;其中当矩阵是大型稀疏矩阵&#xff08;矩阵中有大部分元素都为0&#xff09;时&#xff0c;我们可以用迭代法求解。 其中Jacobi迭代法就是很简单易懂的一种。 我编写的C代码如下&#xff0c;其中文件matrix.txt内容如下…

AI人才「用工荒」如何解决?看看这几家顶级公司的应对策略

来源&#xff1a; Forbes编译&#xff1a; 机器之心 太浪在未来几年&#xff0c;人工智能可能会成为众多行业的战略选择&#xff0c;但有一个重大的挑战&#xff1a;招人。如何避免招募 AI 人才的误区&#xff1f;这里有来自几家顶级公司的建议。招到 AI 人才后&#xff0c;可能…

单应矩阵的解释

参考博客&#xff1a; https://www.cnblogs.com/wangguchangqing/p/8287585.html https://blog.csdn.net/jay463261929/article/details/53611363

学习网址积累

ecshop120.com ecshop的学习开发网址 68ecshop 转载于:https://www.cnblogs.com/ymj0906/p/4088749.html

AI芯片混战,谁能挑战英伟达?

来源&#xff1a;forbes我准备写一篇预测未来一年的AI芯片&#xff0c;以及英伟达如何应对挑战的文章&#xff0c;但我很快意识到&#xff0c;文章要比我预期的要长得多。由于有很多内容要介绍&#xff0c;我决定把文章分为3个部分。第1部分&#xff1a;简介&#xff0c;以及分…

webServices 应该支持Get和Post调用,在web.config应该增加以下代码

1 #region Tip:使用说明2 //webServices 应该支持Get和Post调用&#xff0c;在web.config应该增加以下代码3 //<webServices>4 // <protocols>5 // <add name"HttpGet"/>6 // <add nam…