题目:基于知识的智能问答技术
作者:许坤,冯岩松
作者简介:
许坤,北京大学计算机科学技术研究所博士生,研究方向为基于知识库的智能问答技术,已连续三年在面向结构化知识库的知识问答评测QALD-4, 5, 6中获得第一名。
冯岩松,北京大学计算机科学与技术研究所讲师。2011年毕业于英国爱丁堡大学,获得信息科学博士学位。主要研究方向包括自然语言处理、信息抽取、智能问答以及机器学习在自然语言处理中的应用;研究小组已连续三年在面向结构化知识库的知识问答评测QALD中获得第一名;相关工作已发表在TPAMI、ACL、EMNLP等主流期刊与会议上。作为项目负责人或课题骨干已承担多项国家自然科学基金及科技部863计划项目。分别在 2014 和 2015 年获得 IBM Faculty Award.
1
引言
近年来,信息抽取技术的快速发展使得快速构建大规模结构化、半结构化知识库成为可能。一大批结构化知识库如雨后春笋般涌现出来,如Google Knolwedge Graph (Freebase)、Yago,DBpedia、微软ProBase、搜狗知立方及百度等企业内部的知识图谱等。
同时,这些大规模知识库也被应用于关联检索、个性化推荐、知识问答等任务中。相比于传统基于文本检索的问答系统,利用知识库回答自然语言问题可以为用户提供更精确、简洁的答案,因此一直受到学术界和工业界的广泛关注。
目前基于知识库的问答技术可以大致分为两类。第一类基于语义解析的方法。这类方法通过学习相关语法将自然语言转问题转换成可以用来描述语义的形式化语言,如逻辑表达式等。构建这样的语义解析器需要大量的标注数据,例如,自然语言问题及其对应的语义描述形式。然而,针对Freebase这样大规模的结构化知识库,在实际中很难收集到足够多的高质量训练数据。另外,语义描述形式与知识库的结构之间的不匹配也是这类方法普遍遇到的一个问题,例如,在Freebase中并没有“爸爸”或“妈妈”这样的谓词关系,只有“父母”,因此,如果想表示 “A 是 B的母亲”这样的关系,则需明确表示为“<B,父母,A>” 并且 “<A,性别, 女性>”。
另一类知识问答技术是传统的基于信息检索的方法。这类方法不会将自然语言问题完全转换成形式化的语义描述,而是首先利用实体链接技术从知识库中收集候选答案集合,然后构建排序模型对候选答案进行排序。因为不需要完整地解析自然语言问题的语义结构,因此,这类方法构造训练数据的过程相对简单,只需收集问题答案对即可。实验表明,基于检索的方法对语义简单的自然语言问题比较有效,但是难以处理语义结构复杂的问题,尤其是包含多个实体和关系的自然语言问题。例如,对于自然语言问题“What mountain is the highest in NorthAmerica?”,检索类的方法由于缺乏对highest的正确解析,通常会将所有坐落在北美的山脉返回给用户。事实上,为了得到正确的答案,问答系统还需要根据山脉高度对候选答案进行排序,并选择海拔最高的山脉返回给用户。该过程通常需要人工编写解析规则对答案进行筛选,费时费力。此外,由于自然语言描述的多样性,人们也无法事先穷举所有这样的规则。
然而事实上,Freebase这样的结构化知识库希望存储关于真实世界的知识条目,而像维基百科页面这样的文本百科资源则存储支持这些事实的文本描述。例如,在维基百科页面中,我们可以找到一段与候选答案有关的文本
Denali (also known as MountMcKinley, its former official name) is the highest mountain peak in NorthAmerica, with a summit elevation of 20,310 feet (6,190 m) above sea level。
很明显可以看出,这段文本描述可以帮助我们提升 Denali 或者 Mount McKinley 作为正确答案的置信度,并过滤掉候选集中的错误答案。正是受到这个发现的启发,我们提出同时利用结构化知识库与可信的文本百科资源,如维基百科页面,来回答知识类自然语言问题。
2
基于多种知识资源的问答技术框架
以样例问题who did shaq first play for的处理流程为例,图1展示了融合多种知识资源的问答框架。该问答系统框架主要包含基于结构化知识库Freebase的问题求解和基于非结构化知识资源Wikipedia文本的浅层推理。
-
基于结构化知识库的问题求解
基于结构化知识资源的问题求解部分只需给出候选答案集合即可,因此既可采用基于语义解析的方法,也可以直接采用基于检索的方法来实现。这里我们采用的是基于检索的方案,主要包括实体链接,关系抽取,以及这两部分的联合消解三大部分。
-
实体链接
实体链接在知识类问题解析中扮演着十分重要的角色。我们采用词性POS序列来筛选问题中的所有实体候选,以前面的问题为例,我们可以利用POS序列NN识别出实体shaq。对于识别出来的实体候选,我们使用实体链接工具S-MART获取可以潜在链接到Freebase的5个候选实体。具体而言,对给定的实体候选,S-MART首先根据字符串相似度从Freebase中获取一些候选实体,然后利用统计模型根据知识库实体与实体候选之间的共现频率计算出一个得分并排序,最终给出实体链接结果。
-
关系抽取
关系抽取用于识别问句中的实体与答案(疑问词)之间的语义关系。我们使用多通道卷积神经网络来确定自然语言问题中实体与答案之间存在的关系。具体地讲,我们使用两个通道,一个通道捕捉句法信息,另一个通道捕捉上下文信息。每个通道的卷积层接受一个长度不固定的输入,但是返回一个固定长度的向量(我们使用最大采样法)。这些固定长度的向量被拼接在一起形成最后softmax分类器的输入,该分类器的输出向量维度等于关系类别的总数,每一维的值等于映射到对应知识库谓词的置信度。
-
实体和关系的联合消歧
通常情况下的实体链接与实体关系抽取都是独立预测的,因而不可避免的会存在流水线框架下常见的错误传递现象。因此,我们提出了一种联合优化模型从实体链接和关系抽取的候选结果中选择一个全局最优的“实体-关系”配置。这个挑选全局最优配置的过程本质上可以被视作一个排序问题,即,“合理”的实体-关系配置在知识库中应更常见,应该有更高的得分。我们主要依赖从知识库中抽取的三类特征,即实体特征、关系特征和答案的特别特征。
-
基于Wikipedia文本描述的浅层推理
基于结构化知识库求解的候选答案集,我们从维基百科文本资源中收集候选答案的支持文本,并训练答案过滤器对候选答案集进行筛选,以得到更准确的答案。
-
数据预处理
具体地讲,我们首先从维基百科中找出描述自然语言问题中实体的页面。我们抽取维基百科页面的内容,并利用Wikifier识别句子中的维基百科实体,再利用FreebaeAPI将这些实体映射到Freebase中的实体。最后在页面中寻找包含候选答案的句子当做支持文本。
-
答案过滤模型
我们将浅层推理的过程抽象为一个面向候选答案的二分类任务。在实验中,我们使用LibSVM来训练该二分类器。该分类器主要使用的特征是词级别配对特征,其中第一个部分来自给定的问题,而第二个部分来自维基百科中的支持文本。更形式化地,给定一个问题q=<q1,… qn>和一个作为支持文本的句子s=<s1,…,sm>,其中记q和s中的单词分别为qi和sj。对每个问题与支持文本对(q,s),我们可以生成词级别配对特征集合{(qi,sj)},这些词对出现的次数作为特征用来训练分类器。需要指出的是,这里仅尝试了最简单的二分类方式,主要目的是检验附加文本资源的作用;而使用线性优化、或神经网络等更精巧的融合方式可能会带来更明显的准确率提升。
3
实验
我们使用WebQuestions数据集进行相关实验。该数据集一共包含5810个自然语言问题以及答案。其中训练集包含3778个问题(65%),测试集包含2032个问题(35%)。我们使用答案的平均F1值来评测本框架。表1给出了不同方法在WebQuestions数据集上的结果。
方法 | 平均F1 |
(Bast et al. 2015) | 49.4 |
(Berant et al. 2015) | 49.7 |
(Reddy et al. 2016) | 50.3 |
(Yih et al.2015) | 52.5 |
本研究工作 | |
Structured | 44.1 |
Structured + Joint | 47.1 |
Structured + Unstructured | 47.0 |
Structured + Joint + Unstructured | 53.3 |
表1基于关系抽取问答技术在WebQuestions数据集的结果
为了确定所提出框架中不同模块的重要性,我们详细比较了以下几种模型变种的结果。
Structured 该方法只包含基于结构化知识库Freebase的问题求解。具体地讲,我们首先进行实体链接,将自然语言问题中包含的实体名词映射到Freebase中的实体,其中得分最高的实体被当做结果。然后我们进行关系抽取并从候选关系中选择与实体最匹配的关系当做最终的实体-关系配置。最后,我们使用这个实体-关系配置来预测问题的答案。
Structured +Joint 与上面的方法略有不同,这个方法使用联合消歧的方法去选择全局最优的实体-关系组合,并进行基于结构化知识库的问题解答。
Structured +Unstructured 这个方法里,我们使用流水线的实体链接和关系抽取结果进行基于结构化知识库的问题求解,进而,利用基于维基百科的浅层推理来筛选答案。
Structured +Joint + Unstructured 这是我们所提出的融合多种知识资源的完整的问答框架。我们首先在结构化知识库Freebase上进行问题求解,即,进行实体链接和关系抽取的联合优化,并在Freebase上获得候选答案集合;在此基础上进行基于文本的浅层推理,即,从维基百科中抽取答案支持文本,并对候选答案进行筛选,获得最终答案。
从表1中的结果,我们可以发现实体链接和关系抽取的联合推理结果会优于流水线方法,整体效果提高了3%,并且比大部分语义解析的方法要好。另一方面,与(Yih et al. 2015)利用人工编写规则的工作相比,融合结构化知识库与文本知识资源的方法在问答准确率上整体提高了0.8%,这进一步说明了恰当的使用非结构化的文本知识资源可以在很大程度上代替人工编写规则来辅助回答自然语言问题。
本文提出的融合不同知识资源的问题解答框架具有较好的可扩展性,无论在结构化知识库求解部分,还是多种资源的融合利用方面都可进一步改进,以更大限度的发挥不同资源之间的互补作用,提高知识类问题的解答精度。
4
参考文献
-
HannahBast, Elmar Haussmann. More Accurate Question Answering on Freebase. CIKM. 2015,1431-1440
-
Jonathan Berant,Percy Liang. Imitation Learning of Agenda-based Semantic Parsers[J]. Transactionsof the Association for Computational Linguistics. 2015, 3:545–558
-
Siva Reddy, Oscar Täckström, Michael Collins,Tom Kwiatkowski, Dipanjan Das, Mark Steedman, Mirella Lapata. TransformingDependency Structures to Logical Forms for Semantic Parsing[J]. Transactions ofthe Association for Computational Linguistics. 2016, 4: 127-140
-
Kun Xu; Siva Reddy; Yansong Feng; SongfangHuang; Dongyan Zhao Question Answering on Freebase via Relation Extraction andTextual Evidence. ACL 2016
-
Kun Xu; Yansong Feng; Songfang Huang;Dongyan Zhao, Hybrid Question Answering over Knowledge Base and Free Text,COLING 2016
-
Yi Yang; Ming-Wei Chang, S-MART: NovelTree-based Structured Learning Algorithms Applied to Tweet Entity Linking, ACL2015
-
Wen-tau Yih,Ming-Wei Chang, Xiaodong He, Jianfeng Gao. Semantic Parsing via Staged Query Graph Generation:Question Answering with Knowledge Base[C]. ACL-IJCNLP. 2015,1321-1331