存储于关系数据库的知识库的语义推理方法

来源 :计算机时代 | 被引量 : 0次 | 上传用户:mhouwen
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要: 语义推理的功能使得知识库更具人工智能,具有实用意义。文章根据语义模型的特点,构建了基于关系數据库的知识库语义存储体系,该存储体系的模式空间和实例空间相分离,降低了结构和数据的耦合性,使语义的存储范围更具完整性、语义的推理效果更具智能性。面向该存储体系的语义推理方法实现了相关语义(专家知识)的推理和相似语义(词汇)的推理,同时,该方法也考虑到了推理范围的可控能力和推理结果的语义还原能力。分析表明,该方法能应用于实际,但仍存在一些可改进之处。
  关键词: 推理; 语义; 模式空间; 实例空间; 知识库; 关系数据库
  中图分类号:TP182 文献标志码:A 文章编号:1006-8228(2013)07-48-04
  0 引言
  Tim Berners-Lee曾在TED的演讲中提到“数据就是联系,联系产生数据”,Tim Hanis等人在解释语义图模式时强调“数据之间的联系不是数据库结构的一部分,而是数据的一部分”[1],“联系”是语义数据的重要特点。知识库内容的简单呈现不符合当下热门的Web3.0理念,知识库的设计思想应该提升到语义层面,充分考虑知识元数据之间的语义联系,具备语义推理功能的知识库在学习资源建设中大有用武之地。
  知识库是一个局部的语义数据库,在关系数据库中为知识库建立一套灵活的语义存储体系,该存储体系可根据实际情况创建相应类(如某门课程)的对象及其属性,它继承了RDF语义数据的框架和内容的分离性,能灵活应对各类元数据描述的框架需求,从而克服本体的框架和内容紧耦合性的不足之处。存储体系包括模式空间和实例空间,其中前者提供构建语义框架的基本属性和基本元素,后者用于存储语义实例数据,它们反映在关系数据库中就是模式空间表和实例空间表,模式空间与实例空间相分离是关系数据库完整、高效地存储语义数据的前提。
  笔者在文献[2]中对语义数据存储于关系数据库的实现方法作了详细阐述。虽然关系数据库存储语义数据使语义存储的长久性更有保障,而且,这种存储方式使得语义数据的操作更为简便,但是不得不忽略一个弱点——基于关系数据库的语义存储体系的推理能力有限。本文通过对模式空间表和实例空间表的逻辑组织,来加强关系数据库语义存储体系的语义推理能力,这是对知识库存储体系的一个完美补充。
  1 知识库存储体系的基本原理
  语义数据可以理解为概念集合,它由类标识符集、属性标识符集和数据类型标识符集组成,它是实现语义数据逻辑模型与关系数据存储模型相映射,进而在关系数据库中建立模式空间表和实例空间表的基础,图1是一个由本体编辑工具protégé[3]模拟出的关于出版物本体的语义模型,本文以该模型为例来介绍在关系数据库中实现语义推理的基本原理和基本条件。
  图1中带符号“●”的是本体的类(class),带符号“◆”的是本体的实例(indivisuals of class),类之间、实例之间的箭头线表示谓词关系,类与实例之间的箭头线表示继承关系。
  定义1:类与类之间构成的子图称为模式(Schema)空间图,根据模式空间图的模型生成的关系数据表称为模式空间表。
  定义2:实例与实例之间构成的子图称为实例(Instance)空间图,根据实例空间图的模型生成的关系数据表称为实例空间表。
  2 模式空间表和实例空间表
  语义数据存储于关系数据库,不仅是为存储而存储,其主要目的是用来读取、推理数据,常规的存储方式中,按顺序查询数据表的推理策略不但效果不佳,而且推理效率也低下,模式空间与实例空间相结合而构建的存储体系,最大限度地保留了语义模型的特征,通过模式空间表之间的逻辑关系获取相关语义的元组ID,再通过索引查询从实例空间表中获取元组ID所对应的语义数据。
  2.1 模式空间表
  2.1.1 类表(ObjectClass)
  存储语义数据的所有类,主要信息来源是类标识符集合A,类表的数据项用来对每个类基本情况的描述,如:是否启用该类的对象实体、是否屏蔽对象实体的一些属性等。类表的一个重要的作用就是用来定义对象实体的文本信息字段,这些字段所构成的表用来存储DH语义图(有向超图结构的RDF语义图[5])中的标签所描述的文本信息,如图1中Person类为它的对象实体定义了表Author{Education、Professional、Degree…}则,Lucy,Jim的相关信息可以存储到Author表中。
  2.1.2 数据属性表(ObjectProperty)
  存储语义数据关系属性类型,每项数据表达一个该数据项相关的关系属性的实例表,该实例表存储Subject-Object的数据。该表主要数据来源是实体的描述信息,即元数据。但是要注意到的是,在实际应用中,ObjectProperty 的Subject和Object并不都是1:1的关系,恰恰绝大部分关系是1:n的关系,如:在图1中,{publication1 hasAuthor (lucy,tom,…)},{lucy isAuthorof (publication1,publication2,…)},这种情况带来两个问题:查询效率降低;存储空间浪费。解决问题的方法是不管Object有多少个组成部分,都把它存储在一个变长的数据字段中,这样既可以明显提高存储效率,也可以实现一次完成Object的查询。
  2.1.3 数据属性类型表(DatatypeProperty)
  存储语义数据的属性类型,每项数据表达一个该数据项相关的数据属性的实例表,该表存储Subject-Data的数据。该表主要数据来源是属性标识符集合U,由于在固定领域范围内集合U的元素数量是有限的,这使得实现垂直分割数据更具有可行性。
  数据属性类型表中,为每项数据设置一个互逆属性字段,声明该类的属性互逆的属性值。在图1中,集合Ea具有对称性,所以每个属性的逆属性就是相互对称的二元关系的元素,如:R={hasAuthor}和R={isAuthorof}就是一对互逆属性。这样,当向hasAuthor表做(?hasAuthor Lucy)查询时,在hasAuthor表中将做多次查询操作和字符串操作算法,利用互逆属性,则将查询转化为在isAuthorof表中做(Lucy isAuthorof ?)查询,这样可一次性查询到所要结果。   2.1.4 数据类型表(Datatype)
  数据类型表存储语义数据所有的数據类型及其与关系数据库的映射关系,它的数据来源是数据类型标识符集K,如:语义描述体系XML Schema的数据类型Xsd:string、Xsd:datetime在关系数据库中,分别对应数据类型VARCHAR、TIMESTAMP。
  2.2 实例空间表
  实例空间表对描述对象的具体描述,实例空间表的属性(即关系数据库表的字段)根据实际应用需要从模式空间表中获取,实例空间表一般包括:推理索引表、三元组表、实例数据表、实例语义联系表等。
  2.2.1 推理索引表
  Reasoning_Table={ID,SubjectID,Predicate,Type},其中:Predicate记录Subject在所在领域本体中应该有的谓词集合(如:hasAuthor,BothCiting,…),Predicate字段存储的是一系列谓词的集合,谓词集合也即数据属性类型表的对象,由于语义数据存储于关系数据的存储对象是对语义图(如图1模型)的存储,包括数据结构的存储和数据内容的存储,因此,推理索引表的类型、结构和内容可以从语义模型中获取。局部语义网或某个领域本体的推理索引表的集合构成推理知识库。
  2.2.2 三元组表
  Predicate_Table={ID,SubjectID,ObjectID}继承了数据属性表的结构,用于垂直记录三元组数据,Predicate即三元组的谓词,它是三元组表的表名,如:isAuthorof、hasAuthor,当推理要查询关系“hasAuthor”时,只要查找hasAuthor三元组表即可,能提高推理效率。三元组表是基于相关词汇推理的推理规则。
  2.2.3 实例数据表
  Semantic_Table={Subject_ID,ClassName,Description1, Description2…},该表的数据结构根据类表自主生成,它用于记录某主题的语义信息。三元组的Subject和Object在关系数据库中只是描述角色上的不同,作为数据项并无差别,因此,实例数据表的字段Subject_ID既可以适合Subject的ID也适合Object的ID。
  2.2.4 实例语义联系表
  Reration_Table={ID, Subject, Objects},实例语义联系表用以描述Subject的主题有联系的词汇,如:subject=“CPU”,则Object=“内存,硬盘,主板,AMD,Intel…”,它不同于三元组表,三元组表的数据基于共同的谓词,数据自动从语义数据中采集,而实例语义联系表是基于相关领域专家的思维规则,汇集了专家们的领域知识,它使得知识库的语义更加丰富,语义推理结果更具“智能性”。实例语义联系表是基于专家知识推理的推理规则。
  2.3 模式空间表与实例空间表的关系
  模式空间表和实例空间表之间的关系是类似于面向对象思想中的“类”与“对象”之间的关系,后者有选择地继承前者的属性,前者为后者派生特定领域的类或属性,这是一种“决定”关系。图2是模式空间表与实例空间表之间的“决定”关系图,其中:深色的为模式空间表,浅色为实例空间表,箭头方向表示“决定关系”。由图2可知,当谓词集和领域确定时(数据类型表是固定的),相关的实例数据表的结构就也确定了。
  3 推理算法
  3.1 推理步骤
  基于关系数据库的知识库的语义推理主要分两类推理:描述词汇的推理(相似性)和专家知识的推理(相关性),两者分开计算,同时推理。
  推理步骤如下:①判断预设推理条件(如:推理层次i),如果成立则开始推理工作;②描述词汇推理:根据条件确定Subject在相应环境下的谓词集,根据垂直存储的特点,谓词即三元组表的表名,以此查找在相关表中所有与该Subject有关系的Object1;③专家知识推理:根据条件确定Subject在实例语义联系表中相关的Object2;④在实例数据表中查询Object(Object1+Object2)的所有数据描述信息(Descriptions),存储中间结果,输出相关信息;⑤判断推理条件,如果推理层次i>0,则把本次推理返回的所有Object作为新的推理的Subject,逐个重复步骤①-④,推理层次i自减1,直到条件不满足,其中步骤②和步骤③为并列关系。
  3.2 算法说明
  相关谓词:同一语境下类与类存在某种关系,则它们为相关类,类的本身一定是它自己的相关类,如图1中的三个类:Article、Person和Publication两两相关,并且每个类都是自己的相关类。相关谓词是由相关类集合的全二元关系组成,如{Article,Person,Publication}的相关谓词为:{Citing,Cited,BothCiting,BothCited,Publish,IsPublished,isAuthorofhasAuthor},相关谓词集合在推理运算时能起到两个作用:①由数据属性类型表的互逆属性可知,相关谓词也具有互逆属性,这可以省去一半的算法开销;②相关谓词的分类、集中存储,有助于在推理时能精准地找到相关的三元组表,大大提高查询效率。
  语义模糊性:由于语义数据存在模糊性或不精确性,检索需要支持数据的模糊语义表达[4]。特别在关系数据库中查询数据时,精确的计算方法将失去大量的语义联系,查询语义数据时,所涉及的查询条件均须采用模糊表达式,如:查询必须要考虑到通配符命令、嵌套查询、视图查询等的灵活运用。
  算法思想:最常用的语义推理算法包括Tableau算法和Rete算法两种[6],前者强调判断知识的可满足性或知识之间的包含关系,后者强调存储语义匹配的中间结果,以提高规则匹配的效率。本文所述的是基于关系数据库的知识语义推理算法,它所建立的推理算法模型同时考虑到了以上两种算法的侧重点。   3.3 推理算法
  3.4 算法评價与应用实例
  该算法的优点是,能自主控制推理范围(参数i);相似性和相关性相结合的推理使得推理结果更加丰富和智能化;推理中间过程的存储,一方面增加了推理的效率,另一方面能快捷地生成主题相关的语义脉络(即语义图)。缺点是,递归函数的特性使得推理规则数据表的数据量不能过大,算法不适合大型知识库;存储中间结果将消耗存储空间。
  采用上述方法,课题组完成了本文的基金项目“智能型”网络课程的研发,该项目的“智能”实现过程如下:网络课程平台把课程资源根据课程教师的教学经验和词汇之间的关联语义化,并把语义化的元资源存储于关系数据库语义存储体系(包括语义联系的存储),即生成基于本课程内容的知识库,再根据网络课程的交互学习的“语境”,把3.3中的算法函数实例化,推理出该语境下的相关语义(如:学习元资源),有准对性地推送给学习者。这种网络课程的人工智能化方法,对远程教育有很大的实用意义。
  4 结束语
  本文在介绍语义模型的基础上,构建了由模式空间和实例空间组成的关系数据语义存储体系。模式空间表和实例空间表保障了该存储体系有能力完全存储知识库语义数据,并能模拟出知识语义的推理算法。知识语义的推理包括面向三元组信息的相似性推理和面向专家知识的相关性推理。算法设定了推理范围控制参数,使推理范围能灵活控制。
  算法在假设知识库是某领域知识元数据的有限集合的基础上进行,如果实例空间表中的数据量过大或预设推理层次过多,递归函数将导致算法次数急剧增加,进而影响推理效率,因此该算法在如何减少计算次数方面还有待更多的研究。
  参考文献:
  [1] T HANIS, D NOLLER. Semantic models A flexible foundation formodel-driven application architectures[C/OL]. (2011-10-11)[2013-37].http://www.ibm.com/developerworks/industry/library/ind-semanticmodels/index.html.
  [2] Yonggang Shan, Jiangfeng Yu, Dongyi Chen. Implementation Method of the Semantic Data be Stored into the Relational Database[C].China:Najing,2012.8,CSSS2012.
  [3] 陶皖,廖述梅.当前本体编辑工具的分析与研究[J]计算机工程与设计,2005.26(3):761-763
  [4] 金海,袁平鹏.语义网数据管理技术及应用[M].科学出版社,2010.
  [5] ANTONIO A, MORALES M, SERODIO M E V. A DirectedHypergraph Model for RDF[C/OL].(2007-6-6)[2013-2-15].http://ceur-ws.org/Vol-275/paper24.pdf.
  [6] 汤怡洁,周子健.语义web环境下语义推理的研究与实现[J].图书馆杂志,2011.30(3):69-75
