基于本体和语义文法的上下文相关问答

2016-05-04 02:55王东升王卫民刘亮亮符建辉
中文信息学报 2016年2期
关键词:焦点本体语义

王东升,王 石,王卫民,刘亮亮,符建辉

(1. 江苏科技大学 计算机科学与工程学院,江苏 镇江 212001;2. 中国科学院 计算技术研究所,北京 100190;3. 北京工业大学 国际WIC研究院,北京 100022)

基于本体和语义文法的上下文相关问答

王东升1,3,王 石2,王卫民1,刘亮亮1,符建辉2

(1. 江苏科技大学 计算机科学与工程学院,江苏 镇江 212001;2. 中国科学院 计算技术研究所,北京 100190;3. 北京工业大学 国际WIC研究院,北京 100022)

在问答系统中,用户的提问通常不是孤立的,而是使用连续的多个相关的问题来获取信息,用户在与这样的系统进行交互时,才会感觉更自然。在已构建的非上下文相关问答系统的基础上,该文提出了一种可以处理上下文相关问题的方法并开发了系统OSG-IQAs。方法首先识别当前问题是否是一个从问题(follow-up),并判别其与前面问题的具体的相关类别,然后根据相关类别,利用话语结构中的信息对当前的follow-up问题进行重构,并提交到非上下文相关问答系统中。最后,将方法在两个不同规模的领域进行测试,并与相关系统或方法进行比较,测试结果表明,该方法具有较好的可扩展性。在总体测试中,该方法比基线系统获得了更好地效果,同时利用手工将所有上下文相关问题进行上下文消解,系统与此也进行了比较,并获得了相近的性能。

本体;语义文法;上下文;问答

1 前言

近年来,上下文相关的问题回答(IQA)系统作为一种获取信息的新技术获得了越来越多的关注。正如一些作者指出[1-2],问答系统过程单回合的提问方式往往不能满足用户的信息获取需求。在人机交互中,用户所提问的问题都是与同一个主题相关的,所以用户在形成新问题时,可以重复使用部分上下文信息。几种比较常见的上下文现象包括省略(ellipsis)、指代(anaphora)、明确说明(definite descriptions)等[3-4]。

上下文现象中的指称消解是交互式问答系统的一大挑战。为了能够消解上下文现象,在人机交互的过程中,系统必须对用户的关注焦点进行跟踪记录。本文构建了一个基于本体和语义文法的上下文相关问答系统(OSG-IQAs),这个系统是在已建立的一个非上下文问答系统基础之上建立的(OSG-QAs)[5]。在构建OSG-QAs时,首先创建用本体描述的领域模型以及通过抽象常见问题来设计语义文法,其中领域中的概念、属性和关系映射到领域本体。在处理用户查询句子时,通过生成句子的解析树,实现将用户查询句子中所关心的概念、属性或概念间的关系与领域概念模型片断的匹配,并依据匹配结果和语义动作的参数列表,实例化参数,并从预先构造的数据库中查询答案并返回给用户,领域本体及语义文法的具体解析过程详见文献[5]。

当领域相关的用户问题不能从OSG-QAs得到答案时,也就是说,用户问题没有生成任何解析树,那么在这种情况下,系统将认为这个问题极有可能是一个follow-up问题(即该问题与用户已经提过的其他问题相关,在该问题中,用户重用了部分上文信息)。

在OSG-QAs中,问题没有生成任何解析树的原因主要有两种。第一,用户的当前问题是领域相关的,但没有被已有的语义文法所覆盖;第二,用户的问题中省略或遗漏了部分信息,而这些信息正是生成解析树所必须的,也就是说,用户的问题是语义不完整的,而这些省略掉的信息可能包含在用户以前的问题或系统给出的答案中。第一种原因在OSG-QAs中是几乎可以忽略的,因为在系统稳定运行一段时间之后,系统的知识库将逐渐得到完善,绝大部分的语义完整、领域相关的问题都可以生成一棵或多棵解析树。另外,当一个问题所生成的得分最高的解析树中的分值低于某一个设定阈值时,也认为这个问题可能是一个follow-up问题,上述判别主要是基于这样的直观想法:不匹配比弱匹配更好(Non-match is better than poor match)。

虽然一个上下文相关问题通常包含了指代表述或省略了一些重要的内容,但我们认为如果能够依据问题的上下文信息,将这些上下文中的指代成分正确消解或缺失信息补充完整,则依然可以将这些“补充完整”的句子提交到一个非上下文问答系统中并得到正确答案。在OSG-IQAs中,我们就是按照这样的思路来回答用户的上下文相关问题。系统首先识别上下文现象的类别,并采用不同的策略来恢复问题中“丢失掉”的信息,最后,将恢复后的问题再次提交到非上下文问答系统OSG-QAs中进行分析。

2 相关工作

2.1 上下文问答

近年来,基于上下文的问答系统引起了很多的国际会议和期刊的关注[6-8]。上下文相关问答最早是于2001年国际著名的文本检索会议(TREC)中作为一个挑战任务。在TREC中,一个QA竞赛单元(Track)试图评估参赛问答系统在一系列问题中跟踪上下文的能力。然而,Voorhees对这一评测任务作出了这样的评价:“一个问题系列中的第一个问题通常已经将后续问题答案的查找范围限定在了一个足够小的文档子集合中,所以整个上下文问答系统性能直接受第一个问题是否能够被正确回答影响,而与系统的上下文跟踪能力不是很相关”[9]。正是由于上述原因,在后续的几届TREC会议中,上下文问答任务没有被作为挑战任务[10]。2004年,TREC会议重新推出了这一任务,并将所有问题组织在64个系列中,每个系列中的问题重点关注某一个特定的主题。文献[11]比较了TREC数据和真正的问答系统的日志,发现TREC的数据集与用户的真实问题在一些方面还有较大的区别,比如,TREC数据集中的问题通常比较长,而实际用户的问题一般比较短;TREC数据集中的指代现象比较多,而实际用户问题中的指代现象较少等。所以,他们建议在以后类似的评测中,应该考虑这些因素,并使得评测数据集中的问题尽量真实。

在一个系列问题中,较早出现的问题通常为后续的问题提供了上下文环境。然而,在现实中,QA系统并不会被提前告知各个系列之间的界线。文献[12]提出了一个数据驱动的方法来识别系列之间的界线。具体来说,若当前问题与前面的问题相关,则认为当前的问题与前面的问题属于同一个系列中;反之,若当前问题与前面的问题不相关,则认为这个问题属于一个新的系列,作者使用决策树学习方法,将界线识别问题看作是一个二元分类问题:一个问题开始了一个新的主题或延续现有的主题。他们的方法并不能直接应用于本文的系统中,因为本文的系统不但要识别当前问题是否是一个follow-up问题,还要识别当前问题与前面问题的关联类别。在识别follow-up问题的具体类别方面,文献[13]等指出在交互式问答系统中,通过度量问题和答案之间的浅层词汇相似性来区分follow-up问题类别的性能与手工标注相近(如主题延续和主题转移)。文献[14]对这一方法进行了改进,提出的方法基于不同的对话理论和话语结构,并加入了一些深层次的特征来度量文本之间的一致性。然而,前述几种识别follow-up类别的方法中,要么是使用单一的、手工选择的浅层或深层特征,要么是使用手工选择的浅层特征与深层特征的组合,这些方法的缺点是需要较多的人工干预,对系统效率有一定的限制。文献[15]对上述几个系统的方法进行了优化,通过自动收集对话管理的元数据来增加新的特征,并通过主成分分析(PCA)将这些信息进行组合。

在由日本国家信息研究所主办的一系列信息检索评测讲习班NTCIR上,一个上下文语境任务也被作为问答竞赛单元的一个子任务。他们根据文献[16]的建议准备了NTCIR QAC的测试数据,即:1)一个系列中的问题应该相对较多,通常应该达到七个问题(QAC-3);2)引入两种系列类型,分别是集中型和浏览型,在集中型系列中,所有问题都是与同一个主题相关的,而在浏览型系列中,随着对话的进行,主题不断变化。在处理这两种类型系列中的问题时,都需要将先前的交互历史考虑进来,并且进行某种形式的语境融合,即识别出先前交互历史中与follow-up问题相关的信息,并且能够将这些信息用于处理follow-up问题。在不同类别的follow-up问题中,最重要的是要能够区分话题转移(Topic Shift)和话题继续(Topic Continuation)两种类别,在处理这两种类别时,通常需要使用完全不同的处理策略。

因此,在交互式问答领域中,重要的子任务包括确定问句的分类体系,识别问句所属的类别,以及针对每一种类别制定不同的语境融合策略[17]。

总的来说,目前所采用的语境融合方法可以分为两类,第一类方法主要将语境融合的焦点放在文档/文本片段的检索过程中,主要思想是对当前提交给检索系统的query进行扩展,而用来扩展的相关的词或短语出现在以前提交给系统的问题中[18]。第二类方法则基于指代消解等方法对问题进行完善,完善过程包括用具体的指示成分来代替代词,补充完整省略的成分等,对问题完善后,再将完善后的问题提交到一个非上下文问答系统[6]。为了保证问句完善的正确性,文献[10]提出一种检查问题的完善是否合适的方法,方法主要检测完善后的问题是否与知识库相一致,以及检测完善后的问题是否与语境相一致。

本文提出的方法与上述的第二种方法类似。但是,本文所使用的上下文信息并不是简单的出现在以前的问题中的关键词或短语,而是系统对于以前的问题的理解结果。此外,我们根据不同的上下文关联类别分别将上下文信息的不同部分融合到当前问句的理解过程中。

2.2 话语建模

为了能够解决上下文问题,问答系统通常需要在与用户的交互过程中,跟踪并保存用户的关注焦点。在人机交互过程中,通常使用一个话语结构(Discourse Structure)来对某一时刻的用户关注状态进行建模。在自然语言处理领域,已经有大量关于话语建模的工作。关于话语的研究主要解决两个重要的问题:1)要从话语中获得什么信息;2)这些信息将如何应用到语言解释和语言生成中。

已经出现了很多的关于文本或对话的理论,前者如Hobbs theory[19]和Rhetorical Structure Theory[20],后者如Grosz与Sidner的对话理论(Conversation Theory)[21]和话语表示理论[22]。文献[23]认为,在系统和用户的行为有限的情形下,人机交互中的自然语言接口所涉及的话语结构,比隐藏于实际的人与人之间对话中的话语结构要简单的多。文献[24-25]实现了一个名为yourQA的面向开放域的问答系统,在交互时,用户可以以自然对话的方式向系统提交查询语句。在yourQA系统中,他们增加了一个名为user mode的模块,这个模块主要负责跟踪并记录用户的年龄范围,阅读水平和用户所感兴趣的网页[26]等,同时,系统使用了一个对话管理器来管理用户与系统之间的对话,对话管理器通过识别用户查询语句中的言语行为(Speech Act),并使用不同的策略来消解不同的上下文指代问题,从而使得系统能够智能地与用户进行交互。

文献[2]提出了一种新的面向交互式问答系统的话语模型,在这个话语模型中,系统跟踪并记录了用户查询语句之间的主题转换。虽然关于跟踪查询语句之间的主题转换的应用还没有进行较深入的研究,但文献[27]给出了一个初步的试验,他们使用一种基于中心理论的主题转换模型来处理上下文相关问题,试验结果表明他们的方法要优于一般的查询扩展方法。

上述提到的话语结构对于中小型应用来说显得比较复杂,并且通常都需要依赖于对用户查询语句的深层次理解,而自然语言理解目前还是一个很不成熟的技术。本文中,我们提出了一个包含问句语义信息的话语结构,问句的语义信息通过对问句的浅层次语言理解获得;在与用户的交互过程中,系统还将动态地更新话语结构中的信息。

3 领域建模

在构建系统时,需要首先建立领域本体和问题本体,其中,问题本体与本文的上下文相关问答密切相关。“问题本体”主要是用于处理用户问题。问题本体刻画了用户查询意图的语义分类,语义文法中的开始符与查询意图相对应。问题本体本质上对应着用户查询问题的分类体系,本体的上层对应着对查询问题意图的粗分类,而本体的下层则对应着查询问题意图的细分类。问题本体中的节点的粒度大小与具体的应用相关,比如,可以将问题本体分为三层,第一层包括所有的问题集合,第二层是对问题的主题分类,这是一个粗分类,第三层为问题查询意图的分类(也称作问题焦点),这是在每一个主题下的细分类。为了下文举例的方便,这里给出一个通信业务信息查询领域的问题本体,如图1所示。

图1 问题本体示例

在上述问题本体中,第二层对应着对用户查询问题意图的粗分类,也称主题分类,再在每一个主题类中,对用户查询问题的意图进行进一步细分,比如主题“分期付款”下面包括分期付款办理,分期付款手续费等等(用“IO”表示Instance Of“是实例”关系)。

4 上下文相关问答

4.1 话语结构

在人机交互过程中,本文使用话语结构来跟踪并记录人机对话的状态。在OSG-IQAs系统中,话语结构中包含了下面几个槽信息,分别是:用户ID,目标概念,主题,查询焦点。其中,用户ID可以根据应用的需要,填充不同的值,如电话号码,IP地址等,其作用是:QA系统可能与多个用户在同时交互,利用用户ID来判别问题是否来自同一个用户,只有来自同一个用户的问题才是本文上下文相关问答所关心的。目标概念与领域本体中的概念相对应,表明当前问题所关心的具体概念,如某一个具体业务等;主题对应于问题本体中的非叶节点,表示了用户查询意图的粗分类;查询焦点与问题本体中的叶子节点相对应,它表明了用户当前的查询关注点。目标概念,主题以及查询焦点与一个用户查询语句的语义信息相关联,是从查询语句的理解结果中获得的,而这些信息都是组织在领域本体和问题本体中的。话语结构如下所示。

话语结构{

槽名:用户ID

槽名:目标概念

槽名:主题

槽名:查询焦点

}

例如,当一个用户向系统提交了查询语句:

南航信用卡有什么特色?

经过系统的理解后,所对应的话语结构如表1所示。

表1 话语结构示例

表1中的话语结构目标概念是在语义动作中加以标志并抽取出的概念实例;查询焦点对应着语义解析树的根节点;而主题“介绍”则是在获得查询焦点后,利用问题本体中的主题-查询焦点的上下位关系获得的。

根据不同的应用需求,话语结构中所记录的信息的粒度大小以及包括信息的多少都可以改变。信息的粒度越小,越有利于将它们应用于语境推理。但是,信息粒度越小,就意味着需要对查询语句进行更深层次的语义理解,也就意味着系统的复杂度越高。所以,在具体设计话语结构时,需要充分考虑到系统的实现复杂度。

4.2 话语转换

定义1 (Follow-up问题)Follow-up问题是指该问题与用户已经提过的其他问题相关,在该问题中,用户重用了与其相关的问题的部分上文信息,需借助于相关问题才能正确理解Follow-up问题。

在上下文相关问题回答中,问题之间的相互关系取决于话语结构中的各个部分(称作“槽”)的演变情况。本文依据话语结构中槽的演变将话语转换分为三种类型,即目标概念转换,查询焦点转换,同一个主题中的查询焦点细化。

从一个问题到另一个问题的转换类型将决定在解释问句时如何使用上下文信息。话语转换类别也是与对话语结构的不同角度相对应,在下面,我们将通过具体的例子来说明不同类型的话语转换。在下面的例子,方括号中的文字表示用户在提交的查询句子中省略的部分。

1. 目标概念转换(TCS,Target Concept Shift)

当前问题与前面的相关问题关注了同样的属性或焦点,但是和不同的概念实体相关,也就是目标概念不同,例如:

(a)

(a.1)南航信用卡有什么特色?

(a.2)运通信用卡[有什么特色]呢?

在上述问题系列(a)中,前一个问题与后一个问题是关于不同目标概念的相同的查询焦点,两个问题分别问询了两个不同的目标概念,即“南航信用卡”和“运通信用卡”的相关情况,但其所关注的查询焦点是相同的,即都是关于两个目标概念的“特色介绍”。在这个例子中,若要能够正确处理后一个问题,则要能够从其前面的问题中恢复“被遗漏”的信息。

