论文浅尝 | 基于知识库的自然语言理解 01#

 

本文转载自公众号:知识工场。

罗康琦,上海交通大学计算机系2019届博士,研究方向为自然语义理解和知识图谱。2012年获得华中科技大学软件工程学士学位,现就职于京东数据科学实验室(Data Science Lab)。他曾在AAAI,IJCAI,EMNLP等国际顶级会议上发表多篇论文。

ABSTRACT

自然语言是人类进行信息交流和知识保存的重要工具,同时也是人机交互过程中最主要的形式。因此,让机器实现对自然语言的理解,是现阶段人工智能的重要发展方向,同时也是学术界的热门研究课题。自然界中存在的不同事物,以及事物之间的联系已是海量级别,随着互联网中以维基百科、IMDB等数据库为首的结构化信息的大量积累,用于组织和维护开放领域中海量知识的大规模结构化知识库应运而生。它们以标准化的符号存储了千万以上的实体、以及十亿以上实体之间具有的关系,成为了语义表达 的有效载体,同时也引出了一系列基于知识库的自然语言理解研究。因此,本文针对描述客观事实的自然语言文本,利用知识库实现多个维度的语义理解。

根据语义所体现的不同层次,本文从实体、关系和句子这三个层面研究自然语言理解问题。实体是语义中不可再分的元素,多个实体由关系互相连接构成基本事实,而句子往往包含着多个关系,具有更加复杂的整体语义。具体而言:实体层面的理解体现为直接匹配,将文本中代表实体的短语链接至知识库中的特定实体;关系层面的理解体现为结构匹配,将自然语言关系转换为由知识库关系(谓词)所构建的特定语义结构;句子层面的理解则对单一关系的结构匹配进行深入扩展,对于问句而言还体现为推理匹配,即根据语义结构,从知识库中寻找问句的正确答案。对于这些粒度的自然语言理解问题,需要使用不同的方法进行语义建模。

对于实体理解问题,其核心为计算实体短语的上下文信息与候选知识库实体间的匹配程度。经典的实体链接任务具有以下特点:候选实体数量庞大,实体短语普遍存在的一词多义性,以及候选实体之间存在相互依赖关系。本文中,我们关注对表格文本进行跨语言的实体链接任务,除了上述特点以外,表格文本所具有的半结构性,以及文本和知识库由不同的语言所描述,这给此任务带来了新的挑战。为此,我们提出了基于神经网络和跨语言词向量的链接模型,其优势在于:降低翻译过程带来的信息损失,学习表格行列方向的上下文和一致性特征,并通过联合训练框架提升整体链接质量。在跨语言和单语言两个场景上的实验表明,我们的模型有效捕捉表格中实体之间的特殊联系,同时在跨语言场景中具有稳定而良好的效果。

对于关系理解问题,其核心为用知识库中的结构描述自然语言中,一个二元关系的语义。该问题主要具有以下两个特点:首先自然语言关系同样存在多义性,其次关系和知识库中的谓词存在语义间隔,难以实现简单的一一对应。基于这两个特点,我们对自然语言关系进行了两个粒度的语义建模。粗粒度的建模聚焦于关系的多义性,我们通过对知识库构建更加丰富的类型层次结构,挖掘一个二元关系的主语和宾语所具有的不同类型搭配,实验结果表明我们的模型效果优于传统的选择偏好模型。细粒度的建模旨在利用知识库实现对关系语义的精确表达,我们致力于使用人类能理解的图结构描述关系语义,提出了基于规则推导的模式图推理模型,以挖掘关系可能的复杂结构表示,并将其运用于知识库补全任务。实验结果显示,我们的模式图推理模型不仅具有高度可解释性,而且效果优于其它规则推导模型和新兴的知识库向量模型。

对于问句理解问题,我们着眼于基于知识库的自动问答任务,即在知识库中寻找代表答案的实体集合。由于问句包含了未知答案与其它实体的一个甚至多个关系,其语义变得更加复杂的同时,带来了如下挑战:如何描述问句的复杂语义,以及如何有效度量问句和语义结构之间的相似度。基于深度学习的语义匹配模型得到了广泛的研究,但这些模型所适用的语义结构存在限制,对复杂问题的回答存在瓶颈。为此,我们提出了针对复杂问题的的深度学习语义匹配模型。该模型沿用关系理解中的图结构表示,首先生成问句可能对应的候选查询图,然后利用深度神经网络学习这些查询结构的整体语义表示,以此捕捉问句中不同语义成分的有机结合。实验结果表明,基于复杂查询图的深度学习模型在多个复杂问题和简单问题数据集上都具有良好的性能。

综上所述,本文从实体、关系、问句三个粒度出发,研究自然语言和知识库之间的语义理解与匹配问题。在实体理解中,我们提出了基于神经网络、跨语言词向量以及联合训练的链接模型,并用于解决跨语言场景中对表格文本进行的实体链接问题。对关系和问句的语义理解,我们始终贯彻语义建模的可解释性,使用主宾语类型搭配描述关系具有的多义性,以及使用基于知识库的图结构描述关系或问句的精确语义。对于自动问答任务,我们提出的深度学习模型实现了对复杂图结构的整体建模,得以充分体现其特征学习能力,更有效地度量问句与复杂结构的语义匹配程度。最后,希望本文的一系列工作能够对该领域今后的学术研究有所帮助。

第 1 章  引言

本文主要的研究对象是自然语言中的单词、短语以及句子。为了使机器可以像人类一样,理解一个句子背后的含义,而不是仅仅停留在识别字面上的不同词汇,我们需要让机器挖掘出句子中的两类信息,即句子里的实体(人物、地点、组织、事件等),以及实体之间的关系。考虑到自然语言描述方式的多样性,我们需要使用标准化的数据库作为语义理解的载体,其包含自然界中所有已知的实体,以及它们之间存在的关系,这样的结构化数据库被称为知识库。本文研究的问题,就是将自然语言中的实体、关系以及句子的语义,映射到知识库的过程。

1.1 研究背景 

人类的进化总是伴随着知识的不断积累。传统的知识存储媒介为纸质书籍,随着互联网的发展以及分布式存储系统的成熟,越来越多人类知识以电子文档的形式进行存储。截至2018年6月,Google搜索引擎已索引大约470亿个网页,考虑到大量未被索引的网页以及未被电子归档的书籍资料,人类所拥有的知识远不止统计数据所显示的规模。并且随着新事件的发生,新的知识也还在不断涌入。身处信息化时代,人类和计算 机的交互变得频繁,且交互方式呈现多样化。而在这其中,自然语言一直是最重要的交互方式,主要体现为文本和语音的形式,与人类之间的正常交流最为接近。人工智能成为当今科研的热门方向,由于计算机已经拥有海量的非结构化文本数据,因此人类期望智能化的机器能够感知并掌握人类的知识,从而更好地与人类进行自然语言交互。科幻电影中经常安排了这样的机器人角色:回答人类的提问,分析人类的情感,进行持续的聊天对话等等。这些诉求支撑了自然语言处理领域的蓬勃发展。

自然语言理解是人工智能的一个重要分支。为了衡量机器在自然语言上的智能化水平,早在 1950 年,英国科学家阿兰·图灵就提出了著名的思想实验 “图灵测试” ,即让机器作为被测试者,仅通过文本与人类测试者对话,并说服人类自己是人而不是机器。 若机器通过了图灵测试,则意味着其智能化已达到接近人类的水平。图灵测试属于开放领域的通用对话场景,目前人工智能水平还远远不能达到这样的高度,通过含糊其辞的策略进行对话可以做到欺骗人类测试者,但这并非真正理解对话含义。

之所以机器难以理解人类的语言,是因为自然语言本身具有很高的复杂性,主要体现为两个方面。一方面,自然语言中的不同词汇和语义之间不具有一对一关系。人类语言并非遵循某种确定的规则产生,而是随着时间在不停演变,例如 “苹果” 一词原本仅指代一种水果,而苹果公司的出现,使得自然语言文本中的“苹果”有了明显的歧义。可见,词汇和语义的对应来自约定俗成,并不需要满足严谨的区分度。这使得同义词和一 词多义成为了自然语言中的普遍现象。另一方面,词汇的排列顺序也在影响着语义。自然语言中存在着层次关系,多个词汇组成短语,多个短语组成句子等等。组合而成的语义并不等于各个部分的简单叠加,例如“深度学习”与“学习深度”两个短语具有较大的语义差别。

人工智能离完美的语义理解还有很长的距离,现阶段也很难设计一套语言理解系统,使其适用于各种不同的自然语言场景。在不同类型的文本中,描述客观事实的自然语言文本数量庞大,以维基百科为代表的语料库凝结了人类在各种领域所拥有的知识。与此同时,相比于带有主观信息的句子,客观事实所具有的语义更加明确,不受个人感情色彩的影响,因此能够更加准确地评判机器的理解能力好坏。鉴于以上两点原因,如何让机器更好地理解客观事实紧密相关的自然语言信息,成为了我们的研究重心。

对于机器而言,怎样才算理解自然语言中的客观事实?我们以例句“苹果于1997年收购了 NeXT 公司,乔布斯回归并担任临时 CEO。” 进行阐述,这段文字讲述了与苹果公司相关的一些客观事实。机器理解的前提,在于能从非结构化的文本中抽取出语义信息。计算机对它的信息抽取主要包含以下两个层次。

浅层次的抽取,体现在识别句子描述的是关于哪些事物的客观事实,不仅需要找出代表它们的短语,而且要正确对应到客观存在的事物。例如识别出短语 “苹果” 指的是苹果公司,而不是水果。通常需要识别的事物为命名实体,即具体的人名、地名、组织名等等,有时也包括一些抽象概念,比如 “森林” 、“CEO” 、“物理学家” 等等。我们将这些客观存在的具体或抽象事物统称为实体

更深层的抽取在于,识别不同实体之间具有怎样的关系。例如苹果和 NeXT 之间存在着收购关系,苹果和乔布斯之间存在任命关系等。在一个句子中,描述两个实体之间关系通常会采用主谓宾的形式,也存在着其它形式(主系表,介宾结构等)。为了方便论述,我们将联系两个实体的二元关系表示为(主语,谓语,宾语)三元组的形式,其中关系在三元组中充当谓语成分,主语和宾语则是关系的两个参数实体。

判断一个人的智力高低,不仅在于他见过多少实体或了解多少关系,而且在于能否将已知的事实在大脑中进行整合为知识,从而能够举一反三,在遇到问题时,寻找出和问题匹配的事实,对面对复杂问题的情况,还能结合多个事实进行推理回答。问句 “ NeXT 公司被谁收购?”可以直接与例句中的关系匹配,而要回答“ NeXT 公司被收购时,美国总统是谁?” ,则需要一定的推理能力。对于机器而言,这样的自动问答任务既是人机交互中的重要场景,同时也是衡量句子语义理解是否智能化的有力参照。

综上所述,针对以客观事实为主的自然语言理解,我们从实体、关系、句子的语义理解这三个角度出发,展开一系列研究。它们的共同点是,需要一种手段来整合并维护 人类的客观知识,包括实体、概念、类型,以及联系它们的关系等。计算机虽然存储了海量文本,但杂乱的非结构化文本显然无法胜任。

信息抽取技术直接针对非结构化文本,从中提炼出有价值的客观事实,组成三元组形式(  , relation , ),本文中称之为关系三元组,或关系实例。其中  分别代表关系 relation 的主语和宾语。例如可以从句子“ Mozart was born in Salzburg , but moved to Vienna in 1781 ”中抽取出两个三元组( Mozart , was born in , Salzburg )以及( Mozart , moved to, Vienna )。早期的信息抽取主要针对特定领域的文本数据,而近年来提出的开放领域信息抽取( Open Information Extraction,OpenIE )系统[1-4]则从不限定领域的海量文本中提取不同的二元关系。然而,关系三元组中的每一个成分为字符串,同义词和一词多义现象依然存在。为了消除歧义,计算机需要通过更加规范的方式,表示不同的实体、关系和具体的三元组,而不是只停留在字符串层面。

对于实体的表示,维基百科是一个优秀的载体,英文维基百科具有一千万以上的实体(页面),同时实体命名遵循特定规则,利用括号信息区分名字相同的实体。同时维基百科还维护了分类信息( Category ),具有相似特点的实体会被归为同一分类。普林斯顿大学设计的 WordNet [5] 数据库更加关注概念上的区分,其中同义词集( Synset )是用来表示概念的基本单位,具有多义的单词(或词组)指向多个同义词集,而每个同义词 集由一系列近义词构成,并配有简短文字解释概念词义,并且同义词集之间包含着丰富的上下位关系。在关系方面,以 PropBank [6] 为代表的数据集以动词分析为主,对它们的词义进行了归类。与 WordNet 类似,PropBank 使用同义动词集作为词义的基本单位, 并且对动词的参数在语境中所扮演的角色进行标记,以此表示这些同义动词的用法,因此PropBank 常用于语义角色标注任务中。

以上的数据集,除维基百科以外,其余都还停留在单独的实体、概念、关系层面,没有维护实体的属性值,以及实体之间的具体关系。维基百科页面中存在大量具有特定模板的信息表格( Infobox ),以半结构化的形式描述了实体的属性,以及和其它实体的关系。由于维基百科面向人类读者,半结构化信息较难直接被机器理解。为此,一系列研究工作旨在将维基百科中的半结构化知识进行组织,形成的结构化数据库包含了与实体相关的大量事实,我们称之为知识库(Knowledge Base),或知识图谱(Knowledge Graph)。

具有代表性的知识库包括 DBPedia[7],YAGO[8] 和 Freebase[9],它们皆诞生于 2007 年。DBPedia的构建过程基于对维基中的信息表格、页面分类、外部链接等半结构化信息进行自动抽取,可以看作是最纯粹的结构化维基百科;YAGO 的主要信息同样来自对 Infobox 内容的自动抽取,同时将页面分类信息与 WordNet 严谨的概念层次关系进行融合,构建出代表实体类型的层次关系;由 MetaWeb 公司开发的 Freebase 集成了维基百 科、IMDb 、MusicBrainz 等多个数据库的知识,并提供接口,允许用户对 Freebase 的结构化内容进行编辑或添加新的知识,因此相比其余知识库,Freebase 具有更大的规模。这些结构化知识库的共同点在于使用资源描述框架(Resource Description Framework),每一条知识都由SPO 三元组表示,即( subject , predicate , object )形式,其中 subject 和 object 为知识库中的节点,代表着不同的实体、类型或属性值,predicate 为连接不同节点的边,代表实体间的关系,或实体的属性,统称为谓词。在知识库中,不同的节点和边具有独立的编号,因此不具有歧义。为了与 OpenIE 的关系三元组区分,我们将知识库里的 SPO 结构称为事实三元组。这些知识库内的所有事实三元组构成了庞大的图结构,即“知识图谱’’名称的由来。

由于上述知识库结构相似,研究方法具有普适性,因此我们的工作主要基于资源最丰富的 Freebase,包含至少四千万个不同实体,三千种以上的常用类型,六千种以上的常用谓词,以及十亿以上的事实三元组。按功能划分,Freebase 中的事实三元组可归为三类:描述实体和类型间层次结构的 (实体, IsA , 类型) 和少量 (类型, subTypeOf , 类型) 三元组;描述实体间的关系的 (实体, 关系, 实体) 三元组;描述实体自身属性的 (实体, 属性, 属性值) 三元组,其中属性值为整数、浮点数、时间或字符串。Freebase 的一个缩略图如图1–1所示,不同的实体、类型、谓词都有独立的编号,例如谓词编号 type.object.type 代表 IsA 关系,type.object.name 代表名称属性。同时它们都具有唯一的名称属性值,部分实体还具有多个别名属性(common.topic.alias)值。例如实体 m.02_286 的名称为“ New York City ”,具有别名“ The Big Apple ”、“ Empire City ”等;谓词 location.location.contained_by 名称为“Contained By”,描述了地点实体间的包含关系。Freebase 支持使用 SPARQL 语句进行结构化查询,以类似 SQL 的语法从图结构知识库中筛选出满足查询条件的实体。

图1–1 Freebase缩略图。

 

接下来,我们将关注在实体、关系、句子这三个递进层面上,以知识库作为语义载体的一些自然语言理解问题。

首先,实体层面的语义理解体现为实体链接任务,即从自然语言文本中寻找出代表实体的短语,并匹配到知识库中的特定实体。如同维基百科编辑者在页面中会添加一些超链接文本,并指向其它实体页面,使得读者可以快速了解与当前页面相关的实体信息,自动化的实体链接可以应用于开放领域的自然语言文本,从而实现消歧义的目标。文本输入可以是非结构化的文本,也可以是半结构化形式,例如互联网中存在的表格。 图1–2展示了维基百科中关于赛车的一个页面,其中纯文本和表格中的内容均被添加了超链接,指向了特定的车手、车队等实体页面。

图1–2 维基百科中的实体与表格链接。

其次,对于关系层面的语义理解,一个传统任务为关系分类任务:给定包含两个实体的句子,将它们之间的关系归类至预定义的关系类别中。然而关系分类任务较难扩展到开放领域,一方面,关系类别增多的同时,任务数据集的标注代价显著提升,另一方面,不同于实体匹配,知识库谓词和自然语言关系可能存在一定偏差,难以直接分类。在这样的前提下,关系理解的实质在于,如何利用知识库的已有谓词信息,学习目标关系语义。这引出了知识库补全( Knowledge Base Completion)任务:由于知识库中的事实可能存在缺失,对于其中的目标谓词,能否推理出它和其它谓词之间的联系,从而自动添加新的事实。例如知识库中,某人的国籍缺失,那么可以根据其出生地所在的国家进行推测。由于知识库中的事实三元组和自然语言的关系三元组具有类似形式,因此目标谓词可以从知识库扩展到自然语言中。

