基于神经符号处理的智能问答系统也是由语言处理模块、短期记忆、长期记

简介: 基于神经符号处理的智能问答系统也是由语言处理模块、短期记忆、长期记忆、处理模块组成,如图 3 所示。

克莱夫(Clive)发现进来的是妻子,脸上露出无限的喜悦。

坐下来后,黛博拉用温柔的眼光看着克莱夫说「其实我今天早上也来过」,克莱夫摇摇头反驳道「不可能,这是我今天第一次见到你。

克莱夫·韦尔林(Clive Wearing)是英国的一位音乐家 。

幸运的是他活了下来,不幸的是疾病给他留下了失忆症(amnesia)。

更严重的是他对当前发生的事情不能记忆到脑子里,几分钟后就会完全忘记。

他的行动没有任何问题,语言和思维似乎也正常,可以饮食、行走、说话、写字,甚至弹琴、唱歌,看上去和正常人一样。

他感受到的世界和大家是一样的,但转过头去,刚发生的一切就会从脑海中消失,他所拥有的只是「瞬间到瞬间的意识」,没有过去可以联系,也没有未来可以展望。

克莱夫·韦尔林用自己不幸的经历为我们揭示了长期记忆对我们的智能,乃至我们的人生的重要意义。

记忆与智能人脑的记忆模型如图 1 所示,由处理器、寄存器、短期记忆和长期记忆组成。

如果人的注意力关注这些内容,就会将它们转移到短期记忆,在短期记忆停留 30 秒左右。

人们需要这些内容的时候,就从长期记忆中进行检索,并将它们转移到短期记忆,进行处理[1]。

图 1 人脑记忆模型长期记忆的内容既有信息,也有知识。

简单地说,信息表示的是世界的事实,知识表示的是人们对世界的理解,两者之间并不一定有明确的界线。

人在长期记忆里存储信息和知识时,新的内容和已有的内容联系到一起,规模不断增大,这就是长期记忆的特点。

大脑中,负责向长期记忆读写的是边缘系统中的海马体(hippocampus)。

我们可以认为,现在的人工智能系统是没有长期记忆的。

无论是阿尔法狗,还是自动驾驶汽车,都是重复使用已经学习好的模型或者已经被人工定义好的模型,不具备不断获取信息和知识,并把新的信息与知识加入到系统中的机制。

假设人工智能系统也有意识的话,那么其所感受到的世界和克莱夫·韦尔林是一样的,那就是,只有瞬间到瞬间的意识。

如果一个系统与外部环境(包括生物、非生物、空间、时间)互动过程中,其内部状态随着环境的变化而变化,那么这个系统就拥有「意识」[2]。

按照这个定义,温度计、花儿是有意识的系统,人工智能系统也是有意识的。

智能问答系统未来人工智能技术不断发展,预计将会出现智能性的问答系统,系统包括语言处理模块、短期记忆、长期记忆、处理模块(如图 2 所示)。

有大量的结构化的、非结构化的信息和知识作为输入,也有大量的问答语对作为训练数据。

系统能够自动获取信息与知识,掌握语言理解与生成能力,将信息和知识处理存储到长期记忆,理解用户用自然语言提的问题,利用记忆的信息与知识给出正确的。

图 2 智能问答系统在某种意义上,现在已经存在这种系统的原型,例如,互联网搜索引擎就可以看作是其简化版。

知识问答的本质问题是:(1)语义分析,即将输入的自然语言的表示映射到内部的语义表示;(2)知识表示,即将输入的信息知识转换为内部的语义表示。

最大的挑战来自语言的多义性和多样性,以及知识的模糊性。

语言具有多义性(ambiguity),也就是说一个表达可以表示不同的意思。

下面是语言学家查尔斯·菲尔默(Charles Fillmore)给出的例子。

英语单词 climb,其基本语义是四肢用力沿着一条轨迹向上移动,表示「向上爬」的意思。

所以如果用 climb 造句,大家一般会给出这样的句子「The boy climbed the tree」(男孩爬上了树)。

但是 climb 一词的语义会向不同方向扩展,可以说「Prices are climbing day by day」(物价每日飙升),这里 climb 就没有了四肢用力移动的意思。

也可以说「He climbed out of a sleeping bag」(他从睡袋中爬出),这里 climb 就没有了向上移动的意思。

语言的词汇都具有如下性质:有一个核心的语义,对应一些典型说法,可以由一些特征表示。

但部分特征可以缺失,形成新的语义,产生新的说法。

语言中,除了词汇的多义性,还有句法的多义性。

人们的知识,特别是常识,具有模糊性(fuzziness)。

下面是人工智能研究的先驱者特里·维诺格拉特(Terry Winograd)给出的例子。

英文中,bachelor 是指未婚成年男性,即单身的意思。

看似是一个明确的概念,但是当我们判断现实中的具体情况时,就会发现我们对这个概念的认识是模糊的,比如,未婚父亲是否是 bachelor?

神经符号处理近年,深度学习给自然语言处理带来了巨大变化,使机器翻译、对话等任务的性能有了大幅度的提升,成为领域的核心技术。

但是另一方面,深度学习用于自然语言处理的局限也显现出来。

面向未来,深度学习(神经处理)与传统符号处理的结合应该成为一个重要发展方向,神经符号处理(neural symbolic processing)的新范式被越来越多的人所接受,其研究也取得初步进展。