2. 查询焦点转换(QFS, Query Focus Shift)

这种类型的话语转换的特点是,当前问题与前面的问题描述的是同一个目标概念,但是关注的却是目标概念的不同方面,即查询焦点不同。根据目标概念是否在前面的问题中被显式地提到,可以再细分为两种类型:

(1) Follow-up问题与前面的问题是相关的,并且目标概念在前面的问题中被显式地表达出来,例如下面的一个问题系列:

(b)

(b.1) 南航信用卡有什么特色?

(b.2) [南航信用卡] 如何办理?

(b.3) [该卡] 在国外可以使用吗?

(b.4) 如何办理 [它]?

(b.5) [它] [的] 手续费如何收?

在上面的问题系列中,从(b.1)到(b.5)的所有问题询问的都是关于同一个目标概念,即“南航信用卡”,但是,这些问句却关注了目标概念的不同方面,即问题的查询焦点不同。这种类型的话语转移的特点是:目标概念在前面的问题中被显式地表达出来,但在follow-up问题中被省略了。比如例子中的目标概念“南航信用卡”在(b.1)问题中被显式地表达出来了。

(2) Follow-up问题与前面的问题是相关的,并且目标概念没有在前面的问题中被显式地表达出来,也就是说,Follow-up问题是与前面问题的答案相关,例如:

(c)

(c.1) 有什么卡可以分期付款并且可以在国外使用?

(c.2) [它]怎么办理?

在这个例子中,follow-up问题(c.2)中被省略的“它”指向隐含在前面的问题(c.1)中的目标概念,即指向问题(c.1)的答案中的概念。这种指代使用传统的消解方法是无法成功的,因为所指代的实体在前面的问题中根本没有出现。这种类型的指代消解需要依赖对前面问题的理解基础上才能成功。

3. 同一个主题中的查询焦点细化(IFR, In-topic Focus Refinement)

几个相关的问题查询的是同一个目标概念和主题,但针对不同的查询焦点,这些查询焦点在问题本体中处于同一个主题下,例如:

(d)

(d.1) 南航信用卡 分期付款 怎么办理?

(d.2) [南航信用卡] [分期付款] 手续费怎么收 呢?

在这个例子中,前面的问题(d.1)查询的是关于目标概念“南航信用卡”的查询焦点“分期付款办理方法”,Follow-up问题(d.2)查询的是关于同一个目标概念,但是关于不同的查询焦点“分期付款手续费收取”。这种类型的话语转换似乎与前一种“查询焦点转换”类似,但是,这个问题系列中的两个问题所查询的焦点在问题本体中处于同一个主题“分期付款”下面,所以,这种类型中的问题之间比“查询焦点转换”类型中的问题共享了更多的信息,在follow-up问题中会省略更多的信息。比如,在上述例子中,问题(d.2)中,不但省略了目标概念“南航信用卡”,还省略了主题相关的词“分期付款”,而在“查询焦点转换”类型中,一般用户在follow-up问题表述中只会省略问题之间所共享的目标概念词。

虽然文献[2]考虑了对话中问题之间关于事件的转移,但是我们上述所定义的话语转换还是可以与他们的转移类型有一些对应关系,如本文的目标概念转换可与他们的事件参与者转换对应,查询焦点转换可与他们的探索新主题(Topic Exploration)相对应,而“同一个主题中的焦点细化”与他们的约束细化(Constraint Refinement)相对应。

通过上面的讨论,可以知道,上下文相关问答的目标是能够自动识别问题的话语结构,以及在对话进行的过程中,识别问题之间的话语转换类型。而这一任务看似是十分困难的,因为它需要大量的知识支持以及深层的语义处理。而文献[5]所提出的基于本体和语义文法的自然语言理解技术为这一任务提供了很好的基础。

对于每一个查询语句,系统都要判定当前问题是否是一个follow-up问题,以及当前问题与前面问题的关联类型,本文提出一种上下文相关类别识别算法(Relevancy Type Recognition,RTR)来实现这一功能。而在当前问题被识别为某一个具体类型的follow-up问题后,就需要依据不同的话语转换类别,融合不同的语境信息来对当前问题进行重新解释。本文提出一种语境信息融合算法(Context Information Fusion,CIF)算法来实现这一功能。下面将分别介绍这两个算法。

4.3 上下文相关类别识别算法(RTR)

先给出本文的一个基本假设:

假设1 对于同一个用户提出的多个问题,围绕各个主题的一系列问题呈线性、连续排列,不存在交叉、嵌套的情况。

在OSG-IQAs系统中,识别一个查询语句是否是一个follow-up问题的一个重要特征是当前问题是否能够生成一棵或多棵解析树。正如在上文提到的,在系统稳定运行一段时间之后,随着知识库的逐渐完善,大多数领域相关的问题都能够生成一棵或多棵解析树(由OSG-QAs的测试结果可知,OSG-QAs具有很高的用户问题识别率[5])。

如果用户的当前查询问题没有生成任何解析树,那么一种可能性就是:由于当前问题与前面的问题具有某种关联,一些重要的成分可能被用户省略了。在这种可能性下,当前问题就有可能是一个follow-up问题。另外,当用户查询问题能够生成一些解析树时,也有可能被识别为一个follow-up问题,即当所生成的所有解析树的分值均低于某个阈值时,则认为匹配结果是不可信的,这个时候当前问题也被认为可能是一个follow-up问题。当然,还有一种情况是,用户输入的问题是完全领域无关的,这个时候也可能会出现问题不能生成任何解析树或生成的解析树的分值低于设定阈值的情形,我们会在后续的步骤以及下一节中的CIF算法中进一步验证其是否是一个follow-up问题或领域相关问题。

