一种基于属性相似度的本体匹配方法组成比例

技术编号:15499860 阅读:88 留言:0更新日期:2017-06-03 21:59
本发明专利技术公开了一种基于属性内容的语义相似度的本体匹配方法,该方法包括:计算本体资源之间的字符串相似度,进行匹配粒度的锚匹配;对锚匹配的结果进行确认并删除不正确的锚匹配项;对本体中的所有资源进行全面的匹配,包括计算本体资源的结构相似度、字符串相似度以及属性内容相似度;将全匹配结果输出到界面,检查是否正确,并将不正确的匹配删除;对全匹配的结果进行冲突检测,将冲突检测的结果进行确认并修正其中的冲突。本发明专利技术极大的减少了简单的字符串匹配带来的匹配误差,实现更为精确的本体匹配。

An ontology matching method based on attribute similarity

The invention discloses a content attribute based semantic similarity of ontology matching method, the method includes: calculating the string similarity between ontology resources, matching the size of the anchor anchor matching; matching results confirm and delete the incorrect match anchor for all the resources in the ontology; comprehensive matching, including calculation of structural similarity, ontology resource string similarity and attribute similarity; the matching result is output to the interface, check whether the correct and incorrect matching for deletion; conflict detection of matching results, the conflict detection results confirm and correct the conflict. The invention greatly reduces the matching error caused by simple string matching, and realizes more accurate body matching.

【技术实现步骤摘要】
一种基于属性相似度的本体匹配方法
本专利技术属于计算机
,具体涉及一种基于属性相似度的本体匹配方法。
技术介绍
本体定义了概念以及概念之间的关系,即本体给出构成相关领域词汇的基本术语和关系,以及利用这些术语和关系构成的规定这些词汇外延的规则的定义。因而,本体规范了领域中的术语以及它们之间的关系,这些信息的总和就表现为数据的语义。本体匹配技术通常可以分为元素层匹配技术和结构层匹配技术。元素层匹配技术只考虑独立的本体元素,而不考虑这些元素之间的关系,例如,在匹配父概念时不考虑与其子概念以及其他概念之间的关系。结构层匹配技术在匹配时考虑元素间的层级关系以及语义邻居关系等。元素层匹配技术又可分为基于字符串的技术、基于语言学的技术、基于语言资源的技术、基于约束的技术和联结复用技术等。其中,基于字符串的匹配是提出时间较早也最经常使用的技术。其用来计算单个元素之间的名称以及注释的相似性,具体的计算方法有计算编辑距离、计算单词前后缀相似性、JaccardSimilarity等。上述介绍的方法都是基于字符串的匹配而没有考虑各类数据库资源之间的语义关系,对于具有较多数据资源以及复杂的语义关系的本体,其准确度不能满足属性匹配的需求。结构层匹配技术包括基于层级表(Taxonomy)的技术、基于图的技术、基于结构库(RepositoryofStructure)的技术、基于模型的技术和基于统计学的技术。基于层级表的匹配的其主要思想为,如果通过层级关系连接的元素相似,那么与它们相邻的元素也可能相似。基于层级表的匹配仅考虑层级关系而没有考虑同层以及跨越多层的概念之间的语义关系,其往往与外部资源结合起来使用,例如根据语义词典中概念间的上下位关系和同为关系来计算语义的相似度。
技术实现思路
本专利技术的目的在于提供一种基于属性相似度的本体匹配方法。实现本专利技术目的的技术方案为:一种基于属性相似度的本体匹配方法,该方法包括如下步骤:步骤1,计算本体资源之间的字符串相似度,进行匹配粒度的锚匹配;步骤2,对锚匹配的结果进行确认并删除不正确的锚匹配项;步骤3,根据步骤2的锚匹配结果,对本体中的所有资源进行全匹配,包括计算本体资源的结构相似度、字符串相似度以及属性内容相似度;步骤4,将步骤3得到的全匹配结果输出到界面,检查是否正确,并将不正确的匹配删除;步骤5,对步骤4中全匹配的结果进行冲突检测,将冲突检测的结果返回并进行确认,修正其中的冲突。本专利技术与现有技术相比,具有以下优点:本体匹配技术通常可以分为元素层匹配技术和结构层匹配技术;元素层匹配技术只考虑独立的本体元素,而不考虑这些元素之间的关系;结构层匹配技术在匹配时考虑元素间的层级关系以及语义邻居关系等。本专利技术提出的匹配算法,综合应用了以上两种技术,首先利用元素层匹配技术中的编辑距离计算相似度,得到锚匹配,然后采用结构层匹配技术中的基于层级表匹配思想,搜索锚节点的邻近节点,从而扩展了匹配。附图说明图1是本专利技术基于属性相似度的本体匹配方法流程图。图2是一个全匹配过程示意图。图3是类相似度计算示意图。图4是属性相似度计算示意图。图5是冲突1示例图。图6是冲突2示例图。图7是冲突3示例图。具体实施方式结合图1,本专利技术的一种基于属性相似度的本体匹配方法,该方法包括如下步骤:步骤1,计算本体资源之间的字符串相似度,进行匹配粒度的锚匹配;步骤2,对锚匹配的结果进行确认并删除不正确的锚匹配项;步骤3,根据步骤2的锚匹配结果,对本体中的所有资源进行全匹配,包括计算本体资源的结构相似度、字符串相似度以及属性内容相似度;步骤4,将步骤3得到的全匹配结果输出到界面,检查是否正确,并将不正确的匹配删除;步骤5,对步骤4中全匹配的结果进行冲突检测,将冲突检测的结果返回并进行确认,修正其中的冲突。进一步的,所述步骤1中的锚匹配使用完全匹配的字符串相似度进行匹配,即字符串相似度为1。进一步的,步骤1具体为:第一步,读取同义词表,给相应的资源添加同义词;第二步,计算资源相似度:通过字符串匹配,得到资源间的相似度,资源包括类和属性;第三步,通过阈值筛选锚匹配:将第二步中相似度大于等于设定阈值的匹配放入锚集合。进一步的,上述第二步中字符串匹配使用编辑距离和Jaccard相似度,对于字符串a和字符串b,其相似度的计算公式分别为公式(1)和公式(2):上式中,LD(a,b)表示字符串a和字符串b的编辑距离,Length(a)和Length(b)分别表示字符串a和字符串b的长度,Length(a∪b)表示字符串a和字符串b字符串并集的长度,Length(a∩b)表示字符串a和字符串b交集的长度,Max函数表示求两个参数中较大的值;字符串的相似度是在上述两种相似度中取最大值:Sstr(A,B)=Maxa∈X,b∈Y(Max(SLD(a,b),SJS(a,b)))(3)其中,X表示数据库资源A的字符串名称集合,包括字符串自身及其同义词,Y表示数据库资源B的字符串名称集合。进一步的,步骤3全匹配的具体过程为:步骤3-1,设一个待匹配节点集合M为空,一个查询节点集合S为空;步骤3-2,将锚节点都放入S,锚匹配包含有两个节点,分别来自两个本体;步骤3-3,搜索S集合的所有邻近节点,逐一检查其是否包含在S集合中,将不包含的邻近节点加入集合S’,搜索完后,将S’中的所有节点同时加入到集合S和集合M;步骤3-4,如果S’不为空,则进入步骤3-5;如果S’为空,S中的资源数少于两个本体的总资源数,则将没有包含在S中的资源同时放入集合S和集合M,进入步骤3-5;步骤3-5,分别计算集合M中本体O1到本体O2类间的相似度和属性间的相似度,具体为:(1)计算类的相似度假设有两个类节点A,B,他们的相似度计算公式如下:SC(A,B)=0.5*Sstr(A,B)+0.2*Ssuperclass(A,B)+0.2*Ssubclass(A,B)+0.1*Sproperty(A,B)(4)其中,Sstr(A,B)是两个数据库资源A、B的字符串相似度,Ssuperclass(A,B)为A,B的父类的相似度,Ssubclass(A,B)为A,B的子类的相似度,Sproperty(A,B)为A,B的相关属性的相似度;式中,ca,cb分别为A和B的父节点,A.surperclass和B.surperclass分别为A和B的所有父节点的集合;式中,ca′,cb′分别为A和B的子节点,A.subclass和B.subclass分别为A和B的所有子节点的集合;A的所有相关属性集合为PA,B的所有相关属性集合为PB,不妨设pa属于PA,pb属于PB,Sp(pa,pb)表示属性pa和pb的相似度;则A,B的相关属性的相似度为所有相关属性相似度中的最大相似度:(2)计算属性的相似度pa和pb的相似度为式中,Sdomain(pa,pb)为属性pa和pb的domain相似度,Srange(pa,pb)为属性pa和pb的range相似度,Sstr(pa,pb)为属性pa和pb的字符串相似度,Ssubproperty(pa,pb)为子属性的相似度,Ssuperproperty(pa,pb)为父属性的相似度;Sdomain(pa,pb)=Sc(domain(pa),domain(pb))(9本文档来自技高网
...
一种基于属性相似度的本体匹配方法

【技术保护点】
一种基于属性相似度的本体匹配方法,其特征在于,该方法包括如下步骤:步骤1,计算本体资源之间的字符串相似度,进行匹配粒度的锚匹配;步骤2,对锚匹配的结果进行确认并删除不正确的锚匹配项;步骤3,根据步骤2的锚匹配结果,对本体中的所有资源进行全匹配,包括计算本体资源的结构相似度、字符串相似度以及属性内容相似度;步骤4,将步骤3得到的全匹配结果输出到界面,检查是否正确,并将不正确的匹配删除;步骤5,对步骤4中全匹配的结果进行冲突检测,将冲突检测的结果返回并进行确认,修正其中的冲突。

【技术特征摘要】
1.一种基于属性相似度的本体匹配方法,其特征在于,该方法包括如下步骤:步骤1,计算本体资源之间的字符串相似度,进行匹配粒度的锚匹配;步骤2,对锚匹配的结果进行确认并删除不正确的锚匹配项;步骤3,根据步骤2的锚匹配结果,对本体中的所有资源进行全匹配,包括计算本体资源的结构相似度、字符串相似度以及属性内容相似度;步骤4,将步骤3得到的全匹配结果输出到界面,检查是否正确,并将不正确的匹配删除;步骤5,对步骤4中全匹配的结果进行冲突检测,将冲突检测的结果返回并进行确认,修正其中的冲突。2.根据权利要求1所述的基于属性相似度的本体匹配方法,其特征在于,所述步骤1中的锚匹配使用完全匹配的字符串相似度进行匹配,即字符串相似度为1。3.根据权利要求2所述的基于属性相似度的本体匹配方法,其特征在于,步骤1具体为:第一步,读取同义词表,给相应的资源添加同义词;第二步,计算资源相似度:通过字符串匹配,得到资源间的相似度,资源包括类和属性;第三步,通过阈值筛选锚匹配:将第二步中相似度大于等于设定阈值的匹配放入锚集合。4.根据权利要求3所述的基于属性相似度的本体匹配方法,其特征在于,第二步中字符串匹配使用编辑距离和Jaccard相似度,对于字符串a和字符串b,其相似度的计算公式分别为公式(1)和公式(2):上式中,LD(a,b)表示字符串a和字符串b的编辑距离,Length(a)和Length(b)分别表示字符串a和字符串b的长度,Length(a∪b)表示字符串a和字符串b字符串并集的长度,Length(a∩b)表示字符串a和字符串b交集的长度,Max函数表示求两个参数中较大的值;字符串的相似度是在上述两种相似度中取最大值:Sstr(A,B)=Maxa∈X,b∈Y(Max(SLD(a,b),SJS(a,b)))(3)其中,X表示数据库资源A的字符串名称集合,包括字符串自身及其同义词,Y表示数据库资源B的字符串名称集合。5.根据权利要求1所述的基于属性相似度的本体匹配方法,其特征在于,步骤3全匹配的具体过程为:步骤3-1,设一个待匹配节点集合M为空,一个查询节点集合S为空;步骤3-2,将锚节点都放入S,锚匹配包含有两个节点,分别来自两个本体;步骤3-3,搜索S集合的所有邻近节点,逐一检查其是否包含在S集合中,将不包含的邻近节点加入集合S’,搜索完后,将S’中的所有节点同时加入到集合S和集合M;步骤3-4,如果S’不为空,则进入步骤3-5;如果S’为空,S中的资源数少于两个本体的总资源数,则将没有包含在S中的资源同时放入集合S和集合M,进入步骤3-5;步骤3-5,分别计算集合M中本体O1到本体O2类间的相似度和属性间的相似度,具体为:(1)计算类的相似度假设有两个类节点A,B,他们的相似度计算公式如下:SC(A,B)=0.5*Sstr(A,B)+0.2*Ssuperclass(A,B)+0.2*Ssubclass(A,B)+0.1*Sproperty(A,B)(4)其中,Sstr(A,B)是两个数据库资源A、B的字符串相似度,Ssuperclass(A,B)为A,B的父类的相似度,Ssubclass(A,B)为A,B的子类的相似度,Sproperty(A,B)...

【专利技术属性】
技术研发人员:张慧袁震丁鲲严浩曹建军俞赟王芳潇彭琮丁晨路
申请(专利权)人:中央军委装备发展部第六十三研究所
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1