QbitAI量子位

文章数:2238 被阅读:29482442

账号入驻

离人类更近一步!DeepMind最新Nature论文:AI会“回忆”,掌握调取记忆新姿势

2019-11-30
    阅读数:
十三 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

每年春节,只要在饭桌上,七大姑八大姨曾对你“殷切关怀”的情景便会历历在目。

对人类来说,记住一些东西并能回忆起来,是件司空见惯的事情。

而现在,连 AI 智能体都能做到这点了!

人类对过往的事情可以做出理智的判断,并基于这样的判断,对未来做出决策。

但对于智能体来说,就涉及到判断对过去行为的价值评估(评估信用分配)的问题。

但现有的评估信用分配的方法,无法解决与结果存在长时间间隔的任务。

简单来说,就是未来不可期

DeepMind便提出了一种方法,让智能体也够在它的“记忆”里来个时间旅行

近日还登上了Nature Communication。

这个方法其实是一种范式

它能让智能体使用特定的记忆,来信任过去的行为,并对未来做出正确的决策。

该方法也得到了网友们的认可。

很不错的一项工作,我认为向前迈了一大步。


时间旅行的概念很有意思,尤其是与我们自己以及环境提供的记忆相关时。

这项工作的影响或许不仅于此,正如DeepMind所述:

范式拓宽了AI研究的范畴,并提供了可能激发神经科学、心理学和行为经济学模型的机械行为解释。

如何让智能体“未来可期”?

为了做到这一点,首要的工作就是形式化任务结构

主要包括2种类型。

图1:任务设置和重构记忆智能体(RMA)

图1(a)就是两种类型的任务,每个任务都有3个阶段。

图1(a)

第一种任务(信息获取任务)中:

在P1阶段,智能体必须在没有即时奖励的情况下探索一个环境以获取信息;
在P2阶段,智能体在很长一段时间内从事一项不相关的干扰任务,并获得了许多附带的奖励;
在P3阶段,智能体必须利用P1中获取的信息获取远端奖励(distal reward)。

第二种任务中(因果任务)中:

在P1阶段,智能体必须采取行动触发 P1中仅具有长期因果关系的某个事件;
在P2阶段,同样是一个干扰任务;
在P3阶段,为了取得成功,智能体必须利用 P1活动引起的环境变化来获得成功。

由于提出的解决方案的一个关键组成部分涉及记忆编码和提取,研究人员将这三个阶段分别视作:

P1→动作和记忆提取;
P2→干扰物(distractor);
P3→经验(exploitation)。

在研究这种结构的完整任务之前,考虑一个更简单的任务。

DeepMind的研究人员把它称作“被动视觉匹配(Passive Visual Match )”,如图1(b)所示。

图1(b)

这是一个被动的过程,也就是说,智能体不用采取任何主动的措施去采集信息,就好像一个人在街上走路,不经意间就观察到了某些信息一样。

每个片段的开头都会面对一个走廊,走廊面朝着墙壁,墙上画着一个颜色随机的正方形。

在t=0的时候,就对应于上述任务结构中的P1阶段,只是不需要实现任何目标。

在t=125的时候,智能体被转移到另外一个空间,它在这里会采集30秒的苹果,这就相当于干扰,也就是任务结构中的P2阶段。

在t=526的时候,智能体再次被转移到别的空间,也就是对应于任务结构的P3阶段。这里的墙面有4个不同颜色的方形,若是智能体能够走到和第一个空间中颜色相同的方形面前,那么他就会获得远程奖励。

当然,远程奖励远远小于总干扰奖励。

接下来,为了解决上述的任务,研究人员使用了一个AI智能体,命名为RMA(Reconstructive Memory Agent)。如图1(c)所示。

图1(c)

这个模型的关键是结合了一个重构过程,压缩了有用的感官信息和记忆存储。

RMA本身没有为LTCA提供服务的专门功能,但是为TVT算法的操作提供了基础。

在进行被动视觉匹配训练时,所有的智能体都能成功完成苹果采集任务,但只有RMA学习到了如何在P3中选择P1中所见的方形颜色来获得远端奖励,如图1(d)所示。

图1(d)

在图1(e)中,可以看到RMA在t=256的时候,所产生的一个注意力权重向量wt,可以与P3的初始阶段相对应。

图1(e)

不仅如此,RMA除了能够顺利完成这项任务。在诸如CIFAR images30中,RMA也能够做出正确匹配的选择(如补充图所示)。

补充图

代码已开源

这项工作的代码已经在GitHub开源。

安装

TVT包的安装和训练可以使用如下代码运行:

tvt/run.sh

运行实验

启动:

source tvt_venv/bin/activate
python3 -m tvt.main

Important flags

tvt.main可以接受许多flag。

Information logging
logging_frequency:logging控制台和tensorboard的频率
logdir:用于tensorboard logging的目录

Agent configuration
with_memory:默认为True。判断智能体是否有外部内存。若为False,则智能体只有LSTM内存。
with_reconstruction:默认为True。
gamma:智能体贴现因子。
entropy_cost:熵损失权重。
image_cost_weight:图像重构损失权重。
read_strength_cost:用于调整内存访问。

更多开源代码信息,详情见文末GitHub链接。

传送门

Nature:
https://www.nature.com/articles/s41467-019-13073-w

GitHub:
https://github.com/deepmind/tvt



最新有关QbitAI的文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: TI培训

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved