3.1.1 本体概念集合扩展策略
Step1:对每个本体概念进行扩展。
对单个本体概念o按相似度进行扩展,选择与该本体概念相似度大于某一阈值γ的概念,且该被选择的本体概念与其他所有用户输入的本体概念的相似度小于该被选择本体概念与当前单个本体概念的相似度。
E(o)={x|(sim(x,o)>γ)∩x∈Dontology∩(y(y∈OS∩y≠x→(sim(y,o)
Step2:分别从每个本体概念扩展集E中选择一个概念形成一个本体概念查询集。用户提供的本体概念集中每个概念均可扩展生成一个扩展集,从每个本体概念扩展集中选择一个概念形成查询本体概念集fo={f1,f2,…,fn},其中f1在E(O1)中选取,f2在E(O2)中选取。所有本体概念查询集可描述为FO(OS)={(F1,F2,…,Fn)|F1∈E(O1),F2∈E(O2),…,},每个本体概念集fo={f1,f2,…,fn}与用户输入的未扩展的本体概念集OS={O1,O2,…,On}相似度可由公式(1)计算。
3.2 相似度计算算法
3.2.1 领域本体概念相似度计算算法
领域本体描述的是特定领域中的概念及概念之间的关系,其构成的本体图可认为是一个带有根节点的有向无环图,图中节点表示概念,边表示概念之间的关系,并且该本体图具有类似于树的层次结构、有向边和多重继承的特点。基于领域本体概念结构图的概念语义相似度计算主要受以下因素影响[7-9]:
(1)语义距离。语义距离指在本体图中连接两个概念节点有向边的数量,可用dist(Oa,Ob)来描述两概念之间的距离。语义距离与语义相似度成反比关系,两概念语义距离越大,则相似度越小;反之,两概念语义距离越小,则相似度越大。
(2)两概念的最近共同父节点深度。其可用depth(father(Oa,Ob))描述,father(Oa,Ob)表示两概念最近共同父节点。本体概念结构图具有类似于树的层次结构,概念的组织自顶向下,分类由大到小、由粗到细,最近共同父节点的深度越深,它的分类就越细,继承的语义信息就越多,则本体概念Oa、Ob的共同语义信息就越大,即两概念间的相似度越大。
(3)语义重合度[10]。即通过两概念间所包含的相同父节点个数,计算概念间的重合度。但是,语义重合度信息隐含在语义距离中,将语义距离和语义重合度同时考虑有重复计算嫌疑。
基于以上分析,考虑语义距离和公共父节点在本体概念结构图中的深度来计算概念相似度。即两领域本体概念a、b的语义相似度为语义综合距离和共同父节点综合深度对相似度影响的加权归一化,即:
3.2.2 综合相似度计算算法
通过对用户输入的检索词集中的本体概念进行语义扩展可得到查询语义扩展集FO(OS),对用户输入的检索词集中的非本体概念的关键词集进行扩展,可得到关键词集的幂集P(KS),从FO(OS)中取一元素fo(该元素为一个扩展概念集),再从关键词集的幂集P(KS)中取一元素p(该元素为一个扩展关键词集),即可组成一个提交给检索模块的检索请求(fo,p),通过计算用户输入的检索词集(OS,KS)与每一个扩展的检索请求(fo,p)的相似度,即可得到相应检索结果与用户输入的检索词集的相似度。综合考虑扩展本体概念集相似度、分类概念集相似度和扩展关键词集相似度,可得到综合相似度的计算算法:
sim_integrate(fo_p,OS_KS)=λ1×sim_sematic(fo,OS)+λ2×sim_key(p,KS)
式中,λ1、λ2为调节因子,分别表示本体概念集相似度在综合相似度中所占比重和关键词集相似度在综合相似度中所占比重,且λ1+λ2=1。
4 结语
本文提出的基于领域本体的语义检索模型能够依据领域本体知识库对信息资源或文档进行语义标注,使信息资源或文档的描述信息具有语义,揭示信息资源或文档的语义,同时也对用户的检索词进行语义揭示,其把传统方法中从用户查询和文档抽取出来的关键词替换含有语义的概念,以此把关键词级的语法检索提升到概念级的语义检索。同时,本文给出了查询语义扩展算法和相似度计算算法,能将结果按相似度从大到小排序,并能有效提高查全率和查准率。
参考文献:
[1] 王珊,张俊.基于本体的关系数据库语义检索[J].计算机科学与探索,2007(1).
[2] 余传明.基于本体的语义信息系统研究-理论分析与系统实现[D].武汉:武汉大学,2005.
[3] 邹国兵,向阳.基于领域本体的信息搜索模型[J].同济大学学报:自然科学版,2009(4).
[4] 段寿建.基于本体和Lucene的语义检索模型设计与实现[J].现代电子技术,2009(12).
[5] 潘雪峰,花贵春,梁斌.走进搜索引擎[M].北京:电子工业出版社,2011.
[6] 魏桂英,高学东,武森.基于领域本体的个性化文本信息检索[J].辽宁工程技术大学学报,2011(4).
[7] SUSHAMA PRASAD.A tool for mapping between two ontologies using explicit information[C].Proceedings of AAMAS 2002 workshop on ontologies and agent system,2002.
[8] FRANCISCO M C,MARIO J S,PEDRO M C.Measuring semantic similarity between gene ontology terms[J].Data & Knowledge Engineering,2007,61(1).
[9] SEVILLA J L,SEGURA V,PODHORSKI A.Correlation between gene expression and go semantic similarity[J].IEEE/ACM Transactions on Computaional Biology and Bioinformatics,2005,2(4).
[10] 李文杰,赵岩.基于本体结构的概念间语义相似度算法[J].计算机工程,2010,36(23).