通过观察发现,用户在表述关联问题时,通常具有一定的模式。比如,下面是两个问题系列,follow-up问题与前面问题的关联类型均为“查询焦点转换”。

(a)

(a.1) 南航信用卡有什么特色?

(a.2) 运通信用卡 [有什么特色] 呢?

(b)

(b.1) 南航信用卡分期付款怎么办理?

(b.2) 运通信用卡 [分期付款怎么办理]如何?

通过对上述问题进行分词和语义标注后发现,“南航信用卡”和“运通信用卡”分别是两个概念词,上述两个问题系列中的follow-up问题的具有如下两个特征模式:

(I) Concept 呢?

(II) Concept 如何?

其中,concept与领域本体中的概念相对应,当问题具有这些特征模式时,则认为其可能是一个特定关联类型的follow-up问题。

定义2 (上下文相关模式)上下文相关模式是指用于表征当前问题与上文问题相关联的特征模式。

本文认为,在面向领域的系统应用中,上下文相关模式的数量是有限的且数量不大,可以手工总结,也可以通过自动或半自动方式来获取,本文目前通过手工总结方式,获得了表征“查询焦点转换”类型的上下文相关模式36条。

鉴于上述描述,本文提出了上下文相关类别识别(RTR)算法,如图3所示。

图3 上下文相关类别识别(RTR)算法

在RTR算法中,当一个问题被认为可能是一个follow-up问题后(按照上文提到的两个方法进行判别),再识别其与上文问题的相关类型。具体来说,如果当前问题Qi(下文同)中含有一个指代词,并且利用指代消解方法发现,该指代词不指向当前问题中的任何实体,那么则认为当前问题是一个follow-up问题,并且其与前面问题的关联类型为“查询焦点转换”;如果当前问题Qi中不含有任何动词,并且其表达方式与某一个上下文相关模式相匹配,则认为Qi是一个follow-up问题,并且其与前面问题的关联类型为“目标概念转换”;如果当前问题Qi中不含有任何领域概念词(即领域本体中所包含的概念),并且其表达方式不与任何一个上下文相关模式相匹配,则认为当前问题是一个follow-up问题,并且其与前面问题的关联类型为“同一个主题中的查询焦点细化”;若当前问题不能满足上面的任意一个条件,则认为其不是一个follow-up问题。

4.4 语境信息融合算法(CIF)

4.3节中,当问题被识别为是某一个具体类别的follow-up问题后,就应该使用特定的话语结构中的上下文信息来对当前问题进行重新解释。语境信息融合算法(CIF)如图4所示。

图4 语境信息融合(CIF)算法

在进行上下文融合时,首先需要判别当前用户的userID在系统中是否有对应的话语结构存在,如果不存在,并且因为输入到CIF算法的均被认为是follow-up问题,所以可以认为当前问题是一个领域无关问题。若当前用户已经有相应的话语结构,则需要根据当前问题与前面问题的关联类型(由RTR算法产生),分别使用话语结构中的不同部分来重新解释当前问题。具体来说,若当前问题与前面问题的关联类型为“查询焦点转换”,则说明前后两个问题是关于同一个目标概念的不同方面(即查询焦点)的提问,这种情况下,用户在表述后面的问题时,通常会省略掉与前面问题相同的目标概念。这时,就需要根据话语结构中记录的关于以前问题中所涉及的目标概念,将当前问题补充完整,即将目标概念插入到当前问题的适当的位置上或替换掉对应的代词。例如,当一个用户向系统提交了查询语句:

(1) 南航信用卡有什么特色?

经过系统的理解后,所对应的话语结构如表3.2 所示。

这时,若同一个用户继续向系统提问:

(2) 如何办理呢?

则根据RTR算法,可以判别问题(2)与前面的问题(1)的关联类别为“查询焦点转换”,则这里使用话语结构中的“目标概念”:南航信用卡,将问题(2)补充完整,形成新的问题(2′):

(2′)南航信用卡 如何办理呢?

重新形成问题(2′)后,系统将新问题重新提交到OSG-QAs中,根据理解结果,更新话语结构,如表2所示。

表2 话语结构状态1

从上面的例子可以看出,自然语言理解过程与领域知识库的构建(包括领域本体、问题本体、语义文法等)密切相关,完备的和精细化的领域知识库可以为自然语言理解提供很好的支持,这也正是本文所提出的面向领域的自然语言理解技术取得这么好的效果的原因所在。上述例子只给出了上下文消解的示例,具体的语义文法匹配过程详见文献[5]

5 实验

5.1 测试数据描述

据我们所知,目前还没有针对汉语的上下文相关问答的公认的标准测试语料,所以本文手工构造了上下文相关测试集。本文在两个应用领域中分别构造了测试数据,包括用户对某银行的业务信息查询和用户对某通信公司的产品及业务的信息查询,其中前者的领域概念相对较少,信息查询点(问题焦点)较少,而后者是一个较大的领域,涉及的领域概念比较多,信息查询点(问题焦点)较多。通过将方法应用于不同规模的领域中,来检测方法的可扩展性(scalability)。为了验证本文的上下文识别和信息融合算法,本文在选择数据集中的数据时,挑选的用户咨询均是上下文相关的问题,而对于其他非上下文相关问题以及一些噪声数据(比如乱码、垃圾信息等)并没有放入数据集中,主要目的就是为了测试本文所提出的两个算法的性能,对于非上下文相关问题的处理及分析详见文献[5].

