DeepMind新论文:3D环境中教AI学人话,还要用形式语言指挥它们

本文主要是介绍DeepMind新论文:3D环境中教AI学人话,还要用形式语言指挥它们,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文来自AI新媒体量子位(QbitAI)

最近,DeepMind发了两篇论文,一篇是关于教AI学语言的Grounded Language Learning in a Simulated 3D World,另一篇,是关于用形式语言指挥AI智能体行动的Programmable Agents

我们先说说AI学语言这件事。

想想我们每天的生活,AI帮我们做了越来越多的决定,小到看哪些新闻,大到该买什么股票。甚至有时候,还会让AI直接替我们采取行动。

不过,这也带来了一个越来越紧迫的需求:用人话和AI沟通,指挥和引导它们。

也就是说,得让AI真的懂人话。

什么是真的懂呢?简单来说,就是让agent能把语言和它的行为、所处的世界关联起来。

DeepMind在论文摘要中用两个词来形容他们想让agent学语言学到什么程度:

grounded,也就是有基础、接地气,能把语言中的词和agent在环境中直接遇到的物品、经历的行为联系起来;

embodied,也就是能具体表达出来的。

但是,让AI学会接地气的语言很难。

DeepMind这篇论文描述了一个新方法:把agent放在一个虚拟3D环境中,如果它成功地正确执行了用人类语言写成的指令,就给奖励。

他们就是这样,用强化学习和无监督学习相结合,对agent进行训练,让它学习理解人类语言。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

上图是DeepMind论文中所举的例子:一开始agent处于位置1,收到“把绿色物体旁边的红色物体捡起来”的指令,于是它把两个“房间”逛了一遍,去查看房间里的物体及其相对位置,找到了需要捡起来的物体。

这种探索、选择的行为,并没有预先编程,完全是借助激励机制学会的。

这样的探索训练有数十万种变体,agent会遇到不同的房间布局、不同的物体摆放位置等等。

在训练过程中,agent几乎没有先验知识,只是通过将语言符号和它周围物理环境中出现的感知表征和行为序列关联起来,来学习语言。

也正因为agent理解语言不依赖先前的经验,如果研究人员把agent放到一个完全陌生的环境中,用它学过的语言向它发出新的指令,这个agent一样能完成。

DeepMind的研究人员还发现,随着语义知识的积累,agent学习新词的速度越来越快。

他们认为,这种泛化和自我扩展语义知识的能力,说明他们现在所用的方法有潜力让AI agent理解模糊的自然语言与复杂的实体世界之间的关联。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

关于具体的训练过程和原理,请移步论文:

Grounded Language Learning in a Simulated 3D World
https://arxiv.org/pdf/1706.06551.pdf
作者:Karl Moritz Hermann, Felix Hill, Simon Green, Fumin Wang, Ryan Faulkner, Hubert Soyer, David Szepesvari, Wojtek Czarnecki, Max Jaderberg, Denis Teplyashin, Marcus Wainwright, Chris Apps, Demis Hassabis, Phil Blunsom

上文提到的训练方法,是在一个3D虚拟环境中,让agent执行人类语言写成的指令。

在DeepMind另一批研究员同日发到Axriv的另一篇论文中,agent执行的是用简单的形式语言写成的指令,不过,这项研究让agent遇到从未见过的物体,也能灵活应对。

这篇论文的题目是:Programmable Agents。经验告诉我们,无论是新闻还是论文,标题越短事儿越大……当然,在AI研究领域,这个规则最近越来越受到怀疑。

我们先来看看这篇论文想让AI做什么。

简单来说,是让agent执行用形式语言表达的描述性程序。

在这项研究中,研究人员所设定的环境是一张大桌子,中间有一支带有6个关节的机械臂,周围有特定数量的积木块,出现在随机位置。

他们所做的,是让虚拟环境中的“机械臂”去够特定颜色、形状的积木,也就是把手(机械臂前端的白色部分),伸到目标积木块的附近。

而前面提到的“形式语言描述性程序”,是这样执行的:NEAR(HAND, AND(RED, CUBE)),表示把手伸到红色立方体附近。

形式语言中指定的,是目标的颜色和形状。在具体的程序中,桌面的大小、目标的数量也可能发生变化。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

在上图中,最左边一幅的“伸向蓝色球形”是训练环节,其他三幅展示了agent经过这种训练之后的泛化能力,包括目标性质的变化(左二:伸向红色积木)、环境中物体数量的变化(右二:伸向绿色球体,注意这里桌上多了好多积木)、以及新目标性质的出现(右一:伸向新的红色积木)。

DeepMind的这组研究人员称,他们训练的agent学会了根据这种语言的指令在所处环境中找到目标之后,在测试中可以对这种能力进行泛化,执行新的程序,找到在训练中从未提及的目标。他们的agent可以泛化到大范围的zero-shot语义任务。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

具体的训练过程和原理,还是请移步论文:

Programmable Agents
https://arxiv.org/pdf/1706.06383.pdf
Misha Denil, Sergio Gómez Colmenarejo, Serkan Cabi, David Saxton, Nando de Freitas

【完】

本文作者:李林
原文发布时间:2017-06-23

这篇关于DeepMind新论文:3D环境中教AI学人话,还要用形式语言指挥它们的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/weixin_33827590/article/details/89834832
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/652232

相关文章

SpringBoot实现多环境配置文件切换

《SpringBoot实现多环境配置文件切换》这篇文章主要为大家详细介绍了如何使用SpringBoot实现多环境配置文件切换功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 示例代码结构2. pom文件3. application文件4. application-dev文

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见

Spring AI 实现 STDIO和SSE MCP Server的过程详解

《SpringAI实现STDIO和SSEMCPServer的过程详解》STDIO方式是基于进程间通信,MCPClient和MCPServer运行在同一主机,主要用于本地集成、命令行工具等场景... 目录Spring AI 实现 STDIO和SSE MCP Server1.新建Spring Boot项目2.a

Gradle下如何搭建SpringCloud分布式环境

《Gradle下如何搭建SpringCloud分布式环境》:本文主要介绍Gradle下如何搭建SpringCloud分布式环境问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Gradle下搭建SpringCloud分布式环境1.idea配置好gradle2.创建一个空的gr

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe