【基于汉语框架网络本体的问答式语义检索系统分析与设计】语义本体

  摘要 通过对检索资源及用户检索提问的语义解析,采用基于概念图匹配的语句相似度计算方法,不仅可得到与检索条件精确匹配的信息资源,而且还能查询到与检索条件语义相关的隐含信息资源,提高信息查全率和查准率。最后,用一个语义检索实验系统验证系统分析与设计的可行性和有效性。
  关键词 语义检索 框架网络 本体 语义匹配
  分类号 G354.4
  
  1 引言
  
  关于语义检索,目前学术界还没有一个确切的定义。有人认为:语义检索是把信息检索与人工智能技术、自然语言技术相结合的检索。它从语义理解的角度分析信息对象与检索请求,是一种基于概念及其相关关系的检索匹配。也有人将语义检索称为概念匹配,匹配在语义上相同、相近、相包含的词语。它是对检索条件、信息组织以及检索结果显示赋予了一定语义成份的一种新的检索方式。作者比较赞同“语义检索是一种基于语义理解技术的智能信息检索”的观点,它是指应用先进的智能理论及其技术,对信息资源和用户提问进行一系列的语义解析,通过挖掘其深层含义,充分、精确地表达知识资源和用户需求,进而在各类异构的数据库、数据仓库、知识库中进行检索,并对检索到的信息进行智能化处理之后,返回最相关的结果的检索机制。本体作为一种知识库,在这种检索机制中扮演着重要的角色。
  笔者所设计的向用户提供自然语言检索入口的基于汉语框架网络本体语义检索系统,旨在利用已构建好的框架库、词汇库、例句库等知识库,依赖于框架及框架之间的关系及语义类型限制,以语义标注的法律语料库为受限领域,实现基于用户的自然语言提问的语义匹配检索,最终给出用户真正有用、精确、简洁的答案。这将在一定层面上解决问答系统中纯粹的字面匹配、显式匹配等存在的问题。
  
  2 汉语框架网络本体库与语料库
  
  利用框架语义学原理,参考美国加州大学伯克利分校的FrameNet工程,以法律领域为研究对象,构建了法律汉语框架网络本体。
  
  2,1法律框架网络本体的构成
  法律框架网络本体库以语义框架为核心,其构成元素包括语义框架、框架元素、词元以及框架间的关系。此外,还有对框架、框架元素及词元进行语义分类的本体语义类型。
  2,1,1语义框架(Frame)作为框架网络本体的基本组成单元,语义是对该领域核心概念的描述。一个语义框架,相当于跟一些激活性语境相一致的一个结构化的范畴系统。
  2,1,2框架元素(Frame Element,FE)一个语境涉及的各种参与者、外部条件和其他概念角色,它们被称为是该语义框架的框架元素。
  2,1,3词元(Lexical Unit,LU) 某种语境在言语中被一些词语激活,而理解语言中词语意义,必需先具备概念结构,即框架语义的知识。这样的词语在框架网络本体中被定义为框架的词元。
  2,1,4框架关系(Frame Relation,FR)
  框架关系包括框架与框架间的关系及其包含的框架元素之间的关系。目前所定义的框架间关系有继承、总分、参照、透视、起始、使用、致使和先后关系。
  2,1,5语义类型(Semantic type,ST)
  语义类型是无法用框架、框架元素及框架关系等表达的一些通用语义,它表示词汇固有的、本质的、上下文无关的语义特征。主要用于对框架、框架元素和词元所指称的事物或现象进行分类。它们以一定的逻辑关系构成一个语义类型结构体系附加在框架、框架元素及词元之上。
  例如,语义框架“盗窃”(theft)表达这样一个概念或语境:以非法占有为目的,秘密窃取数额较大的公私财物或者多次盗窃公私财物的行为。这一事件(语境)会涉及犯罪者[perp]、受害者[vict]、被盗财物[goods]、作案工具[inst]、发生频率[frequ]、时间[time]等角色及因素,它们都是盗窃框架的框架元素。其中,框架元素犯罪者[perp]、受害者[vict]的语义类型是“有知觉能力者”(sentient),被盗财物[goods]的语义类型为“物理实体”(physical_entity)。不同语义类型之间以通过子类关系(subelassof)相互关联。在具体的语句中,词“盗用”、“偷窃”、“偷”“行窃”、“盗窃”等类似的词都可以激活一个“盗窃”语义场景,它们就是盗窃框架的词元。“盗窃”框架与另一个框架“犯罪”(commiting crime)框架之间是继承关系,表示前者是后者在概念及语义上的细化。
  法律框架网络本体以语义框架为核心,通过框架的内部关系和外部关系将词汇进行联系,构成一个巨大的网状数据库。框架的内部关系包括框架与框架元素的关系(hasFE)、框架与词元的关系(hasLU)。框架的外部关系包括各种框架关系以及相关联框架的框架元素之间关系、框架及其框架元素、词元与本体语义类型之间的关系(Subelassof,子类关系)。与语料库中基于真实语料提取的标注例句的句法配价信息和语义配价信息相结合,为对信息的语义理解提供了较好的途径。
  
  2,2汉语框架网络本体标注语料库
  基于法律框架网络本体的语料库建设包括标注例句库的建设和标注文本语料库的建设。标注例句用于提取例句中以词元为中心的语义特征及句法特征信息,标注文本主要作为被检索的语义信息资源。例句语料的选择,以北京大学汉语语言学研究中心的现代汉语语料库为可用资源,从语料库中不同的位置(前端、中端、尾部)下载一批包含目标词元的句子作为标注对象。对于文本语料,以中国法制日报每期的刑事案件为资源,从法制日报网下载案例,作为全文标注对象。
  对从网络上收集到的信息,笔者以手工方式去掉其中无用的不相关信息(如网页目录、网页链接、图片等)并对语料的格式进行规范(如文本标题、作者、日期、句子编号等信息的格式)等处理。然后,基于所构建的汉语框架网络本体,以语义框架为核心,以语料库中的每条句子为处理对象进行语义分析。采用计算机辅助人工标注的方法,给语义框架所在的句子进行语义标引。对标引过的句子,抽取其语义及句法特征信息并按一定的结构存储在数据库中,形成本体标注语料库。语义分析及标注过程如下:
  首先,利用山西大学计算机应用研究所开发的分词软件“分词2000”对语料中的句子进行分词和词性标注,并根据词元确定句中的标注目标词。
  第二,对句子进行依存句法分析,确定句中目标词的依存项及与依存项之间的依存关系类型。
  第三,语义标引。根据目标词所激活的语义框架,分析句子中目标词元的依存项在语义框架中充当的框架元素,将其填入框架中相应的语义槽,完成对框架元素的实例化处理。
  对句子的标注内容:句子的目标词、句中语块(片段)充当的框架元素、语块的短语类型及语法功能。目标词的标注形式为,tgt是目标词的标注符 号,w是句中的目标词。对句中语块的标注形式为“(FE-PT-GF span>”,FE,PT,GF分别表示框架元素、短语类型和语法功能,span是具体的语块。
  例如:对句子为A1“某华侨农场赵明亮为了吸毒,1998年盗窃群众的自行车30多辆。”的语义标注结果为:
  ,w。w
  第四,提取标注例句的特征信息,包括句中词元的语义配价模式信息和框架元素的句法实现方式信息。为查询子系统中的问句的语义分析做准备。句子中的这种由包括核心词在内的各语块的短语类型、语法功能按照语块在句中的位置顺序组成的信息序列即是该句的句法特征信息,也称为目标词的句法配价信息。图1是提取出的句子A1的特征信息:
  最后,选取适当的形式,将标引过的句子作为语义信息实体存储在语义语料库中,并通过词元与本体库关联。
  文本语料的全文标注与单个例句的语义分析及标注过程相同,只不过前者是一些连续的、有一定顺序的句子。
  
  3 基于汉语框架网络本体的问答式语义检索系统的设计思路
  
  基于本体的语义检索以实现对信息资源的本体化和对用户检索请求的本体化为基础。对信息资源的本体化是指利用本体知识对信息资源进行语义分析,实现信息资源的语义标注及格式化存储,从而确定文档以及文档中的句子中在本体结构中的位置;对用户检索请求的本体化是指利用本体中的知识对用户的检索请求加以规范和引导,使用户既能清晰地表达检索需求,又能使机器很好地理解用户意图。
  本文基于汉语框架网络本体的问答式语义检索系统,以所构建的法律框架网络本体为基础,探讨在该领域本体之下的语义检索解决方案。通过对资源库的框架语义标注及用户以自然语言提出的检索请求的语义解析,具体检索方案设计如下:①在框架网络本体的支持下,对用户的检索请求进行语义分析及语义扩展,确定查询目标,明确用户检索内容;②根据检索请求处理模块提交的用户查询的特征信息对语料库中的标注文本进行检索,实现查询对象与标引文本的匹配;③计算检索结果与用户检索请求的相关度大小,将最相关的句子作为答案句,从中抽取准确答案提交给用户界面。
  据此,汉语框架网络本体语义检索系统从功能上可以分为三个模块:用户检索请求处理模块、信息检索模块及答案抽取模块。如图2所示:
  
  3,1检索请求处理模块
  为了让用户更好地表达其检索意图,我们向用户提供自然语言检索入口,允许用户用自然语言向系统提问,系统收到用户提问后,经过简单的预处理,如去除前缀、后缀,采用一些自然语言处理技术,运用法律框架网络本体知识对用户的提问进行语义分析,得到用户的真正检索意图。具体方法为:基于依存句法分析确定不同类型问句的目标词,采取模式匹配方法实现对问句的框架语义分析,完成对问句的框架语义标注。根据疑问词及框架元素的语义类型确定问句焦点与问句类型,构建问句的语义检索式。
  3,1,1问句的依存句法分析笔者采用哈尔滨工业大学信息检索研究室提供的免费共享的语言技术平台LTP对问句自动进行分词和词性标注基础上的依存句法分析。以问句Q1“周绍海偷了谁的东西?”为例,分析得到的结果如图3所示:
  图中,词问依存关系用带箭头的弧线表示,依存弧从核心词出发,指向它的依存成份,并表明依存关系的类型。
  3,1,2问句中目标词元的确定
  目标词元在句中激活一个语义场景,它是句子的语义中心。因此,确定目标词实为确定句子的语义中心词。通常情况下,句子的句法中心也是句子的语义中心。在这种情况下,可以将句子的句法核心词作为语义中心词,即框架语义分析的目标词。但是,有些句子的句法中心词并不是句子的语义中心词,通过综合考察语料,结合作者的语言学知识,笔者针对不同情况确定了选择句子语义中心词的规则。
  3,1,3问句句法配价信息的提取
  LTP对句子进行句法依存分析的粒度为单个的词,而笔者在信息资源的语义标注过程中以短语为单位对句子进行框架语义分析。只考虑句法依存树中以语义中心词为父结点的各句子成份与其下位节点词一起作为一个语块与语义中心词的句法依存关系。按照这一粒度,需根据句中的词在依存树中的位置及词间的依存关系类型进行词汇捆绑,将句子划分为一个个语块。提取语块的短语类型及与中心词的依存关系类型,将相应的符号转换为与语料标注符号系统相统一的格式,构成问句的句法配价信息。
  3,1,4问句的框架语义标注
  问句语义分析的实质是对问句进行语义表征。在本系统中就是要对问句实现基于框架的语义标注。标注过程基于这样一种假设:对于两个句子,如果目标词激活相同的语义框架,且目标词具有相同句法依存结构,那么这两条句子具有相同的语义配价模式。这是因为,如前所述,词的行为,尤其是对其论元的表达和理解,在很大程度上是由词的语义决定的。因此,笔者选择通过问句的句法配价信息与语料库中例句的句法配价信息的匹配,来实现对问句的框架语义标注,具体步骤为:①在框架元素的句法实现方式信息表中查找与问句的句法配价信息相匹配的记录,得到该框架元句法实现方式对应的语义配价信息的ID。②在语义配价信息表中获取所得ID的语义配价信息,将它赋予问句中相应的语块,即对问句中的各语块标注框架语义。
  3,1,5问句焦点的确定
  问句的焦点即问句的答案所指。疑问词是确定问句焦点的主要依据。一般情况下,通过专有疑问词(例如,谁、哪儿、何时等)可以直接确定问题的焦点;对于一些通用疑问词(如,什么、哪个等),则需要凭借疑问词的附属成份来确定问题的焦点。笔者对部分疑问词及其附属成份从句法角度做了捆绑或过滤处理,所以,对问句焦点的确定不仅基于所构建的疑问词表,而且依据问句的句法、语义分析结果。
  
  3,2信息检索模块
  在信息资源的本体化阶段,笔者已将法律领域相关的自然语言文本根据法律框架网络本体的知识转化成大量的按语义框架归类、以框架元素为最小单位的信息实例,构成基于法律框架网络本体的标注语料库。
  在问题处理阶段,笔者将用户的问题转换成对某个语义框架的框架元素及其实例的查询。经过这两部分的处理,就将自然语言检索的问题转换成了对实例化语义信息的检索问题。以问句的目标框架和除目标框架元素以外的其他框架元素及其实例为检索条件,在信息资源库中查找符合条件的框架元素实例。检索流程如图4所示:
  首先,根据从用户请求处理部分提交过来的目标语义框架,在本体数据库中查找该语义框架的所有词 元;第二步,在语料库中查找以这些词元为目标词的句子标注集;第三步,筛选出包含目标框架元素实例的句子,作为答案候选句提交给答案抽取模块做进一步处理。
  
  
  
  3,3答案抽取模块
  答案抽取模块收到信息检索模块提交的答案候选句后,采取基于概念图匹配的方法对答案候选句与用户检索请求进行语句相关度计算,按照相关度大小排序选取出相关度最大的句子作为答案句。最后,提取句中目标框架元素的实例向用户提交准备答案。其工作流程如图5所示:
  答案抽取模块的主要功能是按照与用户查询的相关度对查询结果排序并以一定方式显示给用户。因此,查询结果的排序算法对信息检索系统至关重要,一个好的排序算法是检索系统成功的保证,它直接决定了查询结果对用户的有用性和重要性。本系统采用了基于概念图匹配的方法,将问句的框架语义结构图与信息资源中句子的框架语义结构图视作概念图进行语义相似度计算。计算过程中,句子的语义相似度分为框架概念相似度、框架元素概念相似度和语块相似度三部分来考量。计算公式为:
  
  上式中,Sire(CGQ,CGR)是分别代表问句的框架语义结构和信息资源中答案候选句的框架语义结构的查询概念图与资源概念图的相似度。Sire(QFR,RFR)是查询图与资源图中框架概念结点的相似度。n是查询概念图中包含的框架元素概念结点数。Sim(QFEi,RFEj)表示查询概念图中第i框架元素概念结点与资源图中各框架元素概念结点之间的相似度。选择资源概念图中与QFEi相似度最大那个框架元素概念RFEj作为相匹配的框架元素,进一步计算两个相匹配的框架元素结点对应的语块间的相似度。对查询图和资源图中匹配的框架元素的语块相似度求和后除以查询图中框架元素概念结点的总数,所得结果与两图中框架概念相似度的乘积即是查询概念图与资源概念图之间的相似度或语义相关度。
  
  4 语义检索实验系统LawontoSearch
  
  在前面分析的基础上,实现了一个向用户提供自然语言接口的语义检索实验系统LawOntoSearch。下面通过一个实例说明该系统基于本体的语义检索机制并分析其运行效果。
  
  4,1LawOntoSearch语义检索机制
  
  用户向系统提交检索问句后,系统调用哈工大信息检索研究室的语言技术平台“LTP”的句法依存分析系统及词义消歧系统,对句子进行句法依存分析以确定句子的语义核心,即确定句子的目标词。利用词元库确定目标词所激活的语义框架,系统提供了与用户的交互机制,当目标词元激活多个语义框架时,可由用户辅助确定目标语义框架。然后,系统对问句进行基于目标框架的语义分析,明确问句中各语块的语义,并确定问句的焦点。例如,当用户输入检索问句“周绍海偷了什么?”后,系统对句子的依存句法分析结果为“(np-subj周绍海)(tgt偷)(np-obj什么)”,表示句子中“周绍海”作为名词短语(np)在句中做主语(subj),“偷”是该句的句法核心(具有述谓意义的词),因而也成为句子的语义核心,作为句子的语义目标词(tgt)在本体库中将激活一个语义框架“盗窃”。该框架激活这样一个语义场景:以非法占有为目的,秘密窃取数额较大的公私财产,该语义场景的参与角色(即该框架的框架元素)包括犯罪者、物品、时间、地点等。系统分析得到句子的句法特征“(np-subj)+(tgt)+(np-obj)”后与标注语料库中存储的盗窃框架下该词元的句法特征进行匹配,找到相匹配的句法特征并将与之对应的语义特征“(犯罪者)+(偷)+(物品)”赋予该句子,实现对用户检索问句的语义理解并按一定的规则确定问句的焦点。对该问句的处理结果如图6所示:
  在语料数据库中要检索的目标框架为“盗窃”,检索的目标框架元素“物品”,约束条件是“犯罪者”是周绍海。
  信息检索模块以查找出“盗窃”框架下所有词元的标注语句,从中提取出包含框架元素“物品”的实例(语块)的句子作为答案候选句。答案抽取模块计算答案候选句与问句之间的相关度并按相关度大小排序,然后按一定的形式向用户提交检索结果。检索出的答案是“一家贸易公司的煤”或者“煤”。如图7所示:
  
  4,2LawOntoSearch的运行效果分析
  测试表明,LawOntoSearch实验系统能够实现对自然语言提问进行句法及框架语义自动标注,并提供友好接口实现与用户的交互,及时修正机器自动标注的结果。并通过框架库及语义消歧系统将用户提问的目标词、语块进行语义扩充,以实现对用户提问的语义理解。检索过程中,能够对检索结果进行相关性排序,并结合问句焦点向用户提供精确答案。
  用本系统和一个基于关键词的检索系统分别对从《中国法制日报》中的10个刑事案例文本为检索资源进行处理,并做了一个简单的性能比较。以其中的一篇文本《雇佣保安原本是为防范外贼,没想到去“引狼人室”》例,当用户想知道“周绍海偷了什么?”时,LawOntoSearch找到1篇文献,返回与问句相关的4条句子,每条句子中都包含了答案,并可以读取出准确答案。当用户向基于关键词的检索系统输入关键词“周绍海+偷”,发现系统找不到相关文献,无答案返回。而如果用户向基于关键词的输入关键词“周绍海”时,系统找到1篇文献,返回13条答案句,其中9条句子并不包含用户想要的信息。在针对该文本随意提出的25个提问中,LawOntoSearch对其中20个问题给出了答案,答对18个,2个错误是因为LawOntoSearch系统没有还没有涉及到对于判断问句的处理。对于基于关键字的检索系统,则对其中的15个问题做出回答,并且返回答案噪声较大,其中包含错误答案和无关信息。从这个简单的性能比较可以看出LawOntoSearch系统在检全率和检准率两方面都比基于关键字的信息检索系统有一定程度的提高。
  
  5 结语
  
  本体是对世界或领域知识的概念化描述。本文将法律框架网络本体应用于语义检索系统中,以实现对法律领域的检索资源和用户检索提问的语义理解及语义扩展,为提高问答式检索系统的性能提高了可靠的保证。不足之处在于,目前语料库中不论是标注例句语料还是检索资源语料都规模较小,对实现问句的语义分析有一定的制约性;在语义检索过程中,只是利用到了框架之间的直接继承关系,对于框架网络本体库中丰富的语义关系没有充分利用,还没最大限度地发挥这些关系在信息检索乃至语义推理中的作用。