图 3 基于神经符号处理的智能问答系统深度学习用实数向量来表示语言,包括单词、句子、文章,向量表示又称为神经表示(neural representation)。

神经表示的优点在于其稳健性,可以更好地应对语言的多义性和多样性,以及语言数据中的噪音。

另一方面,传统的符号表示(symbolic representation)的优点在于其可读性和可操作性。

语言是基于符号的,计算机擅长的是符号处理,用符号表示语言处理的结果是自然的选择。

神经符号处理旨在同时使用神经表示与符号表示来描述语言的语义,发挥两者的优势,更好地进行自然语言处理。

基于神经符号处理的智能问答系统也是由语言处理模块、短期记忆、长期记忆、处理模块组成,如图 3 所示。

编码器将自然语言问题转换为内部的语义表示,存放在短期记忆中,包括符号表示和神经表示。

处理模块通过问题的语义表示,从长期记忆中找出相关的信息和知识。

长期记忆中的信息和知识也是基于符号表示和神经表示的。

找到相关的后,把的语义表示转换为自然语言。

最新进展实现问答系统有三种方法,分别是基于分析的、检索的、生成的方法。

传统的技术是语义分析(semantic parsing) [3]。

基于人工定义的语法规则,对问句进行句法分析以及语义分析,得到内部语义表示——逻辑表达式。

近年,基于神经符号处理的问答系统的研究有了很大突破。

脸书(Facebook)的韦斯顿(Weston)等人提出了记忆网络(memory networks)框架[4],可以用于如下场景的问答:John is in the playground.Bob is in the office.John picked up the football.Bob went to the kitchen.Q: where is the football?A: playground.记忆网络由神经网络和长期记忆组成。

长期记忆是一个矩阵,矩阵的每一个行向量是一个句子的语义表示。

阅读时,记忆网络可以把给定的句子转换成内部表示,存储到长期记忆中。

问答时,把问句也转换成内部表示,与长期记忆中每行的句子语义表示进行匹配,找到,并做回答。

谷歌 DeepMind 的格拉夫(Gres)等发明了可微分神经计算机(differentiable neural computer)模型[5]。

外部记忆是一个矩阵,可以表示复杂的数据结构。

神经网络负责对外部记忆进行读写,它有三种类型,拥有不同的注意力机制,表示三种不同的读写控制,对应哺乳动物中海马体的三种功能。

神经网络在数据中进行端到端的学习,学习的目标函数是可微分的函数。

谷歌的尼拉康藤(Neelakantan)等开发了神经编程器(neural programmer)模型[6],可以从关系数据库中寻找,自动回答自然语言问题。

每一步都是基于问句的表示(神经表示)以及前一步的状态表示(神经表示),还包括计算操作的概率分布和列的概率分布,以及选择对数据库表的一个列来执行一个操作(符号表示)。

操作表示对数据库列的逻辑或算数计算,如求和、大小比较。

学习时,整体目标函数是可微分的,用梯度下降法训练循环神经网络的参数。

谷歌的 Liang 等开发了神经符号机(neural symbolic machines)模型[7]。

神经符号机可以从知识图谱三元组中找到,回答像「美国最大的城市是哪个?

模型是序列对序列(sequence-to-sequence)模型,将问题的单词序列转换成命令的序列。

命令的序列是 LISP 语言的程序,执行程序就可以找到。

神经符号机的最大特点是序列对序列模型表示和使用程序执行的变量,用附加的键-变量记忆(key-variable memory)记录变量的值,其中键是神经表示,变量是符号表示。

图 4 包含查询器的智能问答系统华为公司的吕正东等开发了神经查询器(neural enquirer)、符号查询器(symbolic enquirer)和连接查询器(coupled enquirer)三个模型[8,9],用于自然语言的关系数据库查询。

符号查询器是一个循环神经网络,将问句的表示(神经表示)转换为查询操作(符号表示)的序列,执行操作序列就可以找到。

利用强化学习,具体的策略梯度法,可以端到端地学习此循环神经网络。

神经查询器是一组深度神经网络,将问句的表示(神经表示)多次映射到数据库的一个元素(符号表示),也就是,其中一个神经网络表示一次映射的模式。

利用深度学习,具体的梯度下降法,可以端到端地学习这些深度神经网络。

未来展望计算机最擅长的是计算和存储,其强大的计算能力已经在现实中展现出巨大的威力,但是其强大的存储能力并没有得到充分的发挥,通常存储的是数据,而不是信息和知识。

可以预见,未来会有这样的智能信息和知识管理系统出现,它能够自动获取信息和知识,如对之进行有效的管理,能准确地回答各种问题,成为每一个人的智能助手。

人工智能技术,特别是神经符号处理技术,有望帮助我们实现这样的梦想。

致谢感谢吕正东、蒋欣、尚利峰、牟力立、殷鹏程等,本文中的很多想法是在与他们合作的工作中产生的。

作者简介 李航CCF高级会员,CCCF特邀专栏作家今日头条人工智能实验室主任研究方向:自然语言处理、信息检索、机器学习等脚注 互联网上有文章和视频介绍克莱夫·韦尔林的生平。

LISP是 List Processing 的缩写,是一种早期开发的、具有重大意义的表处理语言。


以上是文章"

基于神经符号处理的智能问答系统也是由语言处理模块、短期记忆、长期记

"的内容,欢迎阅读甘青宁科技网的其它文章