最后,对于句子的语义理解,为了能充分利用知识库的信息,我们关注描述客观事实的问句,通过自动问答任务衡量其语义理解能力。自动问答具有广泛的应用场景,搜索引擎便是其中之一。传统的搜索引擎工作方式依靠信息抽取相关算法,比较用户查询与网页的相似度,主要利用词级别的共现模型,如 TF-IDF [10],或词级别的语义匹配模型,如 LSI [11],pLSA [12] 等。但对于用户输入的复杂问题,词级别的匹配难以直接定位到用户想要的答案或网页。更加智能化的搜索引擎,则尝试对问题进行推理,并根据已有的知识库,将答案定位至已知的实体中。Google 建立了以 Freebase 为基础的知识库(Google Knowledge Graph),当用户搜索一些名词时,如图1–3中,用户搜索“george w bush” ,结果页面右侧会显示实体的信息框,包括其属性,以及与其关联的其它实体 等。而如图1–4所示,当用户输入较为复杂的问题 “ who was president of US when beijing olympics was held ”,搜索引擎能在结果页面上方显示出自动回答的结果。对比下方的传统页面搜索结果可见,精确返回答案能大大提升查询过程的用户体验。

图1–3 搜索结果页面的右侧显示了当前实体的信息框。

图1–4 搜索引擎精确返回复杂问题的答案。

实体、关系、问句的语义理解研究之间,存在着紧密的内在关系。作为自然语言理解的最底层,实体理解是其余两个任务的基础:它为关系理解提供了消歧义的三元组,也为问句理解划定了大致的语义范围。而问句中通常包括一至多个关系,因此问句理解可以看做关系理解的扩展,即在问句中寻找疑问词和多个已链接实体间存在的不同语义。

1.2 研究现状 

上一节介绍了本文关心的语义理解问题,本节中,我们延续实体、关系、问句语义理解这三部分,回顾已有的一些相关工作。

实体链接的研究开始较早,Mihalcea 等人[13] 于2007年的研究是以维基百科为载体进行链接的鼻祖工作。对自然语言文本进行实体链接,主要分为两个步骤:挖掘所有代表实体的短语,以及将短语映射至知识库中的特定实体。短语挖掘可以通过字符串模糊匹配的方式进行收集,以保证较高的召回率。之后的映射步骤则是实体链接模型的重点,为了实现消歧义,需要利用短语所在文本的上下文特征,以及多个短语所映射的实体之间的关联程度,对于表格形式的文本输入,行列间实体所具有的特性也不可忽略。根据以上观察,以特征工程为核心的机器学习模型被运用于此,涵盖的特征主要包括基于维基内部超链接统计的先验概率,基于 TF-IDF 模型[14]的短语和实体的上下文相似度,基于 PMI [15]、WLN [16]等以维基共现频率衡量的不同实体间的相关度,等等。考虑到特征设计耗费人力,且与特定任务高度相关,更新的工作对基于深度学习的实体链接模型进行了研究,模型依赖神经网络建立实体和短语上下文的特征表达,并计算向量表达之间的相似度衡量短语和实体的匹配程度。以文献[17]为代表,对于输入文本中的短语和维基百科中的实体,模型可以关注不同粒度的上下文,利用卷积神经网络或循环神经网络对文本进行建模。同时模型可以学习维基百科或知识库中,实体分类、类型等信息的向量表达,以此丰富实体的语义特征,例如文献[18-20]。此外,若文本和知识库的语言不同,则为跨语言场景的实体链接。通过翻译工具可以转化为单语言的实体链接,但受制于翻译步骤的准确率,因此主要的模型使用了跨语言的词向量技术[21],将不同语言下的单词映射至同一连续语义空间。

关系语义学习的研究,主要针对三元组级别,给定目标关系或谓词,根据它所已知的三元组信息,对其语义进行建模。按照关系语义的表示方法进行划分,主要研究可以分为规则推导和知识库向量学习两类。基于规则推导的模型中,二元关系或谓词  等同于布尔函数  ,对于给定目标,模型旨在推导出由其它谓词构成的一阶逻辑表达式,单个表达式的语义具有确定性,同时人类可直接理解其语义表示,具有很高的可解释性。早期研究以 AMIE 模型[22]为代表,挖掘具有高置信度的规则,后续的改进研 究着眼于挖掘多种可能的规则,并赋予不同权重或概率,丰富语义表达能力,例如基于 MLN 模型的文献[23, 24],以及生成负样本,对大量路径形式的规则进行特征学习的 PRA 模型[25] 和 SFE 模型[26]。另一个分支为知识库向量模型,则依据已有的大量三元组信息,学习每一个实体和谓词的连续向量(或矩阵)表示,并通过实体和谓词表示之间的代数运算,判断任意一个三元组事实的置信度。具体置信度定义方式不同,ER-MLP 模型[27]基于简单的多层神经网络; RESCAL 模型[28] 基于实体向量和谓词矩阵表示的双线性运算;TransE 模型[29] 基于主谓宾向量之间的距离度量,并衍生出一系列改进模型[30-32]。这些方法能够更充分地利用海量三元组信息进行建模,但是对谓词的语义缺乏直观解释。

对于问句理解与推理的研究,根据知识来源和答案形式的不同,可以分为两类任务: 基于结构化知识,答案通常为实体、数值等简单形式的知识库问答(KBQA);以及基于非结构化文档,答案表示为自然语言文本片段的检索式问答(IRQA)。后者不是我们的研究重点,现有的研究工作主要使用阅读理解模型[33,34],从已有文档中抽取出最适合的文本片段作为答案。与关系学习类似,根据对问句语义的表示形式,解决知识库问答任务的方法也可分为两类。第一类方法在相关文献 [27,35-37] 中称为 “基于信息抽取的方法”,它们遵循端到端问答的思路:对每个问句生成一定量候选答案后,机器学习模型用来解决二分类问题,即判断每个<问句,候选答案>对是否正确。模型使用的特征来自于候选实体在知识库中的信息(包括名称,具有的类型,直接相连的谓词,相邻实体等)与问句中不同单词的交互,早期模型使用特征工程,最新的研究则聚焦于利用神经网络进行特征表示学习。这类模型的优点在于实现简单、训练数据容易获取,但缺点在于可解释性较差,大量抽象特征的存在,使得人类难以理解某个候选答案被分类为正确或错误的根本原因。第二类方法称为语义解析( Semantic Parsing ),答案实体的选取依赖于对问句语义的结构化建模,将其表示为知识库中的实体、类型、谓词组成的一阶逻辑表达式。只需要将其转换为知识库上的结构化查询语言,例如 SPARQL ,即可查询出所有满足语义的答案,因此具有很明确的可解释性。这类方法通常先根据问句信息,生成少量候选查询结构,再利用机器学习算法训练问句和查询结构间的语义匹配模型,因此整体效果取决于这两个步骤的质量。查询结构生成方面,可依靠 CCG [38,39]、 DCS [40,41] 等语法进行自底向上构建,或者依赖深度优先搜索由简到繁生成查询结构[42,43],还可以基于固定模板进行生成[44,45],以牺牲灵活性为代价,换取更有针对性的语义表达。语义匹配计算方面,传统机器学习方法从候选结构的生成步骤中提取特征,并与问句进行特征组合,以实现模型训练;与此同时,深度学习方法通过学习知识库中不同实体、谓词等向量表示,遵循 “编码—比较” 框架,将问句和查询结构的语义特征映射至同一空间,并计算向量间的相似度。基于深度学习的问答模型在近几年研究异常火热,相关文献 [46-50] 等在简单语义的问答场景中不断取得突破。但对于更加复杂的问题,这些模型并不能直接学习一个复杂查询结构的整体语义表达,难以充分体现深度学习强大的特征表示能力。

1.3 主要工作和贡献 

本节中,我们具体介绍本文的主要工作,包括实体、关系、问句理解三方面的研究内容,技术难点,以及我们的贡献。

1.3.1 实体理解问题 

对于实体的理解,我们聚焦于跨语言场景下的表格实体链接任务,即以非英文编写的表格作为输入,将每个单元格对应的实体链接至英文知识库。我们以该任务作为研究对象,主要有两个动机:首先,英文知识库规模最为庞大而全面,有助于让不同语言的人类共同理解知识;其次,表格行列间通常存在着特定的关系,因此相比纯文本中的实体链接,表格链接能更有效地帮助知识库进行知识扩充。本文是学术界首次对该任务进行具体研究,具有以下两个主要特点:1)短语和目标实体处于不同语言中,必须在字面相似之外,寻找候选实体收集和匹配度量的方式;2)每个单元格和目标实体间的匹配可以体现在多个粒度,例如单元格自身,以及其所在的行列上下文,同行列的实体之间还存在明显的关联性。

为了解决跨语言表格链接问题,我们提出了基于神经网络和跨语言词向量的链接模型。该模型首先通过已有翻译工具进行候选实体的收集,但匹配过程并不依赖唯一的翻译结果;其次,模型利用多语言词向量的训练,将不同语言中的实体和短语映射至相同维度空间,实现最基本的匹配度量;再次,模型利用深度神经网络学习表格与目标实体间不同粒度的匹配特征,并提出了基于方差计算的一致性特征,以捕捉同列实体所具有的同质性;最后,模型基于联合训练思路,以优化整张表格的匹配程度作为目标,进一步提升整体链接质量。在跨语言和单语言两个场景上的实验表明,我们的模型有效捕捉表格中实体之间的特殊联系,同时在跨语言场景中具有稳定而良好的效果。

1.3.2 关系理解问题 

对于关系的理解,我们旨在利用知识库构建人类可理解的结构化表达,以描述二元关系语义,并用于下游任务中,例如关系分类和知识库补全。对关系的建模问题,有以下两个特点:1)与实体类似,自然语言中关系存在着多义性,即对应多种描述方式;2) 自然语言关系和知识库谓词存在语义间隔,由于知识库的构建避免了信息冗余,一个关系未必能直接映射到知识库中的单个谓词。

为了学习关系的语义,我们根据开放式信息抽取系统在海量文本中抓取的结果为输入,获取单个关系的多个主谓宾三元组,从而以数据驱动的方式进行语义建模,并由粗细两个粒度进行分析。在粗粒度方向,我们关注于关系的多义性,并通过其主宾语的类型搭配来区分其不同的语义。为此,我们对知识库中不同类型间的包含关系进行挖掘, 构建出更加丰富的类型层次结构,并根据主宾语类型对的覆盖率和精细度进行筛选,生成最能够代表关系语义的类型搭配。实验结果表明我们的模型效果优于传统的选择偏好模型。在细粒度的方向,我们关注关系语义的精确表达,使用人类能理解的图结构作为语义的表达形式。我们提出了基于规则推导的模式图推理模型,该模型从已有的关系三元组出发,用知识库中的谓词序列连接主宾语,并在此基础上搜索额外的限制,生成一系列具有 “路径 + 分支” 形式的复杂模式图。随后,模型再次利用已有实例,学习候选模式图上的概率分布,在描述关系多义性的同时,也完成了具体和宽泛模式图之间的平 衡。我们将生成的模式图概率分布运用于知识库补全任务中,实验结果显示,我们的模式图推理模型不仅具有高度可解释性,而且效果优于其它规则推导模型和新兴的知识库向量模型。

1.3.3 问句理解问题 

对于问句的理解,我们着眼于基于知识库的自动问答任务,即对描述客观事实的问句,从知识库中寻找出其对应的一个或多个答案实体。对于只包含简单语义的问题,自动问答的过程等价于将问题转换为知识库上的一个事实三元组。然而,人类提出的问题并不总以简单形式呈现,而是会在其中加入更多限制。例如问句中存在多个与答案相关的实体、类型,或是包含时间、顺序信息等,对应着多条和目标答案相关的三元组,因此面向简单问句的模型便不再奏效。在复杂语义场景中,知识库问答具有以下挑战:1) 如何从问句中发现存在的多个关系,并组合成为一个候选语义结构;2)如何计算自然语言问句和复杂语义结构之间的匹配程度。

我们提出了针对复杂问句的的深度学习语义匹配模型。该模型的思路是细粒度关系理解模型的延续,使用知识库中的实体、谓词、类型等信息作为基本元素组成图结构, 称其为查询图,用于表示问句语义。它在具有良好可解释性的同时,可以通过结构化查询语句(如 SPARQL )在知识库中找出所有满足语义的答案实体。模型首先利用多阶段候选生成方式,由简到繁生成不同的候选查询图,我们已有工作进行优化,更快速和准确地表示类型和时间限制。之后,语义匹配模型的核心是利用深度神经网络学习问句和查询图整体的匹配程度,我们的创新点在于对复杂的查询图进行整体编码,生成其唯一的向量表示,从而捕捉问句中不同语义成分的组合特征。同时,我们利用依存语法分析作为对问句字面信息的补充,使模型能更有效地将问句和不同的语义成分对齐。实验结果表明,基于复杂查询图的深度学习模型在多个复杂问题和简单问题数据集上都具有良好的性能。

第 2 章  国内外相关研究综述

本章中,我们将围绕具体任务,介绍实体、关系、问句语义理解的基础知识和研究综述。实体理解部分,我们从传统的实体链接任务出发,介绍在文本和表格中的特征工程和深度学习模型,以及用于跨语言实体链接任务中的跨语言词向量模型;关系理解部分,我们关注知识库补全任务,并介绍两类主要的模型,分别是规则推导模型和知识库向量模型;问句理解部分,我们将注意力放在面向客观事实类问题的知识库自动问答任务,同样介绍两类模型,即基于语义解析和基于信息抽取的模型,前者与我们的研究更加密切,本节也会重点阐述语义解析模型的多个组成部分。

2.1 实体理解:实体链接任务

实体链接任务是一类从自然语言文本中识别出代表实体的字符串,并将其映射到知识库中特定实体的任务。人工进行的实体链接体现在维基百科的页面编辑过程中,页面作者会手动为部分代表实体的短语添加超链接,指向对应实体的维基页面。这种带有维基内部超链接的短语被称为锚文本( Anchor Text ),本文中也称为实体短语。基于机器学习的实体链接可以应用于不同场合的文本输入,背后所使用的目标知识库也不局限于维基百科,其它常用的知识库包括 DBPedia ,Yago 以及 Freebase 。考虑到这些知识库均基于维基百科信息构建而成,实体链接任务又被称为“维基化”( Wikification ) [13]。 以英文维基百科为例,一个典型的实体链接任务见下例:

实体链接任务首先需要提取出句中存在的实体短语,即下划线对应的部分。该步骤与命名实体识别任务类似,不同之处在于我们关注的实体短语除了命名实体(具体的 人名、地名、组织名、书名、电影名等)之外,还包含了维基百科中存在的概念实体, 用于指代一组相似实体。下一个步骤对每个实体短语从维基百科中抽取出候选实体集, 并定义短语和候选实体之间的匹配分数,从而将短语链接至最相关的候选实体,例如句中的 5 个实体短语分别对应维基百科中的实体 Michael Jordan,basketball , National Basketball Association ,Chicago Bulls 以及Washington Wizards。

除了无结构的纯文本以外,互联网语料中的表格也蕴含了大量与实体相关的知识。 对表格进行实体链接的研究起源于 Limaye 等人[51] 的工作,如图2–1所示,除了每个单元格所对应的实体之外,得益于半结构化的组织形式,同一表列内的实体通常具有相同的类型,而且两列实体之间描述了同一种关系的不同实例,这些是非结构化文本所不具备的优势。因为表格带来了丰富关系知识,表格上的实体链接在近年来受到了更多的关注。

图2–1 Limaye等人提出的表格链接任务。

作为自然语言理解中的基本任务,实体链接是一系列下游任务的前置步骤。首先,开放式信息抽取抽取的主谓宾三元组均为文本表示,通常具有歧义,一些研究工作旨在对三元组中的实体短语进行链接,代表文献包括[4,52],在实现三元组消歧的同时,结合知识库推理出主语和宾语所代表的类型,有助于挖掘不同谓词关系之间的语义联系。 其次,实体链接与知识库补全任务密切相关,该任务的目的是向已有知识库中补充新的事实三元组。这些新添加的三元组主要来源于两方面:随时间发展所产生的全新事实, 或基于已有知识的归纳推理。基于前者的补全依赖于信息抽取系统的不断挖掘,因此对主宾语的链接的准确率决定了知识库补全的效果。知识库补全的相关内容将在2.2节中论述。最后,对于自动问答任务,尤其是我们关注的基于知识库的事实类自动问答任务, 其描述的是与问句中实体相关的事实,因此不管以何种方式对答案进行建模,都依赖于对已有实体的准确定位,以限定问句对应语义的搜索范围。因此,实体链接的结果好坏,对这些任务的效果均有着很大程度的影响。

实体链接的重点在于从多个候选中找出正确的那个实体,其本质为消除实体级别存在的一词多义性,例如短语 “ Michael Jordan ” 具有多个可能的候选,在维基百科中可能代表篮球明星、足球运动员、著名的机器学习教授,甚至更多不那么有名的人。在缺乏上下文信息的情况下,很难进行准确的链接。因此,一个良好的实体链接模型,相关性分数需要考虑多个因素,包括实体本身的先验知识,实体与短语的匹配程度,以及实体与短语所在上下文的契合度。

基于特征工程的方式,其信息来源主要为维基百科上的统计数据。随着深度学习的发展,实体链接的研究将重心放在用表示学习替代或改良传统的特征工程方法。得益于也文本的向量表示技术,以及神经网络的特征学习能力,深度学习方法通过计算文本、 实体的向量作为其语义表达,并利用高维空间的相似度衡量短语和候选实体之间的相关性,在效果上也取得了不错的提升。接下来的几个小节主要介绍基于特征工程和深度学习的实体链接模型,并单独介绍用于跨语言链接场景中的跨语言词向量技术。

2.1.1 基于特征工程的实体链接 

基于特征工程的实体链接方法,较为经典的工作包括文献 [15, 16, 53-55]。这类方法的共性在于用预定义好的函数或概率值,描述候选实体与实体短语及其上下文之间的特征,通过学习特征的带权相加计算最终的匹配度。

在这类方法中,一个候选实体所具有的特征可以分为三类:先验特征,上下文语义特征,以及与句中其它实体的关联特征。先验特征与短语所处的文本无关,仅基于短语与候选实体在维基百科中的统计信息,主要体现为短语所在锚文本链接至该实体的概率,以及实体出现在不同维基页面中的概率。上下文语义特征关注文本及目标实体的语义近似程度,利用词袋模型( Bag-of-Words )将短语的上下文以及目标实体的维基页面分别转化为向量形式,通过 TF-IDF 得到不同词语的重要性,并用向量间的相似度代表语义匹配程度。实体间的关联特征体现在不同短语所对应的实体之间,它们维基百科页面的相关性有助于实体链接的判断。在维基百科中,若两个实体同时指向的页面较多, 或同时指向这两个实体页面的其它实体较多,则它们具有较高的相关度。常用的计算方式主要为点对点互信息( PMI )[15] 或基于谷歌距离的维基链接度量( WLM )[16]。其它的可选方式包括 Jaccard 相似度,以及具有非对称形式的条件概率。

对于实体链接模型的训练方式,若不同的实体短语之间互相独立,那么训练过程是一个简单的监督学习问题,即判断每一个<短语,实体>对的正确性。考虑到每个短语仅对应唯一的正样本,其余所有候选实体均为负样本,为了保持正负样本的平衡,一般采用 Ranking SVM [56] 或最大间隔( Max Margin )模型进行训练。这样的做法称为局部优化,显然忽略了候选实体之间的关联。为了能捕捉这一特征,Ratinov 等人[15] 首先利用 局部优化方案,对每个实体短语进行链接,得到具有一定质量的次优解,然后根据次优解计算候选实体与其它实体的关联特征,用于完整的模型训练。Shen 等人[16] 对两个实体之间的相关度计算进行了类似的简化,将单个实体与其余短语的所有候选分别进行相关度计算,并选取最大值作为特征。Bhagavatula 等人[57] 通过迭代的方式不断对每个短语预测的实体进行更改,实体间的相关度特征也随着不断变化,更加靠近真实情况。以 上这些方法通过简化特征或迭代预测的方式,使得训练过程得以保持对每一个 < 短语, 实体>进行打分的形式。

与之相对的全局优化方法则将整个文本以及所有不同短语的候选实体整合在一个目标函数中,因此可以对更加复杂的相关性进行建模。Hoffart 等人[53] 在模型中构建了一个包含所有实体短语以及候选实体的无向图,不同的特征值体现为图中具有不同权重的边,该模型通过贪心算法寻找图中具有最大权重的稠密子图,使得每一个短语在子图中与唯一的一个实体相连。Luo 等人[55] 利用条件随机场( CRF )对实体链接与命名实体识别任务( NER )同时建模,使实体链接过程能够利用 NER 的一系列特征。Yang 等人[54] 提出的 S-MART 模型考虑到了多个实体短语不能重叠的限制,属于全局优化的范畴,利用前向后向算法对所有短语进行链接,保证在多个短语重叠的情况下,最多一个短语指向具体的实体,其余均指向空实体。同时,该模型通过迭代决策树( MART,即 GBDT )对匹配度进行建模, MART 在工业界被广泛使用,具有非常良好的效果。

2.1.2 基于深度学习的实体链接 

传统的特征工程方法需要人工干预,寻找更有效的特征还需要花费更多的时间。最新的深度学习研究更加关注利用神经网络的表示学习能力,自动挖掘文本和实体的隐藏特征,形成各自的抽象表示,在避免特征工程耗费人力的同时,还能学习人类难以直接描述的高层特征。在自然语言处理领域中,词向量技术[58-60] 为深度学习模型的基础。 以 Skip-Gram 和 CBOW [60]为代表的词向量模型,通过半监督方式从纯文本语料中构建训练数据,根据上下文单词预测、词序列正确性预测等任务,学习每个单词的向量表达, 对应连续语义空间中的不同坐标点。相似单词在语料库中具有接近的上下文,因此在连续空间中位置更加接近。由于句子和段落都是不同单词的特定组合,因此它们的抽象表示主要通过神经网络对词向量进行计算而得,常见的方法包括卷积神经网络[61],循环神经网络[62] 以及具有注意力机制[63] 的模型变种。

基于深度学习的实体链接模型包括文献[17-19,64],它们首先通过特定的神经网络结构,计算出实体短语所在的上下文表示,以及候选实体的表示。之后通过定义向量之间的相似度函数作为匹配分数。而这些模型之间的区别,主要在于表示实体或短语的信息来源和编码粒度。

Francis-Landau 等人[17]使用了以卷积神经网络为主体的神经网络进行实体链接。如图2–2所示,文档中的一个实体短语对应着三种上下文:短语自身、短语所在句子、短语所在段落。相似地,一个候选实体也对应两种上下文:实体的名称,以及对应维基页面中的所有段落。将它们输入至不同参数的卷积神经网络,便可得到短语和实体在多个不同粒度的上下文向量表示。通过两两计算相似度的方式,即可得到6个不同粒度组合的语义相似度。最后结合已有的人工特征,通过逻辑回归层得到最终匹配度。

图2–2 基于多粒度卷积神经网络的实体链接模型。

Sun 等人[18] 的模型对不同的上下文信息采用了不一样的网络结构。如图2–3所示, 对短语建模的信息包括短语自身,以及去除自身后的句子两部分,而实体方面,除了利用本身名称之外,还使用了它在维基百科中的分类信息,用这类人工提炼的知识补充实体的表示。对句子的表示学习依然使用卷积神经网络,其余三种信息由于长度较短,均直接使用了词向量平均的方式得到向量表达。进一步,该模型利用较为复杂的神经张量层将各部分向量结合,分别得到实体和短语的整体表达。类似的方法还有文献[19],对实体的维基分类信息进行表示学习,通过双向循环神经网络对短语所在句子进行编码。 同时模型定义了不同信息之间的多种损失函数,对训练数据的利用更加充分。

图2–3 基于神经张量层的链接模型。

此外,知识库向量学习技术[29] 也被用于实体链接任务中。知识库向量学习与词向量学习类似,以大量事实三元组作为训练数据,学习每个实体的向量表示,使得相近语义的实体具有相近的向量。Fang 等人[64] 提出的链接模型基于知识库向量与词向量的融合:通过实体与短语互相替代的方式,定义了基于三元组以及共现词对的目标函数,促使实体与其短语的向量尽可能一致,因此所有向量表示被映射到同一个高维语义空间中。融合的优势在于实体和单词之间直接可比,通过距离度量函数计算候选实体与短语上下文中不同词的距离,并以此作为链接模型的特征。

2.1.3 跨语言词向量 

上一节的论述中提到了词向量模型,用于学习词汇的连续语义表示,但仅局限于单一语言。对于涉及多个语言的任务,难点在于如何实现语义的跨语言过渡。为了解决此问题,跨语言词向量模型(Cross-Lingual Embedding Model )旨在消除单词语义表示对语言的依赖,将不同语言的向量表示映射至同一连续空间,并依旧保持相似语义单词更加接近的特性,以此实现语义迁移。例如图2–4展示了一个英语和德语之间的共享语义 空间,可以清晰地识别出两种语言间的许多组翻译词对。

图2–4 英语和德语间的跨语言词向量例子。

跨语言词向量的训练,需要依赖平行语料库用于给模型提供语义对齐信号,不同的训练方式区别在于平行语料的类型不同,例如单词级别[60,65,66]、句子级别[67,68]、文档级别[69] 的对齐。利用单词级别对齐进行跨语言词向量训练的工作最为普遍,训练数据主要来自于双语或多语词典中抽取出的高质量翻译词对。以此为例,对于源语言   和目标语言  ,模型的损失函数   由三部分组成:

(2–1)

其中,   代表各自语言上进行单语言词向量训练的损失,可直接使用 CBOW 等已有模型进行计算,而   为正则项,对应单词对齐的损失。

对于   的定义,相关文献进行了不同的尝试。Mikolov 等人[60] 发现,在不同语言中,多个单词的向量表达之间,几何关系较为相似,例如英语和西班牙语中,表示数字的单词之间的相对位置几乎一致,表示动物的单词也有类似特性。基于以上观察,该工作提出的模型使用了线性变换的方案,训练转移矩阵  (或称投影矩阵),使得源语言词向量   经过  投影后,和对齐的目标语言词向量   的欧氏距离平方(即均方误差)尽可能小:

(2-2)

基于线性映射的跨语言词向量模型具有一些变种,例如文献 [70, 71] 限制转移矩阵 为单位正交阵,以保证映射后的词向量维持单位长度,Artetxe 等人[72] 指出,对于模型效果而言,转移矩阵正交化比向量正则化更加重要。Lazaridou 等人[66] 对 的定义 使用了最大间隔( Max Margin )损失来代替均方误差损失,即不追求   与 绝对 距离尽可能小,而是让 比其它任何不相关单词都更加接近 ,从而避免跨语言词 向量出现过多中枢词的现象。Faruqui 等人[73] 利用典型相关分析( Canonical Correlation Analysis , CCA ) [74]进行词向量训练。CCA 同为线性投影方式,不同之处在于,CCA 对两 个语言分别学习一个线性变换矩阵,目标是尽可能降低映射后每个翻译词对的互协方差分值。

此外,跨语言词向量的训练还可对于通过句子或文档级别的平行语料进行跨语言词向量的训练,由于不是本文的研究重点,故不展开论述。跨语言词向量能够应用在多种任务中,例如文档分类[65]、词性标注[71]、命名实体识别[75]、机器翻译[76] 等,其带来的知识迁移具有很高的实用性。对于训练集和测试集为不同语言的任务,跨语言词向量能实现知识在不同语言上的迁移;对于类似机器翻译、跨语言实体链接等输入和输出为不同语言的任务,预训练好的跨语言词向量能够作为特定任务模型的训练起点,消除语义的间隔,从而提升整体效果。

2.2 关系理解:知识库补全任务 

现有的知识库具包含了庞大数量的实体和事实,但其中的内容仍然不够完全,尤其是存在大量的长尾实体,并没有多少事实与之相关。因此,知识库补全任务( Knowledge Base Completion, KBC )的目的,是向已有知识库中添加缺失的事实三元组 。这些新增的三元组中,无论是谓词 还是它的两个参数实体 ,都已存在于知识库中。换言之,新增的事实并不会给知识库带来额外的节点,或是从没见过的边,而是让知识库的图结构更加稠密。

新增事实三元组(尤其是参数实体)的获取方式通常有两种。第一种来源为经过了实体链接过后的外部文本,纯文本或表格文本均可称为来源。对于纯文本,当在句中定位两个参数实体后,句子剩下的部分成为了描述实体间关系的上下文。此时即可依据上下文信息来预测对应的知识库谓词,即等价于关系分类问题,相关研究包括词级别卷积神经网络[61] 以及依存语法路径上循环神经网络[62]。对于表格文本,知识库补全关注于表格的两列之间,利用表列所包含的实体,判断两列之间的关系是否与知识库中特定谓词对应,实现可能的大批量事实补全。例如图2–1,Title 和Author 列之间的关系被映射到 YAGO 中的 谓词。

第二种来源不涉及到任何知识库外的信息,新增三元组来自于知识库的内部挖掘, 通过寻找不同谓词之间的关联,推理出可能缺失的事实。例如1.1节提到的例子,“某人的国籍缺失,可以根据其出生地所在的国家进行推测” ,人类可以通过这样的方式进行知识的手动补充,正是因为掌握了国籍、出生地、地点被包含这三个谓词之间的关联。 这条路线不受知识库外信息的干扰,因此是我们关注的研究点。

学术界已有工作在此场景上研究知识库补全的解决方案,并提出了相关的 KBC 数据集,例如 FB15k [29]和 WN18 [77],分别是 Freebase 和WordNet 的子集。对于知识库补全模型的测评,主要通过主宾语预测( Link Prediction )以及三元组分类( Triple Classification )这两个子任务来进行。前者为三元组 预测缺失的主语或宾语,后者则判断给定的 是否为正确事实。两者虽然形式不同,但都需要计算三元组的置信分:

解决知识库补全的方法主要分为两类。第一类基于规则推导,用逻辑表达式描述实体间存在特定谓词时,所需要满足的特定规则;第二类基于知识库向量,学习所有实体、谓词的连续特征表示,并挖掘三元组各部分特征表示之间存在的深层代数关系。下面将分别介绍这两种方法。

2.2.1 基于规则推导的模型 

基于规则推导的模型旨在使用人类可以直接理解的规则形式,来描述不同谓词之间的联系,即如果 之间满足特定的条件,则推理出三元组 成立。为方便论述,我们将三元组以布尔表达式 表示,若对应三元组存在于知识库中,则表达式为真,否则表达式为假。文献[25]以一个简单的推导规则为例:若已知某运动员为球队效力,以及球队所处联盟,则可以推导出运动员所参与的体育联盟。该规则可以通过一阶逻辑表达式进行形式化描述:

(2-3)

其中 E 表示知识库实体集合。规则的左侧部分,使用的两个谓词实现了主语 到宾语 c 的连接,且不包含多余的布尔表达式,因此这条规则表现为由谓词序列构成的路径。对于“依靠出生地推测国籍”的规则,我们可以形式化为以下逻辑表达式:

(2-4)

其中谓词序列   为连接主宾语的路径,而谓词 使得宾语 c 还需要满足额外的限制条件,因此这条规则具有比路径更加复杂的结构。

利用单个推导规则进行知识库补全存在两个局限:首先,规则本身不一定完全正确,限制条件过于宽泛的规则可能打来错误的事实;其次,单个规则的覆盖率较低,能够补全的知识有限。针对这两个局限,已有的规则推导工作都致力于从知识库中挖掘目标谓词的多条规则,并学习不同规则的重要性,以实现更健壮的知识库补全。

Lao 等人提出的 PRA 模型[78] 实现了规则的挖掘和学习。对于目标谓词 ,模型首先利用谓词已有的三元组 作为训练数据,在知识库中寻找所有能连通 的谓词序列,形成了多种路径形式规则。模型利用逻辑回归实现规则权重的训练,以及对新三元组 是否为真的预测。每一条挖掘的规则类比为一个特征,对应的特征值为路径随机游走概率,即从主语 出发,沿规则的谓词序列随意跳转,最后到达 的概率。由于知识库中的谓词可能代表一对多关系,因此随机游走概率值会小于1,甚至为 0(无法通过当前规则连通)。基于此,PRA 模型能够快速抽取大量路径规则,并利用已知三元组在规则上随机游走概率实现权重训练。

一些研究工作对 PRA 模型进行了扩展。文献 [25] 对挖掘的路径规则进行了限制,要求规则至少要适用于训练数据中一定比例的主语,并对计算随机游走概率的采样方式进行了优化,这两个扩展都是基于模型性能优化为考量。Gardner 等人提出了SFE模型[26],它在 PRA 模型基础上进行了两项改进:首先,模型将作为特征值的随机游走概率替换为0/1特征,即只关心是否连通,在大幅度提升运行速度的同时,对结果没有显著影响;其次,模型引入不同于路径规则的其它特征,例如提取路径中的谓词bigram,或由主语出发却不指向宾语的单边特征等,扩充特征集合以提升知识库补全效果。Wang 等人提出了 CPRA 模型[79],主要针对具有相似谓词的规则推导优化。该模型通过层次聚类识别出具有相似语义的知识库谓词集合,然后对每个集合内的谓词采用多任务学习框架,共享挖掘的规则特征和部分耦合参数,使模型能够捕捉相似谓词之间的共性,实现隐式的训练数据共享。

2.2.2 基于知识库向量的模型 

与词向量模型类似,知识库向量的模型旨在学习一个知识库中的实体、谓词等元素在连续空间的特征表达,以完成一系列下游任务。具体在知识库补全任务中,三元组置信分的计算并不依赖自动挖掘的推导规则,而是来自主谓宾三者的连续特征表达在不同维度上的交互。词向量模型依靠大规模的纯文本语料,构建上下文单词预测任务来完成训练[60],相比之下,知识库向量模型的训练过程更为直观:利用知识库已有三元组作为训练数据正样本,并自动生成不存在的三元组作为负样本,计算三元组置信分进行训练,而这也恰好与知识库补全任务的目标一致。

知识库向量模型的优点在于所有谓词共同训练,更有效地利用训练数据,并且能在连续空间中体现不同谓词的相似性,但相应地,其缺点在于可解释性较弱。不同的知识库向量模型对实体和谓词的特征表示具有不同的形式,特征交互的方式也不尽相同,下 面主要介绍几个具有代表性的模型。

由 Nickel 等人提出的 RESCAL 模型[28] 是一个基础的知识库向量模型,模型对三元组 置信分(简写为 S)的定义,基于主宾语实体特征表示的在不同维度间的两两交互:

(2-5)

其中 为对应实体向量,维度为 为谓词 的权重矩阵,其中 体现了实体向量的第 维特征对于第 个谓词的交互重要性。由于 RESCAL 使用矩阵连乘形式捕捉实体向量之间的交互,因此也被称为双线性模型。如图2–5a所示, RESCAL 模型可表示为双层神经网络结构,首先通过张量积( Tensor Product )构建实体对 (  ,  ) 的组合特征,再利用与特定谓词相关的参数 作为权重,得到三元组最终的置信分。 RESCAL 模型学习的实体特征表示能够捕捉不同实体间的语义相似性,换言之,若两个实体可以通过相似的谓词连接至相似的其它实体,那么它们的特征表达也更加相近。

图2–5 多种知识库向量模型示意图。

RESCAL 模型存在的一个问题在于参数量过大,每一个谓词对应参数量为 , 对于拥有大量谓词的知识库而言,会带来可扩展性的问题。一些后续研究对此进行了改进。Socher 等人以及 Dong 等人分别提出了 E-MLP [81] 和 ER-MLP 模型[27]。图2–5b为 ER-MLP 的示意图,均由两层前向网络构成,第一层用于学习三元组的组合特征表示, 第二层则通过组合特征输出置信分。 E-MLP 结构较为类似,故此处不专门画图。两个模型的置信分计算如下:

(2-6)

其中, 为非线性激活函数。对比 RESCAL 模型,E-MLP 的最大不同在于可以通过调整矩阵 来学习实体间不同维度特征的交互,从而优化实体对 ( , ) 的组合特征表示,并大幅度减少参数数量。E-MLP 模型中,不同的谓词依然对应不同的参数,而 ER-MLP 模型将谓词也映射为向量表示,与两实体共同作为第一层的输入,因此模型的参数 C 与 均与特定谓词无关。两个模型依然能够让语义相似的实体映射至连续空间的相近位置。

Nickel 等人提出了 HOLE 模型[82],该模型利用循环相关运算( Circular Correlation )巧妙地代替了 RESCAL 中的张量积操作:

(2-7)

可以从公式中看出,循环相关运算等同于将张量积的结果进行了分组,模型通过对实体特征表示的学习,让具有相似语义的特征交互归为同一组,共享同一个权重。因此 HOLE 的优势在于将 RESCAL 中的二维矩阵参数降低至一维,同时尽可能保留了特征交互的表示能力,并且在实验中效果优于 RESCAL 和 ER-MLP 模型。

