基于MFI4OR标准的本体融合模型研究
2021-10-26袁满,杨静,陈萍
袁 满, 杨 静, 陈 萍
(东北石油大学 a. 计算机与信息技术学院; b. 经济管理学院, 黑龙江 大庆 163318)
0 引 言
随着本体技术的发展, 除了通用领域的顶层本体外, 各个领域内出现了许多满足该领域需求的领域本体, 而这些本体之间由于本体构建的方式、语言或结构的不同, 导致了本体之间的异构, 降低了领域内甚至领域间不同本体的互操作性, 加大了领域之间公用知识共享的难度, 本体间的互操作成为一个亟待解决的问题。
本体融合可以把不同来源, 不同角度建立的知识本体结合在一起, 形成一个统一的公用的知识本体库, 解决本体异构问题, 但目前缺乏一个标准的本体信息管理模式以及映射模式。2007年国际标准组织ISO/IEC(International Organization for Standardization/International Electro technical Commission)正式发布了本体互操作元模型MFI(Metamodel Framework for Interoperability)的第3部分----本体注册元模型(MFI4OR)。该标准定义了本体注册信息且提供了一个统一注册模型, 使本体信息管理规范化。笔者在此基础上, 将MFI4OR模型应用于本体融合中, 在标准框架的基础上为融合的本体信息提供了划分标准, 并提供了一个标准的本体信息管理模式, 在确定本体构件也就是类相似的基础上进行与之相关的属性以及关系的融合, 可减少相似度计算次数, 提高融合效率。
1 研究现状
本体融合强调两个或多个本体资源通过映射合并成为一个统一的本体资源。随着本体技术发展, 目前国内外对本体融合的研究越来越多, 也有许多成熟的本体融合系统, 如PROMPT、GLUE、OntoMap等。此外, 近几年的OAEI(Ontology Alignment Evaluation Initiative)比赛中的映射方法也很引人注目。Faria等[1-2]在OAEI中参赛的AML本体映射系统是基于本体概念的映射系统, 在对用不同语言创建的本体进行翻译和对输入本体之间进行匹配操作时, 运用了背景知识作为知识库辅助本体的翻译和匹配。而中国东南大学的Lily本体映射系统[3-5]在OAEI竞赛中表现亮眼, 在竞赛给出的测试集中, 获得了97%准确率, 召回率也达到了83%, F1值为90%。
无论是对本体融合系统还是对本体融合方法的研究, 归根结底都是对本体映射过程中的语义相似度计算的研究。而目前这些融合方法都向混合式的相似度算法结合的方向发展。Li等[6]提出的RiMOM是一个动态多策略本体映射模型系统, 同时运用了编辑距离、 WordNet词典、 向量距离和相似性传播等相似度算法, 并在此基础上提出了风险概率最小化模型, 以此提高融合效率。He等[7]提出的WNPntoSim是一种混合型本体映射方法, 其使用了WordNet词典和原子概念标志计算本体概念元素的结构语义相似度。混合式的本体映射方法代表了本体映射系统的发展趋势, 虽然这种混合式方法可提高本体融合的准确性, 但在相似度计算过程中难免会进行繁琐重复的词汇计算。楼雯等[8]提出了一种基于二值相似度的融合方法, 为简化融合过程中繁琐的相似度计算, 该方法提出在原始本体构建的过程中即进行语义相似度计算, 并在融合时只考虑概念和关系的二值匹配, 同时还能进一步简化融合过程中的再次相似度计算。近几年, 许多学者将机器学习以及统计学的思想运用于相似度计算中。徐飞翔等[9]提出一种基于SA-BP(Simulated Annealing Back Propagation)算法的本体概念语义相似度综合计算模型, 通过模拟退火算法改进BP(Back Propagation)神经网络, 提高相似度计算的精确度。Zhang等[10]提出的MSBN(Multi-Strategy and Bayesian Network)通过编辑距离对概念名称进行词汇相似度计算, 并在此基础上进一步应用了概念的描述信息以及实例特征, 以多策略的贝叶斯网络为基础进行本体映射。
综上所述, 无论目前流行的基于机器学习方法还是基于统计学方法, 都要经过大量的数据计算, 从某种程度上降低了融合效率, 并且这些方法都缺少统一融合模型。基于此, 笔者提出通过对本体信息的标准划分, 以减少后续融合过程中不必要的重复计算, 以提高融合效率。除此之外, 笔者从国际标准的角度, 对本体注册的信息进行本体融合。众所周知, 标准化才是知识共享的前提, 标准化的融合模型适用于各领域本体融合。
2 基于MFI4OR的本体融合模型
2.1 MFI4OR标准体系研究
MFI4OR标准为本体的结构和语义信息提供了一个注册机制, 以便于管理和进行系统间互操作。其为本体的分类注册提供了一个基本的3层架构, 用于促进本体和基于本体的系统之间的语义互操作[11]。MFI4OR在元级对本体信息进行注册和管理, 这就在元级上屏蔽了本体异构问题, 进而解决了本体之间的互操作问题[12]。
从两个基于本体的信息系统的角度看, 本体在系统中起到承上启下的中间层作用[13], 两个系统若要进行互操作, 就需要这两个系统的本体满足互相理解的要求, 也就是说需要存在相同的描述以及建立相应的映射关系。但是, 由于不同的信息系统存在不同的需求, 构建时使用的建模语言也会有所区别, 应用的本体必然存在异构性, 这在很大程度上造成了信息共享障碍。因此, 有必要为本体提供一个科学合理的管理机制, 对本体元级的信息进行注册管理, 这就是MFI4OR本体注册元模型所研究的范围[11]。MFI4OR本体注册元模型在元级上考虑了本体的异构性, 并致力于本体之间的互操作(见图1)。
图1 本体注册元模型Fig.1 Ontology registration meta model
从横向看, MFI4OR提供了两种类型的本体模型, 分别为参考本体(Reference-Ontology)和本地本体(Local-Ontology)。参考本体是由标准组织或领域专家定义的领域内的标准本体, 该本体的特点是具有稳定性。本地本体是在具体的信息系统需求的基础上, 根据参考本体修改得到。由于本地本体对参考本体进行了复用, 故其含有参考本体的部分内容, 此外还包含系统需求的内容。2008年, 曾诚等[14]提出了一种基于MFI4OR的语义互操作Web服务注册模型, 运用标准中本地本体的演化规则解决Web服务注册库中的语义互操作问题。在本文中应用到了参考本体的概念, 并将其作为融合过程中融合本体的基准, 并将该本体中的构件视为标准构件。
从纵向看, MFI4OR提供了一种3层模型对本体信息进行记录和管理, 该模型的基础为“本体(Ontology)-本体构件(Ontology-Component)-本体原子构件(Ontology-Atomic-Construct)”。在标准3层模型中, 本体是一个元类, 表示一个本体并包含关联的管理信息; 本体构件是一个抽象的元类, 表示包含在本体中的句子并包含相关的管理信息, 没有指定句子的粒度, 但其是一个用户的选择; 本体原子构件表示非逻辑符号的抽象元类, 用于句子中并且包含相关的管理信息。本体原子构件组成了本体构件, 本体构件组成了本体, 其中本体原子构件是本体最基本的单位, 即最小组成单位[12]。MFI4OR的3层注册模型关注本体元级的结构组成信息, 即本体中的句子以及非逻辑符号的模型元素, 其中包括类、 属性和关系等。
MFI4OR将本体元模型作为理论基础, 提供了一个公共的元模型框架, 用于处理本体注册和本体之间互操作的问题, 便于异构本体的语义信息的注册、 共享和管理。而本体融合涉及到了本体之间的互操作, 以及在本体信息之间的概念相似度计算和实体对齐等技术, 因此MFI4OR可以为本体融合提供一个统一的融合模型, 并可在此基础上进行本体信息的融合。
2.2 融合映射模型
在MFI4OR中纵向定义了一种3层结构记录本体的结构信息, 基于此对融合中的本体信息粒度进行划分(见图2)。图2左侧虚线框内为语法层, 在标准中规定“本体构件”对应了本体中的“句子”, 但“句子”划分的粒度由用户决定, “本体原子构件”对应了本体中的“非逻辑符号”, 即从本体文件里可以提取出“句子”注册成为“本体构件”, 而“句子”粒度的划分由用户决定, 然后从句子中提取“非逻辑符号”注册成为“本体原子构件”。图2中间的虚线框是标准中定义的3层“本体-本体构件-本体原子构件”模型, 从本体中可以提取若干本体构件, 本体构件中可以提取若干本体原子构件。图2最右侧的虚线框表示融合层, 将标准中需注册的管理信息对应到融合过程中的需要融合本体的信息元素, “本体构件”对应本体模式层的元素“类”, “本体原子构件”对应与类相关的属性, 例如对象属性和数据属性, 融合类和融合属性为融合对象。
图2 基于MFI4OR的本体融合模型Fig.2 Ontology fusion model based on MFI4OR
3 融合过程与算法
3.1 融合过程
对模式层, 本体中概念的相似度达到某个特定的较高值时, 即可认定两个概念的语义是相同的, 这就给予了融合的最基本条件[15]。基于MFI4OR的本体融合模型, 提出如下的本体融合过程。图3描述了输入、 输出和融合过程中的6个主要步骤, 即输入两个领域内或不同领域的相似的两个本体, 经过融合后, 输出一个融合了两个本体基本元素的完整本体。
图3 基于MFI4OR的融合过程Fig.3 Fusion process based on MFI4OR
步骤1 三元组提取。
首先准备需要融合的本体, 规定其中一个为参考本体(ClassOnto), 另外一个本体则为融合本体(FuseOnto)。然后将输入的本体通过rdflib技术和pandas技术提取出两个本体中所有的三元组,并通过三元组描述的两实体的关系抽取本体中所有的类、 实体、 对象属性和数据属性等。
步骤2 构件提取。
将抽取的三元组中的类、 对象属性、 数据属性等根据基于MFI4OR的映射模型, 将“本体-本体构件-本体原子构件”与“本体-类-属性”相互映射, 存储到相应的关系表或CSV文件中进行结构化处理。
步骤3 相似度计算。
笔者利用基于编辑距离的相似度算法对已经划分的本体构件即两个本体中的类进行相似度计算, 并输出一个相似度值, 该值的取值在0~1之间(包括0和1)。在此规定阈值U为0.7, 当相似度值大于或等于0.7, 认定两个本体构件相似, 即可进行融合。当相似度小于0.7, 利用外部资源WordNet判断的两个本体构件是否存在近义词的关系, 若存在则融合。外部资源主要判断两个词汇的语义相似度, 减少因词汇相似度低而语义相同的信息不能融合的情况。根据信息论中的信息传递损失理论, 在融合中用语义相似度算法计算后所得结构, 必然造成知识在一定程度上的损失[15]。
步骤4 融合。
在步骤2中, 得出相似的本体构件即相似的类, 将它们进行融合。若两个本体构件相似, 融合时, 保留参考本体中的本体构件, 并去除融合本体中的相似本体构件, 但需要保留融合本体中的原子构件, 将其添加到参考本体的本体构件中。
步骤5 原子构件匹配。
将本体构件融合后, 合并原两个本体构件中的原子构件, 并对其进行匹配查重, 若有重复的原子构件则将其去除。这一步的主要目的是保证合并后的本体构件中不存在重复的本体原子构件, 避免融合后的本体存在冗余。原子构件的匹配与步骤4相同, 保留参考本体中的原子构件, 去除融合本体中的原子构件。
步骤6 迭代。
反复执行步骤3~步骤5, 直到融合彻底结束。
3.2 融合算法描述
根据MFI4OR本体融合映射模型, 对本体的基本元素进行标准化注册, 再利用Edit Distance算法和基于WordNet词典的Edit Distance-WordNet相似度算法进行相似度计算, 简称E-W算法, 如下所示。由于本体原子构件融合与本体构件融合算法相似, 故不再赘述。
E-W算法:
1)U←0.7∥设置阈值U=0.7, 判读是否符合融合标准
2) import BasicOnto, FuseOnto∥导入参考本体和待融合本体
3) 提取两本体的本体构件
4) for each triples in BasicOnto and FuseOnto do∥提取三元组
5) for each BasicClass and FuseClass in triples do∥提取本体构件
6) fori←0 to BasicClass do∥遍历本体构件
7) forj←0 to FuseClass do
8) 通过Levenshtein Distance算法进行相似度分析
9) Pairs[i]←compareTwoClass(BasicClass, FuseClass)
10) Pairs[i]_K←sim(BasicClass, FuseClass)
11) if Pairs[i]_K
12) 通过WordNet进行语义相似度判断
13) if Pairs [i] in WordNet do
14) FusionClass←BasicClass∥进行本体构件融合
15) else
16) return Pairs [i] to NextCompare
17) end if
18) else
19) FusionClass←BasicClass
20) end if
21) end for
22) end for
23) end for
24) end for
4 实验结果与分析
实验是以黑龙江省哲学社会科学研究规划项目“黑龙江省高等教育教学改革基金资助项目”(项目编号: SJGY20200107)中的学习者模型构建需求为背景。项目采用FOAF与RELATIONSHIP进行学习者模型构建, 利用提出的融合模型实现将两个本体的融合。FOAF本体是一种提供管理社区内信息的词汇表, 其定义了关于用户个人信息、 用户与用户之间关系[16]。而RELATIONSHIP[17]本体是描述人与人之间各种关系的标准词汇表, 例如亲属关系、 工作关系、 婚姻及居住关系等, 涵盖了几乎所有的人与人之间的关系模型。这两个顶层本体都是描述人物基本信息及人物间关系的标准本体, 因此在该项目系统架构的学习者模型构建模块中, 笔者基于MFI4OR标准的本体融合模型融合FOAF本体和RELATIONSHIP本体, 为学习者模型提供一个更精确更全面的关系表示。
实验采用Win10系统环境, 并用Python语言进行本体的解析和融合。经过实验, 结合基于MFI4OR的融合模型得到融合后的FOAF-RELATIONSHIP本体, 称之为F-R本体(见图4)。该本体不但具有FOAF本体的相关信息, 如knows和account;而且还有RALATIONSHIP本体中的相关信息, 如worksWith(见图5)。
图4 F-R本体 图5 F-R本体局部图 Fig.4 F-R ontology Fig.5 Partial diagram of F-R ontology
融合后的F-R本体中既包含参考本体FOAF中的信息, 又包括了融合本体RELATIONSHIP中的相关信息, 实现了两个本体的融合, 并形成一个基于FOAF本体的包含RELATIONSHIP本体中所有人际关系的统一本体。
计算并获得融合本体的4个融合分析项, 即准确率(Accuracy)、 精确率(Precision)、 召回率(Recall)和F1值。笔者分别计算了类(Class)、 对象属性(ObjectProperty)、 数据属性(DatatypeProperty)以及融合(Fusion)的分析项, 得到结果如表1所示。
表1 融合结果
实验结果显示, 无论是类、 对象属性还是数据属性, 基于该模型的融合实验的准确率都达到了80%以上, 除了对象属性的召回率在68.5%以外, 其余概率都在70%以上。总体的融合可达87.6%的准确率, 查准率在79.8%, 召回率和F1值也都保持在80%以上。
5 结 语
笔者针对目前本体融合的研究中本体映射缺乏统一的标准融合模型的问题, 提出了基于国际标准MFI4OR的本体融合模型, 并进行了实验。在MFI4OR的融合模型基础上, 利用编辑距离的相似度算法, 能精确地计算出两个概念的词汇相似度。为避免出现异形同义, 笔者考虑了基于词典WordNet的方法, 查找词汇近义词进行语义相似度的比较, 在确保词汇相似度的基础上考虑了异形同义的情况, 这在很大程度上增加了融合的准确性。实验表明, 基于MFI4OR的本体融合模型适用于本体融合过程, 可融合两个相似本体且具有较高的适用性。该模型为本体融合信息提供一个标准的本体信息管理模式, 并根据注册标准提出一个本体元级的标准划分, 减少了相似度计算的次数, 简化了繁琐的计算过程。以教育领域学习者模型的构建为背景, 将该方法应用于教育领域的学习者模型中, 很好地解决了学习者模型构建中的融合问题。