基于链接数据的RDF关联框架综合分析_rdf论文

基于Linked Data的RDF关联框架综析,本文主要内容关键词为:框架论文,Linked论文,Data论文,RDF论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

收修改稿日期:2011-11-23

1 引言

关联数据(Linked Data)的本质是将本体和相关数据资源按照RDF格式的标准链接起来,同时要求支持HTTP URI访问和查询语言SPARQL检索[1,2]。根据W3C SWEO研究组的统计,截至2011年9月,关联数据云(LOD Cloud)含有310亿个RDF三元组,5亿个RDF链接[3],如图1所示。

图1 关联数据云2007-2011年增长态势

由此推算,涉及关联关系的三元组与三元组总量之比不到3.5%,96%的RDF三元组有建立RDF链接的潜力却无RDF链接。随着更多关联数据集的发布和对关联数据集应用的展开,这一矛盾将进一步加剧。关联数据界围绕RDF关联提出多种方法框架开展研究。

从方法上来看,去重(Duplicate Record Detection)和本体匹配研究的若干相似度方法[4,5]广泛应用于RDF关联,基于图相似的关联数据集方法也在RDF关联中得到应用。近年来,机器学习方法[6]也应用于处理关联数据集,将RDF关联发现问题转化为分类问题,这些方法成为RDF关联研究的新动向。通过关联发现方法的集成,结合不同的应用环境,Silk、GNAT、LIMES、R2R等关联工具逐步开发出来。这些工具从框架上揭示了RDF关联的方法及其应用环境。与此同时,数据挖掘、自然语言处理等领域的研究也向关联框架的发展与演化渗透,它们成为RDF关联的新趋势。从RDF关联应用来看,随着更多关联数据集的发布,传统着眼于单一关联数据集或依赖于颇具影响的Hub应用的现状正向多数据集和跨领域融合发展。

2 RDF关联方法

RDF关联是指将两个不同数据集中的相同实体或相关对象构建RDF类型关联,通过关联实现对相关信息对象的发现和集成应用。构建关联有手动和自动两种方法[7],一般情况下可以通过SPARQL或HTML表单手工检索待链接的URI实现手动生成。但对于大规模的数据集,不适宜采用手工设置,而需要采用多种关联算法在不同数据集之间生成关联,自动方法也需要人工输写相应的关联代码或配置相关的参数变量完成。通过对各种算法的集成应用,关联数据界已经开发了若干关联工具,如Silk[8]、LIMES[9]等。

由于关联数据集的描述不仅采取公共的词表,同时运用多种私有词表对数据集进行揭示。因此,关联算法不仅要考虑在相同结构下的RDF类型关联问题,同时也要考虑在异构环境下的RDF类型关联问题。

现行应用最普遍的两类关联算法有:

(1)唯一标识符法。该方法是对基于特定的命名模式进行标识。例如出版界的ISBN号,DBpedia通过遍历图书的ISBN号,构建DBpedia与Book Mashup之间的owl:sameAs关联。

(2)相似度计算。该方法通过分析数据集中对象实例的属性值和语境相似度来发现并建立关联关系(以owl:sameAs为主)。在Silk框架、LIMES、KnoFuss[10]等框架中均集成了相似度算法。在去重和本体匹配的研究中讨论相似度算法的类型有多种,而在关联数据中应用的相似度算法主要包括基于字符的相似度计算[11]、基于词素(Token)的相似度计算[5]、基于数值的相似度计算、基于图的相似度计算[12]4种类型。文献[13]对相似度算法从单一算法和组合算法两种角度进行了分析。本文主要阐述4种新兴方法。

2.1 基于机器学习的关联发现方法

机器学习是从大量的数据中自动或半自动地寻找模式的过程[14]。在关联数据中,通过选取若干关联对象实例对其进行标注构建训练集,在此基础上得到特征分类模型来判断输入的对象实例是否为等同关系(Coreference)。Mayfield等[15]研究认为,决策树方法在等同分类问题中易出现过度拟合,分类效果不明显,基于SVM-Perf的支持向量机方法在处理二值问题中更具优势。Sleeman等[16]基于支持向量机原理,通过引入逆函数并借助SVM Light工具研究了FOAF等同实例的分类。除采用准确性(Accuracy)、精确率(Precision)和召回率(Recall)进行机器学习算法的评估外,机器学习中的其他常用方法也应用于算法的评估,Nikolov等[17]在以关联数据实例层的链接情况来发现模式层的映射研究中,采用10折交叉确认的方法对分类算法进行评估,发现J48决策树所获得的分类器效果最好,基于字符的相似度算法一般处理较为明确的样本,同时需要手动选择属性、算法并配置参数,整体效率并不高;机器学习方法尽管也存在对训练集样本的标注与筛选,但是它能够处理较为复杂的数据集,通过有限的训练集样本达到处理大规模复杂数据集的目标,从而表现出较强的实用性。

2.2 基于HTTP Referer的后向关联方法

上述方法主要是针对等同关联关系考虑的。在关联数据集中还有非等同关联关系的创建。作为关联的一种,构建非等同关联可以创建更多的RDF链接,扩大数据Web,便于开发更多基于RDF链接的关联应用。Referer方法是在关联数据集的rdfs:seeAlso参考信息支持下,通过借助逆属性关系owl:inverseOf或对称属性关系owl:symmetric Property构建数据集之间的后向关联(BackLink Service)[18]。例如,属性hasChild有逆属性hasParent,从而可以建立反向链接。值得注意的是,若无rdfs:seeAlso信息,则无法构建后向关联。

2.3 基于元素和结构的模式映射方法[5]

在多种词表描述数据集的异构环境下,需要建立异构数据之间的模式映射,然后运用上述方法创建对象实例间的关联。处理这一方法可分为元素与结构映射法和属性转换方法。元素映射主要是运用字符相似度算法计算描述数据集的词表的名称、描述、命名空间和关键属性等信息的相似度。结构映射是比较两个不同数据集的词表结构来确定是否存在模式间的映射。该方法综合考虑图及其关系信息,是基于图的相似度方法应用。图2都采用了Music Ontology,通过rdfs:subClassOf链接元素有{Album,Single,Song},Release中链接元素有{Album,Single,Track},通过元素映射,Album和Single可直接映射;MusicalWork和Release通过WordNet词典建立映射;通过图形相似度算法可确定Song和Track之间的映射关系。

图2 DBpedia与MusicBrainz音乐本体描述[13]

2.4 面向属性的结构转换和值转换算法

针对多种数据集中不同对象间包含的相同实体用不同的URI参引,其处理有融合(Merge)和互联两种方式[19]。所谓融合,即取代URIs;所谓互联,即等同关联和其他非等同关联。例如构建owl:sameAs关系。Bizer等[20]所开发的R2R框架采取融合的方式,可以实现两个三元组谓词属性之间的转换和属性值的转换。其方法是通过R2R语言对转换三元组进行编码,构建包括源对象、目标对象、转换函数、引用属性等关键映射语句,在JDK平台下借助独立开发的R2R API调用R2R映射程序实现目标属性对源对象属性的取代;若包括转换语句,还可进一步实现属性值的转换。

上述算法是目前关联研究的代表方法。英国谢菲尔德大学所开发的相似度算法API[21]均有涉及(图相似算法除外),新西兰怀卡托大学开发的Weka平台在在处理决策树方法上有较好的使用效果[22]。LIBSVM[23]、SVM Light[24]等开源支持向量机工具则可处理基于SVM的分类问题。

3 关联框架

关联框架是指揭示RDF关联工具的一组抽象组件及其交互关系,涉及系统模型、支撑语言和具体算法等。关联框架反映了RDF关联研究的最新开发成果,截至2011年4月,关联数据界较具影响的关联框架有Silk、LIMES、R2R等。

3.1 Silk框架

Silk框架是构建不同数据集的等同关联开源工具,包括Silk语言规范和Silk Server两部分。截至2011年10月1日,Silk API还没有开发完成。在原理上Silk通过基于字符的相似度算法和基于词素的相似度算法构建等同关联,其主要算法如表1所示。

Silk语言以XML规范定义,以相应的Silk XML Schema表示。其根标签是。在根元素下包括4种顶层语句类型,即前缀定义、源数据定义、链接规范和输出规范。所集成的相似度算法在Silk规范的链接规范模块构建不同属性之间的RDF链接。

Silk Server[25]包括实例缓存、链接规范引擎和REST接口输出三大模块,其核心是链接规范引擎,使用Silk框架可在Silk工作台上完成。目前已开发完成的Silk工作台可通过搭建Tomcat等Web服务器实现语言的输入,按照提示指令构建不同数据集间的等同关联。

与Silk一样生成RDF链接的工具还有LinQuer和GNAT。LinQuer是建立在关系数据库基础上的语义互联框架,须与RDF包装器一起使用[26],例如D2R Server或Virtuoso RDF Views。GNAT工具则是面向音乐这一特定领域的工具。与它们相比,Silk一方面直接面向关联数据本身;另一方面它是一个通用的RDF链接工具,适用于各种RDF数据集。

3.2 LIMES框架

LIMES(LInk discovery framework for MEtrics Spaces)是一种半自动关联发现工具。与Silk框架不同,它开发了完整的GUI界面和Web接口供用户使用。LIMES集成了基于字符和数值的多种相似度算法,具体如表2所示。

LIMES的流程如下:首先构建基于目标数据集的参照集E(Exemplar),然后通过三角不等式原则过滤掉不在阈值内的数据集,在此基础上运用相似度计算方法处理符合阈值条件内的数据集,得到源数据集与目标数据集等同的相似记录,最后实现序列化输出存储,如图3所示。

LIMES和Silk都是基于RDF链接的互联工具,都有基于自身的语言规范,其宿主语言均是XML。作为面向大规模数据集的工具,二者均对关联的效率进行了设计和优化。Silk框架基于排序后分块实现,LIMES则依据三角不等式定义的边界条件过滤来减少比较的次数。文献[28]通过比较证实LIMES的效率较Silk有明显上升。

3.3 R2R框架

R2R(RDF Dataset to RDF Dataset)是面向关联数据集中词表采用自描述方式形成的术语异构这一突出问题,提出程序化的术语映射方案,它由R2R语言和R2R API构成。与Silk框架和LIMES构建互联不同,R2R框架利用R2R映射程序,通过Java API接口调用实现R2R映射接口,完成目标属性对源属性的替代。

运用R2R实现属性转换关键在于明确R2R语言,编写R2R映射程序。R2R语言规范主要包括R2R映射属性、表示规则、R2R函数与修饰符、R2R映射元数据4部分内容。其中,映射属性是构建R2R映射语句的基础,通过映射属性为不同类型的RDF词表术语构建映射。其属性类型包括以下6种,如表3所示。

图3 LIMES流程[27]

在进行关联数据集的映射关联处理之前,首先可通过关联数据爬行器LDspider获取相关的源数据,然后构建R2R应用。使用R2R框架要下载R2R API,在JDK平台中调用相应的接口。R2R框架尚缺乏基于R2R框架特定的RDF存储库(Triple Store),限制了对RDF数据集的进一步处理。作为主要的关联框架,上述框架在解决等同关联和词表映射中具有重要的参考价值。与其他框架相比,这些框架对应的工具一方面具有通用性;另一方面直接面向关联数据集本身进行处理,较其他非RDF数据集框架更具适用性。

4 RDF关联研究趋势

RDF关联是关联数据走向应用的核心。目前,业界在研究各种互联方法的同时,重点将关联聚焦在开发经济高效的关联工具方面。在业已开发若干工具的同时,对于这些工具的实证研究和比较研究有待进一步拓展,在此基础上构建更为成熟、综合效能更高的关联工具。由于开放关联数据集和RDF三元组的不断增长所表现出来的大规模化数据以及语义网技术的推动,关联数据的关联有进一步与数据挖掘、词义消歧、语义标注等研究相结合的趋势;与此同时,基于Web2.0等动态社区表现出的移动数据服务和海量科学数据管理有望借助关联数据开展更先进服务的趋势。

4.1 在关联算法方面

除Silk、KnoFuss、LIMES等主要运用字符串和词素的相似度算法以外,GNAT工具应用了基于图的相似度计算方法。白海燕等[30]开展了基于FRBR模型创建基于规则的关联关系实验。邓兰兰等[13]在总结国外关联算法时发现,现有的算法表现为同构关联、异构关联和推导关联三种模式。在进一步与这些方法相结合的同时,决策树和支持向量机等机器学习领域的分类方法也加入到RDF关联研究之中。例如,Narasimha等[31]在处理关联数据的分类和聚类中相继运用了J48决策树、Apriori关联算法、最大期望(EM)聚类等多种方法。Sleeman等[16]在分类中通过支持向量机模型取得比较好的分类效果。Rusu等[32]在研究不同关联数据集的词义消歧中采用PageRank算法和ContextSimilarity算法分析WordNet、OpenCyc、DBpedia的词表结构。

4.2 在关联框架研究方面