此外,Socher 等人还提出了较复杂的神经张量网络( Neural Tensor Networks,NTN ) 模型[81],可以看做是 RESCAL 和 E-MLP 的组合体,对实体对( , )构建的组合特征表达同时包括双线性和前向网络特征,但模型参数量也因此更加庞大,在小数据集上更容易出现过拟合。

另一类知识库向量模型是以 TransE 为典型的被称作隐距离模型。相比 RESCAL 等模型依照神经网络构建的置信分函数,隐距离模型对置信分的计算则与距离度量直接相关。这与 2.1.3 节介绍的跨语言词向量训练有着相似之处,源语言词向量经过转换后,与翻译后的词向量尽可能相近。而对于知识库向量模型,由于三元组中还有谓词的存在, 因此模型训练的实质,是学习主宾语实体向量在特定谓词下的变换方式,对变换之后的向量表示进行距离度量,距离越近,则置信分越高。为了和相关工作统一,此处用( , , )表示一个事实三元组。

Bordes 等人提出的 SE 模型[83] 较为基本,度量实体 经矩阵变换后的距离:

(2-8)

其中   为距离度量函数,例如 L1 距离或欧氏距离。谓词  对应两个参数矩阵,分别映射主语和宾语实体的向量表示至同一空间。为了降低参数个数,Bordes 等人提出了 TransE 模型[29],这也是后续很多改进模型的起点。受到词向量之间代数运算的启发,例如 [84],不同词之间的关系体现在了它们词向量的位置偏移中,因此如图2–5c所示,TransE 模型共享了实体与谓词的特征表示,利用在主语实体在 同一空间中的平移变换,代替更加复杂的矩阵变换:

(2-9)

TransE 模型设计简单、容易实现,并且具有训练速度快、可扩展性高等优点,但是对于知识库中存在的一对多或多对一的谓词不友好,例如固定主谓,TransE 无法有效区分出多个匹配的宾语实体。为此,TransH 模型[30] 尝试通过超平面投影来解决此问题, 公式定义如下:

(2-10)

如图2–5d所示,TransH 首先把 的向量表示均投影到连续空间中,谓词 对应的超平面上( 为单位法向量),并学习谓词向量表示 ,在超平面上沿用 TransE 的度量。 因此,TransH 具有更高的灵活度来应对一对多或多对一谓词,同时依然保有 TransE 可 扩展性高的特点。TransR模型[31]同样尝试解决一对多谓词的问题,类似于 SE 和 TransE 的组合体,利用投影矩阵 将实体表示转移至新的空间后,再进行基于平移的距离度 量。因此 TransR 模型中,实体和谓词的特征表达并不共享同一个语义空间,这与 TransE 和 TransH 模型均不同:

(2-11)

此外,还有其它 TransE 模型的改进工作,包括体现距离度量在不同特征维度间差异的TransA [85],生成谓词多个表示以解决一对多问题的TransG [32] 等,这里不再展开讨论。

2.3 问句理解:知识库自动问答任务 

自动问答任务是一类以自然语言问句为输入,并自动给出对应答案的任务。基于知识库的自动问答( Knowledge Base Question Answering, KBQA )是其中的一个热门研究方向,也是本文重点关注的问题。在此问答任务中,输入问句为来自开放领域的事实类问句( Factoid Question ),即问句本身描述的是与某些特定实体相关的客观事实,对应的答案通常表示为知识库中的实体、时间、数值等简单形式,因此类似“how”、“why”等以完整句子作为答案,或事实涉及到主观判断的问题,不在任务的考虑范围之内。以一个简单的英文问句为例,问句“what state borders texas?” 描述了与德克萨斯州相关的事实, 其答案有多个,包括New Mexico,Oklahoma,Arkansas,以及 Louisiana 四个实体。

对于知识库问答任务,使用的外部信息显然为结构化知识库。正确答案的获取依赖于问答模型对问句整体语义的理解:一方面准确定位问句中出现的相关实体,并链接至知识库;另一方面根据问句信息,推理出未知答案与相关实体在知识库中具有的关系。前者涉及到实体链接技术,后者体现了问句与知识库的语义匹配,也是问答模型的核心。为了衡量问答模型对不同类型问题的效果,学术界已提出了大量知识库问答数据集,例如对问句进行结构化语义标注的 QALD [86] 和 Free917 [38],以及具有更大规模问答数据量的 WebQuestions [40] 和 SimpleQuestions [47] 等。

与知识库补全任务类似,根据问句语义的表示形式进行划分,知识库问答模型大致可以分为两类,即基于语义解析( Semantic Parsing )和基于信息抽取( Information Retrieval )的模型,下面将分别介绍研究。

2.3.1 基于语义解析的问答模型 

解释语义解析技术之前,我们先讨论人类对问题的思考方式。对于人类来说,问句 “what state borders texas” 包含了两个与正确答案相关的线索:1) 答案是一个(美国的)州;2)答案与德克萨斯州相邻接。由于答案未知,因此每一个线索都对应着一个具有变量参数的事实三元组。语义解析技术的目的,就是用存在于知识库上的实体和谓词,对这些线索进行结构化表示。根据这两条线索,原问题的答案集合可表示为一阶逻辑表达式:

(2-12)

 

其中 代表未知答案实体,表达式中的 为真,当且仅当三元组 存在于知识库中。对于机器而言,得到逻辑表达式之后,将其翻译为知识库上的查询语句,即可直接得到所有满足语义的答案,这些答案彼此具有完全一致的特征。

由此可见,基于语义解析的自动问答模型,实质是寻找正确的语义结构化表示,即判断<问题,结构化语义>的匹配程度,而不仅仅寻找一个答案实体。相关工作[39,40, 42,43]的研究重点在于,如何由句子生成知识库上的结构化语义表示,以及如何对问题和语义结构的匹配程度进行建模。

2.3.1.1 结构化语义生成方法 

仍以 “what state borders texas” 为例,不同研究工作中的结构化语义形式并不相同, 但本质都为公式2–12所描述的逻辑表达式。图2–6列出了一些典型工作生成的解析结构。

图2–6 例句“whatstateborderstexas”的多种解析结构。

早期的语义解析模型[38,87,88] 使用概率化组合文法( Probabilistic Combinatory CategorialGrammar,PCCG )生成语义解析树。该方法与语法解析中的概率化上下文无关文 法( Probabilistic Context-FreeGrammar,PCFG )相似,根据训练数据学习文法中不同生 成式规则的概率值,并自底向上推理出每个句子最可能生成的成分解析树( Constituency Parsing Tree )。图2–6a为例句的成分解析树,描述了整句的语法结构,并标出了不同短语在句中的成分。通过 PCCG 生成的语义解析树如图2–6b所示,PCCG 的生成式规则中不仅具有代表语法的成分信息,同时还包含代表语义的 λ 表达式,因此不同成分按照语 法规则组合的过程中,各自 λ 表达式也在进行拼接,从而得到对应整句话语义的逻辑表示。PCCG 语法具有很强的语义表示能力,但由于生成式规则中涉及到不同的 λ 表达式,同时训练数据匮乏,使得模型的训练具有难度。

Liang 在 2013 年提出的 λ-DCS [89] 旨在以更加简单的概念和流程,将问句转换为 Freebase 上的语义解析树。如图2–6c所示,生成过程依然是自底向上模式,叶节点(单词或词组)对应 Freebase 中的实体、类型或谓词,但不再具有显式且复杂的 λ 表达式。 λ-DCS定义了节点组合过程的有限种语义合并方式,包括连接、交集、并集甚至更加高阶的最值、计数等操作,使得与 PCCG 相比,生成的语义解析树在结构更加简单的同时,牺牲了一定表达能力,但对于事实类问题的理解来说依然足够。

Yih 等人[42] 提出了一种多阶段的语义结构生成方法,如图2–6d所示,语义解析树被表示为有向图形式,称为查询图,图中的每一条边以及连接的两个节点,都对应公式2–12中的三元组。与之前两种方法的自底向上生成不同,多阶段语义结构生成基于由简到繁,逐步生成查询图的思路。最简单的查询图为答案节点通过谓词(或多个谓词构成的序列)连接至问句中的某一实体,形成仅有一条有向路径构成的查询图。问句中抽取的其它实体、类型、时间等信息,则通过多个不同的阶段,逐步连接至已有的路径 上,构成更加复杂的查询图。该方法不受限与问句中词的先后顺序,查询图的生成更加灵活,在多个问答数据集上均有良好的效果。

Cui 等人[44] 提出了一种基于模板的方式,对问句生成谓词序列形式的语义结构。模板是对问句抽象表示,它将问句中的实体替换成类型,指代了一组具有相同语法和语义描述的问句,“what states border $location” 是一个具体的模板例子。模板的提取依靠外部的大规模问答数据,作者对 Yahoo! Answers 中大约 41M 问答对进行实体与答案识别后,生成了约27M不同的模板,并通过 EM 算法学习其指向谓词序列的条件概率。对于 每一个问句的语义结构生成,则通过生成模型,由模板进行过渡得到不同谓词序列的概率。这样的方法,优点在于利用大量外部数据获取准确率高的模板以及和语义的匹配,但模型的召回率可能成为短板,当问句语法不规范时,简单的模板匹配容易失效。此外, 一些文献 [90,91] 使用了基于依存语法树转换的方式,利用结构相似性实现语义解析结构的生成,这里不再一一介绍。