数据集1:BSC_CONTEXT Data Set,数据集中的问题是关于某个银行的产品或业务的咨询,比如关于如何办理信用卡或汇款手续费等,这些问题都是真实用户提交到系统中的。数据集中包括240个问题系列(对应着240个不同的用户),共720个问题,平均每个系列包含三个问题。在这些系列中,有90个系列共236个问题是关于目标概念转移的,60个系列共214个问题是关于查询焦点转移,90个系列共270个问题是关于“同一个主题内的查询焦点细化”。前文所举示例均取自该数据集。

数据集2:MSC_CONTEXT Data Set,数据集中的问题是关于某个通信公司的产品或业务的咨询,比如关于手机归属地查询或办理通信套餐业务等。数据集中包括1 000个问题系列(对应着1 000个不同的用户),共4 200个问题,平均每个系列包含四个问题。在这些系列中,有200个系列共740个问题是关于目标概念转移的,比如Q1,“彩铃怎么开通?”,CQ1,“飞信呢?”;340个系列共1 328个问题是关于查询焦点转移,比如Q2,“彩铃咋开通啊?”,CQ2,“月租费多少”;460个系列共2 132个问题是关于“同一个主题内的查询焦点细化”,比如Q3,“宽带怎么办理?”,CQ3,“要手续费吗?”。上述示例中,CQi表示是上下文相关问题。

根据两个数据集所在领域,首先构造了领域本体,依此限定领域范围,并据此从真实用户咨询中构造了开发数据集,开发数据集与测试数据集完全独立收集,用于构造语义文法,语义文法的构造是一个逐步完善的过程,本文所提出的上下文处理方法依赖于一个已经构建相对完善的非上下文相关问答系统,具体过程详见文献[5]。

5.2 评测指标

本文采用精确率和平均排序倒数(Mean Reciprocal Rank,MRR)这两个指标来评价算法的性能。精确率公式如式(1)所示。

Accuracy=

(1)

其中,T表示测试语料,t表示测试语料中的一个句子,trees(t)表示系统对句子t的所有解析结果,按照解析树的得分高低进行排序,TA(t)表示句子t的正确的解析结果。

MRR公式如式(2)所示。

(2)

其中,T表示整个测试集,TA(t)表示句子t的正确的解析结果,rank(TA(t))用于计算查询问题t的正确分析结果在其所有分析结果中的排名。其定义如下:

(3)

引入如上定义,是因为若句子t无法理解或理解结果中没有正确的分析结果时,rank(TA(t))=0,本文取了一个较大的数值(如令∝≈10 000)来处理这种情况。

5.3 比较算法

比较方法1:为了检测RTR算法对于后续的上下文信息融合的影响,我们构建了一个baseline系统,这个系统不对follow-up问题进行分类,在遇到系统不能处理的问题时,随机地使用话语结构中的上文信息来对未能处理的问题进行重新解释。

比较方法2:为了验证系统处理上下文的整体效果,本文对测试集中的所有上下文相关问题进行了手工处理,即根据上下文关联类别,手工将不完整的问题补充完整,或将问题中出现的指代上文的代词用相应的指代成分替换,依此构造两个非上下文相关的问题集合。比如将“它怎么开通?”变换为“彩铃怎么开通”,然后将非上下相关问题再用已构建的系统进行测试.该试验主要是为了验证本文提出的RTR算法与CIF算法对上下文问题识别和上下文信息融合的性能。

5.4 试验结果及讨论

表3和表4分别给出了本文所提出方法在某银行业务信息咨询领域的上下文相关测试集BSC_CONTEXT Data Set上的测试准确率和MRR值,并分别给出了方法在三种上下文转换类别上的测试结果。

表3 BSC_CONTEXT Data Set上的测试结果(Accuracy)

表4 BSC_CONTEXT Data Set上的测试结果(MRR)

表5和表6分别给出了本文所提出方法在某通信公司业务信息咨询领域的上下文相关测试集MSC _CONTEXT Data Set上的测试准确率和MRR值,并分别给出了方法在三种上下文转换类别上的测试结果。

在两个不同规模的领域测试结果表明,方法在较小规模领域和较大规模领域中的测试结果相当,总体上准确率分别达到了88.4%和86.4%,以及MRR值分别达到了93.1%和91.7%。上述实验表明,本文所提出方法具有较好的可扩展性,能够适应不同规模的领域应用。

表5 MSC_CONTEXT Data Set上的测试结果(Accuracy)

表6 MSC_CONTEXT Data Set上的测试结果(MRR)

在上述“同一个主题内的查询焦点细化”这一类型的问题测试中,取得了相对较低的准确率。以下两个原因是导致“同一个主题下的查询焦点细化”类别的准确率相对较低的主要原因,包括:

(1) 在问题相关类别分类过程中,当问题中的代词有指代歧义时,即某个代词所指代的可能不是前面问题中的某一个概念实体,而是指向了某个概念实体与主题的组合,这时,“同一个主题内的查询焦点细化” 类型的问题会被错误地分类为“查询焦点转移”类别,可通过引入指代消解技术来解决这类问题。

(2) 在RTR算法中,一个问题系列中的问题若不含有领域概念,则有可能被识别为“同一个主题下的查询焦点细化”,但是,如果这些相关问题所对应的查询焦点在本体层次上没有被组织在同一个主题下,将导致在信息融合时,将错误的主题融合到后续的相关问题中。这类错误的出现,说明我们所设计的本体是不合理的,需要根据测试情况,对本体结构进行调整,将一些相关的查询焦点组织在同一个主题下,比如,应该将查询焦点“办理方法”与“办理失败原因”组织在同一个主题“办理”下。

总体上,引起文中几种问题类型的解析失败原因还包括以下四种。

(1) 在上下文问题处理中,前面的问题的正确理解对后续相关问题的理解起到决定作用,话语结构中的语义信息都是由对于问题的理解结果填充的,这些信息将在上下文融合过程中用来对后续的相关问题进行重构,若前面的问题不能理解或理解错误,将很可能导致使用错误的上下文信息来对后续的相关问题进行重构。

(2) 在构造测试数据集时,本文是直接从用户的咨询日志中进行提取的,但并没有考虑这些咨询的具体时间,所以会出现这样的一种情况:由于同一个用户提交的多个问题相隔时间较长,有些问题之间并没有相关性,当这些问题被错误地识别为上下文相关时,就可能出现一些意想不到的错误。在将来的工作中,可以通过在话语结构中考虑时间因素来避免这类错误。

(3) 目前,本文所提出的RTR算法还主要是基于规则的方法,由于上下文相关模式集合不完备以及模式匹配歧义等会引起一些识别错误。在以后的工作中,可通过引入一些机器学习方法来辅助归纳学习上下文相关模式。

(4) 目前的CIF算法中,在进行上下文信息融合时,本文只是简单地将相应的上文信息放在了句子的头部,而这种做法虽然对系统的整体效果影响不大(从测试结果可以看出),但还是存在一些由此带来的匹配歧义或匹配错误的情形(比如有一些规则是要求有序匹配的),在将来的工作中,可以通过引入句法分析方法,分析句子是否是句法完整的,若不完整,可依据句法分析的部分结果来估计适当的上下文插入位置。

6 结论

Follow-up问题的识别和分类、指代消解等是面向开放领域的上下文问答系统的重要技术。但目前这些技术还远未达到实用水平。而本文所提出的OSG-IQAs系统是一个面向限定领域的上下文问答系统,用户的查询问题一般不会超出某个领域范围,本文提出的使用基于领域本体和语义文法的自然语言理解技术,取得了较高的用户提问问题识别率和理解准确率(详见文献[5])。通过观察发现,大多数的follow-up问题通常不能生成任何解析树或生成的解析树的分值低于设定阈值,本文将此作为识别follow-up问题的重要特征。在此基础上,再通过其他的约束条件识别出具体的关联类别(RTR算法)。然后提出了一种简单但十分有效的话语结构来跟踪记录用户的话语状态,并根据不同的上下文关联类别,利用话语结构中的不同部分来对follow-up问题进行重构,并提交到已有的非上下文相关的问答系统中重新进行处理。本文并没有使用较为较复杂的基于机器学习的follow-up问题识别和同指消解等技术,而是使用了基于知识的方法来有效地解决了这些较复杂的问题。

[1] 宋巍, 张宇, 刘挺, 等. 基于检索历史上下文的个性化查询重构技术研究[J]. 中文信息学报, 2010, 24(3): 144-152.

[2] Chai Joyce Y, Ron Jin. Discourse Status for Context Questions[C]//Proceedings of the HLT-NAACL 2004 Workshop on Pragmatics in Question Answering, 2004: 23-30.

[3] Jaime G. Carbonell. Discourse pragmatics and ellipsis resolution in task-oriented natural language interfaces[C]//Proceedings of the 21st Annual Meeting on Association for Computational Linguistics, 1983: 164-168.

[4] Dahlback Nils, Arne Jonsson. Empirical Studies of Discourse Representations for Natural Language Interfaces[C]//Proceedings of the Fourth Conference of the European Chapter of the ACL (EACL’89), 1989: 291-298.

[5] D S Wang. A Domain-Specific Question Answering System Based on Ontology and Question Templates[C]//Proceedings of the 11th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, 2010: 151-156.

[6] Matsuda M, Fukumoto J. Answering questions of IAD task using reference resolution of follow-up questions[C]//Proceedings of the 5th NTCIR Workshop Meeting, 2005: 414-421.

[7] Ahrenberg Lars, Dahlback Nils, Arne Jonsson. Discourse representation and discourse management for natural language interfaces[C]//Proceeding of the Second Nordic Conference on Text Comprehension in Man and Machine, 1990.

[8] Sun Mingyu, Joycie J Chai. Towards Intelligent QA Interfaces: Discourse Processing for Context Questions[C]//Proceedings of the International Conference on Intelligent User Interfaces, 2006: 163-170.

[9] Voorhees, E M. Overview of the TREC 2001 question answering track[C]//Proceedings of the tenth Text Retrieval Conference, 2001.

[10] T Mori, S Kawaguchi, M Ishioroshi. Answering Contextual Questions Based on the Cohesion with Knowledge[C]//Proceedings of the 21st International Conference on the Computer Processing of Oriental Languages. 2006: 4285:1-12.

[11] Marco De Boni, Suresh Manandhar. Implementing clarification dialogues in open domain question answering[C]//Proceedings of the Natural Language Engineering, 2005: 343-361.

[12] F Yang, J Feng, G DiFabbrizio. A data driven approach to relevancy recognition for contextual question answering[C]//Proceedings of the HLT-NAACL 2006 Workshop on Interactive Question Answering, 2006.

