沈熠1,赵琳2
(1.上海大学 计算机中心,上海 200444;2.上海大学 计算机工程与科学学院,上海 200444 )
摘要:在语义搜索引擎系统中,为了使检索内容在不限制用户输入的情况下,检索结果更接近用户的需求,提出一种基于影视素材本体的查询扩展方法。对用户的检索文本中的关键词依据本体模型进行推理并按照相似度语义扩展,旨在得到更符合用户检索需求的扩展关键词集,在此基础上进行影视素材的检索,从而提高搜索引擎的召回率。
关键词:语义搜索;本体;查询扩展;影视素材
0引言
基于关键词的搜索引擎的查询扩展通常以检索文本中的关键词为中心进行扩展,与这些关键词相关的语义概念很少被包含在扩展集中,在这种情况下,当用户输入的检索内容较少时,系统按照扩展集进行检索得到的结果的准确率与召回率较低,从而无法满足用户需求,因此基于关键词的搜索引擎并不能消除用户需求与检索结果的不一致性问题。基于本体的关键词查询扩展弥补了这一不足,该技术结合本体、搜索引擎、计算机语言学等多种技术,将用户输入的检索文本中的关键词,以及本体模型中与这些关键词相关的词语一起,组成新的、更长的、更能准确表达用户检索需求的扩展关键词集,按照该集合,实现在尽可能充分理解用户的检索意图的基础上进行信息资源的检索[1] ,从而在一定程度上弥补了用户检索信息过短的不足,同时提高了搜索引擎的召回率。
1相关研究
1.1本体
本体(Ontology)源于哲学,又称为本体论、实体论或者存在论。GRUBER T R[2]对本体的定义“本体是共享概念模型的明确形式化规范说明”得到了最广泛的认可。自2000年人工智能领域引入本体概念以来,本体就引起各个学科的极大兴趣。
目前存在多种本体描述语言,由于网络本体语言(Web Ontology Language, OWL)格式在所有本体语言中具有最强的描述能力,能够明确表示词汇表中术语的含义以及术语间的关系,使之在Web内容的可理解性方面要优于其他几种本体语言,故本文选择OWL作为本文的本体描述语言。
1.2本体推理
本体中除了直接定义的知识外,还隐含了大量的其他知识,需要使用推理工具进行关键词的推理与查询,从而获取蕴含的知识。本文选用Jena[3]作为影视领域本体的推理机,Jena是由惠普公司开发的Java开源工具包,它的推理API能够凭借其强大的推理功能,操作由OWL描述的本体,目前已经被广泛地运用于语义网应用。
本文中,Jena推理需要实现的内容有:(1)实现本体持久化到数据库的操作;(2)推理类间关系,解析影视素材本体模型并生成描述上下位关系概念的三元组集合,用于后续对本体模型中概念相似度的计算。
1.3查询扩展
为了提高检索的命中率,在不限制用户输入检索文本内容的情况下,需要通过查询扩展技术[4],根据用户输入的检索信息中的关键词进行语义扩展。基于本体的查询扩展技术的引入在信息检索过程中取得了一定效果。该技术依据领域本体推理得到的知识,通过对本体概念的相似度计算,将与检索关键词相关的本体中的概念作为查询扩展的一部分。这种由量化得出的查询扩展集不仅减少了搜索偏差,而且限制了检索关键词扩展的范围,从而在召回率方面有较大提高。为了完成这一目标,需要在建立领域本体模型的基础上进行语义扩展。
2基于影视素材本体的查询扩展
2.1影视素材本体建模
基于影视素材本体的关键词查询扩展采用语义技术,对本体中的概念进行推理与扩展,而推理与扩展的依据为影视素材本体模型。
本文选用Protégé以图形化的建模方法构建影视本体模型。可以点击Protégé中对应的项以增加或者编辑类、子类、属性、实例等。建模完成后保存为OWL格式文件,Protégé将本体自动转化为OWL格式的语言。影视素材本体建模后的部分效果如图1所示。
2.2查询推理规则
Jena自带的通用规则[5]不会限制具体领域,主要是根据本体中的实例、公理、规则等检查概念的可满足性以及类间层次关系、传递、不相交等约束,从而实现查询隐含信息并扩充隐含知识。当Jena自带的规则无法满足系统的推理要求时,可以自定义规则以满足系统个性化需求。本文借助SPARQL[6]查询语言,建立自定义查询规则,从而获取更加准确的查询结果。
SPARQL是W3C推出的,其根据定义匹配三元组模板对RDF进行查询,可以将RDF中满足一定要求的三元组以集合或者RDF图的方式作为查询结果返回。SPARQL提供4种不同形式的查询[7]:SELECT、ASK、CONSTRUCT、DESCRIBE,其中SELECT是最常用的查询类型,本文也采用该形式的查询。SPARQL的查询语法是一个四元组(GP、DS、SM、R),其中DS、R可根据查询要求省略,查询语句格式如表1所示。
2.3相似度值与查询扩展阈值的确定
相似度与查询扩展阈值的详细计算过程本文不重点讨论,只给出简要的处理方法。
影响概念的语义相似度因素有多种,常见的有:字面相似度、语义重合度、距离相似度、层次差与层次深度、属性匹配度等。需要结合本体模型结构与性质,将有关的因素考虑到相似度的计算方法中,结合多种影响因素得到概念相似度的计算公式。
获取本体中概念的相似度后,在进行查询扩展的过程中,需要确定阈值,用于过滤相似度不满足阈值的概念,而将满足阈值的概念加入查询扩展集。确定阈值的通常做法为:根据本体中小规模测试概念的相似度值以及暂定阈值进行人工评估,判断相似度满足阈值的概念间是否满足系统需求,经过不断试验对阈值进行调整,最终确定阈值。
3语义扩展
3.1关键词查询扩展流程
本节结合本体模型与推理规则,在参考文献[1]、[8]的基础上,总结出对影视素材检索文本中的关键词进行语义相似度扩展的流程,如图2所示。其中sim1(A,B) 、sim2(A,B)表示根据关键词是否为影视素材本体中的概念,综合影响概念相似度的多种因素而确定的不同情况下相似度的计算公式;而a、b则是用于过滤不满足相似度概念的阈值,本文经过试验与对参数的不断调整,最终将a设置为0.51,b设置为0.63。
关键词语义相似度扩展流程为:首先将检索文本经过预处理后得到的关键词集中的关键词加入到扩展关键词集,接着依次对关键词集中的每个关键词判断是否是影视素材本体中的概念。若当前关键词不是本体中的概念,则需要先找出本体中根据公式sim1(A,B)计算出的相似度大于阈值a的概念,将这些概念加入到扩展关键词集;若当前关键词是影视素材本体中的概念,则查找本体中是否存在与当前关键词等价的关键词,若存在,就将等价词加入到扩展关键词集中,若不存在,则将本体中根据公式sim2(A,B)计算出的相似度大于阈值b的概念加入到扩展的关键词集。
3.2查询扩展实现
在关键词查询扩展实现部分,本文选用MySQL数据库存储数据。以下是查询扩展的实现计算过程中用到的数据表:
searchText:用于存储经预处理后得到的检索关键词;
classCon:存储由Jena解析本体文件后得到的概念的信息,包括(结点ID,结点名,结点层次,父结点ID);
classInOnt:存储本体中满足阈值b的结点对及其相似度信息,包括(结点AID,结点BID,相似度);
classDouble:存储属于预处理得到的但不属于本体中结点的关键词,以及与该关键词的相似度达到阈值b的本体中的结点信息,以及二者的相似度信息。包括(关键词,结点ID,结点名,相似度);
expandKeywords:存储扩展的关键词,包括(结点ID,结点名,相似度)。
下面给出关键词基于影视素材本体查询扩展的实现:
(1)获取领域本体文件;
(2)用Jena解析本体文件,生成描述概念的上下位关系三元组集合,并以文件的形式存于内存中;
(3)对步骤(2)文件中的三元组从根结点出发,依次遍历每个结点,并将结点信息存至表classCon;
(4)从表classCon中读取结点并组成所有结点对,按照(结点1,结点2,相似度)的方式写入表classInOnt,其中相似度值置为0;
(5)依次取出表classInOnt中的未处理过的记录,根据取出的记录及本体模型计算影响两个概念相似度的不同因素值;
(6)根据步骤(5)中计算出的决定语义相似度因素的值,按照公式sim2(A,B)计算出概念对的相似度,修改表classInOnt中对应的相似度值;
(7)检查表classInOnt中是否有未处理过的记录,如果有转至步骤(5);否则转至步骤(8);
(8)删除表classInOnt中相似度小于阈值b的结点对,完成本体中结点对的相似度值的更新;
(9)根据步骤(4)~(8),可以完成表classDouble中关键词与结点对的更新,不同的是需要按照公式sim1(A,B)计算概念相似度,保留的关键词与结点对的相似度需满足阈值a;
(10)从表searchText中依次取出一个未处理的关键词,判断是否是本体中的概念,如果是,设置其相似度为1,将该关键词与相似度值加入扩展关键词集expandKeywords中,判断在本体中是否存在与当前关键词等价的概念,若存在,将等价词加入到expandKeywords中,等价词对应的相似度值置为1,转至步骤(11),否则转至步骤(12);
(11)从表classInOnt中查找与当前关键词组成的结点对的关键词,将这些关键词及结点对的相似度加入到expandKeywords;
(12)从表classDouble中查找与当前关键词组成的结点对的结点,将这些结点及相似度加入到expandKeywords;
(13)检查searchText中是否存在未处理的关键词,若有,转至步骤(10),否则转至步骤(14);
(14)输出存储扩展关键词的表expandKeywords,算法结束。
通过上述算法,求得了扩展关键词集。
3.3查询扩展实验
为验证关键词相似度查询扩展算法的有效性,用影视素材本体模型对该算法进行验证。选用一段检索文本“两个孩子在路上骑自行车”,该文本经预处理后,得到检索关键词集中的关键词“两个”、“孩子”、“路”、“骑”、“自行车”,对这些关键词按照3.2节的扩展实现算法进行查询扩展,得到扩展的关键词及对应的相似度,如表2所示。
从表2中可以看出,检索文本“两个孩子在路上骑自行车”经过预处理以及语义相似度扩展,得到扩展的关键词集,对该集合按相似度值从大到小进行排序,如表3所示。
由表2、表3可得,按照本文研究的对检索关键词基于影视素材本体模型进行相似度查询扩展,得到扩展集中的概念可以较完整地反映用户的检索意图,从而验证了本文提出的关键词查询扩展方法的有效性。
4结束语
本文基于影视领域本体模型,对素材检索过程中关键词的查询扩展进行研究,提出关键词按照相似度扩展的一种实现方案,即对检索文本中的关键词及影视素材本体模型中的概念进行推理并得到相似度满足阈值的查询扩展集。实验结果表明,扩展关键词集更能充分包含用户的检索需求。本文的下一步工作是对检索结果按照扩展关键词集中关键词的相似度关系的排序方式进行深入研究。
参考文献
[1] 甘健侯,姜跃.本体方法及其应用[M].北京:科学出版社,2011.
[2] GRUBER T R.Toward principles for the design of ontologies used for knowledge sharing [J].International Journal of HumanComputer Studies, 1995, 43(56): 907928.
[3] Getting started with Apache Jena [EB/OL].(2015××××)[20160130] . https://jena.apache.org/getting_startedl.
[4] 李帅.基于语义相似度的查询扩展优化[D].杭州:杭州电子科技大学,2011.
[5] 李兵.基于领域本体的专利语义检索研究[D].北京:北京理工大学,2015.
[6] W3C.SPARQL Query Language for RDF [EB/OL].(20130321)[20160120].https://www. w3.org/TR/2013/RECsparql11query20130321/.
[7] 岳晓露.语义Web中RDF数据的关联规则挖掘方法研究[D].大连:大连海事大学,2015.
[8] 吕婧.基于语义网的语义搜索的研究与应用[D].北京:北京工业大学,2013.