基于本体的信息检索模型结构:它主要由查询界面、查询引擎、推理引擎、索引器和检索器等5部分构成.构成部分的作用:•查询界面的主要作用是输入用户查询、显示查询结果;•查询引擎和推理引擎协同工作,负责查询推理知识库中与用户查询相关的信息,然后将查询结果交给检索器;•索引器理解文档库中的信息,从中抽取出索引项,用于表示文档以及生成文档库的索引表;•检索器根据用户查询在索引库中快速检索出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序.索引项:•本模型以RDF(资源描述框架)三元组和关键字作为索引项,因此,需要对标准倒排索引结构进行适当的修改.•标准倒排索引结构由词表(vocabulary)和记录表(postinglists)两部分构成,在语义检索中采用倒排索引结构需要对其增加用于存储文档与知识库信息关联的域.•一个语义索引项由4部分构成term,docID,proID,frequency,其中term为词表中的词项用于关键字查询.docID为文档编号,proID用来标识出现在文档中的实例,它与知识库中RDF三元组的propertyID对应.用frequency记录关键字索引项出现的频率,便于计算相似度并对文档排序.查询处理:•根据用户掌握查询语言的能力不同,查询界面采用表格形式提供两种交互方式供用户灵活选用:基于OWL-QL语言的查询和基于本体的关键字查询.•OWL-QL是一种基于描述逻辑的面向OWL的形式化查询语言,提供∃查询回答%服务对使用标准本体语言OWL(网络本体语言)描述的知识库进行查询.该机制能够准确详细地说明查询请求、查询回答以及知识库三者之间的语义关系.•查询引擎将用户查询输入转换为标准查询格式后交给推理引擎,推理引擎在KB上运行并将查询结果经查询引擎交给检索器,该结果决定了检索文档的方式.查询处理:1)若KB(知识库结构)中存在或经推理引擎推理得到与用户查询对应的出现在文档中的所有RDF实例信息,那么,查询引擎将这些实例信息与其propertyID一起输出给检索器.2)若KB中不存在与用户查询相关的文档实例,则查询引擎使用KB中本体概念间的等价和特化关系,对用户查询中的关键字进行语义扩展,扩展后的概念与原始查询关键字一起经查询引擎输出,交给检索器.查询结果排序:•Case1:KB中存在与查询请求Q相关的实例.在包含Ii的文档中,含有与实例Ii有关系r的其他实例越多,则该文档的相关性相对就越小.具体相关性由以下公式度量:))nI...,,2I,I1r(,InAmb(1...))nI...,,2I,1Ir(,I1Amb(1))nI...,,2I,1I(rRel(|})nI...,,iI...,,2I,1I(rw,...,,y,x|w...,,y,x{|))nI...,,iI...,,2I,1Ir(,iIAmb(其中:显然,只有在关系r下,与Ii相关的实例唯一时,查询相关性取到最大值1.若KB中不存Ii令Rel(r(I1,I2,...,In))为0.Case2:KB中不存在与查询请求Q相关的实例.步骤1:基于查询Q中关键字K在每个文档中出现的频率,先使用简单的TF\IDF算法计算K在文档Dj中的权重wk,j;步骤2:将查询Q中的关键字K看作本体概念,与使用KB中本体概念间的特化关系将K扩展后一起构成的集合记为S={K,K1,K2,...,Kn},在查询时用K替换文档Dj中Ki的出现,其中Ki属于S,即jfkjfkjfknii,,,1jfk,然后用代替式wi,j中的fK,j计算关键字K在文档Dj中的权重wk,j步骤3:计算文档向量dj=(w1,j,w2,j,...,wn,j)与查询向量q=(w1,Q,w2,Q,...,wn,Q)间的相似度:用K替换文档Dj中Ki的出现,将Dj中与关键字K相关的概念聚集到一起.这种方法能够很好地反映出查询词在整个文档集合中被实际使用的情况,从而可以有效改进Dj在查询结果中的排列次序.综合Case1和Case2,计算文档Dj与查询Q间的相似度:sim(Dj,Q)=Rel((r,I1,I2,!,In))+ksim(Dj,Q),按照sim(Dj,Q)值由大到小的顺序,将查询结果排序.关于模型实用性验证:本体检索模型仍需使用查全率(recall)和查准率(precision)两个指标来评价.基于以上框架,通过阅读150篇动物文档,为文档中出现的概念手工构造出了包含122个领域类的动物本体,858个实例用来作为KB;实验中文档库由1070篇动物方面的文档构成,并标识出了1821个实例.图2中从查全率和查准率两个方面比较了基于本体的语义检索与使用传统向量空间模型的关键字查询.实验说明,与传统搜索引擎相比,通过使用本体知识库,可以有效地提高系统的查全率和查准率.