其他文献
OFDM技术凭借在衰落环境下良好的特性成为下一代移动通信的关键技术。同步技术是OFDM通信系统的关键技术,它性能好坏直接影响系统的质量和稳定性。本文通过对国内外的经典同步
近日,在中国移动2018年工作会上,中国移动总经理李跃表示,2017年,中田移动加快实施“大连接”战略,坚持“四轮驱动”融合发展,深化改革创新和运营协同,各项工作扎实推进,取得新成效,实
随着网络技术的逐步普及和快速发展,学习网络、利用网络已不再是IT行业专业技术人员的专利,它已作为当今人类的一种新的生活方式而逐步深入到课堂和普通家庭。谈到Internet,IP地
随着社会的发展,全媒体技术的应用,公共图书馆的服务手段得到有效拓展,高效的阅读推广服务大大促进了公共图书馆事业的发展。因此,在全媒时代背景下,要求公共图书馆对阅读推
矿产资源滥挖滥采造成的农田重金属污染,目前在我国不少省区已到了触目惊心的地步,因此最近国务院正式批复了由环保部制定的《重金属污染综合防治"十二五"规划》,给公众带来了
~~
2017年4月10-14日,俄罗斯游泳冠军赛在莫斯科奥林匹克综合体游泳场举行,来自俄59个地区的550名运动员,及来自乌兹别克斯坦、吉尔吉斯斯坦的选手参赛。
本文针对三维GIS大规模地形的实时渲染问题,研究了基于四叉树的LOD算法的设计。首先,建立了简单高效地节点评价系统和裁剪体系统,然后对网格的渲染过程可能出现的问题,给出了可行的解决方案,以及如何保证四叉树的合法性和筛选合适的节点。最后程序运行结果表明,该算法可以很好地解决三维GIS大规模地形渲染的性能问题,并对本算法的实现存在的不足进行了分析和建议。
日前,国际泳联通报各国泳联,通报了将于2017年7月23日~30日在匈牙利布达佩斯举行的第17届世界游泳锦标赛游泳比赛报名标准。现将该标准介绍如下:
社教节目可以对受众进行社会教育与文化教育,这种节目寓教于乐,题材广泛,播出方式灵活多样,是集中体现电视台水准的一类节目。基于此,文章以社教节目作为研究对象,结合当前节