[13] Kirschner M, Bernardi R, Baroni M, et al. Analyzing interactive QA dialogues using logistic regression

models[C]//Proceedings of XIth International Conference of the Italian Association for Artificial Intelligence Reggio Emilia on Emergent Perspectives in Artificial Intelligence, 2009: 334-344.

[14] Bernardi R, Kirschner M, Ratkovic Z. Context fusion: the role of discourse structure and centering theory[C]//Proceedings of 19th International Conference on Language Resources and Evaluation, 2010: 2014-2021.

[15] Kirschner M, Bernadi R. Towards an empirically motivated typology of follow-up questions: the role of dialogue context[C]//Proceedings of the 11th annual meeting of the special interest group on discourse and dialogue, 2010: 322-331.

[16] Kato T, Fukumoto J, Masui F, et al. Are open-domain question answering technologies useful for information access dialogues?-an empirical study and a proposal of a novel challenge[C]//Proceedings of the ACM Transactions on Asian Language Information Processing, 2005, 4(3): 243-262.

[17] Van schooten B W, Op den akker R, et al. Follow-up question handling in the IMIX and Ritel systems: A comparative study[J]. Journal of Natural Language Engineering, 2009, 15(1):97-118.

[18] Murata Y, Akiba T, Fujii A, et al. Question answering experiments at NTCIR-5: Acquisition of answer evaluation patterns and context processing using passage retrieval[C]//Proceedings of the 5th NTCIR Workshop Meeting, 2005: 394-401.

[19] Hobbs J R. On the coherence and structure of discourse. Center for the Study of Language and Information from Leland Stanford Junior University[R], Report No. CSLI-85-37, 1985.

[20] MannWC, Thompson S A. Rhetorical structure theory: a theory of text organization[R]. USC/ISI Technical Report ISI/RS-87-190, 1987.

[21] Grosz B J, Sidner C. Attention, intention, and the structure of discourse[J]. Computational Linguistics, 1986, 12(3): 175-204.

[22] Kamp H, Reyle U. From Discourse to Logic[M]. Dordrecht: Kluwer Academic Publishers, 1993.

[23] Lars A, Nils D, Jagonsson A. Discourse representation and discourse management for natural language interfaces[C]//Proceeding of the 2nd Nordic Conference on Text Comprehension in Man and Machine, 1990: 1-14.

[24] Quarteroni S, Manandhar S. Adaptivity in question answering with user modeling and a dialogue interface[C]//Proceedings of the 11th Conference of the European Chapter of the Association for Computational Linguistics, 2006: 199-202.

[25] Quarteroni S, Manandhar S. Designing an interactive open-domain question answering system[J]. Journal of Natural Language Engineering, 2009, 15(1): 73-95.

[26] Quarteroni S, Manandhar S. User modeling for personalized question answering[C]//Proceedings of the 10th Congress of the Italian Association for Artificial Intelligence on AI*IA, 2007: 386-397.

[27] Sun M, Chai J. Towards intelligent QA interfaces: discourse processing for context questions[C]//Proceedings of 11th International Conference on Intelligent User Interfaces, 2006: 163-170.

Interactive Question Answering Based on Ontology and Semantic Grammar

WANG Dongsheng1,3, WANG Shi2, WANG Weimin1, LIU Liangliang1, FU Jianhui2

(1. School of Computer Science and Engineering, Jiangsu university of Science of Technology Zhenjiang, Jiangsu 212001,China; 2. Institute of Computing Technology ,Chinese Academy of Sciences,Beijing 100190,China; 3. International WIC Institute, Beijing University of Technology, Beijing 100022, China)

In QA system, the user queries are usually not isolated, but correlated. This paper proposes an ontology and semantic grammar based method for interactive question answering, and we developes a QA system called OSG-IQAs based on an existing non-contextual question answering system. We first propose a discourse structure to maintain semantic information (i.e., the understanding result) of questions, and then use an approach to recognizing the specific type of relevancy between the previous question and follow-up question. We then propose an algorithm which fuses different contextual information (recorded in discourse structure) into the current, follow-up question according to the specific relevancy type. Lastly, the transformed question is resubmitted to the non-contextual question answering system. We finally evaluate the proposed method on two real contextual QA data sets from two areas of different scales. The results show that the proposed method has better scalability; we achieved an overall performance better than a baseline system and almost the same performance as another comparison system whose contextual phenomena are manually resolved.

ontology; semantic grammar; interactive QA

王东升(1982—),博士,讲师,主要研究领域为自然语言处理、问答系统、文法学习等。E⁃mail:wds_ict@163.com王石(1981—),博士,助理研究员,主要研究领域为中文实体识别、问答系统等。E⁃mail:wangshi@ict.ac.cn王卫民(1978—),博士,讲师,主要研究领域为本体建模、知识处理等。E⁃mail:wangweimin@gmail.com

1003-0077(2016)02-0142-11

2013-07-13 定稿日期: 2014-03-13

国家自然科学基金(61203284,61173063);江苏科技大学博士科研启动基金;北京市博士后基金(2015ZZ-25);北京市朝阳区博士后基金(2015ZZ-11)

TP391

A

猜你喜欢
焦点本体语义
焦点
眼睛是“本体”
语言与语义
“两会”焦点
本期焦点
基于本体的机械产品工艺知识表示
批评话语分析中态度意向的邻近化语义构建
“社会”一词的语义流动与新陈代谢
焦点
“吃+NP”的语义生成机制研究