基于本体推理的旅游问答系统答案抽取方法

文档序号:6471430阅读:180来源:国知局

专利名称::基于本体推理的旅游问答系统答案抽取方法
技术领域
:本发明涉及一种基于本体推理的旅游问答系统答案抽取方法。属人工智能领域。背景駄自动问答系统,又称QA(QuestionAnswering)系统,是一种智能新技术,它采用自然语言处理技术,一方面完成对用户疑问的分析处理;另一方面完成正确答案的生成,让人们在杂乱无章的网络世界中快速、准确地获得自己想要的信息。在现阶段,要让计算机完全理解人类语言还非常困难,但是对于特定的领域,采用针对性的方法,己经开发出许多成功的应用案例。在受限领域自动问答系统中,答案抽取部分是一个难点,关系到整个问答系统的最终效果。目前的问答系统答案抽取主要分为聊天机器人问答系统答案抽取、基于Web的开放式问答系统答案抽取、基于知识的问答系统答案抽取。聊天机器人问答系统在答案抽取的时候采用模式匹配的方法,来寻找问题最合适的答案。其特点是在与用户的交谈过程中,基于谈话技巧和程序技巧,而不是根据常识。在它们的对话库中,可以存放多个句型、模板,但几乎没有常识库。这种答案抽取方法由于缺乏知识,所以其实际用途不大。而基于Web的开放式问答系统先从Web上检索一些相关文档,对相关文档采取答案抽取技术抽取答案。但是,目前的基于Web问答系统大多局限在某^4寺定领域或者特定范围之内,會^够回答的问题类型也比较简单,真正的面向Web开放域的问答系统的正确率和精确性都不高,还不能提供良好的商业服务。基于知识的问答系统一般是受限领域问答系统,它包含自然语言界面的专家系统、基于受限语言的数据库查询系统、基于FAQ的问答系统、基于本体的问答系统。自然语言界面的专家系统一iK用各种专家系统语言PROLOG语言、ALLTALK语言、LISP语言等来分析回答用户的疑问,给出回答,现有的专家系统一般知识库和推理、回答机制不分离,它们按知识在专家系统语言基础上开发程序,使用范围小,可移植性不高。基于受限语言的数据库査询系统将问句转换为数据库的SQL语句,通过SQL语句在系统数据库中査询答案,这需要一个大数据库的支持,数据库的构建标准很难确定,而且用数据库方式不太适合组织领域知识库。基于FAQ的问答系统先计算用户问句和FAQ知识库中问题的相似度,从而找到FAQ知识库中与用户查询最为相似的问题,然后修匕问应的相关答案直接提交给用户,基于FAQ的问答系统回答范围有限,它能回答的内容基本上是问答对所包含的内容,很难用问答对来组织领域内所有的知识。基于本体的问答系统现在正处于研究阶段,怎样更好的利用本体行答案抽取是一个热门话题。同时,目前的问答系统缺乏推理能力,推理系统缺乏自然语言理解能力。正是这个问题困扰着大型知识库系统的建设,也使花费巨大的人力物力建立起来的知识库系统难以面向公众开展达到一定质量的知识服务。本体(ontology)原是哲学研究中发展出来的一个概念,研究客观事物存在的本质和组成。本体在哲学定义上的主要特点在于本体是关于世界某个方面的一个牛寺定的分类体系,这个体系不依赖任何特定的语言。近年来,随着信息科学的飞速发展,本体逐渐用于知识工程和信息科学等领域之中。本体在国外己经成为研究热点,在多个领域出现了具体应用,其研究集中在知识工程、本体工程、信息组织与检索和语义Web等方面。比较著名的通用本体研究包括CYC项目和Chan2drasekaran等的关于任务和问题求解方法本体的研究。前者是美国的微电子与计算机技术有限公司的研究项目,目标是开发本体,进行常识推理,目前已经发展成为一个庞大的常识系统;后者则是研究可共享问题的求解方法,与领域无关的推理方法。比较著名的领域本体研究包括爱丁堡大学的企业项目和多伦多大学的虚拟企业项目。国内对于本体的研究己有很多年的时间了,比较有影响的有中科院数学所陆汝钤研究员领导的常识知识的实用性研究,中科院计算技术研究所曹存根研究员主持的大规模知识系统的研究,以及中科院数学研究所金芝研究员研究的基于本体的软件需求获取方法等。比较有名的通用本体构建研究包括中科院计算技术研究所的大规模知识系统研究和中科院数学研究所的常识知识库研究。
发明内容本发明实现了一种基于本体推理的问答系统答案抽取方法,该方法将答案抽取过程分为三步,第一步定义领域中的语义规则,然后将基于语义规则推理与信息检索相结合进行答案抽取,最后再根据不同的问句类型设计相应的答案抽取算法,提高答案抽取的准确率和召回率。本发明目的在于提出利用本体建立知识库,再定义领域的语义规则,并对用户问句意图进行分类分析,最后利用基于语义规则的推理和信息检索相结合的答案抽取方法从本体知识库中进行答案的抽取。在开放测试中,基于本体推理的问答系统对于用户的1346条自然语言提问的回答,准确率达到了81.35%,召回率达到了90.49%,取得了良好的效果。一种基于本体推理的旅游问答系统答案抽取方法,其特征在于第一步定义领域中的语义规则,进行人工本体知识库的构建,并对用户问句进行分析;第二步将基于语义规则推理与信息检索相结^S行答案抽取;最后再根据不同的问句类型设计相应的答案抽取算法。基于本体推理的旅游问答系统答案抽取方法,该方^^括(1)人工定义旅游领域中的概念、属性和关系,并构建旅游领域本体知识库,最后再对本体的一致性进行检验;(2)利用步骤(1)的本体知识库中的语义信息对用户问句进行语义消歧;(3)人工自定义旅游领域中的语义规则;(4)基于步骤(2)的问句分析结果,采用基于步骤(3)中的语义规则的推理和信息检索相结合的方法在步骤(1)的本体知识库中抽取答案。(5)根据步骤(2)中的不同的问句类型,设计相应的答案抽取算法,在不降低答案抽取速度的基础上,提高系统的响应率和召回率。步骤(1)中定义了旅游领域中的概念、属性和关系,构建的领域本体知识库(云南旅游)。步骤(2)中利用本体知识库中的语义信息对用户问句进行语义消歧。步骤(3)中自定义的旅游领域语义规则。步骤(4)中的规则推理与信息检索相结合的答案抽取方法。步骤(5)中的根据不同问句类型设计相应的答案抽取算法。本发明将本体的思想引入问答系统知识库的构建,把旅游领域中的概念、属性和关系用OWL(OntologyWebLanguage)本体描述语言清晰明确地表示出来,更加有效地组织知识。本发明本体描述某个领域或更广范围内的概念以及概念之间的关系,而这些概念和关系在共享的范围内具有大家认可的、明确的、唯一的定义。在受限领域问答系统中采用本体知识库,可以更好的表示知识之间的内在关系,知识的组织更加合理,减少冗余存储,提高答案抽取的准确率禾昭回率。在开放测试中,基于本体推理的问答系统对于用户的1346条自然语言提问的回答,准确率达到了81.35%,召回率达到了90.49%。图1是本发明中所定义的旅游本体类结构图。图2是本发明提出的基于本体推理的问答系统答案抽取方法的流程图。具体实駄式劍门构建的本体知识库中,共收集了2380条云南旅游本体实例,过程为一、定义本体类结构本体知识库是问答系统的大脑,其优劣直接关系至U后续的问句分析以及答案抽取的效率以及整个系统的性能。因此,在建立领域本体知识库的过程中,我们从领域本体所涉及的范围,应用目的等方面来考虑。设计一个本体的过程一般包括确定应用范围,确定本体中的概念,属性,确定本体中概念与概念之间以及属性与属性之间的关系,对本体进行编码,对本体的能力进行评估。这样就可以生成一个较完整的知识库。实验采用自顶向下的方法,从领域中概括出主要概念,并逐步细化,建立子类。分析旅游所涉及的小吃、住宿、旅行、购物、娱乐以及风土民情等要素,共定义19个领域概念。图1所示为旅游本体类的信息和结构。首先,以旅游概念作为该旅游本体的Top-level,再粗粒度的将其分为特色食物、住宿、交通方式、风景名胜、地理位置、特产、娱乐活动、少数民族、民族风情等19类,这些构成了旅游本体的Middle-level。针对每一要素再继续划分,就产生了bottom-level。二、定义本体中的属性仅有类对很多问题都不能给出回答,因此还需要定义概念和概念间的内部联系。这里所指的联系可分为两沐一种是概念自身的属性,称为"内在属性",如概念"民族服饰"的颜色这种属性,这一类属性通常连接一个概念和一个值,在0WL中,这种属性被表示为DatatypeProperty。内在属性具有通用性,也就是说该应的所有实例都具有这种属性,并且这种属性通常能向下传递,即如果各类具有一个内在属性,夷P么它的所有子类都继承了这种属性。这样也就要求在属性建模的过程中,一个属性应该为拥有该属性的最大类所拥有。另一类属性称为"外在属性",也有的文献直接称之为"关系",通常用于连接概念间的实例,如概念"风景名胜"的一个外在属性"Locate"连接了概念"地理位置",表明对于一对分别来自这两个概念的实例来说,可能会存在"Locate"这个关系。"外在属性"在OWL语言中用owl:ObjectProperty定义,并可以用rdfs:domain和rdfs:range指明它的定义域和作用域。还可以将一个属性定义为某个已有属性的子属性。综合考虑旅游领域中概念的特性,共定义了34个内在属性,23个外在属性。三、定义属性特性和属性约束a、属性特性OWL属性拥有可传递、函数和逆关系等特性,还支持对属性取值的基数约束,从而增强了对属性的推理能力。下面用P(x,y)表示x是P属性值为y,也可理解为x和y之间存在P关系。(al)传递属性(TransitiveProperty):对于任意传递属性P,如果存在P(x,y)和P(y,z),则有P(x,z)。(a2)对称属性(SymmetricProperty):对于任意对称属性P,如果存在P(x,y),则有P(y,x)。(a3)函数属性(FunctionalProperty):对于任意函数属性P,如果存在P(x,y)和P(x,z),则有y和z必是同一个个体或文字。可以简单的在属性定义中用rdf:typeM性声明属性具有函数特性,如〈owl:ObjectPropertyrdf:ID=,,locateWhere"><rdf:typerdf:resource二"cwl;FunctionalProperty,,/>〈/owl:ObjectProperty〉声明locateWhere是函数属性,即任何酒店所在的地理位置都是唯一的。(a4)逆属性(InverseFunctional):—个属性A被称为另一个属性B的逆,如果对任意个体x,y间有A关系,当且仅当y,x间有B关系。注数据类型属性(DatatypeProperty)没有逆属性。如下面声明hasSights是locateWhere属性的逆<owl:ObjectPropertyrdf:ID=,,hasSights">〈owl:inverseOfrdf:resource二,,#locateWherev/〉〈/owl:ObjectProperty〉OWLDL不允许将一个数据类型属性声明为传递属性、对称属性或反函数属性。由于抽象语法^t应OWLDL的,因此其中数据类型属性只允许声明是函数属性。根据描述逻辑理论,同时有函数性和传递性的属性会造成推理问题不可判定。因此OWLDL对属性特性的使用做出一定的限制,任意一个属性都不能同时是传递属性和(反)函数属性。b、属性约束前面的属性特性主要是对属性的全局定义域和值域的约束,但很多时候属性的值域是根据上下文变化的。这些属性约束主要包括(bl)owl:allValuesFrom属性约束要求对于每一个有指定属性的类实例,该属性的值必须是有owl:allValuesFrom从句指定的类的实例。(b2)t)wl:someValuesFrom属性约束与owl:allValuesFrom相似,它要求类实例至少有一个指定属性的值是指定的类的实例。如〈owl:Restriction〉<owl:onPropertyrdf:resource=,,组ocateWhere,,〉〈owl:hasValuerdf:resource=,,射也理位置,,></owl:Restriction〉定义一个匿名类,包含所有至少有一个locateWhere属性值为"地理位置"类的个体。四、本体一致性的检验本体的一致性检验就是要确保本体包含的所有知识之间没有矛盾,其各组成部分构成一个协调的整体。此部分工作主要从类间关系的一致性和基于公理的知识一致性两个方面着手对旅游本体的一致性it行检验。本体的一致性检验主要通过检验概念的可满足性来实现。检验一个概念的可满足性实际是看是否有解释使得这个概念成立。对一个概念C,如果存在一个解释I使得(^是非空的,则称概念C是可满足的,否则是不可满足的。主要通过以下五类推理来实现(a)类(概念)——实例关系推理给定知识库K,C是K中的一个类(概念),i是K中的一个个体,可对以下类与实例的关系进行推理判断一个个体时候是C的一个实例;判断在K中C的所有实例;判断在K中i是那些类的实例;判断两个实例之间的关系或判断与某个实例有特定关系的实例。(b)类(概念)的关系推理给定类C和D,判断它们之间的关系,主要有子类关系、成员关系以及整体与部分的关系等等。(c)在类的体系结构中进行推理给定类C,返回在K中C的所有或相关的超类。或者在K中C的所有或相关的子类。(d)类的满足性推理给定一个类C,判断是否C在K中是可满足的(即一致的)。(e)基于属性的推理属性与类(实例)有相似的推理,包括属性~"实例关系,属性包含,属性体系结构和属性可满足性等。五、创建本体的实例类的结束和个体的开始,决定了最低描述粒度,描述粒度反过来又取决于本体的应用。所以定义本体实例对下一步本体的应用有直接的关系。在本体中创建一个实例,仅需声明它是某个类的成员即可。如〈/owl:Thingrdf:ID二"香格里拉"〉.<rdf:typerdf:resource二〃tt风景名胜7〉〈rdf:typerdf:resource:〃ftt也理位置7〉〈/owl:Ting〉声明了个体"香格里拉",它是"风景名胜"类和"地理位置"类的实例。其中,rdf:type出现多次,说明该个体是多个类的实例。本发明方法云南旅游领域进行了实验验证,首先,以旅游概念作为该旅游本体的Top-level,再粗粒度的将其分为特色食物、住宿、交通方式、风景名胜、地理位置、特产、娱乐活动、少数民族、民族风情等19类,采用人工定义的19个领域概念、34个领域属性和23个领域关系作为本体知识库的构建资源,构成了旅游本体的Middle-level,这些针对每一要素再继续划分,就产生了bottom-level。然后对知识库进行实例的扩充,构建旅游本体知识库。针对提出的以上方法在云南旅游领域进行了实验验证,具体步骤如下步骤al、人工收集了云南旅游的常用问题1346条。步骤a2、对问句进行预处理,主要是将步骤^的问,行分类,将问题分为景点、小吃、酒店、风土民情、交通、导购等23类。步骤a3、人工自定义4条语义规则,用以进行规则推理。其中,K(x,y)表示x是y的上位概念,S(x,y)表示x和y是相似概念,A(x,z)表示z是x的属性,x(R)=z表示概念x和概念z有角色关系R。自定义^l则如下Rulel:K(x,y),A(x,z)-〉A(y,z)代表上位概念有的属性,下位概念也有该属性。例如K(动觀人),A(动物,性别)-〉A(人性别)。动物有性别的属性,动物的下位概念人也有性别的属性。Rule2:S(x,y),A(x,z)_〉A(y,z)代表某概念有的属性,其相似概念也有该属性。Rule3:K(x,y),x(R)=z->y(R)二z代表上位概念x和概念z有角色关系R,则其下位概念y和概念z也有角色关系R。Rule4:S(x,y),x(R)=z->y(R)=z代表某概念x和概念z有角色关系R,则其相似概念y和概念z也有角色关系R。步骤a4、对用户问句进行分析,我们可以发现rt户的问句本质上主要有如下三种情况(1)主题+实体+属性(2)主题+事件+角色(3)问句是一组无序的关键字步骤a5、对于步骤a4中的(1),在进行答案抽取的时候可能出现以下三种情况:a.领域知识owl文档中有其对应的具体节点;b.没有具体对应得节点,但有明确的领域主体概念;c.没有具体对应得节点,但可W找到相似主体概念;对于a,直接从owl文档中提取该节点的一段文本。对于b,可以利用步骤a3中的Rule1,采用如下推理算法设主体概念为C,属性为A,在这里我们把"实体+属性"和"事件+角色"统称为属性。st印lv—upper(C);(4>的上位节点赋给V)st印2Ifv具有属性A,则owl中有该属性节点,找到答案。else,if¥不是根节点,则C—¥,转到st印l。else,没有答案,记录本次问答,提交管理员维护。对于c,可以利用步骤a3中的Rule2,采用如下推理算法设主体概念为C,其相似主体概念S,属性为A。st印l找到其相似主体概念S,st印2ifS具有属性A,则owl中有该属性节点,找到答案。elseifS不是根节点,贝U小—upper(S),S—4>,转到st印2。else没有答案,记录本次问答,提交管理员维护步骤a6、对于步骤a4中的(2),在进行答案抽取的时候可能出现以下三种情况:对于a,直接从owl文档中提取该节点的一段文本。对于b,可以利用步骤a3中的Rule3找其先辈节点有否对应的事件和角色。对于c,可利用步骤a3中的Rule4先找主体概念*在本体库中的相似概念¥,然后转为情况a、b之一进行处理。具体算法采取步骤a5中的算法,其中Rule1改为Rule2,Rule3改为Rule4即可。步骤a7、对于步骤a4中的(3)问句是一组无序的关键字的时候,在答案抽取时采用进一步与用户交互的策略M用基于信息检索的方式进行抽取。实验结果如表1所示。表1基于本体推理的问答系统答案抽取方法的实验结果比较<table>tableseeoriginaldocumentpage12</column></row><table>从实验结果可以看出,基于本体推理的旅游问答系统答案抽取的准确率达到了81.35%,而召回率达到了90.49%。在测试的过程中我们发现,知识库中的相关知识的详细程度以及问句分析的准确度都将直接对答案抽取的准确性。权利要求1.一种基于本体推理的旅游问答系统答案抽取方法,其特征在于第一步定义领域中的语义规则,进行人工本体知识库的构建,并对用户问句进行分析;第二步将基于语义规则推理与信息检索相结合进行答案抽取;最后再根据不同的问句类型设计相应的答案抽取算法。2.根据权利要求1的基于本体推理的旅游问答系统答案抽取方法,其特征在于该方纟^舌(1)人工定义旅游领域中的概念、属性和关系,并构建旅游领域本体知识库,最后再对本体的一致性进行检验;(2)利用步骤(1)的本体知识库中的语义信息对用户问句进行语义消歧;(3)人工自定义旅游领域中的语义规则;(4)基于步骤(2)的问句分析结果,采用基于步骤(3)中的语义规则的推理和信息检索相结合的方法在步骤(1)的本体知识库中抽取答案。(5)根据考骤(2)中的不同的问句类型,设计相应的答案抽取算法,在不降低答案抽取速度的基础上,提高系统的响应率和召回率。3.根据权禾腰求2的基于本体推理的旅游问答系统答案抽取方法,其特征在于步骤(1)中定义了旅游领域中的概念、属性和关系,构建的领域本体知识库(云南旅游)。4.根据权利要求2的基于本体推理的旅游问答系统答案抽取方法,其特征在于步骤(2)中利用本体知识库中的语义信息对用户问句进行语义消歧。5.根据权禾腰求2的基于本体推理的旅游问答系统答案抽取方法,其特征在于步骤(3)中自定义的旅游领域语义规则。6.根据权利要求2的基于本体推理的旅游问答系统答案抽取方法,其特征在于步骤(4)中的规则推理与信息检索相结合的答案抽取方法。7.根据权利要求2的基于本体推理的旅游问答系统答案抽取方法,其特征在于步骤(5)中的根据不同问句类型设计相应的答案抽取算法。全文摘要本发明涉及一种基于本体推理的旅游问答系统答案抽取方法。属人工智能领域。特征在于第一步定义领域中的语义规则,进行人工本体知识库的构建,并对用户问句进行分析;第二步将基于语义规则推理与信息检索相结合进行答案抽取,而不是简单地进行匹配。最后再根据不同的问句类型设计相应的答案抽取算法。本发明提出了一种基于本体推理的问答系统答案抽取方法,该方法将本体的思想引入问答系统知识库的构建,把旅游领域中的概念、属性和关系用OWL(OntologyWebLanguage)本体描述语言清晰明确地表示出来,更加有效地组织知识。在开放测试中,基于本体推理的问答系统对于用户的1346条自然语言提问的回答,准确率达到了81.35%,召回率达到了90.49%。文档编号G06F17/30GK101436206SQ20081023373公开日2009年5月20日申请日期2008年12月22日优先权日2008年12月22日发明者余正涛,张宜浩,张志坤,毛存礼,郭剑毅,龚华明申请人:昆明理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1