海马体启发的记忆模型

本秂侑毒 提交于 2021-01-10 08:28:53

记忆是人类智能的关键,我们因为记忆可以把过去和当下整合成为一体, 并且可以预测未来。 记忆不仅是一个信息承载的工具, 更是世界模型的本体, 它无时无刻不在刻画未来, 也被当下影响, 可以说, 没有记忆,就没有智能。

然而当下深度学习模型有关记忆的模型确是一大空缺, RNN模拟了神经网络通过循环传递导致的信息缓存效应(类似人与人之间互相喊话来留存信息),而LSTM利用输入门和遗忘门进一步加强了这个机制引入了更加可控的信息暂留机制。 基于NTM的模型把过去的信息和常识存储在类似硬盘的存储器里,网络只需要学习读和写。 而transformer类模型把这种根据当下的信息索引既往的信息的能力加强到极致,某种程度,它们绕开了基于问题,而是机械的把所有的信息一次并行的输入到模型里, 由于可以微分的强大注意力机制, 使得它们的能力被广为使用。

我们说生物系统与之不同的是, 记忆不是为了存储而是为了预测(The hippocampus as a predictive map - Kimberly L. Stachenfeld),这点尤其体现在模仿海马体的模型里。生物系统的灵活记忆机制纳入到系统里,就需要模拟大脑, 尤其是生物系统的海马体。

一种经典的理论认为海马体是感知信息进入生物长期记忆的门户,信息在这里被类似 “指针”一样的东西索引起来, 这个指针既可以是基于时间(情景记忆)也可以是基于空间(空间关系记忆-place cells), 这两种思想激发除了研究海马体记忆的两个流派, 一路强调空间,认知地图和关联记忆, 而另一路则强调时间,时间序列和情景记忆。

我们且看第一支空间认知地图。

这种理论发挥的极大成者是:

The Tolman-Eichenbaum Machine: Unifying Space and Relational Memory through Generalization in the Hippocampal Formation

这篇文章把海马在空间导航的作用直接推广到了认知推理模型, 文章试图将海马体中的grid cell, place cell,memory cell 应用到非空间的任务中。这种思路事实上很早由Grid Cells的发现人之一 Edvar Moser 提出, 认为大脑对空间的表示不仅是导航任务的承载,而且还是更广阔的思维推理的承载(cognitive space),这就好比我们经常用空间来隐喻各种事物,比如颜色空间, 味道空间。 而Tolman-Eichenbaum Machine则把空间本身也拓展到了不同的几何结构,如树结构。

首先,文章抓住了空间导航问题的解法的关键, 那就是空间结构和视觉物体感知的解耦,因为无论人如何更换自己所在的地方, 你的空间导航能力实际上是不编的, 你在伦敦某购物中心的导航能力可以直接迁移到上海。 本质上空间是不变的, 变化的是地面的视觉物体和感知。这个解耦的背后,是把导航分解成

X(感知信号), P(“地点“), M(记忆),G(空间结构)的符号体系。 X作为感觉信息的载体,是在不同小任务里被替换的, G是在一些导航任务里不变的结构体,它决定了每个action如何导致下一个状态, 而M是对不同P的记忆, 当再次经过某个地点的时候, 这个吸引子会召回以往的经历。 这个解耦的结果是, agent可以通过一次在环境里的地点遍历,一个O(N)过程, 就轻松掌握了在任意两个地点寻找”短路路径的能力“ 要知道这个能力 如果纯靠统计学习, 需要一个对所有可能路径的遍历, N^2以上的数据量, 这种神奇的过程叫做结构学习或remapping, 它对应一种快速的类比能力。

实现这种功能最有趣的其实是 Place cell,它是一种抽象的概念符号, 它代表一个完整的可提取的“Scene” (我们理解为若干感官组合成的符号图)和更抽象的结构的一个挂载关系,可以被随时学习和定义, 是深度学习所不具备的。

而节点和节点之间的抽象结构关系由“action” 介导, 我们管这类关系导致的状态变化叫路径积分, 它包含了回环不变性等特殊的约束。 事实上这种关系结构背后包含了对世界的因果结构一些基本的先验。而且。我们可以想到这样的结构不仅有空间,事实上这篇文章对不同的抽象结构, 如树结构, 环行结构都做了实验, 发现了可泛化的能力。 我们会发现具备通用性的结构在世界上可数的。 比如树可以代表家族树也可以代表学科结构, 树上的关系(action),比如父亲的父亲是爷爷,可以用之四海。

最后值得一提的是Memory Cell , 我们都知道海马是短期记忆形成的基础 。 这里的Memory cell是利用Tensor Product Relation建立的hopfield 网络,代表不同地点细胞间的连接权重。通过吸引子的动力学实现信息提取, 也就是一个迭代的微分方程,它就是associative memory的本体 。 看似是记忆,这个M实则用于预测和生成 ,到达一个新的位置的时候,它都用来唤醒跟那个位置或地标相近的记忆。

associative memory是对人类短期记忆的缩影, 而抽象结构关系则模拟了人的长期的知识 两种相互配合用来做预测,由于其使用的remapping机制和对共有结构的复用,使其在小样本学习具有很大潜力。

这篇文章的缺点是它的实验任务相对较为简单, 训练结构过于复杂也不标准,而事实上有一个和它非常神似的模型在深度学习的推理任务处于霸榜的位置, 这就是:

Self-Attentive Assocative Memory

这篇也是2020的新作, 并且在facebook Babi AI语言推理任务目前处理领先的位置, 同时它可以解决各类图上的搜索优化任务, 和一些简单的RL任务。 它所使用的模型类似TEM,但是训练流程更标准化。 文章的名字顾名思义,也是基于关联记忆, 而前面的self attentive 则更像是transformer系列的注意力 , 事实上这个作品也如同它们的混合。 首先, 它也用到了类似TEM的解耦思想, 把任务分解为objects和relation(类似于structure)两部分,然后这两部分均使用了associative memory的机制。 但是它没有使用难以训练的吸引子, 而是直接使用带有类似transformer的k,q, v形式的向量外积形式作为存储的起点,使得模型更加易于训练


这里的q,k, v分别为


从形式上它很想自注意力, 唯一的区别是那个乘号, 这使得它的力量根源, 这就是向量外积, 事实上这意味着它不是仅仅的点乘, 而是乘之后的结果把前后两个向量的每个bit之间的interaction都保留了下来。 这使得这个张量本身保留了两个向量的所有信息, 方便之后轻松的提取出来,这个tensor就在一定程度上具备了关联记忆的属性 。

而这个作品厉害的地方在于它用关联记忆不仅表达了感知object的局部和整体的关系, 也表达了object 和object之间的关联, 这个关联被一个称为SAM的Tensor Product保存下来 代表了所有物体(节点)和物体(节点)之间的关联。可以随着时间演进而不停的演化(记忆的本质),使得它是一个被动态构建的关系图, 比如如果输入是一段文字,那么随着阅读它会逐步丰富所有的人物关系图。 同时, 这里的object记忆和relation记忆是互相矫正的, 类似于从object记忆提取的信息可以帮助构建relation记忆。

这个模型的Relation Memory 实则可以理解为动态更新的超图,它的每一层图代表不同 的relation(比如人物之间的私人关系和工作关系)。

这个网络被用来做自然语言的,以及和图有关的推理任务都取得良好成绩,因为记忆和推理的关系是不言而喻的。 当你某一天看见个女人带着孩子, 转天看到她和一个男人一起, 你会立刻推出男人是孩子的父亲,就是一个例子。


而关于海马体的另一系列工作围绕振子,共振和时间序列。 这看起来和第一个系列的工作像是另一个空间 。 为什么会有这个系列的工作是因为除了认知地图外海马的另一个重要功能是情景记忆, 而情急记忆的形成经常伴随着脉冲神经元各种形式的震荡, 比如著名的theta进动。

一篇文章,把这种振动和海马体的单样本学习记忆能力(看一次就把信息烧到记忆系统里)联系起来。 且看这篇文章

The Dance of the Interneurons: How Inhibition Facilitates Fast Compressible and Reversible Learning in Hippocampus

这里说的是不同的抑制性神经元相互配合来实现这功能的,具体来说, 就是把海马体看做一个时间系列的发生机器, 它自己内部可以发生大量的自发的振动(theta sequence), 这些内部存储的“序列” 通过和外界输入信息的时间序列相互挂载,从而把我们当下的信息很快和自身存在的某些pattern建立联系(好比同一个旋律挂上不同的音符或歌词),从而不需要很大的功夫就可以把它记住,这或许也是为什么我们觉得这个世界上大部分东西都似曾相识。

那么这个序列模板是怎么建立的呢? 这就和刚刚说的的“振子”系统密不可分。 海马体内的脉冲神经元相当于频率稍有不同的振子,但是这些振动通常很快,比如周期几十毫秒, 这与我们日常生活的时间尺度相差甚远。 然而通过物理里的干涉现象,这些振动的叠加会产生一个极慢的时间尺度, 从而匹配我们日常生活的时间尺度。 同时这个过程也产生一系列依次发放的细胞基团, 这些基团就是所谓的海马“time cells" 。 当一个外界的输入信息流过, 这些基团也依次被激活, 这个激活轨迹就像雪地上的足印被学习记下来,并可以被读出, 被称为可以挂载当下的信息的记忆”印迹“细胞,这个挂载的过程,也是hebbian学习的过程。


虽然海马体的这两部分工作看起来是完全不相关的,但是它们背后其实反应了一种共同的认知本质, 它就是variable binding。 第一系列的工作里我们把任务里的物体和结构进行了解耦从而构建出对应某个特殊任务的模型。 而在第二个系列的任务里,海马体细胞的自发活动构成一个个和时间相关的占位符,在真实的任务中,具体的感知信息通过填入这些占位符而立刻获得了一种模型结构,也可以被马上关联起来记住。 它们都体现了生物大脑是一系列先验模型的总和,它们甚是先天具备的, 而在后天的经历和探索过程中,这些模板被激活,成为对现实世界进行实例化的“超类“ , 把真实世界的零碎信息裹挟成可以做generation和inference的runtime model, 从而实现了认知的基础- 这样的思想究竟可否用于当下的人工智能呢?

Variable Binding, 是智能可以泛化的一大核心秘密


铁哥正在启动这一系列的研究项目, 有兴趣深入这方面研究,推动脑启发AI发展的,请联系铁哥(微信TieXu0609), 各种灵活的合作方式存在。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!