关联数据框架从整体上揭示了关联的作用机理。通过对关联框架的比较和试验可为新的关联方法的探索提供思路。从趋势上看,关联框架一方面着眼于构建不同数据集之间的关联,另一方面着眼于与其他领域框架相结合探讨关联数据应用。除Silk、LIMES和R2R外,基于领域应用的GNAT框架也是其中一种。基于领域应用的模型与通用模型的不同主要在于,领域应用的数据集之间存在互相依赖关系,而通用的关联框架其源数据集和目标数据集是相对独立的。LinQuer是建立在关系数据库基础上的语义互联框架。与上述模型着眼于关联不同,基于不断增长的RDF数据集,数据挖掘的有关模型加入到关联数据中促使关联框架的演化。在关联数据环境下,一些科研人员构建了基于关联数据的数据挖掘系统LiDDM,该框架通过对经典的数据库知识发现(KDD)模式进行修正,得出新框架并运用JenaAPI和Weka进行了实现。其框架的执行流程如图4所示。

图4 LiDDM框架[31]

除上述框架外,面对海量RDF三元组的操作和管理,探讨运用Hadoop和MongoDB[33]等新型开源海量数据处理框架可能成为关联数据深化研究的趋势。RDFgrid即是基于Map/Reduce处理关联数据的Hadoop框架[34]。

4.3 在关联数据应用方面

Hausenblas[35]认为关联数据的应用包括两方面:关联数据在不同领域(包括音乐、生物学、统计学、自然语言处理、多媒体等)中的应用;应用关联数据构建Web应用,这类Web应用称为由关联数据驱动的Web应用,如图5所示。

图5 关联数据驱动的Web应用概念框架[35]

在综合Hausenblas[35]、Sequeda[36]、沈志宏等[37]的基础上,黄永文等[38]认为,关联数据的应用主要是利用关联数据源中的数据本身及数据之间的关联关系构建的Web应用。

现有关联数据应用一般着眼于单个数据集。与研究单个关联数据集应用不同,基于关联数据互联的关联应用着眼于针对多个关联数据集的互联,LOD是最大的关联数据集。在此方面业界已经展开了多项研究,例如,LOD中的中心数据集DBpdedia应用最为广泛,DBpedia Mobile[39]充分利用DBpedia中的位置数据,通过GPS信号,结合DBpedia与GeoNames、US Census、CIA Factbook、EuroStat等其他LOD数据集的关联,自动发现当前位置附近的相关内容,并通过Linked Data浏览器提供地图化的界面。对于更多的非中心数据集,其互联有赖于研究与实际应用结合起来。文献[40]扩展SMW+框架[41],通过增加关联数据整合框架将来自于多个关联数据集的数据转换为统一的本体,允许多个领域的数据集扩展查询,构建ABA数据和Uniprot、KEGG Pathway、PharmGKB、Linking Open Drug Data等神经科学中标准数据资源的映射,实现统一查询、导航和可视化,支持维基风格的协作和评论。刘媛媛等[42]探讨运用LOD构建关联参考服务的应用与实现机制。随着大数据(Big Data)时代的来临,科学研究呈现出向数据密集型科研转变的态势[43],如何将RDF关联方法及框架与科学数据管理[44,45]等新兴平台相结合,推动数字图书馆科研环境的趋势变革[46]是图书情报界研究关联数据应用亟待关注的新课题。

5 结语

针对多种数据集中不同对象间包含的相同实体用不同的URI参引,业界运用相似度计算、机器学习和后向关联等多种方法进行处理,这些方法在Silk、KnoFuss、LIMES等模型中基本上得到应用。本文选取了Silk、LIMES和R2R三种最具代表性的关联框架从系统模型、作用机理和关键算法等方面进行了分析。这些模型及相应的关联工具代表了关联研究的主流方向。Silk和LIMES着眼于关联,而R2R框架则体现了关联数据的映射研究视角。这些模型仍然在发展演变之中,笔者认为,在以下方面的研究值得进一步关注:

(1)RDF关联的效率有待进一步研究,Silk框架的分块技术在实际应用中有限;LIMES框架提供的三角不等式原理进行过滤,方法复杂,其可操作性和移植的普适性有待进一步检验;R2R框架从融合方面处理不同的URI参引,尚缺乏系统化的项目应用模式及在效率上与其他方法的比较验证。

(2)关联框架有待进一步深化:上述三种平台的版本都还比较低,在功能上尚须完善;在平台存储性能上有待优化,例如R2R框架缺乏RDF存储库(Triple Store),这阻碍了关联数据集的深层次处理。

(3)由于Silk框架和LIMES框架在处理等同关系方面具有优势,而R2R框架在处理词表异构、构建谓词替代和属性值融合方面见长,如何发挥它们在特定领域项目中的集成应用是一个值得探讨的问题。

标签:;  ;  ;  

基于链接数据的RDF关联框架综合分析_rdf论文
下载Doc文档

猜你喜欢