基于领域本体的语义检索系统的研究与实现

基于领域本体的语义检索系统的研究与实现

ID:34006178

大小:2.16 MB

页数:68页

时间:2019-03-03

上传者:U-22505
基于领域本体的语义检索系统的研究与实现_第1页
基于领域本体的语义检索系统的研究与实现_第2页
基于领域本体的语义检索系统的研究与实现_第3页
基于领域本体的语义检索系统的研究与实现_第4页
基于领域本体的语义检索系统的研究与实现_第5页
资源描述:

《基于领域本体的语义检索系统的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

太原理工大学硕士研究生学位论文KEYWORDS:DomainOntology,InformationRetrieval,SemanticInference,OWL,SemanticRetrievalV 太原理工大学硕士研究生学位论文声明本人郑重声明:所呈交的学位论文,是本人在指导教师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含其他个人或集体己经发表或撰写过的科研成果。对本文的研究做出重要贡献的个人和集体,均己在文中以明确方式标明。本声明的法律责任由本人承担。论文作者签名:日期:关于学位论文使用权的说明本人完全了解太原理工大学有关保管、使用学位论文的规定,其中包括:○1学校有权保管、并向有关部门送交学位论文的原件与复印件;○2学校可以采用影印、缩印或其它子复制手段复制并保存学位论文;○3学校可允许学位论文被查阅或借阅;○4学校可以学术交流为目的,复制赠送和交换学位论文;○5学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。作者签名:日期:导师签名:日期: 太原理工大学硕士研究生学位论文第一章绪论1.1课题提出及研究背景信息检索是指从现有的信息集合中查找所需要的信息的过程和方法。其中现有的信息集合可以是有组织的文献整体,也可以是数据库的全部记录、还可以是某个文献收藏单位收藏[1]的全部文献,以及人们通过Internet发布的各类信息集合。当前,随着Internet的快速发展和计算机的普及,人们已经逐步迈入了网络信息时代,网络信息资源开始日益呈现出爆炸式增长趋势,这一方面在为用户提供一个快捷方便的信息共享的资源平台的同时,传统的信息检索也开始日益暴露出诸如“信息迷航”、“信息过载”等各种问题。再加上用户对信息检索的要求越来越高,人们要想利用传统的各种信息检索技术从网络上快速准确地获取信息也变得越来越困难。如何迅速、高效地检索和访问各个领域的信息资源以促进信息的交流与共享是一个急需解决的重要问题。未来的互联网作为人类共享的信息库、知识库,最好应该支持用户以自然语言的方式表达的检索请求,并且具备一定的语义理解和语义扩展推理能力。而本文正是针对上述问题设计了一个基于领域本体的语义检索系统,通过构建领域本体、设计推理规则、对资源进行语义标注从而较好地实现了语义推理功能,不仅能得到与检索条件在语法上精确匹配的信息资源,而且还能检索到与检索条件具有语义相关,但在语法上并不精确匹配的、以及一些隐含的信息资源,在一定程度上提高了检索的查全率和查准率。1.2信息检索研究现状目前的信息检索已经发展到网络化的阶段。信息检索的对象从相对封闭、稳定、一致、由独立数据库集中管理的结构化的信息内容扩展到了形态各异、无结构、分布广泛、管理松散的Web内容;信息检索的用户也由原来的情报专业人员扩展到包括商务人员、管理人员、教师学生、各专业人士等在内的普通大众。另外,近年来研究者们努力将信息检索对象从面向结构化的数据发展到面向半结构化和非结构化的数据,从单一文本数据发展到声音、图片和多媒体视频。可以说信息检索已经成为现在人们日常生活中不可缺少的部分。互联网技术的不断发展给信息的传播方式带来了巨大的变化,也明显地促进了信息检索技术的发展和应用,一大批搜索引擎产品也随之诞生,为网民提供了快速获取信息和网络信1 太原理工大学硕士研究生学位论文息导航的工具。随着网上信息量的激增和用户需求的不断提升,传统的信息检索技术开始难以满足用户的需求,于是人们开始致力于信息检索的新的研究,以求探索新的、更好的信息检索技术,在这过程中逐渐发展起了一种以自然语言理解技术为基础的新一代信息检索,被称为智能信息检索,也可以称其为语义信息检索或知识检索。由于这种新的信息检索技术将信息检索从目前基于关键词词形、语法的层面提高了到基于知识、语义的层面,对被检索的信息有一定的理解、推理能力。相当于不再单纯是对信息的检索,而是提升到了对赋予了一定语义的知识的检索。从而在一定程度上提高了检索的查全率和查准率。目前,智能信息检索的研发主要有两大方向,其一是基于机器翻译技术,比如Google;其二是基于语义理解技术的,国内有尤里卡、问一问,国外的主要代表是AskJeeves。语义理解通过将语言学的研究成果和信息检索技术结合在一起,实现了信息检索对检索词在语义层次上的理解,为用户提供了最确切的检索服务。基于语义理解技术的智能信息检索,即语义检索。目前语义检索有两种,即基于本体论的语义检索和基于概念的语义检索,前者是基于本体构建概念空间实现的语义检索,而后者是根据概念词典和关系数据库构建概念空间,从而实现的语义检索。基于概念的语义检索具有一定语义处理能力和较好的自然语言接口。但概念信息检索的概念库中不包含概念间关系的描述,这样就无法处理有关概念关系的问题。而基于本体论的语义检索将本体融合到传统信息检索技术中,不仅可以继承概念信息检索的优点,还可以克服概念信息检索不能对概念关系进行处理的局限。因此,本文也将研究重点放到了基于本体的语义检索上。1.2.1国外研究现状目前,基于本体论的语义检索还停留在概念、原理、研究阶段,具体成熟的应用还很少。2国外将本体应用在信息检索中的著名项目主要有:(onto)Agent(基于网络代理搜索本体的本体),给用户提供了一个检索WWW上已有本体的平台;Ontobroker(基于本体的分布式半结构[2][3]化信息获取),通过该系统,用户可以从WWW上检索到自己所需要的网页;SKC,该项目通过在本体上建立代数系统,用构建的这个代数系统来实现本体之间的互操作,从而解决[4]信息系统语义异构问题,实现异构系统间的互操作;早在1994年Voorhees就曾提出基于本体的查询扩展,通过使用本体中的概念来进行扩展查询;Maki在2003年提出了基于本体结构的[5]查询扩展方法,基本思想是运用本体中的路径来实现扩展查询;AT&T建立了一个借用了本体技术的信息检索系统FindUR系统,通过使用描述逻辑语法,表达了Wordnet中定义的词汇2 太原理工大学硕士研究生学位论文间的同义、近义和上下位关系,并通过推理得到某个词的同义、近义和上下位词集合来实现查询扩展。但从本质上看该系统仍然是基于语法的,因其并没有使用本体中的词汇去对文档进行标注,只是想借助本体来实现查询扩展,再加上输入的查询词汇本身也并非严格依据本体中的词汇来建立。1.2.2国内研究现状国内在这方面的研究起步较晚,研究成果也相对较少。其中比较有影响力的有中科院数[6]学所陆汝铃院士领导的常识知识的实用性研究(主要是对本体的研究)。该研究的主要目的是通过建立一个比较大而全的常识知识库Pangu来解决一些诸如机器翻译和自然语言理解等的[7]实际问题;宋峻峰提出的基于本体的信息检索模型运用了描述逻辑作为本体的构造语言,用本体中定义的词汇对文档进行语义标注来实现语义层次的检索,这样在一定程度上大大改善了检索性能。因此本文将研究重点放在设计开发一个实际的语义检索系统来验证现有的理论的可行性。1.3课题研究目的与意义面对日益飞速增长的信息资源,如何有效地组织、存储和获取有用的信息,为用户提供高效的信息服务,越来越成为当前迫切需要解决的难题。尽管传统的基于关键字的语法匹配和全文检索的信息检索技术,实现起来简单、快捷,初学者也较容易掌握,但其毕竟存在以[8]下几个较为突出的问题,难以保证较好的查准率和查全率。一是“词汇孤岛问题”,实际上我们日常生活中接触的概念大多数都不是孤立存在,而总是存在各种各样的联系的,但在传统的信息检索中,却没有考虑到这种联系。二是“表达差异问题”,如在我们通常的认为中,“电脑”、“计算机”和“PC”三者本是同一东西,但由于传统的检索技术采用的是基于关键字语法匹配方式,这样在输入三者其中的一个词进行检索时,检索结果往往不会包括另外两个词。结果就影响到了检索的查全率和查准率。三是“机械式匹配的问题”,机械式匹配只是从语法字形上来标识关键字,也可以理解为是基于“串匹配”的关键词检索,不能从字意、词意、语义上来标识关键字,这样由于实际情况中的一词多义(多义词)现象而导致在检索结果中包含大量的无效信息,使得查准率难以保证,同样一义多词(同义词)现象的普遍存在,导致了传统信息检索的查全率也难以满足。3 太原理工大学硕士研究生学位论文总之,传统的搜索引擎实质上采用的是一级映射模式,即将户提交的关键字直接送给搜索引擎用机械匹配的方式到事先建好的索引文件中去进行检索,然后把检索结果返回给用户。这样,就不能通过对用户输入的关键词进行语义扩展和推理来得到其相关词,当然检索结果中也就不可包含有与其存在语义关联关系的词汇,从而影响到了检索结果的性能。要解决上述提到的问题,关键是要把信息检索从传统的基于关键字的语法匹配层面提升至基于知识(或上下文)层面的语义匹配,从语义理解和推理的角度来处理用户请求和检索对象,来使得检索结果更加合理、全面。本文的主要研究目的就是希望通过赋予待检索信息具体的语义内涵,来解决传统信息检索过程中语义信息缺乏的问题,以提高检索的质量和效率。而本体(Ontology)作为一种能在语义和知识层次上描述概念体系的有效工具,其论点较为新颖、起点较高,具有很好的概念层次结构和对逻辑推理的支持,在信息检索领域逐渐得到广泛的关注,逐渐成为信息检索系统中知识表示的重要工具。把本体融合到传统信息检索技术中去,不仅可以继承传统信息检索的优点,还可以克服传统信息检索中不能对语义关系进行处理的局限性。因为本体包含机器可以理解的概念,从而使系统对领域内的概念、概念之间的关系有一个大体上统一的认识,系统通过对用户提交的查询词(组)进行推理和扩展之后再将其映射到信息资源中,这样就在一定程度上提高了信息检索系统的查全率和查准率。本文正是要对基于领域本体的信息检索进行研究,通过研究本体和信息检索的基本理论和基于本体的信息检索的关键技术来解决传统信息检索存在语义缺乏的问题。另外,信息检索作为信息学领域中最活跃的研究分支之一,涉及到多学科领域的交叉合作,主要包括:信息的组织、存储,索引,异质数据源的集成和人工智能等技术,信息检索技术的研究与发展和这些相关领域的发展是息息相关的,同样的,对新型智能信息检索技术的研究也能推动相关科研领域的发展。因此,基于本体的信息检索技术研究具有较高的学术理论意义,基于领域本体的信息检索也越来越成为目前信息检索技术发展的新的趋势。本文的研究属于语义检索的基础性研究,目的是探索如何较好地将本体技术融入到信息检索中,来开发具有语义理解和推理能力的语义检索系统,以解决传统信息检索系统无法理解和处理信息资源语义的问题。1.4本文主要工作与章节安排本文首先分析了信息检索的研究现状和存在的问题,其次介绍了本体论和信息检索的相关理论知识;然后针对当前信息检索中存在的问题,提出了语义信息检索思想,并构建了语4 太原理工大学硕士研究生学位论文义信息检索模型;接着结合语义检索模型对检索系统中用到的关键技术和工具进行了分析和研究,最后在上述理论分析的基础上开发并实现了基于计算机学科领域期刊文献本体的语义检索系统。全文共由六章组成:第一章绪论。阐述了论文的研究背景,分析了目前国内外信息检索技术的研究现状,针对信息检索领域尚存的问题提出了本文的研究目的、意义和内容。第二章介绍了该论文所涉及到的主要理论基础。包括本体论和信息检索的相关理论。第三章本章主要针对语义检索体系结构中的若干关键技术和工具进行了深入的研究,为该检索实验系统的顺利实现奠定了良好的基础,这些关键技术主要包括领域本体构建、信息资源收集、语义信息的标注和语义推理。第四章本章在前面几章的基础上提出了基于本体的语义信息检索模型,介绍了该信息检索模型的设计思想、检索流程和主要的功能模块。第五章实验系统的具体实现。针对上一章设计的语义检索系统,给出了其详细的实现过程,详细介绍了系统的开发过程和具体的技术实现,并对系统的性能进行了简要的评析。第六章对全文工作的总结与分析。指出系统存在的不足并对将来的工作进行了展望。5 太原理工大学硕士研究生学位论文第二章本体论和信息检索相关理论基础概述2.1本体论2.1.1本体的定义本体最先是一个哲学上的概念,用于对世界上客观存在物进行系统地描述。在近一、二十年来,本体论己被计算机领域所采用,用于知识表达、共享及重用,从而实现计算机与人类表达方式的统一。计算机领域中许多学科和研究都在使用“本体”这个术语,但存在不同的定义。在人工智能界,最早给出Ontology定义的是Neches等人,他们将Ontology定义为“给出构成相关领域词汇的基本术语和关系,以及利用这些术语和关系构成的、规定这些词汇外[9]延规则的定义”。1993年,Gruber给出了Ontology的一个最为流行的定义,即“Ontology[10]是概念模型的明确的规范说明”。后来,Borst在此基础上,对Ontology的该定义进行了扩[11]充说明,即将Ontology定义为:“Ontology是共享概念模型的形式化规范说明”。1998年Studer对上述两个定义进行了深入的研究,将本体定义为“共享概念模型的明确的形式化规范[12]说明”,其中概念模型指通过抽象出客观世界中一些现象的相关概念而得到的模型,其表示的含义独立于具体的环境状态,是具有层次化含义的;明确,指的是所使用的概念及使用这些概念的约束都有明确的定义;形式化,指的是计算机可读的;共享,指的是本体中体现的是共同认可的知识,反映的是相关领域中公认的概念集。尽管针对本体的定义有多种不同的方式,但是从内涵上来看,研究者们对于本体的认识还是统一的,都把本体当作是领域(可以是某个特定领域的,也可以是比特定领域更大的范围)中不同主体(人、机器、软件系统等)之间进行交流(对话、互操作、共享等)的一种语义基础,即由本体对该领域中的知识提供一种明确定义的共识。再进一步讲,本体提供的这种共识最主要的还是为机器服务,因为机器并不能像人类一样,理解自然语言中表达的语义,但可以理解本体中定义的一些概念及概念之间的关系。就目前的计算机而言也只能把文本看成是不同的字符串来进行处理。因此,在计算机领域讨论本体,就要讨论本体是如何将某个领域的知识形式化、概念化以使得计算机能够理解。这就要涉及到本体的构建方法、本体的描述语言等具体的研究内容。6 太原理工大学硕士研究生学位论文2.1.2已有的本体及其分类首先简单介绍一下已有的本体,到目前为止,研究者们已经建成了一些具有一定影响力[13][14][15]的本体,并有些已被广泛应用,这其中有如下本体:Wordnet、Framenet、GUM、[16][17]SENSUS和Mikrokmos,其中Wordnet是由Princeton大学的心理学家,语言学家和计算机工程师联合设计的一种基于认知语言学及心里语言规则的英文词典,它以synsets为单位组织信息,不是只把单词以字母顺序排列,而是按照各个单词的意义组成一个“单词的网络”,所谓的synsets是指在一定的上下文环境中可以互换的同义词、近义词或相关词的集合。Framenet是采用了FrameSemantics的描述框架的英文词典,所以具有很强的语义分析和推理能力,已经逐渐发展为FramenetII。GUMSENSUS和Mikromos都是面向自然语言处理的。其中的GUM支持多种语言处理,由基于本体中的概念及独立于各种具体描述语言的概念组织方式组成。SENSUS为机器翻译提供了相关的概念结构,包括了7万多个概念。Mikromos也支持多种语言的处理,采用了一种中立的中间语言TMR来对知识进行表示。接着再看本体的分类,目前对本体的分类也存在多种不同的方式。为了对本体进行有效[18]的分类,Guarin提出依据详细程度和领域依赖度两个方面来对本体进行划分。这里的详细程度是相对的、较模糊的一个概念,是指描述或刻画建模对象(即领域知识)的程度。描述或刻画建模对象的程度较高的称为引用本体(参考本体),程度较低的称为共享本体。根据本体对某个领域的依赖程度由低到高又可以分成以下四个类别:(1)顶级本体(Toplevelontologies)用来描述最普遍的概念及概念之间的关系,即描述的事物比较宽泛,如空间、时间、事件、行为等,一般情况下是与具体的应用无关的。其它本体均为其特例。(2)领域本体(Domainontologies)用来描述某个特定领域中的概念和概念之间的关系。(3)任务本体(Taskontologies)用来描述特定任务行为中涉及到的概念和概念之间的系。主要是针对该任务服务的,提供了解决该任务的问题的术语集合。(4)应用本体(Applicationontologies)描述依赖于某个特定的专业领域和任务的概念及相关概念之间的关系,是解决问题的方法体系的组成部分。这四种本体之间具有如图2-1所示的层次关系:7 太原理工大学硕士研究生学位论文应用本体领域本体任务本体顶层本体图2-1本体分类和层次Fig.2-1OntologicalCategoriesandLevels根据本体表示的形式化程度,又可将本体分为以下四种类型:(1)完全非形式化:完全采用自然语言进行表示,结构较为松散,典型的如术语列表。(2)结构非形式化:采用受限的或者结构化的自然语言来进行表示,这样有利于减少二义性,提高本体的清晰度。如EnterpriseOntology的文本版本即是这种形式。(3)半形式化:采用一种人工定义的形式化语言进行表示,目前已有许多研发机构开发并定制了这类形式化的本体表示语言,许多采用Ontolingua描述的本体都属于这一类。(4)完全形式化:所有概念和属性都具有形式化的语义,并能够在一定程度上证明包括一致性和完整性等方面在内的属性。在实际应用中,这几种表示方式各有所长,可以视情况而定,如果构建本体的目的是为了人与人之间的交流,则显然是非形式化的本体较为合适,如是用来机器的理解及处理,则其本体应该是形式化程度越高越好,当然在有些情况下,是需要将形式化和非形式化结合起来使用。2.1.3本体描述语言本体中的概念主要是用来为机器服务的,显然机器不能像人类一样,理解自然语言中所表达的语义,这样,要想在计算机领域中使用本体,就面临着如何实现本体的表示、即概念的形式化问题。在实际的应用中本体可以用自然语言、逻辑语言、框架或者语义网络等来描述。本体描述语言主要是用来描述本体的,用户可以用它为领域模型编写清晰的、形式化的概念描述。因此本体描述语言应该满足具有良好的语法语义、支持有效的语义推理及充分的表达能力等基本要求。在许多研究者的努力下,到目前为止已经诞生了许多本体描述语言,例如:SHOE、OIL、DAML、ontolinguaLomm以及XML、RDF/RDFS、和OWL等。但用的最多的还是W3C推荐的与本体语言相关的三个标准:XML、RDF/RDFS、OWL。这三者关8 太原理工大学硕士研究生学位论文系如下图2-2所示:OWL-SOWLDAML-SDAML-RDAML+OILDAML-OntOILRDFSRDFXML+NameSpace+XMLSchemaUnicodeURI图2-2基于XML的语义描述语言派生示意图Fig.2-2SemanticDescriptionLanguageDerivativeSketchMapbasedonXML1.XML(ExtensibleMarkupLanguage)随着新的XML规范的逐步完善,XML(可扩展标记语言)已经被广泛地应用于各种数据的表示中。XML技术是一系列由W3C组织批准并推荐的相关协议的集合,是在SGML(StandardGeneralizedMarkupLanguage)和HTML(HyperTextMarkupLanguage)的基础上发展起来的标记语言,它涵盖了从网络底层的数据表示、数据显示及数据的处理、交换和消息的传递等各个层面的Web应用。其底层的标准包括:格式化标准(DocumentTypeDefinitions,简称DTD和XMLSchemas)、样式标准(CSS,XSL)、查询标准(XQL)、链接查询标准(X-Link.X-Path)、解析标准(DOM)等。XML可以说是一种界定文本数据的统一标注,经常被称作“Web上的ASCII码”,实现了信息间的重用性。XML作为新一代的数据存储和交换的通用格式,也逐渐成为一种在网络中不同应用程序之间互相交换信息数据的重要标准,其具备以下的优良特性:(1)首先XML是基于纯文本的,具备跨硬件平台和操作系统平台的能力。(2)数据格式的自描述能力,能够自我解释数据的结构,具备跨应用之间进行数据交换的能力。(3)有良好的可扩展性,用户可以根据需要扩充XML文档结构中的标签来扩展其表达功能,以满足应用的需要。(4)数据内容与表现格式相分离,XML是一种能够容许用户自己创造标识的语言,它可以将数据与格式分开,方便信息的表示与共享。9 太原理工大学硕士研究生学位论文XML文档将文档的内容、结构和表现分开定义。XML文档结构的定义手段通常有两种,DTD(DocumentTypeDefinition)和XMLSchema表示方式。XML对数据的语义描述往往是通过XML文档的结构约束来实现的。也就是需要利用DTD或XMLSchema与本体相关联,然后再利用XML文档结构与其内容之间的关系再将XML内容与本体相关联,从而最终实现对数据内[19]容的语义描述,这个过程如图2-3所示。领域本体模型表示映射DTD或XML定义结构XMLSchema文档图2-3XML通过DTD来表示本体Fig.2-3XMLExpressesOntologythroughtheDTD相应地M.Erdmann等人还提出了如下的本体通过DTD向XML元素映射的基本规则:(1)概念中的每一个属性(Attribute)都对应地在DTD中生成一个子元素。(2)如果属性表示的是一个概念与其它概念之间的关系。那么属性元素的内容模型应该是[20]相关的概念元素,否则属性元素的内容模型应为PCDATA类型。2.RDF/RDFSchema语义Web的首要目是要让计算机能够对信息进行语义处理,针对XML存在的语言局限性,[21]W3C又提出了RDF(ResourceDescriptionFramework),资源描述框架,是W3C在XML的基础上推荐的一种标准,该框架为基于元数据的语义表示提供了一定的基础,可以用来表示任意的资源信息。RDF提出了一个简单的模型用来表示任意类型的数据,这个数据类型由节点与节点之间带有标记的有向链接弧所组成。其中的节点用来表示Web上的信息资源,弧用来表示这些资源的属性。这样,此数据模型便可以很方便地描述对象或者资源以及它们之间的关系。这种数据模型的实质是一种二元关系的表达,由于大多数复杂的关系都可以分解为若干个较为简单的二元关系,因此此RDF模型也可以用来作为其它比较复杂的关系模型的基础模型。RDF为在Web上应用系统之间进行机器可理解的信息资源间的交换提供了互操作能力。就其核心来看,RDF相当于是定义了一个“对象——属性——取值”三元组来作为其基本的建模原语并在这基础上引入了一套标准的语法。10 太原理工大学硕士研究生学位论文例如:严蔚民表示http://localhost/gghzOntPro/owl/resource.owl#数据结构(主语)的作者(author)(谓词)是严蔚民(宾语)。作为一种描述框架,RDF还可以采用图形、三元组的形式来表示。RDF有如下几个优点:(1)易控制:RDF使用简单的资源——属性——取值三元组形式来表示自愿,所以较容易被用户掌握,即便是在数据量很大的时候也很容易控制。(2)易扩展:在使用RDF描述信息资源的时候,词汇集和资源描述通常是分开的,这样就有利于所表示信息资源的扩展。(3)包容性:RDF允许任何人根据自己的需求定义不同的词汇集,并可以无缝地使用所定义的汇集来描述资源,使各尽其能。比如,在上个例子中描述网页资源时是用DublinCore来描述其作者属性,而在描述作者姓名时又使用了另外一个专门用来描述人的词汇集来进行描述。(4)可交换性:RDF使用XML语法,可以比较方便地在网络上实现数据交换,另外,RDFSchema还定义了描述各种词汇集的方法,这样就可以在不同的词汇集之间,通过指定元数据间的关系来实现语义理解层次上的数据交换。(5)易综合:在RDF中,资源的属性是资源,属性值除了具体的字符串外还可以是资源,关于资源的陈述也可以是RDF中的资源,这些都可以用RDF来描述,这样就可以较容易地将多个资源描述综合起来,来达到发现知识的目的。RDF虽然具有如上所述的诸多优点,但它所提供的建模原语还是相当基础的,仅仅是提[22]供了一个模型,有待作进一步扩展才能较好地应用。RDFSchema正是针对RDF存在的一些不足,在其基础上增加了一些语义原语,来更进一步地增加对信息资源语义上的描述能力,如类、属性及类和属性之间的各种隶属关系等。对于RDFSchema和XMLSchema,尽管名字11 太原理工大学硕士研究生学位论文上的存在相似之处,但角色上却并没有相同之处。XMLSchema(包括DTD)定义的是一份XML文档中所使用的标签(Tag)的顺序和组合等合法组件群,定义了XML的语法,XMLSchema就像DTD一样,可以将其看作是DTD的“接任者”;而RDFSchema提供的则是对RDF建模所表示的声明进行相应的解释说明的信息(语义),但并不用来对一个RDF描述的语法外观进行约束。虽然说DTD和RDFS都可以用来定义或描述本体,并将其序列化为XML文档,但两者还是存在着很大的差异性。DTD是利用其对XML文档结构的某种约束作用来体现本体的,而RDF/RDFS则首先是利用RDFS所提供的各种原语来描述本体,然后用RDF提供的的XML序列化机制再将其转化为XML来进行封装(如图2-4所示)。领域知识本体表示用rdfs元语描述采用RDF描RDFXML述框架Schema文档图2-4RDFS以序列化方式表示本体Fig.2-4RDFExpressesOntologyinSerializationMethod3.OILOIL(OntologyInterfaceLayer/OntologyInterchangeLanguage本体推理层/交换语言)是On-To-Knowledge计划的产物,是一种针对Ontology的基于互联网的表现和推理层。OIL的实现基础来自于以下三个方面:首先是描述逻辑,描述逻辑为其提供了正规语义和推理支持;其次是基于框架的系统(Frame-based),为其提供了在认识论上的建模元语;再次是基于XML和RDF语法的Web标准。OIL是在RDFS基础上建立起来的,用更为丰富的Ontology建模元语对RDFS的语义表示能力又作了进一步的扩展,将描述逻辑、框架系统及Web标注(XML和RDF)这三种不同领域各自的优点结合起来,在此基础上提供了一种较为通用的语义Web标记语言。这样使得OIL可以对RDFS所不能表达的某些语义进行表达。另外,OIL还被设计为完全兼容RDF(S)规范标准,OIL文档本身即是一个合法的RDF(S)文档,能较好地表示Ontology,并且达到与RDFS最大限12 太原理工大学硕士研究生学位论文[23]度的兼容,即两者之间可以相互转换。4.DAML和OIL2000年8月,美国DARPA曾启动了一个为期六年的计划,目的是研究一系列新技术使的软件Agent能够对信息资源进行动态确认和理解,并为软件Agent之间提供基于语义的互操作能力。DAML(DARPAAgentMarkuplanguage)是这个计划第一阶段所创建的一种本体描述语言,该语言扩展了RDF,在RDF原有基础上增加了比较复杂的类、属性等定义,允许用户在其收集的数据信息上标记合理的语义,从而使的计算机能够对其标注的信息资源进行“理解”。2000年12月,美国和欧洲两个组织成立联合委员会,即DAML和OIL的研究者开始合作,将DAML和OIL合并,命名将其命名为DAML+OIL,并提交给W3C讨论,使其成为未来语义[24]Web本体标准描述语言的起点、基础和标准。5.OWL(基于描述逻辑的本体描述语言)本体语言不仅要有语义描述能力,同时也应具备一定的语言推理推理能力,即通常情况下最好是基于某种描述逻辑的,就目前开发的本体语言来看主要是基于一阶逻辑和描述逻辑的。其中,一阶逻辑是一种形式化的语言系统,具有较强的语言表达能力,可以较好地表达生活中的某些知识。但其作为一种形式语言,还远远不能自如地表示人类自然语言所能表达[25]的全部知识。而描述逻辑则是一种基于对象的知识表示的形式化,也叫概念表示语言或术语逻辑,它是建立在概念(对象的集合)和概念之间的关系(对象之间的二元关系)基础之上的。与一阶谓词逻辑的不同之处是,描述逻辑可以提供能被判定的推理服务,从而能保证推理算法最终能够停止,并返回正确的结果。相比一阶逻辑复杂的推理过程,描述逻辑更适合本体检验,并且其语法又较容易转换成XML/RDF形式,接下来就详细介绍一下这种基于描述逻辑[26]的本体描述语言—OWL。DAML+OIL在提交给W3C后,发展成了OWL(WebOntologyLanguage)。OWL作为W3C的推荐标准,位于W3C本体语言栈中的最高层,意在提供这样一种Web上本体的通用标准语言,能够用于描述Web文档中的概念、类、属性及其实例之间的关系等,它通过定义类及各个类的属性来形式化一个领域,声明和定义对象及其相应的属性,以及在OWL形式化语义允许程度上对类和其对象进行推理和扩展。根据需求的不同,OWL语言提供以下三种表达能力依次增强并向下兼容的子语言,以便用于具体的实施团体和用户团体。(1)OWLLite用于只适用于那些仅需要一个分类层次和简单约束的用户。尽管OWLLite13 太原理工大学硕士研究生学位论文是支持基数限制的,但只也允许基数为0或1。提供支持OWLLite的工具应该比支持其他表达能力更强的OWL子语言更简单,并且从辞典(Thesaurus)和分类系统(Taxonomy)转换到OWLLite更为迅速。相比OWLDL,OWLLite还具有更低的形式复杂度。(2)OWLDL用于支持那些需要最强表达能力而需要保持计算完备性(即所有的结论都能够确保被计算出来)和可判定性(即所有的计算都能在有限的时间内完成)。OWLDL包括了OWL语言的所有语言成分,但使用时必须符合一定的约束,例如,一个类可以是多个类的子类时,但它不能同时是另外一个类的实例。OWLDL这么命名是因为它对应于描述逻辑,它是一个作为OWL形式基础的逻辑的研究领域。(3)OWLFull支持那些需要尽管没有可计算性保证,但有最强的表达能力和完全自由的RDF语法的用户。例如,在OWLFull中,一个类可以被同时作为许多个体的一个集合以及本身作为一个个体。总之,使用OWL的本体开发者要考虑哪个子语言最符合他的需求。选择OWLLite还是OWLDL主要取决于用户在多大程度上需要OWLDL提供的表达能力更强的成分。选择OWLDL还是OWLFull主要取决于用户在多大程度上需要RDFSchema的元建模(Meta-modeling)机制(如定义关于类的类和为类赋予属性)。使用OWLFull相比于OWLDL,对推理的支持是更难预测的,因为目前还没有完全的OWLFull的实现。OWLFull可以看成是对RDF的扩展,而OWLLite和OWLDL可以看成是对一个受限的RDF版本的扩展。所有的OWL文档都是一个RDF文档;所有的RDF文档都是一个OWLFull文档;但只有一些RDF文档是一个合法的OWLLite和OWLDL文档。因此,用户在把RDF文档转换到OWL文档时必须谨慎。当OWLDL或OWLLite的表达能力认为是适当时,必须注意原来的RDF文档是否满足OWLDL或OWLLite对RDF的一些附加的限制。其中,每个作为类名的URI必须明确地声明为类型为owl:Class(属性也类似),每个个体必须声明为属于至少一个类(即使只有owl:Thing)。即归纳起来这三种语言之间存在以下的关系:(1)OWLFull可以看成是RDF的扩展。(2)OWLLite和OELFull可以看成是一个约束化的RDF的扩展。(3)所有的OWL文档(Lite,DL,Full)都是一个RDF文档。(4)所有的OWL文档都是一个OWLFull文档。(5)只有一些RDF文档时一个合法的OWLLite和OWLDL文档。14 太原理工大学硕士研究生学位论文OWL语言包括以下的基本元素:(1)简单的类(Class)和个体(Individuals):在OWL中用户定义的所有类都隐含地是层次树树根类owl:Thing的一个子类,之外用户可以再将自己定义的类分层。除了定义描述类之外还可以定义描述类的成员,即实例、个体(Individual)。(2)简单属性(Properties):subClassOf定义了类的层次结构,但只有这些还远远不够,还需要用到Properties(属性)来说明Class的共同特征以及某些专有特征。一个属性是一个二元关系,有两种类型的属性,数据属性(Datatypeproperties)说明类实例与RDF文字或XMLSchema数据类型之间的关系。对象属性(Objectproperties),说明两个类之间的关系。(3)属性特性:这里主要是指用于语义推理的各种属性特性,包括:传递属性(TransitiveProperty)、对称属性(SymmetricProperty)、函数属性(FunctionalProperty)、逆反属性(inverseOf)和逆反函数属(InverseFunctionalProperty)。(4)约束:可以通过约束来进一步规定Property的Range的范围。包括allValuesForm,someValuesForm(此约束用来将一个属性的取值和一个Class相关)、Cardinality(用于指定一个Class通过一个属性拥有的Individual或者数值的数目)、hasValue(允许我们定义基于特定Property的值存在的Class)。(5)Ontology映射和复杂的类(Class)。2.2信息检索信息检索(InformationRetrieval,IR)通常指的是将信息资源按照某种特定的方式表示、[27]组织和存储起来,并根据用户的需求找出相关信息的技术和过程。通常我们所说的信息检索往往是指狭义的信息检索,即只是包括信息的检索过程而并不包括信息的组织和存储。而广义的信息检索则包括信息的存储和检索两个过程。其中,信息的存储是对有关信息进行筛选、收集,并对其进行标引、著录和组织然后存储到所建立的信息数据库中的过程;而信息的检索则是根据用户的检索请求,在信息数据库中查找获得有用信息的过程。2.2.1信息检索与搜索引擎互联网的迅速发展促进了信息检索技术进一步的普及和应用,随之诞生了一大批搜索引擎产品,为用户提供了快速获取信息的有利工具,久而久之,有些用户开始将信息检索等同于搜索引擎。不能否认,当前的大多数搜索引擎的确是普遍采用了全文检索的技术,但通常15 太原理工大学硕士研究生学位论文我们所指的互联网信息搜索引擎和各个企业专用的信息检索系统还是存在有不同之处的。当前信息的组织形式越来越多样化,因特网用户面对的是海量而非结构化的信息,要从如此庞大的信息海洋中获取出对其最有用的信息,这对大多数企业应用来说可以说是比较费时而又不必要的。完全可将涉及到该企业领域的信息进行有效的组织并存储,然后再从这其中检索对企业有用的信息。随着信息技术的进一步发展,信息服务也逐渐呈现出一定的综合性。信息检索的核心主要说的是文本信息资源的索引和检索,包括信息的筛选、获取、组织、存储和查询等。而搜索引擎(SearchEngine)则是用户在互联网多媒体信息海洋中需要用到的导航工具,是仅次于门户的互联网第二大核心技术,需要用到信息检索、自然语言处理、人工智能、数字图书馆等诸多研究领域的理论和技术,并采用知识库导航工具,给用户提供更加[28]安全、便利、综合的信息服务。而企业信息检索说到底只是信息服务的一部分,其面对的大多是特定专业领域的信息。而本文所要实现的也仅仅是基于计算机学科领域期刊文献的语义信息检索系统。2.2.2信息检索技术随着信息技术的逐步发展,信息检索经历了手工检索、机械检索和计算机检索等几个发展阶段。其中的手工信息检索主要发展于19世纪末,这期间的信息检索手段以书本式和卡片式检索为主,例如我们所熟悉的词典和工具书等;机械式信息检索是手工检索向计算机检索的过渡阶段,发展于20世纪40-50年代,如穿孔卡片和缩微制品检索即为这阶段的主要的检索手段。而较为先进的计算机信息检索则是起源于20世纪50年代初期,并且这个阶段本身又可以分为以下四个小的发展阶段:脱机检索、联机检索、光盘检索和网络检索阶段。我们现在用的最多的一种检索方式即是其中的网络检索,这种检索方式开始于20世纪90年代初期,其核心部分主要是网络浏览器和具有收集、检索信息资源功能的搜索引擎。现阶段,正在研究和使用的信息检索技术主要包括:全文检索、数据检索和语义检索三[29]大类:其中的全文检索检索是把用户提交的查询请求以关键词的语法形式来与全文内容进行机械式匹配,比较有代表性的要数Google和百度。这种检索方式的优点是初学者易学易用,缺点是检索结果会返回大量与用户需求无关的信息,用户还需要从第一次检索得到的大量结果中再找对自己有用的信息;数据检索则主要是针对结构化的信息而言的,比如我国的大多期刊论文数据库都是采用了这种检索方法,由于这种方法需要人工对信息资源进行标注,所以检索的结果在某种程度上多多少少要取决于人工进行标注时所使用的字段标和识方法的优16 太原理工大学硕士研究生学位论文劣,具有一定的局限性。而随语义网的提出和本体技术的不断成熟而发展起来的新型的语义检索则在某种程度上弥补了前两种检索技术有些方面存在的不足,尤其是近年来提的越来越多的基于本体的语义检索技术,更是显示了其在一些方面的优越性。这种检索技术与前两种的明显不同在于:一是基于具有语义模型的知识组织体系—本体的,二是结合领域本体对信息资源对象进行了语义标注。这种检索技术不再仅仅是基于关键字机械式的语法匹配,而是基于语义及语义推的,利用本体中定义的概念和概念之间的关系来实现智能检索。如图2-5所示。语义检索技术的应用在一定程度上提高了信息检索的查全率和查准率。RetrievalengineQueryrequestInferenceDomainQueryresultMetadataDatasource图2-5语义检索系统Fig.2-5SemanticRetrievalSystem2.3基于领域本体的语义检索2.3.1基于本体的语义检索设计思想和目的基于以上的分析,本小结提出将本体应用于信息检索中的思想。考虑到用户在信息检索时,更多是希望能解决实际工作和学习中的具体问题,而并不是漫无目的地泛泛查询,因此,本论文中用到的主要是领域本体,面向具体的专业领域。领域本体具有良好的概念层次结构和对逻辑推理的支持,在逐步提高数据源质量的同时,本文改进查询思想——基于领域本体的语义检索,目的是要借助领域本体来充分挖掘数据源内部隐含的、不容易之间检索到的语义关系,尽量提高领域信息检索的质量和效率。与传统信息检索技术的区别是使用了推理机制来进行扩展查询,具有语义推理功能,使得用户能够比较准确而全面地检索到自己所需要的信息。要达到预期的目的,关键是要从以下三个方面着手:一是领域本体和推理规则的合理构建、二是领域本体和实例的存储、三是对OWL文件和推理规则的正确定义。17 太原理工大学硕士研究生学位论文2.3.2语义检索方法语义检索是把信息检索与自然语言、人工智能等技术相结合的信息检索。它从语义理解的角度来分析检索请求与信息资源对象,是一种基于概念及概念之间的语义关系来进行检索的匹配机制,其关键在于信息资源的表示和概念之间的推理。目前存在两种形式的语义检索,即基于本体论和基于概念的语义检索,前者是基于本体构建概念空间来实现语义检索,而后者则是根据关系数据库或者是概念词典来构建概念空间,从而实现的语义检索。要实现语义检索首先得要构建概念空间。概念空间是一种包含语义关系的计算机可识别和操作的概念及其关系的集合。它是实现语义检索的关键。概念空间的构建分为两大系列:其中一个是基于关系数据库和概念词典的概念空间,通常适用于图书情报领域,主要是针对传统的文献信息资源的;另一种是基于本体论的概念空间,其研究者一般来自于诸如计算机科学、人工智能等特定的专业领域(例如医学、农学等),主要是针对互联网信息资源。综上[30]所述,本体、概念空间和语义检索的关系可以用图3-1表示。语义信息检索基于ontology的概念空间基于概念词典和关系数据库的概念空间ontology概念词典和关系数据库图3-1语义检索的实现途径(本体、概念空间、语义检索三者的关系)Fig.3-1TheMethodofSemanticRetrieval(theRelationshipamongOntology,SpaceofConceptandSemanticRetrieval)基于概念的语义检索可以对文档中的信息进行语义层次上的推理、扩展,并形成一个知识概念库,然后根据对用户问题的理解来从概念库中检索相关的信息。这种方法具有一定的语义处理能力,并且具有良好的自然语言接口。但概念信息检索的概念库中不包含各个概念之间关系的描述,因此很难处理有关概念关系的问题。而基于本体论的语义检索使将本体融合到传统信息检索技术中,这样既可以继承概念信息检索的优点,还能够在一定程度上克服概念信息检索不能对概念关系进行处理的局限。它可以利用本体论中的概念规范、语义丰富等的特点,将用户的检索要求扩充成相应的语义集。使得用户最终得到与起检索要求内容匹配度较高的文档信息。因此,本文将重点讨论基于本体论的语义检索。18 太原理工大学硕士研究生学位论文2.4本章小结本章介绍了本体论和信息检索的相关理论知识。包括本体的定义、分类和本体描述语言以及信息检索的技术等,并在此基础上分析了基于领域本体的语义检索技术。为基于领域本体的语义检索系统的实现奠定了理论基础。19 太原理工大学硕士研究生学位论文第三章语义检索实现关键技术与工具为了之后的语义检索系统能够顺利实现,本章结合前面的理论分析了实现基于本体的语义检索系统所需要的几种关键技术和开发工具。其中,这些技术包括:领域本体的构建、信息资源的收集、信息资源的语义标注和语义推理等。3.1语义检索实现关键技术3.1.1领域本体的构建领域本体(Domainontology),是关于某个具体领域专业性的本体,提供了该专业学科领域中的重要概念集及概念之间的关系。当前,有些本体的研究已经开始进入实际的应用阶段。许多研究领域都建立了自己标准的本体,但大多数本体基本上还都只是面向某个特定领域的,需要比较好的方法来构建比较通用的、大型的本体,从而努力实现本体的规模化、规范化和工程化建设。因此关于本体构建方法的研究对于本体的实际应用还是有着至关重要作用的。目前,建立本体大多采用的依然是手工的方式,也有半自动化的,基于原有叙词表转换或借用现有本体的方式等,随之产生的本体构建的方法和原则也很多,下面介绍一些常见的本体构建原则和方法:1.本体的构建原则为了较好地设计和建立本体来表示某项事物,首先需要一定的客观标准和原则来对其进[31]行指导和评估。具体包括以下原则:(1)明确性:明确性原则要求在构建本体时最好能够明确有效地表达概念知识的内容、客观和形式化地定义概念名称、准确地表达概念项的内涵,尽可能多地使用标准术语。(2)连贯性:本体中所定义的知识应该保持连贯性,通过推理推断出的概念知识应该和已定义的概念知识保持一致。(3)扩展性:建立本体时应考虑到其将来可能要涉及到的扩展性,能够让人们逐渐再对本体做进一步的补充和完善。换言之,人们可以为特殊的应用在本体中原有概念的基础上定义新的概念项,而不需要修改现有的定义。20 太原理工大学硕士研究生学位论文(4)层次性:使用概念层次关系、多重继承机制来增加表达能力,但要注意同层次概念间应保持最小的语义距离。(5)交互性:本体论的建立是一个不断反复的过程。在本体论的原型建立之后,通过领域专家的评估和实际应用的检验对它进行不断的完善和修正。(6)最小编码偏差:本体论中的概念知识不应该依赖于其编码符号。如果不是知识内容的需要,而是为了标注或实现上的方便而做出某种表示选择,就可能导致编码偏差。编码偏差应尽可能最小化,因为不同的知识系统往往使用不同的知识编码体系,只有最小的编码偏差才能使本体论具有较好的独立性。(7)最小本体承诺:当某个知识系统使用知识的行为与某个本体论中的定义相一致时,就可以称这个知识系统承诺了该本体论。这种承诺是基于知识层级的。在实际应用中,本体论中定义了用于在知识系统间进行交换的词表,而本体承诺则是以连贯和一致的方式使用这个共享词表的协议。2.本体的构建方法构建本体的技术和方法很多,但就当前而言,使用最多的还是手工方式。本体工程尽管已经提出好几年,但到目前为止仍然很不成熟,针对不同种类的本体论还没有一个统一的工程方法来建立本体。每个开发团队都有自己的构建原则和设计标准,开发阶段也各不相同。下面介绍几种较有影响和代表性的本体构建方法:[32](1)Uschold和Gruninger的骨架法这种方法源于英国爱丁堡大学开发企业本体的经验总结,该方法认为建立本体包括4个主要的步骤(如表4-1)表3-1Uschold和Gruninger的骨架法Table.3-1TheUscholdandGruninger’sSkeletonMethod明确目的和范围确定建立本体的目的和用途本体获取确定领域中关键概念和关系给出这些概念和关系的无二义性的自然语言定义确定标识这些概念和关系的术语建立本体本体编码用一种合适的形式化语言表示上述概念和关系本体集成集成已经获取的概念或者关系的定义,使它们形成一个整体,在达成一致方面有很多工作要做本体评价本体评价标准是清晰性、一致性、完善性、可扩展性形成文档把所开发的本体以及相关内容以文档形式记录下来这种方法明确区分了本体开发的非形式化阶段和形式化阶段。非形式化阶段包括确定领21 太原理工大学硕士研究生学位论文域中的关键概念以及这些概念之间的关系,还要给出明确无二义性的自然语言定义,这些工作可以结合现有的知识获取技术完成。形式化阶段主要是用一种形式化语言来表示上述概念和关系。本体的非形式化表示和形式化表示都具有举足轻重的作用。[33](2)Gruninger和Fox的企业建模法这种方法源自于多伦多大学企业集成实验室TOVE项目的开发总结。在TOVE项目中,Gruninger和Fox等人建立了一个企业模拟本体,它基本上是一个企业进程和活动的逻辑模型,利用这个本体通过演绎推理可以回答一些关于企业运行方面的问题。TOVE本体开发方法的流程如图3-1所示。应用场景激发非形式化能力问题术语形式化完备性理论形式化公理形式化能力问题图3-1TOVE本体开发流程Fig.3-1TOVEOntologyDevelopmentProcess上面两种方法尽管具有较深远的影响,但都是较早提出来的。新近提出的本体构建方法[33]有所变化。Holsapple和Joshi提出的五种途径(如表3-2),并提出使用合作(Collaboration)的方法来建立本体。这种方法的特点是考虑了多人的意见,提升了本体的质量,也使得所建立的本体能够被更广泛接受。表3-2Holsapple和Joshi提出的建立本体的途径Table.3-2TheApproachofBuildingOntologybroughtbyHolsappleandJoshi途径建立的基础灵感(Inspiration)个人关于领域的观点归纳(Induction)领域内的具体情况演绎(Deduction)领域内的一般原则综合(Synthesis)已经存在本体集合。每个都提供了领域的部分特征合作(Collaboration)多个人关于领域的观点,很可能加上一个原有的本体作为起点从本体建设所追求的目标来看,本体建设应该是工程生产。即要遵循标准化的表达方式和规范化的工作步骤这两点工程化的思想。这就需要结合多种本体构建方法和技术来实现,但就目前为止,要将各种方法和技术统一到一个方法中是不现实的,因此我们在各自构建本的过程中也只能借鉴一下构建本体的一般步骤(即基本上各种本体构建方法都要经历的步骤),包括:第一步确定本体的目标,在建立本体初期要明确所要构建本体的使用目的、使用22 太原理工大学硕士研究生学位论文环境和用户范围等;第二步确定本体的主题范围,根据本体的应用目的来确定本体的知识主题范围;第三步建立本体,拥有了本体所必需的主题和知识集后,就可以选用合适的本体构建工具(例如Protégé)来构建本体;第四步检查和评估本体;最后提交和反馈本体。另外,还有一些人用将本体构建与检索应用结合起来的方法——面向对象的本体构建方[30]法,该方法步骤如下:(1)定义类及层次关系,自上而下抽象出基本的类及其层次关系。这里的类对应本体体系中的Class,对象对应本体体系中的实例(Instance或Individual)。(2)定义类之间的关系,主要是聚合关系,对应本体体系中的对象属性(ObjectProperty)。(3)定义类的属性,包括属性的名称、类型及其约束条件,对应本体体系中的原子属性(DatatypeProperty),也叫数据属性。(4)把通过前3步定义建立的模型映射为本体体系。(5)定义同义、近义等语义扩展关系,以便在语义检索中通过同义和近义的语义扩展来提高查全率。(6)最后用实例集(Instances)来填充定义的Class。此种方法易学、易用,减少了领域专家的参与。3.1.2信息资源的收集缺乏信息资源的检索系统即便是有再好的检索算法也是没有任何意义的。即没有丰富的信息资源可供检索是不行的,反之,面对无限丰富但不适合于检索方法的信息资源,也是令人头痛的。在信息资源指数型急速增长的今天,如何收集有用的信息资源也是现代搜索引擎有待认真研究的问题。传统的信息资源收集方式大多都是针对Web站点的,是通过一个网络爬虫程序来收集信息资源。首先通过搜索判断当前Web上有哪些站点正在运行,创建当前可访问的网站列表,然后根据该列表,由Robot程序自动获取每个站点上的有用信息和文档。方法的关键就是合理地获得“活”网站列表,然后由“Robot”程序根据前面获得的“活”的网站列表和领域本体结构,逐一地收集站点上的信息资源。但是,传统的这种信息收集方法,Robot收集程序通常是驻留在一个固定的站点上,通过Http协议来请求Web上的资源。这样在一定程度上会影响到信息收集的速度,为了提高信息收集的速度,可以在信息收集服务器上同时启动多个Robot进程来进行收集,但这种方式又容易产生较为集中的网络传输负荷,形成明显的网络传输瓶23 太原理工大学硕士研究生学位论文[34,35]颈。针对这个问题,后来又有人提出改进后的分布式信息收集方法,即将多个Robot程序分布到网络上的多个站点,这样可以将收集信息的工作分散化和局部化,减少由于多个进程过于集中而带来的网络传输压力。这种方法有效地解决了传统信息收集过程中的搜索效率低下和网络传输负荷过重等的问题。除了收集网上的信息之外,有时候我们也需要从一些权威的报刊书籍上收集一些针对特定领域的有用的资源信息。3.1.3语义标注Erdmann给出了语义语义标注的一个定义:通过一种标记Tag的手段,在HTML或者XML[36]中把资源的元数据同相应的资源联系起来的过程称为语义标注(SemanticAnnotation)。语义标注的目的,就是利用本体对信息进行标引,它是语义推理的基础,对语义信息检索的实现起着至关重要的作用。使得被检索对象能够以一种统一的、结构化的形式存储是实现语义检索的必要前提。语义网技术通过本体规范表达领域知识,并使计算机识别和处理这些知识,本文要实现的基于本体的语义检索系统也是要通过所构建的领域本体规范领域知识来达到语义检索的目的。因此,为资源提供语义标注就变的紧迫而必需。简单地讲,语义标注就是将本体中的知识点和资源信息之间建立关联,即把收集的信息资源映射到本体中。标注工作可分为完全的人工手动标注和由工具实现的半/全自动化标注。人工标注的可信度固然高,但是面对海量资源,仅靠人工标注几乎是不可能完成的,因此自动标注工具也是必不可少的。[37,38]目前,针对海量数据的自动或半自动语义标注已经出现,主要包括:[37](1)基于传统信息抽取技术的方法。例如,工具Amilear应用技巧学习的方法在标注好的训练集上进行训练,通过不同领域的标注训练文档,适应多种领域的需求。(2)基于本体信息抽取技术的方法。该方法将本体作为信息抽取过程中可用资源的一部分,利用本体内已有的实例信息来构造列表,简化抽取过程中对于概念实例的识别。例如,方法SemTag在TAP本体实例集合中找所有与待标注词匹配的可能实例集合,然后按照待标注词的上下文与实例集合中每个实例的上下文分别构造各自的本体向量,进行相似度计算,找到与待标注词最匹配的实例。(3)基于自然语言处理的方法。为了处理自然语言超文本数据,文献[38-40]都试图从句子的主谓宾语法成分中找到对应的RDF陈述。24 太原理工大学硕士研究生学位论文(4)在众多的语义标注方法中,本文选用了基于本体的语义标注。基于本体的语义标注过程,一方面是从文档中抽取出相应的本体概念来对文档进行刻画;另一方面抽取过程其实也是对本体库的扩充和实例化。标注示意图如图3-2:语义标注文档集本体标注文档集图3-2语义标注示意图Fig.3-2SemanticAnnotationSchematicDiagram虽然现在的信息存在的形式趋于多元化的形式,但文本依然是目前信息检索领域的主要研究对象。因此,文本信息的语义标注,是语义检索系统中的一个重要环节,标注的好坏直接影响到最终的检索结果,对于文本信息的语义标注处理流程如图3-3所示,包括以下对应的[41]5个步骤:(1)提取文献中的题目、摘要、关键词以及全文内容。(2)使用切词工具对所提取的内容进行切词以及词性标注。(3)根据领域本体的语义关系对文献的权威内容进行句法及词法分析。(4)对所切词进行词频统计、设定阈值,并进行筛选形成文献标引词。(5)根据词频提取全文中重要的三元语义关系。题名句文法词本和摘要文本切词性词提取三元语信标息处理注性义关系分关键字析全文图3-3语义标注流程Fig.3-3SemanticAnnotationProcess3.1.4语义推理和传统的信息检索相比,语义信息检索最大的特点就是在检索过程中引入了对资源对象的语义处理。数据、信息和知识是人们在日常生活中经常接触到得三个概念,用户检索的对象(或目标)是数据、信息还是知识。如果我们能够正确理解这三者的关系的话,相信大家都25 太原理工大学硕士研究生学位论文会回答是用户信息检索的目的是为了获取有价值的知识。(因为用户在信息检索时往往具有相当强的目的性,希望检索出来的信息是能够帮助其解决实际工作中的问题)。领域本体描述了概念之间的关系,提供了语义推理所需要的逻辑规则,以XML/RDF或OWL格式存储的数据元信息是有待推理的对象。简单地说,语义推理过程就是让计算机识别和理解领域本体的结构和元数据信息,并根据相关的逻辑规则来求得现有信息库的闭包。下面从以下几方面对一[42]般得语义推理作进一步的介绍:1.语义推理的分类领域本体提供了语义推理所必须的规则和条件,元数据库为语义推理提供了必要的“土壤”条件。根据语义推理在语义信息检索系统中所出阶段的不同,可以将语义推理分为在线语义推理和离线语义推理;根据其在语义万维网中所出层次的不同,又可以将语义推理分为公里推理和定理推理。下面就以上几种推理作进一步的描述。(1)在线语义推理和离线语义推理语义推理的最终目标是为了在信息检索时,能向用户返回更多更相关的检索结果,以满足用户的需求。在线语义推理主要是针对用户提供的检索条件进行相关的语义扩展,发生在与用户交交互的活动的会话阶段,又称之为条件扩展式语义推理。用户在使用搜索引擎时往往需要经过多次检索才能逐渐逼近所需要的信息,因此有人提出了一种新的信息检索方式,该检索方式对用户输入的查询条件能自动地进行内涵和外延的扩展,这大大减少了用户在二次检索时的工作量。这种检索方式就需要在线语义推理的支持,其检索流程如下图3-4:查提提输询返交交入条信回推检查件息检理索询语检索服服条义索结务务件扩果器器展图3-4在线语义推理的语义检索流程Fig.3-4TheSemanticRetrieveProcessofSemanticInferenceOnline在用户输入初始查询条件时,在线语义推理可以通过运用合理的语义推理算法得到一个与用户查询条件语义密切相关的查询条件集合,这样在一定程度上提高了信息检索的查全率和查准率。但是这种方式由于是在用户与服务器进行在线交互时进行的在线语义处理,必将增加服务器对单位用户的平均服务时间,从而最终影响到服务器的响应速度以及系统的性能。为了消除在线语义推理对服务器系统性能的负面影响,有人提出将语义推理过程放在离线处26 太原理工大学硕士研究生学位论文理部分来完成的离线语义处理思想。在确定了信息检索系统的领域本体结构和语义词典本体(专门为文献关键词之间的语义关系建立的本体)之后,检索对象领域所蕴含的知识信息就基本得到确定。因此就可以在用户输入检索条件提交检索请求之前完成推理工作,这样在用户提交信息检索请求时,仅仅需要在语义推理后的信息库中提取满足用户要求的信息检索对象即可,从而在线处理部分的工作就会因此而大大减轻。既提高了系统的响应速度,又可以将检索的范围准确地面向专业领域,提高了信息检索的质量。(2)公里推理和定理推理在语义网体系结构中,根据语义推理所处层次的不同,可以将语义推理分为公里推理和定理推理两种。其中公里推理是建立在公理之上的语义推理,常用于一些常识性知识的推理。定理推理则是根据特定的领域规则,从具体的应用出发进行推理。由于领域本体中定义的子类、子属性、属性定义域、属性值域、基数限制和互不交互等规范化术语的语义能够被人们广泛认可和接受,语义推理系统中的公理推理就是通过这些术语来进行描述,因此,通过这些术语定义出来的共享知识具有良好的通用性。对应这些术语,在RDF和OWL中,W3C组织专门制定了相应的定义标签来标记这些公理,例如rdfs:subClassOf、rdfs:subPropertyOf、rdfs:domain、rdfs:range、owl:equivalentClass等,这些标签将公理进行规范化管理,方便区分和提取,也很合适由诸如Jena之类的专门的通用处理程序来实现本体推理功能。在语义万维网信息检索系统中,公理推理和定理推理都有需要,但从语义万维网信息检索的查准率和知识的通用性角度出发,应尽可能多采用公理推理,少采用定理推理。2.语义推理的算法推理是指根据已有的数据集和推理规则来产生新结论的过程,它常和问题解决以及机器学习联系在一起,属于人工智能的领域的核心课题。根据采用的推理算法的不同,可以将推[43]理分为两种基本的类型:后向推理和前向推理。其中后向链推理是一种目标驱动的推理过程,从一个待证明的目标命题出发,遍历整个规则集空间,以查找后件和目标命题相匹配的可用规则,进而循环迭代去求证该规则的前件,直至规则的前件为已知条件或无规则可用时,结束整个推理过程。若推理过程中所涉及到的规则前件均为已知条件或可以通过推理得到,则证明目标命题是可满足的,否则,还需要补充额外的证据。前向链推理则属于数据驱动,整个推理过程从已知的数据事实出发,根据相关规则进行反复迭代,以求得已知数据所能够涵盖的全部解空间,在完成前向推理之后,后续的命题证明过程就变得非常简单了,只需要查询解析空间,看是否包含待证明命题就可以了。在后向链推理过程中,若某一目标命题同27 太原理工大学硕士研究生学位论文时存在有多个可用规则时,则容易导致较深层次的递归调用,影响整个推理算法的性能,而且后向链推理离不开与用户的实时交互,需由用户事先确定目标命题,这会在一定程度上影响信息检索服务器的响应性能。基于上述分析,在本文所提出的信息检索模型中,采用了前向链推理算法。前向推理方法允许在大量规则集上实行推理和演绎操作,并可在推理所得的结果集上进行搜索。在最简单的情况下整个语义推理过程就像平常的搜索操作一样,由机器不断地去查找新的可用规则,并运用这些规则得出原本隐含的信息,它们唯一的区别就是在语义推理过程中所有的规则都必须以条件/结论对的形式显式地列出。前向链语义推理算法描述如下:(1)初始化推理规则和事实集。(2)根据当前的事实集,决定哪些推理规则可用。(3)如果无规则可用,则退出。(4)如果同时有多条可用规则,则通过冲突消解策略选择其中的一条规则。(5)应用选定的规则进行推理,将规则的后件或结论添加至事实集中。(6)重复第2步。前向链语义推理中存在的一个问题是:在实际的上下文环境中,由于事实上可应用规则的数目众多,使得完成一次推理的时间耗费可能会很大。但近年来,随着机器性价比的迅速提高,使得这一问题得到了一定的缓解,而且前向链语义推理过程只需要在检索服务器初始化时运行一次,即可为以后的信息检索提供智能化服务,具有一劳永逸的特点。3.2语义检索实现关键工具实验采用WindowsXP操作系统,利用了斯坦福大学开发的本体编辑工具Protégé来构建计算机期刊文献本体;同时使用了HP实验室开发的Jena开发包对检索方法和流程进行了模拟;根据应用的实际需要,确定使用Java环境下的Eclipse集成开发环境作为系统实现的基础。主要工具和平台如下:3.2.1本体构建工具Protégé[44]本系统选用Protégé3.4.1作为本体建模工具,Protégé是由斯坦福大学的StanfordMedicalInformatics开发的一个开发源码的本体编辑器,它是用Java编写的。其界面风格与普通Windows应用程序风格一致,易学易用,其界面如下图3-5所示:28 太原理工大学硕士研究生学位论文图3-5Protégé3.4.1界面Fig.3-5Protégé3.4.1InterfaceProtégé提供了一系列知识模型结构和行为来支持各种表达形式(包括OWL、RDF、都柏林核心元素等)的本体的创建、可视化以及操作。同时,其结构容易扩展,以OWL查询的形式支持OWL格式的本体,此OWL插件以Java开发,可以用Jena包(HP实验室开发的JavaAPI)支持OWL文档的读取。在Protégé3.4.1编辑器中,本体结构以树形的层次目录结构显示,用户可以通过点击相应项来编辑或增加类、子类、属性、实例等本体元素。另外,用户可以不用考虑具体的本体描述语言,而在概念层次上设计领域本体模型。3.2.2语义解析工具Jena在本文的研究中,需要利用领域本体丰富的语义关系进行推理,本文采用惠普实验室的Jena推理机来作为推理工具,下面就对Jena推理机做一个简要的介绍。Jena是来自于惠普实验室语义Web研究项目的开源资源,是用于创建语义Web应用系统的Java框架结构,用于在Java应用中处理元数据信息,它为基于RDF/RDFS、OWL描述的语义Web提供了一个程序开发环境。目前包括两个版本:Jenal包含了操作RDF的API和RDQL支持,Jena2加入了操作本体(OWL、DAML十Oil)的API,Jena2是Jena的最新版本。文中以后所提到[45]的Jena都指的是Jena2。Jena有下面几个主要组成部分,如图3-6,这些组成部分在解决语义Web环境下语义检索中起到重要的作用。29 太原理工大学硕士研究生学位论文XML/RDF文档XML/RDF解析器RDF模型的持续性存储RDFAPI推理机子系统RDFModelOntology子系统InfModel/OntModelRDQL搜索结果图3-6Jena的各个组成部分Fig.3-6ComponentsofJena下面是各个组成部分功能的详细介绍:1.ARP(AnotherRDFParser):ARP现在的版本是ARP2,这个RDF的解析器根据最新的RDF规范作了修改。ARP是Jena的一部分,它的功能是解析RDF/XML数据文件,主要用于Jena中读取操作,但是也可以脱离Jena而使用其他Java程序中。你可以只下载ARP而不需要下载安装Jena来使用它,但是需要安装有JREl.4或以上的版本。2.RDF的API:RDFAPI用来创建、解析、处理和查询RDF模型。Jena定义了很多的接口来访问和处理RDF数据。3.Ontology的API:Jena2的OntologyAPI是用来支持基于RDF格式的本体数据的程序开发。比如像OWL,DAML+OIL和RDFS,它们都是基于RDF格式的本体语言。对于以上的三种语言的本体API都是从RDFAPI中继承实现的。OntologyAPI与推理子系统紧密地结合在一起,通过推理能从一个给定的本体源得出补充的信息。4.推理子系统:Jena2的推理子系统被设计成很容易插入一系列推理引擎或推理机到Jena中使用。通过将公理和规则与推理机关联起来,推理机就可以根据现有的RDF模型中的三元30 太原理工大学硕士研究生学位论文组得出额外的RDF三元组。在应用程序中,我们通常使用ModelFactory类把推理机与数据模型关联起来,以达到推理的目的。当使用查询来从RDF数据模型获取数据时,不仅能得到数据模型本身所含有的数据,而且可以得到由推理机制所产生的额外的数据。在Jena中如何获得一个推理机有下面几种方法:(1)工厂方法:对应每一种推理机都有一个推理机工厂(ResonerFactory)类,通过调用推理机工厂类的静态方法getInstance()就可以得到一个Resoner的实例。(2)推理机注册器:Jena中含有一个全局的推理机注册(ResonerRegistry),具体有三种方法可以创建推理机。(3)使用Jena自带的基于一般规则的推理机:基于自定义规则的推理机。推理机的内部是根据一定的触发机制通过对推理规则的解释从而实现推理的效果。具体的触发机制包括前向链引擎、后向链引擎和混合式规则引擎,前向链引擎和后向链引擎可以彼此独立使用,也可以用前向链引擎来初始化后向链引擎。对于推理规则,用户可以根据需要定制自己的规则,然后根据自定义的规则可以创建特定的推理机,使用第三方推理机。我们还可以使用Jena之外的推理机,这些推理机可以和Jena集成。(4)本体模型规范(OntModelSpaec)方法:如果你使用OntologyAPI,那么可以指定一个模型规范(OntModelSpec)给你的本体模型,那么就会同时创建一个对应的推理机了。(5)模型工厂方法:当我们使用ModelFactory来创建一个普通的带RDFS推理机的RDF模型时,我们使用ModelFaetory.createRDFSModel就可以了。5.数据存储接口Jena2存储子系统扩充了Model类,可以透明地使用基于数据库引擎的持久性存储的模型。三种常见的数据库是支持的:MySQL,Oracle,PostgreSQL,而且支持Linux和Windows平台。Jena2的存储子系统与Jena1的大部分是兼容的,但是不支持Jena1的数据库结构设计。因此,现有的Jena1使用的数据库无法被Jena2使用,需要重新用Jena2装载数据。6.RDQLRDF查询语言。它提供了对本体访问的Java语言接口:包括读入、写出RDFS、DAML、OWL形式本体文件的方法接口、具有访问RDFS、DAML、OWL等形式本体的子类、类所具有的特性以及子特性的方法接口。本问中的实验系统主要使用了Jena操作OWL和RDF格式模型的相关方法接口。基于RDF格式的方法接口包括:基于文件系统或关系数据库的模型(Model)的读取、写入、查找资源31 太原理工大学硕士研究生学位论文(Resource)、查找陈述(Statement)、通过RDQL查询模型。列举陈述等。基于OWL格式的本体操作方法接口包括:基于文件系统或关系数据库的本体模型(OntModel)的读取、写入、查找类(OntClass)、查找属性(OntProperty)、创建实例(Individual)、查找实例、加入OWL推理机等。3.2.3集成开发环境Eclipse[46]本实验选用Eclipse作为Java的集成开发工具,Eclipse是一个综合开发环境(IntegratedDevelopmentEnvironment)IDE,它是一个功能完整成熟的软件,由IBM公司于2001年首次推出。它是一个开源的、基于Java的可扩展开发平台。就Eclipse本身而言,它只是一个框架和一组被称为平台核心的服务程序,用于通过插件组件构建开放环境。其中Eclipse附带了一个包括Java开发工具(JavaDevelopmentTools,JDT)的标准插件集,因此如果要使用Eclipse来开发Java程序,必须安装SDK作为它的插件才能使它正常运作。本论文中还用到了Tomcat插件。其操作界面如下图3-7:图3-7Eclipse开发环境界面Fig.3-7EclipseDevelopmentEnvironmentInterface3.3本章小结本章主要从领域本体的构建、信息资源的收集、语义标注和语义推理等几个方面进行研究,阐述了构建基于领域本体的语义检索系统所需要的关键技术。之外还简要介绍了语义检索实现要用到的几个关键工具。32 太原理工大学硕士研究生学位论文第四章基于本体的计算机领域期刊文献语义检索系统的设计4.1语义检索系统的设计思想目前尽管存在多种搜索引擎提供对网上信息资源的检索,但如果要直接对当前互联网上的资源进行语义检索还是比较复杂和困难的,在现有Web基础上实现完全的语义检索一定程度来说也是不太现实的,毕竟当前的Web资源是缺少语义的,尽管人们也可以通过对其进行语义标注来赋予Web资源信息一定的语义,然而考虑到Web的海量信息和信息的异构特征,本文主要还是针对特定领域的资源按照语义的方式有效地组织起来来实现语义检索。要实现语义检索就需要借助于本体(Ontology),本体以其良好的概念层次结构和对逻辑推理的支持在信息检索,尤其是基于语义的检索中得到了广泛的应用。基于本体的信息检索的设计思想可以阐述为:在领域专家的帮助下,建立基于领域概念知识的领域本体;根据所构建的领域本体收集信息源中的数据,并参照已经建立的领域本体,把收集来的数据按规定的格式存储在元数据库(关系数据块、知识库等)中;对用户检索界面获取的查询请求,按照本体和推理规则把查询请求转换成规定的格式,在本体的帮助下从元数据库中匹配出符合条件的数据集合;将定制处理后的检索结果返回给用户。4.2语义检索系统的应用背景4.2.1问题的提出随着互联网的飞速发展,网上的信息资源日益增多,人们获取信息的方式也不再局限于书本上,更多的时候是在利用网络上的电子资源。随之,各类学术论文也逐渐以电子文档的形式上传到网上。到目前为止,网络上已经建成了几大论文索引平台,其中收录了大量的学术论文,如“CNKI全文期刊、专利库”、“万方期刊数据库”、“维普全文科技期刊库”等,其中的“中国期刊全文数据库”是目前世界上最大的连续动态更新的中国期刊全文数据库,收录国内9100多种重要期刊,内容覆盖自然科学、工程技术、农业、哲学、医学、人文社会科学等各个领域,全文文献总量3252多万篇。在如此庞大的期刊论文库中,如何快速而有效地检索论文资料就逐渐成为一项重要而迫切的研究课题。从本文一二章的分析可知,传统的33 太原理工大学硕士研究生学位论文信息检索技术都是基于关键字机械的语法匹配方式和全文检索技术,主要借助目录、索引和关键词等方法来实现。此方法的优点是简单、方便快捷,但同时存在一些不足之处。加之用户的检索要求在不断提高,传统的检索方式越来越难以满足用户的要求,而论文检索是信息检索技术在具体学术领域的应用,也存在同样的问题。而造成这些问题的实质原因就在于传统的信息检索技术所采用的是完全基于语法层面的字、词形式上的简单匹配,而缺乏对知识的表示、处理和理解能力。解决这些问题的关键就在于给被检索对象赋予一定的语义,把信息检索从基于传统的关键字层面提高到知识(或语义)层面上。而从前面一二章的介绍中可知,要实现这种功能就需要借助具有良好概念层次结构和支持逻辑推理的本体技术。这也正是本文将本体技术应用于计算机学术领域期刊论文检索中的重要的理论依据。当前我们使用的文献检系统(包括万方数据库系)大多都是采用基于关键字机械式语法匹配的检索方式,这种检索方法严重割裂了字、词之间的语义关系,加之自然语言中一词多义、一义多词的现象普遍存在,导致检索结果的查全率和查准率难以保证。针对这些问题,结合前面几章对相关理论和技术的分析,本章提出了并设计了基于本体的计算机领域期刊文献语义检索系统的框架模型,包括工作流程和功能模块。4.2.2语义检索系统概述本系统是基于本体的语义检索试验性系统,包含来自计算机学科各领域中的期刊文献。设计该系统的目的一方面是为用户提供方便快捷的专业文献的检索功能,使用户可以很快获得符合自己要求的各种文献资源;另一方面也是为了探索基于本体实现语义检索的方法,重点在于分析和模拟语义检索过程的实现机理和步骤,以及推理规则的运用等,为将来文献语义检索系统的真正应用积累相关的理论和技术经验。系统采用当前比较流行的B/S结构,用户通过友好的图形化界面来进行信息检索,系统界面提供了条件语义检索和导航检索两种检索方式,其中的语义检索不仅能检索出在语法上和用户输入的检索条件一致的结果,而且借助事先构建的语义词典本体及推理规则还可以检索出在语义上和检索条件相符但语法形式上不符,以及隐含的文献信息,其中,这里的语义关系主要包括和用户输入的检索条件存在同义或上下位的语义关联。该系统与传统信息检索的不同之处在于:第一,该检索系统是基于某一具体领域本体的。第二,建立了推理规则。系统借助推理规则并结合本体库进行了基于语义推理的检索,得到用户需要的隐含信息,最终完成了语义检索功能。34 太原理工大学硕士研究生学位论文4.3语义检索系统的结构设计在进行结构设计之前首先来看该语义检索系统的需求分析:考虑到对领域知识的熟悉程度,本文选用计算机学科领域的期刊文献作为实验系统的检索研究对象。以下是对该系统的需求分析:首先从用户的角度出发,在比较传统信息检索与语义检索之后,提出系统的基本需求:(1)交互功能该语义检索系统和传统的检索系统一样,需通过一种交互的方式,即用户将自己的检索请求提交给系统,系统尽量检索出与用户要求匹配的结果并返回给用户。因此,为了用户能够灵活地提出其检索的需求条件,系统就必须提供一种合理的检索入口来让用户有效地表达其检索需求。(2)支持语义推理设计语义检索系统的目的就是为了解决传统信息检索语义缺乏的问题,因此,为了提高检索的查全率和查准率,语义检索系统应具有语义推理和查询扩展能力,能够根据本体的语义联系对用户的检索表达式进行语义扩展,如进行近义词、上下位词的扩展操作。并且通过推理来发掘信息库中隐含的信息。使得用户可以最终得到与需求相匹配的全部信息,来达到语义检索的目的。(3)显示结果条理化与传统检索系统一样,语义检索系统结果显示界面对用户应该是友好的,表现在系统返回给用户的检索结果应该是经过组织和处理过的,即各条结果信息之间的关系应该是一目了然的,这样可以节省用户大量的阅读时间。对系统做了简单的需求分析之后设计如下的语义检索系统模型:参考当前的Web搜索引擎,结合语义Web和本体技术,本文设计了一个基于领域本体的语义检索系统模型,其检索对象是计算机学科领域的期刊文献。本模型采用目前较流行的浏览器/服务器结构(B/S)模式,三层架构体系,由Web终端、Web服务器和数据服务器所组成,采用Tomcat作为Web应用服务器,直接读取作为数据层的OWL本体文件。系统的功能主要由三大块组成:基于JSP的前台用户检索和返回检索结果界面;借助Jena设计的JavaBean应用程序中间件;OWL本体文件和推理规则文件的存储和调用。模型的整体系统架构如下图4-1:35 太原理工大学硕士研究生学位论文用户本体实推理规则本体创建例文件文件检索结果生成本体提炼数据获取语义推理检索引擎查询请求文献领WWW语义查询条件域本体词典文件本体文件数据服务器Web服务器Web终端控制流数据流图4-1语义检索模型系统架构Fig.4-1SystemStructureofSemanticRetrievalModel用户通过采用JSP技术开发的JSP页面可以很方便地访问文献信息资源和查看返回的检索结果;应用程序中间层则是由主要采用Servlet和JavaBean等技术开发的组件构成,这些组件完成语义查询、语义分析和推理功能,另外还用到了HP公司的JenaAPI来操作本体;数据层采用了Protégé本体创建工具来创建本体并直接存储为OWL本体文件(包括添加的相关资源的实例)。从工作流程来看系统包括以下的功能模块:检索入口、语义推理模块、信息检索模块、知识库模块、信息组织模块等。对应的模块结构图如下图4-2:36 太原理工大学硕士研究生学位论文计算机学科期刊文献语义检索系统检语信信知索义息息识入推检库组口理索织模模模模模块块块块块推推推本理理理体规规引文则擎则件文集件图4-2计算机期刊文献语义检索系统的模块结构Fig.4-2ModelStructureofComputerJournalArticlesSemanticRetrievalSystem其中的检索入口模块负责按一定的格式接受用户的检索请求;语义推理模块负责语义推理过程;信息检索模块则是负责实现用户检索请求和知识库信息之间的匹配;知识库模块负责构建和存储期刊文献领域的知识库和定义的推理规则集;信息组织模块最后负责将检索结果以条理清晰的、用户容易理解的形式返回给用户。4.4语义检索系统工作流程此语义检索系统的工作流程如下:(1)用户将检索请求按要求的格式提交给检索入口,参考传统的信息检索系统,本实验采用基于表单输入的检索接口,用户可以通过对表单中限定好的检索项:如“标题”、“关键字”、“作者”等进行限制,从而达到描述检索需求的目的。与传统信息检索系统不同的就是传统的信息检索系统中,检索项对应的是数据库关系模式中的字段,而在此语义检索中表单检索项对应的是本体中类的语义属性。(2)用户提交检索表单之后,推理机结合本体库(包括实例信息库)和定义的推理规则进行推理,对用户提交的检索词进行语义扩展。(3)将推理机推理获得的信息和原有的信息组织在一起,形成推理后的完整数据库。37 太原理工大学硕士研究生学位论文(4)信息检索模块将用户提交的检索请求和经过推理的数据库中的信息进行匹配,找出与用户需求相符的信息。(5)信息组织模块将得到的检索结果进行组织后以条理的形式返回给用户。检索流程的时序图如下4-3推理模块用户推理模块用户检索模块解析模块本体库本体提交检索请求语义推理元数据解析执行实实例匹配例匹配匹配结果返回提交检索结果图4-3语义检索时序图Fig.4-3SemanticRetrievalSequenceDiagram4.5语义检索系统功能模块整个模型中,从组成功能结构来看可分成四大模块:用户交互功能模块、本体服务模块、推理系统模块和语义标注模块。(1)用户交互功能模块考虑到系统管理的需要,用户要根据权限登录后方可使用该检索系统。系统用户分为两类:普通使用者和系统管理员。普通用户登录后直接链接到条件检索界面,通过在页面的左栏部分选择检索项,同时输入检索词并提交来获得检索结果,为了方便用户的查询,系统还提供了导航检索界面。系统管理员也可以通过可视化界面来维护本体,主要是更新本体库中的信息资源,即添加新的本体实例(对信息资源进行语义标注。(2)本体服务模块本模块是实现语义检索的前提。该模块的重点是构建领域本体,考虑本实验系统要实现的语义检索是针对特定领域的资源,而不是当前Web、所有领域的语义检索。因此在这里只需要一个LowLevel本体,具体来说也就是针对特定资源领域进行描述的领域本体,而不是那些比较通用的上层本体(TopLevelorUpperLevelOntology)。考虑到对信息资源的熟悉程度,本文借助Protégé3.4.1工具构建了关于计算机领域期刊文献的领域本体,并用OWL语言对其进38 太原理工大学硕士研究生学位论文行描述。为了推理的需要,文中还构建了一个语义词典本体并定义了相关的推理规则。(3)推理系统模块推理系统包括推理引擎和推理规则。推理引擎利用推理规则对上一步输入的结果进行推理,完成查询内容的语义扩展。具体到本实验系统中就是完成检索关键词的同义、上下位语义关联词以及文献之间引用关系的语义推理。推理系统是语义搜索引擎的核心模块之一,也是区别于传统检索系统的关键模块。常见的推理机有面向低层次的、通用的Jess和针对具体本体语言的推理机,如Racer、Fact、KAON2、Pellet和Jena推理机等。该模块的功能主要是利用Jena开发工具实现的。它能够实现对RDF(S)和OWL等本体文件的解析和推理,在本系统模型中,推理功能是在线实现的,即在用户提交检索词之后,该模块将本体和推理规则及资源数据从文件中读出,通过推理得出内容之间的语义关系,然后在推理之后的相关信息库中检索出用户所需要的结果,最后以条理化的形式输出相应的检索结果。(4)语义标注模块在本体的建模阶段,大部分的建模工作都集中在领域知识的抽象表示上,即发现领域内的概念、概念的继承层次、潜在的关系和公理等。说到底这些都是为将来的语义标注做准备的,虽然说通常的本体都具有一定的通用性,表示特定领域内的知识,这样我们在本体建模时可以不考虑实例,但由于领域内可能的实例数目无穷无尽且动态变化,因此,当我们准备要将所构建的本体和一个具体的应用结合时就必须考虑实例,这样才有意义。将现实应用中涉及的实例和抽象的本体概念相联系,这正是语义标注(SemanticAnnotation)所要做的工作。和数据库类比,语义标注就如同为建立好的数据库表添加具体的纪录。如果将本体看作是简化了的知识库,那么从本体的角度来看,添加实例,即是进行语义标注,可视为丰富本体的过程。如果站在语义Web的角度来看,语义标注便是语义信息的发布过程,用户依据一定的本体,为页面添加语义信息。本文正是通过将收集的文献信息作为实例添加到领域本体中来实现对文献信息资源的语义标注的。4.6本章小结本章结合前面相关理论、技术的分析,在对基于本体的计算机领域期刊文献语义检索系统做了简要的需求分析基础上提出并设计了基于本体的语义检索模块框架,接着从整体上对模型的工作流程和功能模块进行分析。39 太原理工大学硕士研究生学位论文第五章基于本体的计算机领域期刊文献语义检索系统的实现本章按照第四章中设计的语义检索模型框架开发并实现了一个基于计算机学科领域期刊文献本体的语义检索系统,该系统为用户提供了便捷的语义检索和本体操作界面。通过构建计算机学科领域期刊文献本体,为信息检索在该领域提供了语义支持,并在此基础上建立了推理规则,借助JenaAPI来实现语义检索,提高了期刊文献检索系统的性能,弥补传统检索方法的不足。5.1系统开发平台和工具软件:操作系统Windows2000XP开发工具JDK1.5,Protégé3.4.1,Jena-2.5开发环境Eclipse3.2,Web服务器Tomcat5.5系统使用Java语言作为语义检索系统程序编程语言,用JSP编写前台动态网页,JSP基于Java,具有与平台无关的特性,它把内容生成和实现分开,方便程序的编写。安装Tomcat作为Web服务器平台,提供Web服务。在浏览器中访问JSP页面时,Tomcat会将JSP转化为Servlet文件之后编译执行,即在JSP页面中调用Java字节码(.class)文件生成的JavaBean组件,在Web服务层与数据层之间的JavaBean组件中,通过JenaAPI来读取和解析OWL本体以及本体的推理规则,实现语义查询和语义分析推理。在数据层采用Protégé来构建期刊文献本体和语义词典本体,并存储为OWL文件,程序直接读取作为数据层的OWL本体文件,来满足本体数据库的后台存储和调用,以实现本体模型存储与应用的分离。由于本实验系统中构建的本体文件比较简单,所以采用了直接读取本体文件的方法,相比较而言如果要用到实际的检索系统中,涉及的本体及其数据源都要复杂的多,这种情况下最好选择用关系数据库来实现本体及数据源的存取。5.2实现系统主要代码功能的简单说明(1)JSPWeb页面:40 太原理工大学硕士研究生学位论文index.jsp该界面是一个索引界面,通过该界面用户进入登陆界面login.jsp用户登录界面,这里的用户分为两种:一种是运用该检索系统进行信息检索的用户,另外一种是管理员用户(管理员有权操作所构建的本体,添加新的文献实例或者删除旧的文献实例)tjleftresult.jsp使用此文献检索系统的用户登录后链接到的页面,显示本体库中所有文献资源的情况,用户可以通过此界面定制的检索项输入检索条件进行检索。tjcxresult.jsp提交条件检索请求后得到的检索结果页面dhleftresult.jsp从条件检索界面链接到的导航检索界面,提供了按学校、文献类型和期刊类型等多种方式的导航查询。dhcxresult.jsp导航查询的结果界面。test.jsp管理员操作界面,管理员通过此界面来对本体进行操作,更新本体库中的文献实例。xxx.jsp显示每篇文献的详细信息,主要是包括推理得出的文献之间的相互引用关系。(2)JavaBean部分test.java该程序负责文献本体的导入,并显示所有文献的标题、关键字、作者等关键信息。reasingmodel.java该程序负责接收输入的关键字项查询条件,并通过装载推理规则lw.rules建立推理模型来完成关键词同义、上下位关系词的语义扩展查询。P20100301.java通过载入本体和推导文献间引用关系的推理规则lw1.rules来完成文献间引用关系的推理。readinowlww1.java接收管理员操作界面输入的本体实例属性值的信息,完成对本体中实例的添加。(3)后台数据lw.owl该部分为期刊文献本体,描述了计算机学科领域期刊文献的语义元数据信息。yycd.owl语义词典本体,描述了代表计算机期刊文献主要内容关键字之间的语义关系。lw.rules,lw1.rules推理规则lw.rules和lw1.rules分别用来完成文献关键词语义关联之间的推理和文献之间引用关系的推理。5.3系统后台数据库实现本文研究的重点是将本体和推理规则运用于信息检索系统中,通过赋予被检索对象一定的语义信息,来克服传统信息检索缺乏语义的问题。为了验证第四章提出的基于本体的计算41 太原理工大学硕士研究生学位论文机领域期刊文献语义检索系统模型的可行性和有效性,在编写实验代码之前首先需要构建合理的领域本体库、收集一定量的期刊文献作为检索对象并结合本体对其进行语义标注、同时定义合理的推理规则。本小节着重看一下构成后台数据库的以上三个小模块的具体实现。5.3.1计算机期刊文献领域本体的构建构建本体库是实现语义检索实验系统的第一步,也是整个语义推理和查询的基础。目前,关于本体建模还没有一个统一的方法、本体的构建本身存在一定的难度、多数情况下还需要领域专家的参与。并且,到目前为止,领域本体的构建非常不理想,领域跨度范围较小,很多本体都是在比较小的领域中进行构建的,如李景的只限于花卉领域的花卉领域本体等。因此,要在当前构造出完备的本体集是不可能的。考虑以上问题,本文也只是针对计算机学科期刊文献领域进行了本体的构建,该系统采用前面第三章中介绍的面向对象的方法并结合本体构建的步骤,借助Protégé本体构建工具,OWL本体建模语言,构建了两个领域本体,计算机期刊文献本体(lw.owl)和语义词典本体(yycd.owl)。系统本体库的生成主要包括本体建模和本体编码两个步骤。1.本体建模计算机期刊文献领域本体库建模的具体方法如下:(1)确定所要研究的任务和领域。本实验是对计算机学科领域期刊文献信息语义检索的模拟,检索的对象也应该是计算机期刊文献信息。这样就需要一个计算机学科领域期刊文献的本体,来描述期刊文献重要的元数据信息;另外,考虑到语义扩展推理的需要,还构建了一个语义词典本体来定义体现文献主要内容的关键字之间的语义关系。(2)本体的需求分析。明确了研究的领域之后就需对所构建的本体进行需求分析,该实验中的检索对象是计算机学科领域期刊文献,可以通过文献的多种信息来对其进行检索,系统应该尽量提供最丰富的语义、通过文献的多种属性来提供检索项,这些可供检索的信息项有:文献的标题:通过期刊文献的标题检索。文献的关键字:通过期刊文献的关键字检索。文献的作者:可以根据某期刊文献的作者信息来检索,检索项包括作者的姓名、所在单位等属性。文献所属的学术研究领域:通过某期刊文献所属学术领域的分类来进行检索。文献的发表年份:通过期刊文献的发表年份来检索,文献发表年份是文献知识新旧程度42 太原理工大学硕士研究生学位论文的参考。文献的发表期刊:也可以通过发表文献的期刊来检索,包括期刊的名称和类型等。(3)核心概念集的确定。在需求分析的基础上,参照《中国分类主题词表》和《中国知网》抽取描述计算机学科领域期刊文献的主要概念信息,以此来构建该领域本体库中的类和类之间的关系以及类的属性。参照知网中的文献信息,抽取出通常用来描述期刊文献的主要信息有:文献标题、关键词、摘要、作者、发表期刊、中图分类号、发表时间和所属具体研究领域等。其中的作者信息又包括作者姓名、作者所在院系、单位等。同样,期刊杂志也有杂志名和类型(诸如一级、二级、核心、非核心等)等属性。(4)概念集对象属性的确定。抽取了本体的核心概念之后,接下来就可以定义本体中的类、类层次及类之间的关系。基于以上的分析,文献本体中主要用到文献、作者和期刊杂志三个类概念,三者之间的聚合关系为作者与文献之间是创作于被创作的关系、杂志与文献之间是出版与被出版的关系、文献与文献之间是引用与被引用的关系。这种聚合关系对应本体体系中的对象属性(ObjectProperty)。类之间的聚合关系如图5-1所示:MagazineMaga_namePaperisPublishedMaga_typeTitleCitingKeywordsAuthorDescriptionAuthor_nameTpAuthor_departmenttYearhasAuthorAuthor_universityPaper_typeAuthor_districtAuthor_postcode图5-1期刊文献本体类及类之间的关系Fig.5-1JournalArticles’OntologyClassesandRelationshipofthem(5)概念集数据属性的确定。在确定了类之间的聚合关系,即类的对象属性之后再考虑定义类的数据属性(DatatypeProperty),包括属性的名称、类型及其约束条件。如描述文献的信息中,除了其作者和发表杂志两个对象属性外还有文献题目、关键字、摘要、分类号等其它的数据属性。具体的各个类的属性描述如表5-1至5-3所示:43 太原理工大学硕士研究生学位论文表5-1期刊文献的描述信息Table.5-1DescriptionInformationofJournalArticlesClass:Paper(期刊文献)属性名称domainrange属性类别Title(文献标题)PaperStringDatatypeDescription(文献摘要)PaperStringDatatypeKeywords(文献关键词)PaperStringDatatypeTp(文献的中图分类号)PaperStringDatatypeYear(文献的出版年份)PaperStringDatatypePaper_type(文献的所属类别)PaperStringDatatypehasAuthor(文献的作者)PaperAuthorObjectisPublished(文献的发表期刊)PaperMagazineObjectCiting(该文献引用的文献)PaperPaperObjectisCited(引用该文献的文献)PaperPaperObjectbothCiting(和该文献存在同引关系的PaperPaperObject文献)bothCited(和该文献存在同被引关系PaperPaperObject的文献)表5-2期刊杂志的描述信息Table.5-2DescriptionInformationofMagazineClass;Magazine(期刊杂志)属性名称domainrange属性类别Mag_name(期刊名称)MagazineStringDatatypeMag_type(期刊类别)MagazineStringDatatype44 太原理工大学硕士研究生学位论文表5-3作者的描述信息Table.5-3DescriptionInformationofAuthorClass:Author(作者)属性名称domainrange属性类别Author_name(作者姓名)AuthorStringDatatypeAuthor_university(作者所属机构)AuthorStringDatatypeAuthor_department(作者所处的二级单位名称)AuthorStringDatatypeAuthor_district(作者所处的地区)AuthorStringDatatypeAuthor_postcode(作者的邮编)AuthorStringDatatype文献本体描述了计算机领域学术期刊论文有关的概念和属性,如上述的图和表所示,该本体中定义了三个类资源对象,分别是:Author作者类、Paper论文类、Magazine期刊杂志类。在此基础上定义了以下三个对象属性:hasAuthor,Citing(isCited),isPublished,并对其定义域和值域也进行了定义。其中属性hasAuthor描述了论文与作者之间的关系,其定义域是Paper,值域是Author;属性Citing和isCited描述了论文与论文之间的关系,其定义域和值域都是Paper,并且二者是互斥的关系;属性isPublished描述了论文和期刊杂志之间的关系,其定义域是Paper,值域是Magazine。然后又定义了各类资源对象的数据属性,也对其定义域和值域进行了定义。最后又定义了两个对称属性:bothCiting和bothCited(通过推得出的论文之间的同引和同被引关系)。其中bothCiting意为同时引用别的文章,bothCited意为同时被别的文章引用。对其定义域和值域进行了定义,并定义这两个属性都是对称属性。考虑到语义推理的需要,系统还参考《计算机科学技术汉语叙词表》定义了一个语义词典本体yycd.owl,主要用来描述体现文献主要内容的关键词之间的语义关联关系。该本体中定义了一个对象类Term(术语),并且给出了此对象类的五个数据属性:具体描述如下表5-4:表5-4语义词典本体描述信息Table.5-4DescriptionInformationofSemanticDictionaryOntologyClass:Term属性名称domainrange属性类型Label(词条名称)TermTermDatatypePreferTerm(该词条的规范用词)TermTermDatatypeRelativeTerm(与该词条存在语义相关的词条(同义词))TermTermDatatypeNarrowerTerm(与该词条存在下位关系的词条(被该词条TermTermDatatype包括))BroaderTerm(与该词条存在上位关系的词条(包括该词TermTermDatatype条))2.本体编码确定了本体中的概念类和类之间的关系之后,本系统用Protégé3.4.1对上述规划的本体模45 太原理工大学硕士研究生学位论文型进行了实现,通过各种本体元素把本体模型表示出来,并自动转化为OWL语言编码,存储为OWL文件。具体实现过程如下:(1)编辑本体中的类下图5-2和5-3分别显示了在Protégé中编辑的文献本体和语义词典本体中的类:图5-2期刊文献本体中的类Fig.5-2ClassesofJournalArticlesOntology图5-3语义词典本体中的类Fig.5-3ClassesofSemanticDictionaryOntology(2)编辑本体中类的属性编辑了类概念之后,下一步及就可以编辑各个概念类的属性,当然这里的属性包括对象类型和数值类型的属性。其中对象类型的属性是建立不同概念类之间的聚合联系,将概念连成语义网络,而数值类型的属性则是单纯用来描述本体中某个类的特性。图5-4和5-5显示了Protégé中本体中概念类的属性。46 太原理工大学硕士研究生学位论文图5-4期刊文献本体中各个类的属性集合Fig.5-4AttributesSetofEachClassinJournalArticlesOntology图5-5语义词典本体中类的属性集合Fig.5-5AttributesSetofClassinSemanticDictionaryOntology(3)本体的编码及存储用Protégé编辑完领域本体之后,接着应该把该领域本体转化为OWL编码的形式,并作为OWL文件保存,以便检索和推理程序模块的直接读取处理。由于转化成OWL编码后的内容比较多,因此在这里就一些比较重要的OWL片段加以说明。47 太原理工大学硕士研究生学位论文首先用标签“owl:Class”声明了文献本体中的三个类:文献(Paper)、作者(Author)和期刊杂志(Magazine)。上述OWL语句声明存在一个对象类属性“isPublished”,其定义域(rdfs:domain)为论文(Paper)类;值域(rdfs:range)为期刊杂志(Magazine)类。上述OWL语句声明存在一个对象类属性“bothCited”,定义域和值域都是文献(Paper)类,其中第三行的“rdf:type”标签声明该对象属性为对称属性,即其逆属性(owl:inverseOf)为其本身。上述OWL声明存在一个对象类属性“isCited”,同“bothCited”属性一样,其定义域和值域也都是文献(Paper)类,其中第三行的“owl:inverseOf”标签用来声明逆属性,即“isCited”的逆属性为“Citing”,即文献之间的引用和被引用是互逆的关系。48 太原理工大学硕士研究生学位论文上述OWL语句声明了文献的其中一个数据类型属性“标题”(Title),其定义域(rdfs:domain)是文献(Paper)类,和值域(rdfs:range)string,即数据类型是字符串型。此OWL语句同上,也是声明了语义词典本体中的一个词条(term)类。上述OWL语句声明了语义词典本体中词条类(term)的两个数据属性:词条名称(Label)和该词条名的上位概念(BroaderTerm)。同样也分别定义了二者的定义域和值域。5.3.2计算机期刊文献信息的获取和语义标注1.期刊文献信息的获取在构建好领域本体之后,下一步就是要结合所构建的领域本体中的核心概念集来获取实验的数据对象——具体到本论文中即是计算机学科领域的期刊文献信息,考虑到对具体学科领域的熟悉程度和获取实验数据的难易度,本实验系统从《中国数字化期刊数据库(万方)》中选取计算机学科中数据挖掘方面的期刊文献作为语义检索实验系统的检索对象。这其中还包括有相关的文献作者和各种计算机期刊杂志信息。在参照《中国规范主题词表》和《计算机大词典》之后,选取了能体现上述期刊文献主要内容的关键词词条作为语义扩展的依据。具体的收集过程如下:(1)打开学校图书馆首页,进入到《中国数字化期刊数据库(万方)》期刊文献检索系统中,选择“期刊”文献类型,在检索字段中选择“关键词”并且输入要检索的关键词内容(例如:“数据挖掘”),为了保证检索结果的准确率,在这里还要选择“相关度优先”作为检索结果49 太原理工大学硕士研究生学位论文文献信息排列先后顺序的依据。然后选择其中的前十条文献记录。(2)得到文献信息结果之后,按照文献本体中定义的文献的相关属性从所选择的每条文献记录中选取能够体现其内容的关键信息(如文献的标题、关键词、作者信息等),然后先将抽取的文献关键信息有组织地记录到一个文本文献中,并存储。(3)为了实现语义扩展的检索,还需要收集与上一步收集到的文献存在语义关系的文献信息。同样也是要通过关键词来反映文献的主要内容。这首先得参照《中国规范主题词表》和《计算机大词典》来寻找与上述输入关键词(如:“数据挖掘”)存在语义关联关系的词条,即它的同义、近义或上下位词等(例如:“知识挖掘”可以看作是“数据挖掘”的同义词、“修正近似”是它的下位词)。并按照语义词典本体中定义的概念结构来对其进行存储。(4)然后用上述找到的语义关联词条作为关键字来从万方数据库中进行检索,选取前五条文献记录运用与上述第二步相同的方法来抽取关键信息并存储。2.期刊文献信息的语义标注本文要实现的是语义检索,为了实现此目的,在构建了领域本体并收集好能够体现期刊文献信息资源的关键内容之后,一个重要环节是要将两者关联起来,即结合上面所构建的领域本体对上述收集到的文献信息资源进行语义标注,把收集的信息资源映射到本体中,然后对标注后的资源信息进行存储。在众多的语义标注方法中,本文选用了第三章中提到的基于本体的语义标注方法,通过手工标注来实现。具体过程如下:(1)首先从之前收集的文献信息中抽取出相应的本体概念(即本体中定义的类及其属性概念)来对各文献进行刻画。(2)然后将上述收集到的文献的关键信息和关键词词条信息作为实例分别添加到文献本体和语义词典本体中、并将添加了实例后的本体知识库存储。进而实现对信息资源的语义标注。5.3.3推理规则的定义要实现基于本体的语义检索,就需要借助Jena推理机,但Jena自身提供的基于推理的推理机往往不能支持所有的OWL-DL的推理功能。因此本文在使用Jena所提供的推理规则的基础上,结合需要自己定义了以下两个推理规则文件lw.rules(文献关键词的同义、上下位词的推理)和lw1.rules(文献之间相互引用的蕴含关系的推理),把建好的规则库放入Jena推理机中,这样可以很方便地推理和查询更多精确的信息。以下是这两个规则文件的设计。50 太原理工大学硕士研究生学位论文在通常的检索过程中,我们往往希望不仅能检索到同输入检索词完全匹配的信息,而且还能检索到同检索词存在语义关系的相关信息。比如,我们输入的是检索词a,又知道检索词a和b、c或者更多的词存在语义关系,这样检索结果最好是同时包含词语a、b、c的信息。具体到该语义检索实验系统中即是:如果词条a是某文献的关键词、词条a和词条b、c分别存在同义或上下位语义关系,那么用户要检索关键字中含有词条a的文献也相当于要检索关键字中含有词条b和c的文献(换一种说法即词条a也相当于是包含关键词b和c的文献的关键词)。为了实现这一语义推理,定义了如下的推理规则:lw.rules@prefixfa:.@include.@include.@prefixfb:.@include.@include.[rule1:(?cfb:RelativeTerm?a)(?cfb:NarrowerTerm?g)(?hfa:Keywords?g)(?ffa:Keywords?a)(?cfb:PreferTerm?b)(?efa:Keywords?b),notEqual(?e,?f),notEqual(?e,?h)->(?ffa:Keywords?b)(?hfa:Keywords?b)]规则:如果a是c的同义词条,g是c的下位词条,c是b的规范用词,g是文献h的关键词之一,a是文献f的关键词之一,b是文献e的关键词之一,并且文献e和f、文献e和h都不相同,则b也相当于是文献f和h的关键词之一。同理,为了得到文献之间的相互引用关系,结合同引和同被引的定义定义了以下推理规则:lw1.rules@prefixfa:.@include.@include.[bothCiting:(?afa:Citing?c),(?bfa:Citing?c),notEqual(?a,?b)->(?afa:bothCiting?b)][bothCited:(?afa:Citing?b),(?afa:Citing?c),notEqual(?b,?c)->(?bfa:bothCited?c)]规则一:定义了属性bothCiting,词条规则说明如何确定bothCiting。即如果文献a引用了文献c,文献b也引用了文献c,并且文献a和b不是同一文献,则文献a和b是同引关系。规则二:定义了属性bothCited,词条规则说明如何确定bothCited。即如果文献a引用了文献b,文献a也引用了文献c,并且文献b和c不是同一文献,则文献b和c是同被引关系。规则中的fa代表“http://www.owl-ontologies.com/Ontology1265704575.owl#”,fb代表“http://www.owl-ontologies.com/Ontology1265164424.owl#”(实验中期刊文献本体和语义词典本体的前缀)以作简写。将以上的规则加入Jena推理规则中,进行基于lw.owl和yycd.owl的推理,来实现预期的功能。51 太原理工大学硕士研究生学位论文5.4基于Jena设计的Servlet应用程序由于JSP页面部分主要是实现查询界面和结构的可视化显示,具体的推理和检索功能功能还是在JavaBean部分实现的。所以以下主要看一下这部分代码。在构建完领域本体和组织存储实例数据之后,就需要在应用程序中对其进行解析和应用。在本体数据读取、语义推理和信息检索时,本实验系主要使用了惠普实验室发布的Jena2.5开发包,它为RDF、RDFS、OWL文档提供了一个程序开发环境以及比较完整的解析、持续存储、推理和查询的函数调用和处理接口。根据实际检索的需要,中间应用程序的开发使用了其中的部分函数接口,具体实现过程如下:1.本体库的加载和所有文献信息的显示test.java完成本体的加载和本体库中文献信息的初步显示:核心代码如下:publicModelonloadon(){Stringfile="D:/12-30/lw.owl";model=ModelFactory.createDefaultModel();InputStreamin;try{in=FileManager.get().open(file);model.read(in,"");System.out.println("找到本体了");}catch(Exceptione){}returnmodel;}/*将存储在外存的本体模型读入到内存中*/publicintsearch(){/*先根据“title”找到具有此属性的所有资源,然后再找出这些资源的所有属性及其具体的属性值*/ResIteratorresult=search1("title");while(result.hasNext()){52 太原理工大学硕士研究生学位论文recordcount1++;Resourceres=result.nextResource();Stringmm=getValue(res,"title");System.out.println(mm);//输出文献标题Stringmm1=getValue(res,"hasauthor");System.out.println(mm1);//输出作者Stringmm2=getValue(res,"keywords");System.out.println(mm2);//输出关键字………………….Stringmm7=getValue(res,"iscited");System.out.println("被引用次数为"+amount);amount=0;//统计文献被引用的次数}returnrecordcount1;//统计本体库中的文献记录条数}publicResIteratorsearch1(Stringitem){/*找相关属性item的主体*/ResIteratorsearchResult=null;//搜索结果PropertysearchProperty;searchProperty=model.getProperty(itemToProperty(item));System.out.println("检索的属性:"+searchProperty);searchResult=model.listSubjectsWithProperty(searchProperty);returnsearchResult;}2.基于关键字检索项的语义推理reasingmodel.java通过接受tjleftresult.jsp传回来的要检索的文献关键字来完成基于关键字检索项的语义扩展查询,核心代码如下:首先需要建立推理模型:………..importcom.hp.hpl.jena.reasoner.*;//引入Jena推理机子系统API53 太原理工大学硕士研究生学位论文importcom.hp.hpl.jena.reasoner.rulesys.*;//引入Jena推理子系统中规则推理机API………../*首先引入程序中需要调用的Jena中的子系统的Java包文件*/publicInfModelgetInfModel(){InfModelinfModel;Stringfile="D:/12-30/lw.owl";Stringfile1="D:/12-30/yycd.owl";Modeldata=ModelFactory.createDefaultModel();Modelmodel=ModelFactory.createDefaultModel();InputStreamin;InputStreamin1;try{in=FileManager.get().open(file);in1=FileManager.get().open(file1);data.read(in,"");System.out.println("读入第一个本体");data.read(in1,"");System.out.println("读入第二个本体");System.out.println("找到本体了");}catch(Exceptione){}/*读入本体文件*/Resourceconfiguration=model.createResource();configuration.addProperty(ReasonerVocabulary.PROPruleMode,"forward");/*确定推理机使用向前推理模式*/configuration.addProperty(ReasonerVocabulary.PROPruleSet,"D:/12-30/lw.rules");/*读取用户指定的推理规则文件lw.rules*/Reasonerreasoner=GenericRuleReasonerFactory.theInstance().create(configuration);/*通过推理机(Reasoner)接口中的(genericrulereaaoner)通用规则推理机的工厂方法获得一个该54 太原理工大学硕士研究生学位论文类型推理机的实例,并通过参数configuration将上面代码确定的推理模式和推理规则传递给推理机*/infModel=ModelFactory.createInfModel(reasoner,data);/*通过ModelFactory类,把前面程序代码中已经创建的本体数据模型(data)和推理机(reasoner)关联起来,根据已经定义的推理规则文件和推理模式完成文献本体数据信息的语义扩展,达到推理的目的*/returninfModel;}建好推理模型之后就可以按照需要在推理模型中检索相关的信息。本体中文献类的实例包含了期刊文献的元数据,系统完成对于文献类实例的检索即实现了该系统的检索功能,而文献类集合的查询又是通过Jena对上一步结果的InfoModel对象进行相应操作来实现的。该查询过程还需要完成对于本体模型“同义”和“上下位”逻辑关系推理机制的实现,这也是本系统能够基于语义查询的关键,与传统检索方法的区别所在,具体实现步骤如下:(1)用户从查询界面输入查询条件,把查询条件作为字符串赋给变量keyword,然后将此检索值传回给search()函数,search()函数将这个变量与本体库中的相关概念进行匹配,找到对应的类中的实例。关键代码如下:publicintsearch(javax.servlet.http.HttpServletRequestnewrequest){intrecordcount=0;try{request=newrequest;Stringkeyword=request.getParameter("keyword");System.out.println(keyword);ResIteratorresult=search1("keywords",keyword);while(result.hasNext()){recordcount++;}}catch(Exceptione){System.out.print(e.getMessage());}returnrecordcount;}55 太原理工大学硕士研究生学位论文(2)通过本体中建立的关系属性,查找到概念所关联的文献类,并把值赋给ResIterator数据类型的变量searchResult。这个步骤代码主要由search1()来完成,代码同上。由于匹配过程使用的是推理之后的得到的模型,所有经过这步检索之后得到的信息也就包括了同检索关键词存在“同义”和“上下位”关联关系的个体信息集合。(3)根据上面由查询条件匹配到的类的实例集,系统会再寻找其中的实例所对应的文献的“标题”、“作者”、“关键字”、“摘要”等属性的值,用于JSP的显示,关键代码通过getValue()函数来完成,代码同上。上述代码中最重要的就是创建推理模型。通过将本体文件、Jena自带的推理机以及自定义的推理规则捆绑成一个InfoModel对象来实现,该对象是本体模型推理的结果,是下一步查询的基础。首先要创建推理机,创建推理机的同时读入推理规则集,来实现推理机和推理规则的绑定,最后通过ModelFactory类的createInfModel方法来将该推理机与原来的本体模型绑定,生成InfModel对象,该对象即是推理模型,程序通过访问此推理模型来实现推理机的自动推理,得出隐含的语义知识,这样从推理模型中检索出的数据集便是经过推理后的完备数据集。3.文献间相互引用关系的推理p20100301.java完成文献间相互引用关系的推理查询,同样也是首先要读入本体文件和推理规则文件lw1.rules,创建推理模型,方法同上。其余的核心代码如下:publicvoidsearch(javax.servlet.http.HttpServletRequestnewrequest)){try{request=newrequest;Stringvalue=request.getParameter("res");/*这里的res即开始所有信息的显示界面传回的文献的标题信息*/ResIteratorresult=search1("title",value);while(result.hasNext()){System.out.println("文章编号是:");Resourceres=result.nextResource();System.out.println(res);Stringmm=getValue(res,"title");……………….}56 太原理工大学硕士研究生学位论文}catch(Exceptione){System.out.print(e.getMessage());}}程序接受JSP页面传回的文献标题信息之后到加载了推理规则lw1.rules的推理模型中去检索,这样得到的结果除了开始显示的文献标题、关键词、作者、摘要等期刊文献关键信息外还增加了通过推理得出的文献之间的相互引用关系。5.5系统功能演示及分析本小节演示计算机领域期刊文献语义检索实验系统的运行情况。系统检索及显示结果顺序为:非管理员用户登录后首先链接到显示本体库中所有文献实例的标题、关键字、摘要等关键信息界面,通过该界面上各文献标题的链接可以查询到除了上述信息之外该文献的引文、被引文以及与该文献存在同引和同被引关系的文献信息。然后通过在左边的检索条件栏中输入查询条件并提交便可以得出条件检索结果,除了条件检索外,系统还提供了导航检索功能及管理员通过可视化界面添加本体功能。功能演示界面如下:1.用户登录图5-6用户登录界面Fig.5-6InterfaceofUserLogin用户通过在此界面中输入正确的用户名和密码可以登录到如下图5-7所示的文献条件检57 太原理工大学硕士研究生学位论文索界面,这里的用户指的是普通用户。如果是管理员用户则可以通过上述界面中的“管理员入口”登录到本体实例添加界面。2.条件检索普通用户登录以后,在条件检索界面左栏的查询条件部分,按照系统定制的检索项输入自己的检索条件并提交查询表单便可以得到界面右栏中的检索结果。具体内容如下图5-7。下位关系近义关系图5-7查询条件为“关键词=数据挖掘”的检索结果界面(语义检索)Fig.5-7SearchResultsInterfaceofQueryfor“Keywords=DataMining”(SemanticRetrieval)58 太原理工大学硕士研究生学位论文“数据挖掘”的相似词图5-8CNKI系统条件检索结果界面Fig.5-8ConditionQueryResultInterfaceofCNKISystem在这里可以将实验原型系统与CNKI的检索系统进行比较。在CNKI检索系统中选择检索项为关键词并填写检索词“数据挖掘”,共检索到19081条结果,检索结果如上图5-8所示,从检索结果页面左栏下方可以看到“数据挖掘”的相似词中全部都包含有“数据挖掘”字样(模糊检索的情况下)。当然,检索出的期刊文献同样也只包含关键词中有“数据挖掘”字样的文献,由此可以推断,CNKI的检索是基于结构化语法的机械匹配方式的,而没有做到基于内容和语义。而上图5-7本实验系统中的“条件查询”界面,左边部分是查询条件的输入,右边是检索结果。在条件查询子系统中结合了之前构建的期刊文献本体和语义词典本体,提供给用户输入属性(值)的方式来进行检索。这里的属性既包括数据属性又包括对象属性,方便用户从多角度对文献资源进行检索。当用户选择采用关键词进行检索时,可以实现语义关联,即不仅可以检索到与用户输入检索词在语法形式上匹配的关键词所在文献的信息,而且还可以检索到与其存在语义关联的关键词所在文献的信息。例如,当用户输入关键词为“数据挖掘”的检索条件时,从图5-7反馈的信息来看,该系统的检索结果不仅检索出了包含“数据挖掘”该关键词的文献而且还检索到包含和“数据挖掘”具有近义和上下位关系的关键词(如“修正近似”和“知识发现”等)所在的文献。这也正是传统的检索系统所没有的功能,体现了语义检索的意义所在。59 太原理工大学硕士研究生学位论文3.导航检索除了条件检索之外本实验系统还提供了导航检索,界面如下:图5-9导航检索结果界面Fig.5-9InterfaceofNavigationRetrievalResult通过条件查询界面中的导航查询的链接,可以进入到如图5-9的导航检索操作界面。导航查询界面分左右两部分,其中左侧部分又分上下两部分,上方部分显示用户所提交的导航查询条件。下方部分则是提供给用户进行信息检索的导航栏目。其中包括有:文献的著作单位、文献的专业领域分类和发表文献的期刊类型等的导航栏目。用户可以通过点击这些导航栏目下的具体元数据信息来实现导航检索的目的,进而得到右边部分的导航检索结果。如上图中检索的是作者所在学校为“西北大学”的期刊文献。4.文献间引用关系检索通过非管理员用户登录以后显示的所有文献信息标题的超链接,可以得到包括该文献引文关系的详细信息界面如图5-10。在最初显示的文献关键信息的基础上增加了文献在本体中的实例编号以及该文献的引文及与其存在同引和同被引关系的文献信息。文献之间的同引和同被引的关系正是由前面lw1.rules中定义的两条推理规则得出。60 太原理工大学硕士研究生学位论文同引、同被引关系图5-10文献引用关系结果界面Fig.5-10InterfaceofLiteratureReferenceRelationshipResult5.多条件检索另外,为了使得用户更加准确而快速地检索到所需要的文献,本实验系统还提供了多条件检索功能功能,界面如图5-11。类似于CNKI系统中的高级检索功能。如果用户想查询关键字中含有“数据挖掘”并且被核心期刊录用的高质量的期刊文献,则可以在检索界面左边的查询条件栏中的关键词检索项中输入“数据挖掘”,并且在期刊类型检索项中选择“核心期刊”,这样得到的就是既含有关键词“数据挖掘”又被核心期刊录用的文献。61 太原理工大学硕士研究生学位论文图5-11多条件查询结果界面Fig.5-11InterfaceofMulti-criteriaQueryResult6.添加本体实例为了方便管理员用户对本体中实例的管理,本实验系统还提供了本体操作界面如图5-12,通过此可视化界面管理员可以很方便地添加本体库中的实例文献。实现文献信息库的及时更新与完善。图5-12管理员添加本体实例界面Fig.5-12InterfaceofManagersaddingOntologyInstance62 太原理工大学硕士研究生学位论文5.6系统性能分析与比较本系统和传统的信息检索系统相比较,优点就在于构建了领域本体知识库,这样在一定程度上限制了对术语可能的理解,能有效解决由于一词多义带来的查准率不高、返回无用信息过多的问题,为用户提供领域范围内的语义查询,提高了检索效率和查准率。另外通过引入语义词典本体,该本体中提供了关键词术语之间同义、近义、上下位等关系的概念描述,系统可以根据用户提交的检索词推理出一类意义相同或相近的词,一定程度上扩充了本体库模型,从而减少了用户的检索负担,用户可以很方便地查找到目标文献,包括与目标文献存在语义关联的相关文献,提高了查全率。而对于传统的文献检索系统,则没有这项功能,如果要利用传统的检索技术,来实现这些功能,只能是用户手工找出与输入的检索词存在语义关联关系的关键字所在的文献以及本实验系统中通过推理得出的文献之间相互引用关系,显然这对于一个实际应用的文献检索系统是不可能完成的任务。同时该系统考虑到语义推理在增强了信息检索的功能的同时,另一方面推理过程中过度的语义扩展外延和蕴含等操作可能会导致文献的原始特征信息被过分弱化,这样反而会使检索质量下降,因此为了兼顾查全率和查准率两方面因素,实验系统规定语义推理所导致的语义扩散距离不得大于1,即语义扩展外延和蕴含操作仅局限于具有直接关联关系的词条之间。由于用户在进行信息检索时,一般很难在第一次就准确地描述出自己的检索要求,只有在不断的检索过程中逐渐提炼和明确最终的检索目标或者是通过多条件的限制来准确定位用户需要的信息,因此实验系统提供了灵活的多条件查询方式,允许用户任意组合查询条件来达到检索目的。如上述实验结果演示中,用户在通过选择关键词项输入检索关键字的同时选择发表该文献的期刊类型为核心期刊这两个限制条件即可得出被核心期刊发表并且含有用户想要的关键字的文献。从整个检索过程可以看出,实验系统具有良好的钻取和泛化操作性能,能方便地引导用户检索出所需的文献信息。另外,本系统具有很强的可扩展性:(1)可以通过丰富期刊文献本体库和语义词典本体库,定义更多的类和关系,使本体库蕴含更多的语义关系,从而进一步提高检索系统查全率和查准率。(2)也可以通过定义更多、更复杂的推理规则来进一步满足用户精确查询的需求。同时系统功能还可以从以下两个方面做出改进:(1)用户输入信息的自然语言处理。在检索的开始阶段,结合本体库,利用自然语言处理技术,对用户输入的检索信息进行语义扩展,得到一个更全面、更准确的检索语句,从而得63 太原理工大学硕士研究生学位论文到更多、更准确的用户需求信息。(2)文献数据的自动标注。在本实验系统中,文献信息的语义标注是通过在Protégé中手工加入本体实例来完成的,在以后的实际应用中,考虑到信息量规模的庞大,应该使用语义标注工具结合本体自动对文献数据进行语义标注,完成数据的自动导入。5.7小结本章在前几章的理论分析的基础上,实现了基于计算机期刊文献领域本体的信息检索系统。首先简要介绍了实验系统的开发平台和工具,然后简单说明了各个模块实现的功能,接着就是对实验系统实现步骤的详细介绍,包括后台数据库和JavaBean功能模块的实现,主要借助本体构建工具Protégé和语义推理机Jena等软件工具,完成计算机领域期刊文献本体的创建和语义检索系统的编码实现工作。最后是功能演示和实验系统的性能分析,通过检索系统的性能分析,得出基于领域本体语义检索系统思想和文中关键技术在实现语义信息检索系统中的可行性结论。第六章总结与展望6.1总结随着信息时代的不断发展,信息量呈指数型高速增长,如何在浩瀚的信息海洋中寻找对用户有用的信息逐渐成为你我不得不关注的问题。日益发展中的信息检索技术使得这个问题的解决成为了可能。将本体论应用到信息检索中来,使信息检索语义化、知识化,从而提高信息检索系统的查准率和查全率,更成为近些年研究的热点。本文正是在对本体和信息检索相关理论进行了深入的分析之后,展开了基于本体的语义检索研究。构建了期刊文献和语义词典两个本体,并在此基础上建立推理规则,利用JenaAPI,开发了一个基于本体的语义检索试验系统,系统按照推理规则中定义的推理内容,成功实现了基于本体的推理与检索,打破了传统的缺少语义的信息检索模式,本系统虽然只是一个模拟基于本体的语义检索试验系统,但通过本系统的成功模拟,为以后基于本体的语义检索的最终应用打下了很好的理论和技术基础。在实现过程中遇到的问题和解决方法对实现其它领域的基于本体的语义检索具有重要的借鉴和参考价值。64 太原理工大学硕士研究生学位论文全文具体工作如下:(1)本文首先对传统信息检索系统作了深入的研究,通过对传统信息检索原理和过程的分析,发现导致其检索质量低下的根本原因在于其检索过程中所采用的基于语法形式的机械式匹配方式,从对用户信息需求的理解到检索过程中用户需求与信息资源的匹配,都缺少基于语义的处理,而只有将语义信息加入到检索系统中才能从根本上解决传统信息检索中存在的上述问题,而要实现这种目的就需要借助具有良好的概念层次结构和逻辑推理功能的领域模型——本体。(2)在第二章,重点介绍了支撑语义检索技术的重要的理论基础——本体、信息检索和基于本体的语义检索的相关理论。(3)接着对基于本体的语义检索系统中所要用到的关键技术和工具进行了研究。包括领域本体的构建、信息资源的收集、以及信息的语义标注等。(4)然后在对本体和信息检索理论和技术分析的基础上,给出了一个基于本体的语义检索模型系统框架,并简要介绍了系统各个功能模块的功能和工作流程。(5)实现了基于本体的语义检索系统——通过构建领域本体和推理规则,利用Jena推理机,成功实现了语义推理检索,验证了基于本体的语义检索思想的可行性。6.2展望尽管已经有不少人在从事这方面的研究,但可以说到目前为止,基于本体的语义检索可仍然是新的科学前沿问题,有赖于自然语言理解和数据挖掘等诸多技术的支持,离真正的应用还有待时日。就本实验系统来讲,我认为还存在以下几点不足:(1)受实验条件的影响,实验系统仅选用了有限的计算机学科领域的期刊文献作为实验对象,本系统所建立的计算机期刊文献领域本体及期刊文献的实例资源和真正的应用系统相比规模很小,不足以涵盖真正的专业领域,更不足以替代真正的万维网信息资源,只能是对一种检索方法的试验性研究,因此,在被检索的文献信息资源不断扩大的大规模压力测试条件下,该实验系统的性能如何还有待考察,因此,还需要对实验系统作进一步的评估。(2)实验中基于本体的信息检索系统面向的是已经参照领域本体进行过语义标注的文献信息资源,而目前互联网上几乎所有的信息资源都未进行基于本体的语义标注,因此如何参照已建立的领域本体对网络资源进行语义标注也是一个重要的研究课题。(3)系统中本体的构建主要是通过人工手工完成的,概念之间的关系比较简单,而构建大65 太原理工大学硕士研究生学位论文型的领域本体是一个非常耗时耗力的工作,因此,如何通过数据挖掘等技术实现自动或半自动方式建设本体是未来研究的一个主要内容。(4)本文只是从设计者的、系统的角度考虑了基于本体的语义信息检索,而没有考虑到用户检索中存在的个性化因素,没能根据用户个人的特点和偏好返回满足用户要求的结果。因此,在今后有待超这个方向完善检索系统。(5)本系统在进行语义推理过程中,实现的是一步关联,这样虽然避免了对文献原始语义的弱化,但实际上要更加有效地提高查全率,有必要将推理和关联的步进加长,二者之间产生的矛盾如何得到一个比较适度的处理,需要对大量的本体和信息资源属性进行统计分析后才能得出,而系统的综合性能的调整也恰恰深受这对矛盾体的影响。(6)还有一个就是本系统的重用性较差,在今后的系统设计中应努力实现知识层和应用层最大程度的独立和分离,这样,当系统后台数据本体扩充或修改的时候,应用层不用跟着一起变动。即该语义检索系统可以成为其他领域的语义检索系统。相信随着越来越多的仁人志士的关注和研究,加之本体技术的日益成熟,这些问题都会逐步得到解决和完善,基于本体的具有语义推理能力的检索系统有希望进入应用阶段。参考文献[1]凌云,王勋,费玉莲等.智能技术与信息处理[M].北京:科学出版社,2003.4.[2]Ontobroker.http://ontobroger.aifb.uni-karlsruhe.de[EB/OL].2010/2/15[3]SKC.http://www.db.stanford.edu/ske[EB/OL].2010/2/15[4]张开舟等.万维网信息检索系统的比较研究[J].北京大学学报(自然科学版),2002:22-2.[5]S.Deerwester,S.T.Dumai,G.W.Furnas,T.K.Landauer,R.Harshman.Indexingbylatentsemanticanalysis[J].JournalofACMTransactionsonInformationSystems,2000,18(1):79-112.[6]中国科学院计算机技术研究所陆汝铃院士研究方向及主要科研成果[EB/OL]http://www.ict.ac.cn/resource/channel/detail2161.asp.2010/3/6[7]宋峻峰,张维明,肖卫东,唐九阳.基于本体的信息检索模型研究[J].南京大学学报,2005,Vol.41.No.2:191-195.[8]朱庆生,邹景华.基于本体论的论文检索[J].计算机科学,2005.[9]NechesR,FikesR.E,GruberT.R.EnablingTechnologyforKnowledgeScharing[J].AI66

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