2.3.1.2 语义匹配模型构建

由于自然语言的多义性,语义解析结构的生成结果通常都不唯一,因此需要对<问句,语义解析结构>的匹配度进行建模,选择最高匹配度的解析结构进行知识库上的答案查询。传统的语义解析模型主要基于特征工程,Berant 等人[40] 的研究工作为一个典型例子。语义解析树由 λ-DCS 生成,抽取出的特征包含三类:问句中的短语与对应知识库谓词的对齐特征,不同谓词参与合并的特征,以及解析树的总体结构特征。前两类特征来自于解析树的自底向上生成过程,用于捕捉每一个操作,后一类特征则统计解析树中不同类型操作的数量,以及最终返回的答案数量。

为了弥补特征工程耗费人力的缺陷,同时获取更高层面的语义匹配信号,Berant等人在后续的工作[41]中引入了转述特征(Paraphrasing Feature),通过简单的规则将解析树翻译成自然语言问句,并衡量原问句和生成问句之间是否具有转述关系,将其作为额外一组特征。转述关系涉及到自然语言文本匹配问题,作者使用基于词对应的关联模型和词向量的维度空间模型两种方式进行建模,使得问答系统可以得到解析树的整体语 义,是传统特征工程的有力补充。

最新的自动问答模型广泛使用了深度学习技术。相关研究的共同点在于遵循一种 “编码—比较”框架,其重点在于,通过神经网络的特征学习能力,对问句和解析结构分别进行编码,得到各自向量表示,最后计算向量之间的相似度,代表问句与解析结构的匹配程度。以简单问题数据集SimpQuestions 为代表的问答模型几乎完全属于这一范畴, 由于在 SimpleQuestions 中,问句的语义解析结构均为单一谓词序列,因此这些模型本质上都是对文本序列和谓词序列之间的匹配进行建模。Yu 等人[49] 提出的 HR-BiLSTM 模型利用循环神经网络进行建模,如图2–7所示,谓词序列输入分为两个粒度:以唯一编号表示的编号序列,以及将谓词名称相连的单词序列,分别通过双向 LSTM 层进行编码,问句文本的编码也利用了双向 LSTM 层,并使用多层间的残差连接方式进行编码,旨在让模型能同时捕捉单词粒度和问句整体粒度的语义信号。SimpleQuestions上的其它类似模型还包括文献[48,50,92,93]。

图2–7 HR-BiLSTM模型

对于 WebQuestions 等数据集上的复杂问题,如同图2–6d的查询图,虽包含多条路径,但也可以选择其中最重要的路径作为主体与问句计算匹配程度。微软的两个自动问答的研究工作[42,43]利用了基于卷积神经网络的 CDSSM 匹配模型[94],对问句和谓词路径的特征学习更多关注局部的词序信息,见图2–8。其中,前一个研究工作由 Yih 等人[42] 提出,深度学习模型仅关注问句和最重要谓词路径的匹配度,对于查询图的其它分支路径,依然使用特征工程的方式寻找问句和谓词的字面匹配。Bao 等人[43] 的改进在于同样利用 CDSSM 模型,对分支路径与问句中的特定上下文进行匹配,替代了繁琐的特征工程。然而这些模型并没有能够学习到查询图整体在连续语义空间的特征表达, 不同路径的语义互相独立,因此面对复杂问题仍存在缺陷,这也是我们的研究重点。

图2–8 CDSSM 模型。

2.3.1.3 训练方式

训练方式的不同,主要取决于训练集中是否包含已标注的语义解析结构。已有的问答数据集中,Free-917 人工标注了每个问题的逻辑表达式,QALD 系列数据集则标注了 SPARQL 查询语句。对于这些正确结构已给定的数据集,可以直接利用监督学习算法进行匹配度训练。

显然语义结构的标注需要知识库领域的专家,因此标注过程会消耗大量人力,更大规模的数据集例如 WebQuestions 和 ComplexQuestions 仅包含每个问题的正确答案,而没有语义结构信息。对于这些数据集,首先需要通过远距离监督方式构造可直接使用的训练数据,即对所有训练问题,自动生成语义结构的正负样本。已有的方法主要利用 分数衡量语义结构的好坏,兼顾其生成的查询结果的准确率与召回率,即 , 其中 代表准确率, 代表召回率。再通过设定阈值将不同的语义结构划分为正负样本,例如 Berant 等人[40] 仅将 分值为 1(即答案完全匹配)的语义结构作为正样本, 而 Yih 等人[42]则将阈值设为0.5,容忍一定程度的答案不完全匹配。远距离监督方式避免了人工标注大量语义结构,但考虑到语义偏差的存在,即答案正确的语义结构未必正确,自动生成的训练数据也会引入一定量的错误。

2.3.2 基于信息抽取的问答模型 

基于信息抽取的自动问答模型旨在直接从知识库中寻找正确答案,而不尝试对问题进行具体化的语义建模。模型主要包含三个步骤:1)对问句进行实体链接,得到其中包含的相关实体;2) 在知识库中抽取出这些相关实体周围的其它实体,构成候选答案集合;3) 计算问句与每一个候选答案的匹配度,以此预测出其中的正确答案实体。显然模型的关键点在于第三步,即以怎样的特征描述候选答案与问句之间的关联。在知识库中,一个实体所具有的信息主要包含它的名称、类型、直接相连的谓词以及周围的其它实体。这些信息组成了知识库中以该实体为中心的局部图,不同的信息抽取模型都以这样的局部图作为候选答案实体的输入。而这些模型的区别,在于特征的选取或学习方式。

Yao 等人[35] 提出的模型利用特征工程方式,将问句特征与候选答案特征进行配对组合,得到大规模的关联特征。问句侧的特征来源于依存语法树,从中抽取出不同的依存路径,以及具有强烈语义的词汇(如动词,wh-疑问词)。答案侧的特征为答案的类型, 以及与问句已知实体相连的谓词路径。通过训练,具有高相关性的配对特征(例如疑问词“where”与答案类型 location 配对)将具有更高的权重。

深度学习同样适用于基于信息抽取的问答模型。Bordes 等人[95] 提出了 QASE 模型, 同样基于 “编码—比较” 框架,如图2–9所示,问句和候选答案的局部图分别进行编码,问句的编码信息为每个词的出现次数,候选答案则通过二进制编码表示答案实体自身、 所属类型、相邻的谓词等信息。模型学习映射矩阵 ,将各自编码转换为连续空间上的语义向量, 的每一行对应一个元素(词、实体、类型、谓词)的向量表示,因此该模型实现了词向量和知识库向量的联合建模。

图2–9 QASE模型。

还有一些深度学习模型采用问句分别与答案相关的不同维度信息计算相似度,再将各个维度的相似度进行聚合,得到问句与候选答案的整体匹配度。Dong 等人[96] 提出了 MCCNN 模型,如图2–10所示,模型使用多个不同的卷积神经网络层对问句进行编码, 从而得到问句针对不同信息的向量表达。将它们分别与答案的类型、谓词、上下文向量表达计算相似度之后,最终的匹配度为这些相似度分值的总和,使得模型在寻找最佳答案时能兼顾来自不同方面的匹配特征。

图2–10 MCCNN模型。

Hao 等人[37] 的模型在 MCCNN 基础上进行了改良,除了将问句编码多个卷积层改为唯一一个双向 LSTM 层以外,主要的贡献在于模型中使用了问句和答案之间的双向注意力机制。一方面,针对答案在不同方面的表达,答案对问句的注意力能够动态调整问句中不同词的重要性,另一方面,问句对答案的注意力使得多个相似度分值互相之间也具有权重,模型训练效果要优于无差别的求和操作。

和语义解析模型比较,信息抽取模型实现了问答系统的端到端训练,直接以 < 问题,答案>作为训练数据,防止远距离监督引入错误。但同时也具有解释性较低的缺陷, 无法直接输出模型所理解的问句语义结构,有时答案预测虽正确,但特征中可能存在语义偏差。对于复杂语义的自动问答研究,我们更在意语义结构的正确性,它能直接体现 一个问答模型是否具有良好的语义理解能力。

2.4 本章小结

本章对实体、关系、问句理解这三个层面的研究进行了背景介绍和文献综述。实体理解方面,深度学习模型和跨语言词向量是我们较为关心的内容,将会在第三章的跨语言表格链接任务中使用。关系和问句理解方面,本章各介绍了两种路线不同的方法,分别是关系理解的规则推导、知识库向量表示,以及问句理解的语义解析、信息抽取。这 四种方法之间存在着一些共性:规则推导和语义解析的共同点在于,语义理解需要显式的语义结构(一阶逻辑表达式,或与之等价的知识库子图)作为媒介;而另外两者的共同点在于对实体、类型、谓词等知识库元素进行表示学习,以端到端的形式训练,模型更加面向具体任务。在第四章和第五章的研究中,我们更加在意机器是否能理解具有复杂语义的关系或问句,而不仅仅停留在特定任务的输出是否正确,因此规则推导和语义解析是本文关注的重点。

参考文献

了解更多信息请点击知识工场网站主页:http://kw.fudan.edu.cn/

合作意向、反馈建议请联系:

info.knowledgeworks@gmail.com

OpenKG

开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 博客。

文章转载自公众号

知识工场

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注